Insiders Secret To Cracking the Google Summer Of Code — Part 2
This is a two part series on how anyone can up skill and confidently apply for the Google Summer of Code (GSoC). The first part dwells on what GSoC is, the experience of 4 scholars of GSoC 2018 and how to get started in the preparation phase. The second part explores how to find a starting point to apply for GSoC and the Q&A session with the students.
We have seen how one must prepare to have the skills essential to get started with Google Summer Of Code. Now we shall see how you can get an edge during application phase.
Now comes the phase to put your skills to use. The world of open source provides you with several opportunities to learn and get better. The gist of this phase can be summarized to this:
keep contributing to the open source
Here are a few steps to get things rolling for your Google Summer of Code Application:
- Find an Organization: Google Summer of Code has several organizations that seek out students to contribute to their projects (or even suggests ideas of your own!). To begin, go to the organizations page of Google Summer of Code and take your time to browse through the hundreds of options for you to choose from. You can use filters such as theme of the company to narrow down your search. For each organization, see the open sourced projects that they have. You may/may not know how to work on it yet, but don’t let that limit your curiosity to see the wonderful ideas that organizations need help in. For where there is a will, there is a way. If done properly, this step should take you about a weekends time to narrow down your choices (yes, you can choose as many as you like for now to see which one works better). Try to finish this step as early as possible, preferably by November-December as the latest. The more time you get to try out, the better are your odds of getting through.
- Start Contributing: After you shortlist the organizations/projects you like, start contributing to the top priority ones. If you do not know the technology involved but selected because of the idea, spend some time learning the required skills, find help to basic doubts and keep learning. Once you gain confidence, you can send patches in regular intervals and see the response that comes from it. This will not only provide you an idea of how the organization works, but also build your self confidence. When you need help, do not be afraid to ask! This is the power of open source; it is a collaborative network where everything is sorted and support is perpetual. You can reach out to them via the messaging channel on the platform on which they exist (gitter/slack/IRC).
- Contribute until organizations are announced: By end of 3–5 months of contributions, you should have a glittery contributions chart on GitHub and a confident personality. By march the list of organizations selected for Google Summer of Code will be released. Go through the organizations and the projects they offer. Trim down your options and finalize on the ones you wish to spend your summer working for. Once your mind is set, work with full dedication towards the selected project(s), as doing so will give you a better chance to get shortlisted if you have been contributing for some time already.
- Make the proposal: This is the document that explains why you wish to work with a particular project of the organization and what impact/changes you wish to bring to it. Spend some time thinking about this, but ensure you send your proposal at the earliest, as it gives you more time to accept suggestions from mentors to make the proposal better. More feedback means a better proposal that fits the organizations goals. Yet, the golden rule remains the same: keep contributing even after you submit the proposal. It indicates your seriousness towards the program.
- Keep Contributing! : This is the step that many applicants tend to miss out. Submission of the proposal does not mean that your work is done. In fact you must double your contributions and effort towards the new project you have chosen as this creates a good impression about your pursuit to make the world of open source better :) Companies want students to contribute to their work, so if you prove your genuine interest, they will be more than happy to take you in.
Keep these tips in mind and execute it when the time is right. Always ensure there is a community to which you can go and clear your queries anytime. The key to getting into GSoC is progressive learning and regular contributions to the open source.
- Shouldn’t we do the coding only once the project starts in the summer? Not really, because the earlier you start, the better are the chances of the organization to choose you to work with them for GSoC as you have already displayed commitment and dedication to make the open source community better.
- What if the organization I contributed to from December to March did not get selected for GSoC? Would the effort go in vain? Not really. The 3–4 months that you spent contributing helped you get into the flow of being in the open sourced community. The new organization that you apply to will see your passion for Open Source and that itself is noteworthy. Also, when you choose the new organization for GSoC, do remember to start contributing to that organization with more intensity and frequency. This will help as there is a gap between the student proposal application submission and proposal shortlisting period. Your contributions can positively impact the verdict of the reviewers as now they can see a dedicated coder working tirelessly.
- How to balance between academics and GSoC? Mentors and the team you work with decide upon a schedule. If you start preparation from November as suggested, the transition should be seamless. There might be times when work increases, but at important times like exams at the university, telling about it to your mentors ahead of time should give them enough space to compensate for your absence. The community is very understanding and you will be adjust your time to fit in this as well.
- How do I get started when I wish to contribute to an organization? In github, if you go to the issues tab, you will see a lot of possible ways you can contribute. There are tags associated with each issue that indicate the difficulty level. You can start with simple ones and later progress towards the more challenging ones. In time, you will get a hang of it and things will roll easily. For example, Adarsh’s first commit to the organization was simply a change of double quotes to single quotes in the program! All it takes is a mindset to try and people are always there to help if you get stuck
- What do I do when I get stuck? If I ask too many doubts would I not be disrupting the work? Not really. On the contrary the channels of open source organizations have several active members who will get back to your queries within a couple of hours. Aswin did his project at Zulip, a communication software and so he can well explain that asking your doubts is the first step to solving your problem.
- When I contribute to an organization, what if my code breaks the system? The organization you contribute to will have a lot of safety measures to ensure this does not happen. Infact git ensures to a great extend that the codebase remains stable. There are moderators and code reviewers who cross check to ensure this. So do not be afraid of this — Start tinkering and be ready to make mistakes and learn from it, but be assured no one else will be impacted as a result.
- What are the key points to keep in mind while working as a team? Maintain good communication, ask for help if you need help and take the time to answer the queries of other developers. A good community takes a good member. Just be the role model for new developers who join and the positivity will continue. Saran was given author rights because he proved to be a good member and a dynamic participant in the project.
- I do not know how to code as great as these scholars. Am I not keeping my expectations too high? Most of the scholars got through GSoC after several failures and attempts to learn from mistakes. Experience taught them a lot and that is what lead them here. Even if you are worried of not getting GSoC next chance, you must still try preparing for it, because that is experience and in time it will reap benefits. Vidyadheesha considers himself to be an average to below-average student. “Do not be afraid to try anything new” is his answer. GSoC is not only for amazing coders, it is also for those who dare to go beyond their comfort zone and learn to adapt with each problem.
To view the presentation Adarsh made for the session, you can click here. It contains re-directional links to several useful resources on your journey to apply for Google Summer of Code.
You can watch 15 minutes of the presentation Adarsh took by clicking here.
FOSS Cell at MEC aims at bringing out new coding talents and open source enthusiasts to come forward and contribute to…fossmec.github.io
You can learn a lot more beyond this article about GSoC, such as how to make a good proposal, from the official website website.
Update: Thank you Vaibhav Gupta for sharing this resource. You can find out the statistics about the organization you wish to contribute to (how many projects undertaken each year, and much more).
If you are a student of Model Engineering College and would like to apply for Google Summer of Code after reading this, we would love to help you by getting you connected with our community and get additional support to enhance. Kindly do the following steps:
- Go through the projects of various organizations present on the website.
- Choose the ideas that interest you (You need not know how to contribute just yet but if you like the idea of the project, jot it down)
- Send a mail to firstname.lastname@example.org with a short description of yourself and the projects you have shortlisted. We will get back to you shortly after that.
Thank you for reading through this article. FOSSMEC is the Open Source community of Govt. Model Engineering College and we strive to empower students to become better developers and problem solvers.
For any queries, feel free to drop a mail to email@example.com. We wish you all the very best on your pursuit for Google Summer of Code.