GSoC Prep

May 1, 2018

Before the orgs were announced

Since I enrolled into Engineering back in 2014, I wanted to participate in GSoC. I tried to apply in 2016 and 2017 but didn’t get in. This is my final year of Engineering and this year I meant business.

I was interning at Network Intelligence India (1) Pvt. Ltd. when the program schedule for 2018 was announced. I didn’t have a concrete plan in mind at that time but I knew that I wanted to apply. I quit the internship in December to give myself enough time to prepare. Apparently some students start preparing as early as September!

I was new to open source and hadn’t contributed to any project on GitHub before. So, I started with looking for easy issues to solve such as typos in Readmes and Documentations and stuff like that. I subscribed to first-timers-only and Up-for-grabs in search for small bugs and low-key projects which needed help. I wanted to aim big and so I also started re-reading the code for AIMA-Python and fixed some typos initially.

NOTE 1: Read as much code as you can. It will give you new perspective on how you can approach problems and how simple code can be.

I had the GSoC timeline memorized so as to not miss out on any important event. To see where I had a shot and which organizations had been selected before, I created a small Jupyter-Notebook to analyse which orgs according to the technologies used (Python, Node) and how many slots had been given to them. I’ll add the notebook to GitHub soon (it needs some cleaning).

Until the orgs had been finalized (12 Feb 18), all I could do was read code and contribute to as many organizations as possible. This lead me to contribute to projects such as intermine/similarity and jarvis and ofcourse aima-python.


After the orgs were announced

I took about 3 days to finalize the organizations that I was going to apply for. They were:

  1. Intermine
  2. CHAOSS
  3. AIMA
  4. Retriever

I shortlisted them and started to go through the ideas that were mentioned.

For CHAOSS, we had to complete some microtasks using their technology stack. Because of interning at NII for 5 months, I knew Elasticsearch properly and was able to complete the microtasks easily. I was also active in helping other students out and creating PRs on the projects related to the one I was applying for.

NOTE 2: Always try to help as many people as possible. Open Source culture thrives on people who take out time and help the community grow. And by doing so, you will also learn how the community functions and what is the proper manner to interact with other developers.


Proposal

All the students interested in CHAOSS had to register themselves here. This gave us all a glimpse at the competition we were facing. My project is about adding new Metrics that CHAOSS has defined into the Manuscripts project. These metrics have been divided into 4 categories:

  1. Diversity-Inclusion
  2. Growth-Maturity-Decline
  3. Risk
  4. Value

For the proposal, I thought of directly engaging with the metrics and detailing one by one how I would add them into Manuscripts.

You can find my proposal here.

Note 3: Proposal is the most important part of GSoC. You have to have a unique proposal which is well thought out and accounts for any setbacks and any other loss of your time. Make sure to leave some days at the end so that you may use them if an unaccounted emergency comes your way.


I’ll be writing more about what my project is and how I am approaching it, soon.

Adios!