Skip to content

Commit

Permalink
Merge branch 'main' into contributing-to-docs
Browse files Browse the repository at this point in the history
  • Loading branch information
RCheesley authored Nov 3, 2024
2 parents 3c0075e + 98d7114 commit c5d844f
Show file tree
Hide file tree
Showing 13 changed files with 240 additions and 14 deletions.
1 change: 1 addition & 0 deletions .github/styles/config/vocabularies/Mautic/accept.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ AJAX
allowlist
Amazon SES
Ameling
application
Autoloader
autoloader
Autowired
Expand Down
4 changes: 4 additions & 0 deletions .github/workflows/linting.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,9 @@ on:
jobs:
prose:
runs-on: ubuntu-22.04 # See https://github.com/errata-ai/vale-action/issues/128 before upgrading
permissions:
contents: read
pull-requests: write
steps:
- name: Checkout
uses: actions/checkout@v4
Expand All @@ -24,6 +27,7 @@ jobs:
with:
# Please keep version in sync with the version in .gitpod.Dockerfile for a consistent experience
version: 3.7.1
files: docs/
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

Expand Down
2 changes: 1 addition & 1 deletion docs/_templates/layout.html
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
{% extends "!layout.html" %}
{% set css_files = css_files + ["_static/tablefix.css"] %}
{% set css_files = css_files + ["_static/tablefix.css"] + ["_static/theme.css"] %}
171 changes: 171 additions & 0 deletions docs/contributing/google_summer_of_code.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,171 @@
.. image:: images/Summer_of_Code.png
:width: 600

Google Summer of Code at Mautic
###############################

This document contains information about Mautic's participation in Google Summer of Code, often abbreviated to GSoC. Please feel free to reach out to the team via Slack below for clarifications and more information.

What to get started with today?
*******************************

Today you should read through the ideas for projects, and start working on your application. Get familiar with Mautic, make some contributions so you're familiar with the workflow, and get to know the community. Join the :xref:`Mautic Community Slack` channel - #gsoc-discuss - and post any questions you have there, after reading this page fully and also reviewing the project proposals.

Student Information
*******************

Do you want to contribute to one of the world's first Open Source Marketing Automation platform? GSoC could be your chance. Please refer to the information below.

If you're interested in working on a mentor-submitted idea, read the :xref:`GSOC project ideas` and about the project and the related technology. Please note this is a rolling submission process which Mautic maintains year-round. There is no need to reach out to the mentor unless you have a specific question about the project. Don't send an ``“I'm interested”`` message - please respect their time.

If you're interested in proposing your own project start looking around the Mautic Project for a mentor and suggest your idea in the :xref:`Mautic Assembly`.

You may also wish to start working on the Mautic-specific parts of the application, see below for more information. Carefully review the student responsibilities section.

Why spend your summer working on FOSS?
**************************************

When you work in the open on free software, you create a body of work that follows you for the rest of your life. Rather than a coding assignment done by thousands of other students and relegated to the bottom of the drawer at semester's end, working in FOSS is a chance to contribute to a living project.

Working in Free and Open Source - FOSS - gives you a chance to:

- Work with real-world, large codebases.
- Collaborate with real engineers and other professionals.
- Contribute to something meaningful while learning and earning.
- Learn tools and processes that are just like what you are going to use if you work in technology after graduation.
- Make friends and connections around the globe.
- Attract attention that can possibly result in an internship or job after graduation.
- Create lifetime connections and associations.

Why work with Mautic?
*********************

Mautic is relatively young and has a small but active contributor base - you have the chance to really make a difference in the community and project. Mautic is a welcoming, friendly and diverse community.

People who contribute in the Mautic community and do good work get noticed. They get hired for jobs from it. Experience and reputation in the Mautic Project communities can be influential in your career in many ways.

You should know that contributing to FOSS doesn't require you to have super programming skills, or super-anything else. You just need to have interest, curiosity, and a willingness to become comfortable being productively lost. This is the state of learning. You learn by finding your way around and figuring things out with the support of your mentor and the community.

Student responsibilities
************************

You are the key ingredient for your project's success. This project is important to you, your mentor, and the entire Mautic Community.

Your responsibilities include:

