Contributing to open source is a great way to hone your skills while working on real-world projects. But, for new developers, this process can seem daunting.
After all, when you create a pull request, you open up your code for people to give feedback and criticize.
This is where open source mentorship programs like Google Summer of Code (GSoC) come in and bridge the gap between new developers and large open-source codebases.
What is Google Summer of Code (GSoC)?
GSoC is an annual program from Google focusing on bringing students and new developers into open source.
Each summer, participating mentees work on open source projects from the hundreds of organizations participating in GSoC. The participating mentees are paired with mentors from the participating organizations and are paid a stipend during their mentorship period.
Here is a quick summary of the program before we dive deep into the details.
|January 2023 - November 2023
|$1500 - $6600
|Anyone about 18 years of age
Why Should I Participate in GSoC?
According to Linux Foundation's 2021 Open Source Jobs Report, 92% of employers say finding people with open source skills is difficult.
Open source skills are in demand, and there is a lack of supply.
Participating in programs like GSoC helps you:
- Gain real-world experience
- Build your network
- Boost your career
- Get a stable stipend
The goal of GSoC is to enable mentees to be good open source stewards. Completing GSoC can open doors for you and could even lead to a career in open source.
Am I Eligible to Participate?
Since 2022, everyone over the age of 18 is eligible to participate.
You should also have a strong desire to contribute to open source and help the community!
When does GSoC Start?
Mentoring organizations can submit their applications till Febrary 7th.
Mentees can start applying from March 20th till April 4th.
See the 2022 timeline for GSoC for other details.
How Long is the Program?
GSoC provides flexibility and allows projects to extend the program from 12 weeks up to 22 weeks.
See the dates of each program milestones for a better idea.
How do I Apply?
The application process is mainly these 3 steps:
- Selecting an organization
- Selecting a project
- Preparing a project proposal
How do I Select an Organization?
GSoC has hundreds of participating organizations each year. Mentees can apply to any of these organizations, but filtering through them and deciding which to contribute to can be difficult without a proper plan.
So, to be in the best position when the application process starts, you have to be prepared.
You can find organizations to contribute to even before they are officially announced. I suggest following the steps below:
- Write down what skills/ tech stack you know currently
- Write down the skills/ tech stack you want to learn
- Filter organizations based on these two criteria
- Look through the projects in the organization to find what interests you
- List down multiple projects across organizations that fit these criteria
How do I Select a Project?
You would have narrowed it down to a few projects under the same or different organizations. How do you go from here? How do you know which project to submit a proposal to?
The key here is homework. You need to learn more about the projects.
Here’s what I suggest doing:
- Start by using the project and see how it works (Is it cool?)
- Review the project’s documentation and contributing guidelines (Are there well-documented processes?)
- Join the project’s community channel (Slack, Discord, mailing lists) (Are they active and welcoming?)
- Pick up a “good first issue” and try to fix it (Is it doable? Do you get support from the mentors/maintainers?)
- Ask clarifying questions about the project on the communication channels (Do you get answers?)
If the answer to all these questions is a solid “yes,” you need to ask yourself the golden question.
“Do I want to contribute to this project?”.
How do I Submit a Proposal?
Now that you have a project(s) chosen, it is time for the most significant step yet. Submitting a proposal.
Like other open source mentorship programs, GSoC can also get competitive. You have to make your proposal stand out to get accepted.
You must communicate with your potential mentors before submitting a proposal to make sure you have the right idea. Clarify the deliverables and establish a realistic deadline before you start writing the proposal.
If you already have prior contributions before you submit the proposal, it would put your application in front.
How will I Get Selected?
Once you submit the proposal, the mentors will review each submission and let you know if you are selected.
If you get selected, it’s time to celebrate!
What if I don’t get Selected?
Don’t stop contributing!
GSoC is highly competitive, and it isn’t easy to get selected. But you don’t have to be a GSoC mentee to contribute to open source. You can do it independently!
The spirit of GSoC is open source and open collaboration. If you keep contributing, you will learn a lot and have a head start for the next year’s program.
If your project participates in any other open source internship programs, you can apply for it.
I’m in GSoC!
The first three weeks of the program will be a community bonding period. You can use this time to get a feel of the community before engaging.
You will get to code in the following weeks. GSoC will provide a part of the stipend once you complete one of the two evaluations.
And as mentioned before, the timeline for 2023 is flexible.
GSoC is a great program. It has and will continue to help attract students and new developers to work in open source.
The goal of this program is not to make some money (money is necessary) but to foster open source software.
The impact such programs have on the community is incredible. And as GSoC mentees, you inherit the responsibility to pay it forward.
So, don’t stop contributing after GSoC ends. Be a mentor next time. Help others in the community.
Best of luck with your GSoC application!
Thank you for reading "Everything you Need to Know About Google Summer of Code (GSoC): Important Dates, Eligibility, Application, Getting Selected and Other Tips."