Google Summer of Code/Mentors
If you are considering to become a mentor for the Google Summer of Code program next year, learn more below.
Before the programEdit
- Read the GSOC mentors manual to get an overview of your responsibilities.
- Add a #Google-Summer-Of-Code-20XX tag to a project on Phabricator that you would like to mentor (example).
- Update the task description on Phabricator to match the template given for the #outreach-programs-project.
- Accept the invitation in the email sent by Google to become an official mentor.
- Talk to interested candidates. Share with them project details, goals and some ideas for implementation.
- Point them to self-contained, easy and newcomer-friendly microtasks listed in the task description.
- Communicate your preferred medium of communication and active hours to applicants. We suggest using public forums like Phabricator and Zulip instead of private email threads.
- Allow all potential candidates to submit proposals for the project until the official deadline.
- Review proposals on Phabricator and give feedback (ideally within one week of any request-for-review raised by applicants).
- Assess proposals by following the selection process tips indicated below.
- Inform organization administrator about your decision.
During the programEdit
- Set development & communication plans with your mentee.
- Encourage them to participate in the community bonding period following our guidelines.
- Set aside time in your schedule for a weekly meeting with your mentee via video call.
- Aim to get a Minimum viable product (MVP) out the door. Fine-tune plans as needed.
- Help host new projects created during the program on Wikimedia Gerrit. See Gerrit/New repositories.
- Stay in close communication with your mentee.
- Require your mentee to submit new code for review often, ideally every alternate day.
- Require your mentee to submit weekly reports.
- Submit timely project evaluations to organization administrators.
- Before the program ends, make sure to document any open tasks, file known bugs or merge leftover code.
After the programEdit
- Share your conclusions of the project in communication channels, wherever appropriate.
- Suggest or help with any improvements of our outreach program guides.
- Communicate to organization administrators any lessons learned.
- Recommend next steps to your mentee in the current project or wherever you think they might fit in our community.
Selection Process TipsEdit
- Seek long-term contributors, not just new features. It probably takes more time to mentor a project than to complete it yourself.
- Choose the best candidate, not the one that arrived first.
- Don't choose a candidate based only on a convincing proposal and past experiences. They must complete our recommended program guidelines.
- Be transparent in your communications with contributors and treat them all fairly.
- Don't share any information about final results with your candidates before the official announcements. This also means:
- Do not assign a specific Phabricator project, or its dependencies to any potential candidates before the official announcement.
- Don't make up your mind on a candidate before the submission deadline. Allow all potential candidates to submit proposals for the project until the official deadline.
- Do not share a single project idea between two candidates. Try breaking it up into individual non-overlapping modules for better evaluation of individual efforts.
- Look for feedback and endorsements on the proposal from the community members
- It's recommended to interview your candidate via an online medium.
- Ensure that participant would be able to put the number of hours as expected of them from the outreach program.
- Score your mentee and report to the organization admins. You could use the system below to rank them on a 1-5 scale (adapted from the Outreachy program):
- 5 = amazing applicant, could become a maintainer on completing the program, made extensive contributions of high quality
- 4 = strong applicant, will certainly do a good job, made substantial contributions of high quality (> ~50 lines of code or equivalent)
- 3 = good applicant, but is somewhat inexperienced
- 2 = is unlikely to do a good job
- 1 = not a good candidate
- Additional free software experience indicator(s)
- + = enthusiast based on past actions (e.g. has a blog, has been to conferences, has an active GitHub account, or contributed to free software for some time)
- 0 = proficient user of free software
- - = no experience or very new to free software
- In case of a GSOC/Outreachy overlap -- consider a female GSoC applicant for Outreachy only if they are best or only candidate for a project that is not receiving a GSOC slot.
- If two applicants are ranked equally based on their contributions during the application phase, only then, consider their prior contributions to make a final decision. We strongly discourage giving priority to someone with prior contributions and fewer during the application phase over another candidate with more contributions during the application phase.