- Communicating early and often with your mentor.
- Updating every week about what you're learning, how you're doing, challenges and successes. This is key way to keep the entire Mautic Community informed.
- Working with your mentor on realistic achievable milestones that provide for regular deliverable targets and feedback.
- Attending the brief student calls, as announced
- Being accountable for your success and your actions

Student application
*******************

Please read and follow the student application process below.

Google Summer of Code application process
=========================================

Interested in applying for Google Summer of Code with Mautic? Here is how you do that.

The following are specific guidelines for students to use to submit an application for the GSoC program through the Mautic Project. Please go through these carefully and follow them. Applications must be complete by the deadline. Late applications aren't accepted.

Important
---------

- Google sets timelines for the entire program. Follow the timeline.
- Applications are due in Google's system by April 2 2024 - 18:00 UTC.
- You must submit applications in the Google system. This is the only way to apply.
- The final application upload has to be as a PDF.

Student application process
---------------------------

Learn
~~~~~

Before you do anything, learn about the program and about Mautic. Mentors don't have the time to explain to you what Mautic is, how it works or how to get set up locally - all of that's already well documented. Check out the :xref:`Mautic Contribution guidelines`.

These links may be helpful:

- :xref:`GSOC Official Site`

Communicate
~~~~~~~~~~~

Begin communicating with the community. Mautic community members can help you understand the existing project proposals. If you're going to try and propose your own project, this is a great way to understand the needs of the project and find a mentor.

- Join the community on :xref:`Mautic Community Slack` at ``#gsoc-discuss``
- Join the Product Team chat in ``#t-product``
- Get involved with the weekly Open Source Friday sprints by testing bug fixes and new features

Don't forget to reach out to mentors on projects that interest you to learn more. If you're going to propose a project you must have a mentor at the time of proposal.

Apply
~~~~~

Student applications open on March 18 2024 - 18:00 UTC.

The application process consists of 3 steps:

1. Create an account on the :xref:`Mautic Community Forums`
2. Join the #gsoc-discuss and #t-product channels on Slack
3. Submit the application/proposal including all requirements in the next section at the Google Summer of Code Site. It's **strongly** encouraged to not submit your final PDF until you get feedback about the proposal from your mentors. Ensure you leave good time for their feedback - they're busy people with full time jobs.

Help is available. Share your application in progress and get feedback. The mentors can help verify your understanding of the project and provide guidance on whether your plan is good.

If you are submitting an original proposal you **must** find a mentor. Proposals without mentors aren't accepted. Sharing your proposal is key to doing this.

If you don't want to share your proposal publicly consider using something like a Google Doc and sharing a link with the mentor/reviewers.

Google Summer of Code application and supplemental material requirements
------------------------------------------------------------------------

In addition to the information Google requests, the Mautic Project requires you to submit the following information as part of your proposal:

- What project are you applying to? Seriously consider choosing a project for proposal from ideas list. While it's possible to propose your own project, it's often more successful for you to select one that's already proposed by a mentor.

- Contact Information - List your Name, Email Address, Blog URL, and any additional contact information you think could be helpful. The contact channel used tends to email so be sure you're reading your email.

- About You - Consider these questions

- Do you have any past involvement with the Mautic Project or another Open Source project as a contributor? What kind of contributions have you made - code and non-code? Please share any public contributions you have made - URLs, etc.
- What are you studying? Why?
- What motivates you to do your best? How do you stay focused? Briefly describe how you organize your work.

- Why Mautic? - Consider these questions

- Why do you want to work with the Mautic Project?
- Do you plan to continue contributing to the Mautic Project after GSoC? If yes, what projects are you interested with?

- Why This Project? - Consider these questions

- Which specific project interests you? If you are proposing your own project, do it here. If you are proposing the project, explain why it benefits the community.
- Have you contacted the mentors listed for the project?
- What relevant experience do you have for this project?
- What do you want to gain from this project?
- Describe this project in your own words. What does it mean to you? What do you think the final deliverable is?

