What is GSoC?
Google Summer of Code is a global program focused on bringing more student developers into open source software development. Students work with an open source organization on a three-month programming project during their break from school.
Here’s an official video on why you should apply:
To summarise:
- Get the exposure of working on open source organizations
- Work on real-world problems with an impact on millions of people
- Become a part of the global network of open source contributors
- Receive a stipend ($3000 for Indian participants)
- Meet new people, develop new skills and have fun
Excited for applying? Me too!
A Brief Timeline
- Open Source Week in NITK (August 2018)
- Organizations announced (February 26)
- Participants interact with organizations (February 26 - March 25)
- Student application period (March 25 - April 9)
- Accepted projects announced (May 6)
My Experience
I am grateful to the NITK Open Source Club and Mohit Sir. Multiple rounds of application review kept me motivated to work. I became confident in my proposal when it came to submission.
I am looking forward to being a part of the club if only I get past these pesky DSA rounds ;)
I had a great experience with the DebianCI community. There is one particular moment that struck me - I began working on an issue, which one of the other participants were working but hadn’t made clear. I was embarrassed, but everyone cheered me on when I found an issue to solve.
What I learned can be summarized in this one quote:
It is the mark of a good developer to implement complicated solutions but the mark of a great developer to come up with a simple solution.
My Mistakes
I wasted an early start
I knew about GSoC and wanted to apply since August 2018. I could have gained enough programming knowledge to start contributing by December, which is a lot of GSoC participants do. I had my organizations finalized by March 1: Matrix-Python-SDK and Amahi.
Attend Open Source Week (if you are in NITK) and start contributing by December.
I picked the wrong organizations
I asked around in the Matrix IRC channel, and the mentors were unreceptive of the project I had chosen. I wanted to finish implementing E2E encryption, started by last year’s GSoC student. I had a quick enough reply, so I hadn’t lost any time.
I went through Amahi’s bug tracker, and the issues were too complicated for me. I asked for some more manageable issues in the IRC channel. Unfortunately, I waited too long for a reply from them and lost valuable time. Getting no response after a week, I abandoned Amahi and started working with Debci.
Be pro-active in interacting with organizations. Fast responses are a great way to judge organization’s culture.
I spent too much time before making the first contact
I had set up the project by 14th March. However, I still waited till 18 March before making the first contact. I was in a disadvantageous position, as the mentors had little time to interact with me.
Initiate contact as soon as you can. Even ‘Hello, I would like to contribute’ is fine as long as follow it up.
I spent time on projects that didn’t matter in the long run
In the build-up to GSoC proposal submission, I was involved in two other projects - IRIS and Publications. Many of my friends remark I spend too much time working on IRIS. The other project, Publications was an ambitious attempt about providing live updates about the election and eventually worked our way to a fully functioning publications site for NITK. We had to scrap the project finally.
My studies and proposal were adversely affected by taking on more than I can manage.
Manage time well and prioritize essential things in life.
I wasn’t active in IRC and discussions
I always had a lone-wolf attitude. I prefer spending time debugging obscure errors and read through source code instead of bugging the developers. While this habit is great for learning, I need to learn how to be a part of a team and work with others.
You have to bug (interact) when working with other people.
Conclusion
I had a great time during and after GSoC with DebianCI. I hope more students from NITK take part in the subsequent years.
Wish me luck for the next year!