Google Summer of Code is the dream of many open source programmers — even without the monetary perks, it is a thing worth striving for.
Getting accepted for GSoC seems daunting at best and herculean at worst. It seems like a tough nut to crack. So, in this article, with the help of a few open source enthusiasts, Most of them certified GSoC-ers, I hope to break down this seemingly intimidating task at hand — Try to break down the process so that GSoC seems more achievable.
STEP 1- Get acquainted with open source
Well, that’s not too hard, is it?
If you don’t know any language, that’s your start.
Now two roads diverge at this wood- learn a language you feel comfortable with, if you’re not too sure of the project you want to be involved with.
If you are sure about the flavour of project you want to do, full steam ahead, and learn the language that necessitates.
Next, learn how to find your way around a version control system- Git , Mercurial or the like- Git is the most popularly used one.
Next, look up the repository of open source projects- skim through the code base of companies, especially ones that have been listed for GSoC in the past.
This is about learning to work in a team, how to write good code, teamwork, and of course- contribute. Introduce yourself in the open source community, and keep in mind that for every organization, the style of writing code differs just a tad bit — get the hang of the style for a few organizations and try fixing easy bugs (If you want to fix an existing bug, leave a comment on the issue, and wait for conformation before proceeding to work on the bug) — this gives you a flavor of the code base, and after a week or so, you can try skimming through the code base, and proceed to more challenging bugs, or patches, or even help build the documentation.
Gentle reminders at this point — getting the code base and setting it up is the hardest part- the rest is relatively simpler.
Every organization, has guidelines to set up its codebase in a developer environment, and also a robust community of open source enthusiasts who are all to ready to help just about anyone with an interest take their fledgling steps- after all, like any good collective effort, every little contribution matters in open source.
Step 2- Find the organizations you want to work for.
Interest is key. You can search for organizations based on your area of interest/language of interest.
Around early October, Select 3 to 4 organizations that have been listed for GSoC in the past, and go through their projects and homepage issues. Try not to go with the flow and choose only well known organizations, lesser known organizations have interesting projects, along with a greater chance of your proposal getting selected.
Set up the codebase of the projects, compile it and run- generally this makes it easier to find bugs, or go through existing issues. From December to February, try to make your presence felt in the organization.
GSoC selections depend to a great extent on how active you are in the organization- aim for at least one issue/fix per week. Once Google releases the list of organizations that are included in GSoC, restrict yourself to one, at most two projects, and increase your contributions to those projects- as a rule of thumb, two issues/fixes per week.
Apart from this, try to join online discussions on various issues and try to contribute your thoughts to the same.
Step-3 Draft your Proposal.
This is one of the most crucial steps of your GSoC application.
Take at least 10–12 days to frame your proposal. Try to frame it early, as mentors can review it, and guide you further. Try to frame the proposal along the lines of the organization’s expected projects, which they put up immediately after Google’s announcement. (You can frame an entirely new proposal of you have started early on and have been very active, but it is tedious to get an organization to select a proposal outside their scope.)
Describe your work in detail with clarity-
Your proposal should advertise your work, and highlight how you would be useful to the organization. It should include — what you wish to do, how you wish to do it, if possible- a mock-up of how it would look like and a timeline of your proposed work and how your work is going to benefit the organization. In addition, include your existing contributions and provide links to the same.
Try to keep an active profile in the organization even after submitting your proposal, as it can increase the chances of your proposal getting noticed more. And yes, of course, keep your fingers crossed and hope for the best.
Do your best
At the end of it all, if you do get selected, keep in mind, it is impressive to get selected for GSoC, but it is even more impressive to get selected and complete your project in the best possible way- to become a certified GSoC-er.
( This article is written based on valuable inputs from Jigyasa Grover, Chavi Gupta, Harshit Dwivedi and Sanya Khurana — Most of them have cleared GSoC and all of them are open source enthusiasts — Thank you for sharing these tips and tidbits- Your enthusiasm is infectious ☺)
Upcoming Workshops at HelloMeets
Blog credits : Arathi Krishna S