- Why should Mautic choose you over other applicants?
- Propose a rough schedule for this project. Ideally you'll have regular deliverable tasks throughout the entire period.
- What are you specific plans from May to September - for example, exams in university, internships, vacations, etc. It's important for the mentor team to know if there are periods of time where you are likely to be unavailable so that the organization administrator can set the project length accordingly. This doesn't impact your chances, however it's important to highlight soon as possible if you need time out during the coding phase.

You must submit a PDF version of all of the information you prepare with your application using the Google site. The PDF should consist of the information from the supplemental application requirements section below. It should also contain any custom project you are proposing, if any. Mautic can't consider students who don't submit this PDF on time.

Students aren't judged on the visual layout of their PDF, however all information must be readable.

A note on using AI to write your proposal
-----------------------------------------
The team is increasingly seeing the use of Artificial Intelligence to write proposals. While this can be a useful tool, it's important to remember that the proposal is about you. It's about your understanding of the project, your motivations, and your plans.

If you use AI to write your proposal, make sure you review it carefully to ensure it reflects you and your understanding of the project. Also, prepare yourself with the technical knowledge to discuss the project in detail.

Mautic mentors interview all shortlisted candidates. You're expected to be able to discuss your proposal in detail, including exploring your ideas for how you plan to implement the project. Mentors don't expect you to go into detail of every function and controller, but they expect you to have a reasonably familiar understanding of the project architecture and the technology you'll be working with.

Keep communicating
~~~~~~~~~~~~~~~~~~

The importance of frequent communication can't be over-emphasized. Keep talking, and listening, to the discussion group, to the sub-projects relevant to your proposal and to potential mentors. Be patient, as mentors and other contributors are often very busy people.

This content came from the excellent guide from the Fedora Project shared under :xref:`Creative Commons`
Binary file added docs/contributing/images/Summer_of_Code.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
15 changes: 15 additions & 0 deletions docs/css/theme.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
.wy-side-nav-search, .wy-nav-side {
background-color: #4e5e9e;
}

.wy-menu-vertical p.caption {
color: #fdb933;
}

a {
color: #4e5e9e;
}

.wy-menu-vertical a, .wy-side-nav-search>a {
color: #ffffff;
}
7 changes: 7 additions & 0 deletions docs/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,13 @@ The vision is that it grows over time as the teams and governance structure evol
teams/education_team/education_team
teams/education_team/contributing_docs_rst

.. toctree::
:maxdepth: 2
:caption: Contributing
:hidden:

contributing/google_summer_of_code

.. toctree::
:maxdepth: 2
:caption: Resources
Expand Down
7 changes: 7 additions & 0 deletions docs/links/GSOC-ideas.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
from . import link

link_name = "GSOC project ideas"
link_text = "GSOC project ideas"
link_url = "https://community.mautic.org/assemblies/gsoc/f/93/"

link.xref_links.update({link_name: (link_text, link_url)})
7 changes: 7 additions & 0 deletions docs/links/GSOC-official-site.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
from . import link

link_name = "GSOC Official Site"
link_text = "GSOC Official Site"
link_url = "https://summerofcode.withgoogle.com/"

link.xref_links.update({link_name: (link_text, link_url)})
7 changes: 7 additions & 0 deletions docs/links/cc-by-sa3.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
from . import link

link_name = "Creative Commons"
link_text = "Creative Commons"
link_url = "https://creativecommons.org/licenses/by-sa/3.0/legalcode"

link.xref_links.update({link_name: (link_text, link_url)})
7 changes: 7 additions & 0 deletions docs/links/mautic_assembly.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
from . import link

link_name = "Mautic Assembly"
link_text = "Mautic Assembly"
link_url = "https://community.mautic.org/assemblies/gsoc"

link.xref_links.update({link_name: (link_text, link_url)})
7 changes: 7 additions & 0 deletions docs/links/mautic_contribution_guide.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
from . import link

link_name = "Mautic Contribution guidelines"
link_text = "Mautic Contribution guidelines"
link_url = "https://mau.tc/contribute"

link.xref_links.update({link_name: (link_text, link_url)})
19 changes: 6 additions & 13 deletions pages/06.policies/08.mautic-community-partners-program/docs.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,21 +21,13 @@ There are two elements that we consider when reviewing an application to join th

### Financial Contribution

