- Students interested, select the organization they are interested to work with and they get in touch with them.
- A lot of open-source organizations apply to GSoC and once the shortlisting is done Google announces the name of these organizations.
- When the organizations are shortlisted, students submit their project proposals to the selected organization.
- These proposals and ideas are shortlisted by organizations and once it is done they start working together on a proposal and ideas.
- Students then code for these organizations and get guidance from mentors and work on the project during the summer break meeting the deadlines agreed upon with their mentors.
Statistics reveal that India is really doing very well and becoming more good in GSoC competition.
These lists also include Non-IITians so you don’t need to underestimate your capability if you are not from IIT and if you are ready to work hard in GSoC
- If you are a beginner in programming or if you think that GSoC is only for top programmers because this is a worldwide competition and participating in it is not easy.
- First of all, keep in mind that it’s not rocket science if you really enjoy the complete process and programming.
- Also you don’t need to be a Computer Science or IT major, Students from all subject areas are successful GSoC students.
- At least one programming language like C, C++, Java, Python, Ruby also (do you have experience in it at the university level?
- Are you familiar with the version control (How to use Git and Github…)?
- How to contribute to open source projects?
- Are you comfortable with Linux or Ubuntu?… Sorry to be honest but if you will use windows you will get stuck in the middle. Lots of development tools and technologies don’t run well on Windows and almost all of the organizations in GSoC code for Linux systems or servers.
The above things really matter a lot before you jump into GSoC. Your GSoC journey will become a little bit easier if your answer for all the above questions is “Yes”. If it’s no….then don’t worry you can give some time to yourself learning all the above things.
- firstly you need to be good in at least one programming language.
- Once you learned it select a specific domain like android development, web development or whatever you love to pick a specific one and make projects in it.
- Explore the field and get familiar with version control (Git and Github).
- Learn how to contribute to open-source projects and explore some projects on Github. Start contributing and get more experience in your domain.
- Learn to love Linux and get comfortable with it, explore its command and understand the file structure OR You can also choose Ubuntu which is beginner-friendly
- keep in mind that your soft skill is also important in GSoC. You will be interacting with mentors frequently through email, Skype, Slack, Discord, IRC, etc. You will be also preparing documentation, report and blog posts. You may have to attend conferences or workshop and you will also need help from mentors during your contribution to your project so here your soft skill or communication matters a lot in GSoC. You will be able to understand and respond well to the feedback as well.
Done with most of the above things???…Now let’s see the GSoC journey and how to apply?
You will find yourself a more confident developer after completing the journey of GSoC. Below are some benefits we would like to mention:
- You get more exposure contributing to open source projects and you learn a lot about the open-source culture and community.
- You get the chance to interact with the greatest developers around the world.
- You learn a lot of technologies, tools, version control.
- you also build a strong network with good mentors and programmers during this journey.
- The stipend is huge which is $3000 for Indian students(amount varies according to country).
- Particpating in GSoC open a lot of job opportunities for you. The members of your community can refer you somewhere or you can also get the internship opportunity. You can also get the referral for the application in Google for an internship or full-time job position opportunity. A lot of people have been contacted by Google and offered internships/jobs.
- Definitely tag of Google or GSoC gives you international credibility and helps everywhere from attending the conferences to boosting up your resume.
- Select Organizations:
- Start Contributing:
- Keep Contributing Until the Organizations are Announced:
- Make Your Project Proposal:
- Keep Contributing and Wait For the Result:
Here are a few pointers on how to get started —
- If you are sure the organization you want to contribute to will most likely participate in GSoC that year, you can start early and contact their mentors without waiting.
- Doing thorough research on organizations that offer projects under your domain of interest in advance helps speed up the process once the list is out.
- If you have one in mind and have been contributing for a while now, you’re not the one who should be reading this.
- This article is for the rest, who are just starting and have no clue which organisation to even pick.
- First off, pick a domain and language of your preference (ideally, something popular like python or javascript so you’re open to most organisations). - Once done with that, shortlist 3 - 4 organisations maximum. Once done with that, you have to pick a project rather than an Organisation
To choose an organization, head over to the official archive of GSoC Organizations which lists out all the organizations that participated in a specific year.
==> The factors that will help you in choosing an organization are :
- If you are interested in the field the organization is working on (astronomy, history, etc etc).
- Pick the organization that works on the tech stack the same as yours (flutter, javascript, etc etc).
- You can pick the organization on the basis of the tech stack that you are thinking to work on in your future.
--> You must also have to consider some other factors like
- Size of the Organization.
- No. of students Participating this year.
- No. of seats in the last GSoC.
- Every organisation has a ‘View Ideas’ Section (see above) in their description. Make use of it.
- Sure everyone loves new ideas, but the organisation might not have people to mentor that particular tech or it might be too outlandish.
- So unless it’s just that great an idea, try to pick an idea from their list. After all, they know best what they need.
- Picking An Organisation
- Pick a Domain (Natural Language, Programming Language, etc)
- Pick a Language - Optional (Python, C++, JavaScript)
- Shortlist Organisations with Domain and Language (3- 4 Maximum)
- Shortlist Individual Projects of the selected Organisations (2 - 3 Maximum, Ideally 1)
Once You have decided your projects, Sit down and write emails to the mentors
Keep Emailing all the project mentors you've selected back and forth, and once you got the hang of the projects, started working on your proposals.
Things to keep in mind —
- Mentors have a lot on their plate too, so getting a reply from them might take days, so I’d suggest starting as early as you can.
- Not all mentors prefer email, so read the code of conduct on the GSoC website and contact them accordingly.
- Make a good first impression, DO NOT contact them without research, state all the relevant work you have done previously, and make them feel that you know the project.
This step is definitely the most crucial step in the application process.
To write the perfect proposal —
-
Seek help from former GSoCers and ask them to share their proposals.
-
Use visuals in your proposal.
-
Use a clean and professional template.
-
Add stuff about you apart from your previous experiences. Eg. your time zones, your working hours, your preferred communication medium, etc.
-
Write steps that will convince the mentors and reviewers that you won't slack during the course of the project.
-
Most Important — DELIVERABLES
-
Get your drafts reviewed by your mentors and seniors.
-
Writing Your Proposal
-
Get a few things straight before writing it
- Is your project beneficial to the organisation? Why?
- Are you the best person to do it? Again, why?
- Is the project realistic and capable of being finished in time? Know this in detail.
-
Finish all sections of the document
- Your Personal Details (Name, Education, nothing too detailed)
- The Project Idea (Describe it in excruciating detail)
- Why is this Project Relevant?
- Why you are the Best for the Job
- Timeline of the Project
- Objectives and Delivarables
- A detailed per-week Timetable of your proposed work
- Mark Extra Time in case of emergencies
- Any other Obligations you have during the GSoC Timeframe
-
Get someone you know to proofread it (Optional)
-
Getting the Proposal Noticed
- Submit a draft on the website
- Send it over the organisation's mailing list
- Ask for advice on their chat group (IRC, Gitter, Slack, etc)
- Submit the Proposal
-
Post GSoC Plans
After drafting Your proposals, Sent them to all the mentors to review. After 3–4 iterations, it was time to submit the proposals.
Once the proposals are in, an important part is keep following up to the mentors by working on the project.
- Pitch in some ideas.
- Clone the repos and tinker the code.
- Get familiarised with the project interface.
- Ask for articles you could read about the project. All these really cast a good impression on the mentor and the organization and help push you as the best candidate for the job!