This is not your every other "how to crack GSoC" blog. This is just a reflection of my Open Source Journey. Cracking GSoC is such a wrong term given to an Open Source program. This blog is what I did, how I started and where I am now. In no ways, this should be considered an absolute guide! Cheers ❤️
What is Open Source?
The term open source refers to something people can modify and share because its design is publicly accessible.
The term originated in the context of software development to designate a specific approach to creating computer programs. Today, however, "open source" designates a broader set of values—what we call "the open source way." Open source projects, products, or initiatives embrace and celebrate principles of open exchange, collaborative participation, rapid prototyping, transparency, meritocracy, and community-oriented development.
What is meant by contribution?
Quoting this from my friend Shubham's blog
If you’re a new open source contributor, the process can be intimidating. How do you find the right project? What if you don’t know how to code? What if something goes wrong?
Don’t worry! There are all sorts of ways to get involved with an open-source project — you don’t need to know everything just to get started.
For anything more than a typo fix, contributing to open source is like walking up to a group of strangers at a party. If you start talking about llamas, while they were deep in a discussion about goldfish, they’ll probably look at you a little strangely.
Before jumping in blindly with your own suggestions, start by learning how to read the room. Doing so increases the chances that your ideas will be noticed and heard.
I was more into hackathons than in Open Source during my 2nd and 3rd year of engineering. I was using a lot of Open Source tools in my projects but wasn't aware of the contribution process. Fast forward to December of 2019 I decided to look towards Open Source and participate in Google Summer of Code.
I picked up Mozilla as my contributing organization. This was my first open-source contribution ever. And I had so much learning and experiences out of it. I learned quite a lot while contributing. I worked with Docker, Django, Data Ingestion pipelines, etc.
And then I applied to GSoC. But unfortunately, I was not selected. I was super disappointed at first, but realize that this was my first open-source contribution in general, so I had a long way to go ahead!
It took me almost 3-4 days to get back on track. The first order of business for me was to get feedback from my mentor, understand my shortcomings and work towards being a better version of myself. I started contributing and creating projects at DSC TIET. Since I started this community, I was responsible for maintaining the quality of code and best Open Source practices. This experience really helped me to develop overall.
After this, there was no looking back. I picked up another project in Mozilla (OpenWPM) and contributed some basic code there.
Then I applied to MLH Fellowship and got in! I was selected for the Fall'20 cohort under the Open Source Track 🎉
I contributed to the Julia Language under MLH Fellowship. This was an amazing learning journey for me. I picked up a lot of skills like open source ethics, code style, etc.
Fast forward to February 2021, it was time for me to apply for GSoC'21. This time I made sure that I am more methodological than before.
- Made a list and did an analysis of previous year organizations that participated in GSoC, matching with my stack.
- I was more into receiving feedbacks and avoiding unnecessary contributions.
- I made sure that I was thinking about the mentor's time commitments.
Fast forward to May 17 (result day). The clock was ticking and I was checking my mail every 5 minutes. At 11:21 PM IST, I got an email from Google!
My first reaction to this mail was that I started crying. I could not believe that I finally got selected in GSoC. I refreshed the mail 2-3 times just to make sure that it wasn't any technical glitch.
For me, GSoC wasn't just an open-source program. It was my personal goal, the one goal that I set for myself when I started my college journey. And it felt so surreal when that goal was achieved.
For those of you who are reading this as probably a first timer or someone who got rejected from open-source programs - This is just a program. This is by no means, the definition of open source contribution. Nothing should stop you from contributing to open source, and let selection in any of the programs be an outcome of your contributions!
I will soon write a technical blog of the same journey, which will highlight more of my technical progress.
Feel free to catch up with me on any of the socials. You can find the relevant links on the top right corner of this blog!