It is required that all Community Partners are financially supporting the growth of the Mautic community on a monthly basis. This can be through our [Open Collective][open-collective] or through [Github Sponsors][gh-sponsors].

Recognizing that there are huge differences around the world of affordability, we have decided to use the “Big Mac Index” to set the monthly contribution level that is required based on the geographic location of the organization’s headquarters.

This means that for organizations based in the USA, the requirement in April 2021 would be $100 per month, and if you are located in India this would be INR 3357 or roughly $45.96 per month, whereas European countries would be contributing €75, approximately $90.

We have all the countries listed on [this spreadsheet][bm-sheet] from the official Big Mac Index released by The Economist, and if your country is not listed, just send us a pic of you with the price of a Big Mac in your country (or let us know of a comparable country if they are not sold in your location) and we can let you know the contribution that would be needed to qualify.

We do appreciate that this is not a perfect measure, but we hope that it at least allows us to make sure that there is some fairness when it comes to the financial thresholds.
It is required that all Community Partners are financially supporting the growth of the Mautic community as a [Corporate Member of Mautic][mautic-membership]. All memberships are paid annually and via our [Open Collective][open-collective]. Prior to v2 of the Mautic governance model which came into effect on 12th December 2023, companies who sponsored Mautic at $100 per month or more were also eligible. Companies who were already sponsoring at this tier when the new governance model came into effect and continue to do so are 'grandfathered' in, providing that their sponsorship continues at this tier, for a period of 12 months. This gives them them until 12th December 2024 to transition to becoming a Corporate Member in order to maintain their status as a Mautic Partner.

### Practical Contributions

Of course money is not everything, and in fact contributing to Mautic in practical ways, whether that might be through code contributions, leading a team, organizing official events or meetups, contributing to the Documentation resources that we have or working on tasks in one of our five Community Teams are all vital to the growth of our community.

For this reason, organizations who are wishing to become and maintain their status as a Mautic Community Partner must demonstrate regular, meaningful contributions to the Mautic Community from their staff.
For this reason, organizations who are wishing to become and maintain their status as a Mautic Community Partner must demonstrate regular, meaningful contributions to the Mautic project from their staff.

We measure this in several ways including through the Community Dashboard, reviewing team activity, and engagement in the various projects that teams are running.

Expand All @@ -44,14 +36,14 @@ Organizations who are not able to demonstrate a consistent contribution history
Ranking of organizations
------------------------

We will be ranking the listings in the Partners Program by their activity over the previous month, with the top three partners listed on the homepage of mautic.org with links to their Partner page.
We rank the listings in the Partners Program by their activity over the previous month, with the top three partners listed on the homepage of mautic.org with links to their Partner page.

How do I become a Mautic Community Partner?
-------------------------------------------

### Become a monthly sponsor

The first step is to start financially contributing to Mautic on a monthly basis if you do not already. To do this you can either [sponsor Mautic on Github][gh-sponsors], or you can back us on the [Mautic Open Collective][open-collective]. You will find the required minimum amount on the [spreadsheet][bm-sheet] - please get in touch if your country is not listed.
The first step is to start financially contributing to Mautic as a Corporate Member if you're not already. To do this you can sign up on the [Mautic Open Collective][open-collective]. Be sure to switch to your organization account before you proceed with payment, so that it's associated with your company.

### Become a consistent contributor

Expand All @@ -68,7 +60,8 @@ Be sure to include the name of your team members as this is how we will check on
We will review the application and get back to you as soon as we can.

[makers-takers]: <https://dri.es/balancing-makers-and-takers-to-scale-and-sustain-open-source>
[mautic-membership]: <https://mau.tc/membership>
[open-collective]: <https://opencollective.com/mautic>
[gh-sponsors]: <https://github.com/sponsors/mautic>
[bm-sheet]: <https://docs.google.com/spreadsheets/d/1VctW_ZSySbnKpgfR4981qmUJUkglqP-ddwU8pclQMoA/edit?usp=sharing!>
[partner-application]: <https://forms.gle/AmDguCb5zZT9wMxB7>
[partner-application]: <https://forms.gle/AmDguCb5zZT9wMxB7>

0 comments on commit c5d844f

Please sign in to comment.