How I got into GSoC 2024

Mohammed MohsinMohammed Mohsin
5 min read

What is GSoC?

If you are reading this, then chances are you already know what Google Summer of Code is and how it works. You might want to check out their official site for the perfect explanation if you don't. In brief, GSoC is an open-source program powered by Google that connects organizations to students and professionals to work on their projects over the summer. This is an amazing opportunity for students as they are exposed to real-world code and also get first-hand experience working on production-level projects. And for working professionals, it is an opportunity to dive into the world of open source by making meaningful contributions to open-source projects.

GSoC is not an internship but more of a program to bring people into open-source development. You are, of course, paid decently for your work, which is an additional perk. The stipend varies from country to country and is listed on their website. There are three types of projects - small (~90 hours), medium (~175 hours), and large (~350 hours), categorized based on the time span contributors need to dedicate to that project.

The Journey

Back in January 2024, I was preparing for Summer of Bitcoin. I didn’t know that GSoC was now open to everyone (it was not restricted to just students) and I wasn’t planning to do my master's either, so I did not think about it at all. This was my last chance for Summer of Bitcoin, and I really wanted to be a part of it.

Fast forward to March, and I was trying to work on the Summer of Bitcoin assessment that had to be done as part of the proposal submission. I came across a post about GSoC, looked it up, and thought, why not give it a chance one last time? I had a few contacts who had been part of GSoC in the past. I reached out to them with a few questions and stuff. It was around March 20, and there were only about 12 days left to submit the proposal. The SoB deadline was already approaching, but the assessment wasn’t easy, so I thought of doing it later (spoiler: I did not do it at all).

I knew by now that many people would have contributed and become comfortable with the projects and the community. I did not have any advantage over them (except that maybe I had some industry experience). I was planning to apply for projects under the CCExtractor organization, so I completed their required introductory tasks like creating a Grafana dashboard for MyFitnessPal data and creating a macOS release for CCExtractor. But I still was not confident that I would make the cut, so I started looking for other organizations and came across AOSSIE.

AOSSIE had many projects, but I found one project particularly interesting because no one was able to run it correctly at all since the codebase was very old, and it was a native Android app with a Flutter module. That project was Monumento. I spent the next 2-3 days trying to migrate it to a complete Flutter app, fixing many native Android issues, and also the AR functionality. In about 3 days, I had the app fully functional and working with my Firebase. Then an organization admin gave me access to their Firebase account to set this project correctly to use their account with all the data already there.

The deadline was approaching, and I had about 3-4 days to create a proposal, get it reviewed by a mentor, and submit it. I spent the entire day going through many old proposals to understand how everyone did it and what makes a proposal stand out. The very next day, I started working on it and made my first draft. I sent it to my project mentor, and he gave some feedback. I quickly started making changes based on his feedback. His feedback was basically to propose some new features alongside the UI redesign, so I spent some time creating MVPs of the features I was planning and also almost finished the UI design in Figma.

I spent quite a lot of time in the last 2-3 days to make my proposal stand out from the crowd. I submitted it on the deadline day, waited for a month, and when the results came, I was ready to accept my rejection (like in previous years), but it was a selection. It was one of the happiest days for me.

Everyone’s Journey is Different

I've read many blogs where people share their GSoC selection stories, and most of them mention starting their preparation in December of the previous year. While that's the ideal way to begin, don't lose hope if you're starting a bit late. This was the only reason for me to write this blog and share my story. Remember, you haven't lost until the results are announced. If you quit early, you've lost before the results even come out. Believe in yourself, and you’ll succeed! :)

Some Tips

  • Don't do it just for the money :)

  • Your proposal determines your outcome, so make it as detailed as possible and get it reviewed early.

  • It's never too early or too late to start. You can even begin just a day before the deadline (but please don't).

  • Don't focus on too many projects. Limit yourself to a maximum of 2-3 projects so you can dedicate time to each.

  • Quality over quantity. Focus on making meaningful contributions.

0
Subscribe to my newsletter

Read articles from Mohammed Mohsin directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Mohammed Mohsin
Mohammed Mohsin