Zé Vinícius bio photo

Zé Vinícius

I convert maths into code :)

Email GitHub Twitter LinkedIn Instagram Speakerdeck Google Scholar Skype Stackoverflow

Hi everyone!

In this blog post I am going to briefly describe some important steps about the Google Summer of Code program.

Although writing a proper and objective application and submitting patches to the organization are paramount to get accepted, I am going to cover some aspects which come before actually writing the application itself.

Step 1: Start contributing to your target organization asap

Usually most open source organizations use git and GitHub to manage their code development. So, create a GitHub account, learn how to use git, and start looking for issues on the GitHub issue tracker of your target organization. Mentors will take into account the fact that you were around submitting useful patches to the organization way before the GSoC application period starts.

Step 2: Quality is better than quantity

Don't rush trying to solve one million issues. Focus on issues that are interesting to you and read the organization's development guide thoroughly. Doing this you can avoid making mistakes (specially those covered in the dev guide) while submitting your first patches. If you are fixing a bug or adding a new feature, make sure to add unit tests that correctly covered them. Make sure your commit message falls under the standard of the organization. All in all, these little things will show to mentors that you are proactive, organized, and that you can work independently. Also, your potential mentor will have a better idea of your current programming skills if you solve more difficult issues. However, solving easy-fix issues is also great to make you acquainted with the git flow.

Step 3: Focus on one project

Pick the project that sounds most interesting to you and focus all your efforts on it. Writing one excellent application is better than writing four good ones.

Step 4: Show your passion

This step is more actually part of the application itself.

People easily recognize when you are passionate about something. There are lots of ways to show you are really eager about a specific project. Let me show that through an example. Let's say the project you will apply for involves developing some statistical technique. Have you solved issues directly or partially related with the project you are applying for? Have you written blog posts about any topic involving some sort of statistics? Have you done personal projects in which you applied statistical techniques to solve a problem? Have you done internships before in which you used some statistical techniques? Have you participated in any kind of activity involving statistics (teaching assistance, research assistance, etc)? If your answer to any of these questions is "yes", then you should definitely mention that on your application.

As a matter of fact, here is my GSoC application of 2016, for Astropy!

If you either think this post is useful or you have any questions regarding GSoC process leave a comment down here. Hope it helps!