(GSoC | Tor) Cover Image

Google Summer of Code 2022

5 min read


As the calendar turned the page into the new year of 2022, the doors of opportunity swung open for the annual coding escapade - GSoC (Google Summer of Code). Little did I know that this would mark a pivotal chapter in my open-source journey.

Back then, having recently started my first job after graduating in May 2021, a college friend asked about my intent to participate in GSoC. I casually dismissed the idea, assuming GSoC was exclusively for college students, as it had been in the past.

Upon further discussion, he updated me that Google had revamped the program, and now, GSoC welcomed graduates as well.

Given the competitive nature of the program and the time-management that will be required alongside a full-time job, I remained skeptical about my participation.

But, I was still leaning towards giving it a shot!

Project Selection

Initially, GSoC releases a list of participating organizations along with the projects they offer. There are approximately 200 organizations, and each of them presents ten to a hundred projects for consideration.

The challenge was to pinpoint the specific project for which I would be crafting a proposal, and let me tell you, it wasn’t a walk in the park. Navigating through the thousands of projects was a bit of a maze, and shortlisting the ones that caught my interest added another layer of complexity.

First Round of Shortlisting

My initial attempt at casually navigating across organization pages and jotting down projects of interest ended in a bit of a fiasco. After navigating only around 40 organization pages, I already had a list of 30 or so projects.

During that time, my only criterion for shortlisting projects relied on my preferred tech-stack and the technologies I was eager to learn. However, considering the scalability of my current method of shortlisting, I had to think of a more efficient approach.

It was time to leverage Notion. I created a table and began adding projects while assigning a score to each project based on a few parameters:

  1. Impact of the project.
  2. Impact of the organization.
  3. Familiarity with tech-stack.
  4. Interest in the tech-stack.

After navigating through all the organization pages, I had compiled a table with approximately 100-120 projects that piqued even my mild interest.

Second Round of Shortlisting

The next step was to trim down the list to around 20-25 projects. To achieve this, I joined the communication channels for all the shortlisted projects. These channels spanned diverse platforms such as Discord, Slack, RocketChat, IRC, and more.

My primary goal in joining these communication channels was to gauge the level of competition associated with each of these projects. Some organizations, such as RocketChat, had even gamified the selection process, featuring a leaderboard of pull requests.

Given a busy routine with a day job, I found myself lacking the time and energy to delve into gamified selection processes or immerse myself in exceptionally competitive organizations. This realization led me to forego these particular organizations. Embracing this pragmatic approach, I efficiently narrowed down my choices to about 60 projects.

From this pool of around 60 projects, I incorporated the previously assigned scores based on the discussed parameters. By doing so, I effortlessly shortlisted the top 25 projects.

Final Round of Shortlisting

With a narrowed-down list of 25 projects, it finally became feasible to delve into detailed research about each one. And that’s precisely what I did.

I delved into the codebases (if they were already available), immersed myself in project documentation, acquired insights into the business and technical prerequisites, and actively engaged in the respective communication channels.

After a week of this meticulous exploration, a clear front-runner among the projects began to emerge—the one I was gearing up to aim for.

The standout choice that crystallized was the Tor Weather: Improving the Tor network Project under The Tor Project. Beyond my affinity for the organization, this project offered a perfect blend aligning with my tech-stack and the direction I was heading towards

Drafting the Proposal

With the project shortlisted, it was time for writing the proposal.

To prepare for this, my friend and I collaborated to collect a few proposals from previous years. This provided us with a solid head start, answering questions about the proposal’s length, required level of detail, and the sections to be covered.

Over the next couple of weeks, we dedicated ourselves to researching our chosen projects, engaging in conversations with mentors, acquiring additional business knowledge, and meticulously crafting every detail into a Notion document.

From what I can recall, it was just a day before the deadline when both of us finally submitted our proposals. Unfortunately, I didn’t even get a chance to receive an initial review from my mentor.

However, we were already deviating from the conventional wisdom often shared in articles and videos on “Cracking GSoC,” which typically advises submitting proposals on the very first day of the submission window. So, how detrimental could the absence of an initial review be?

With that initial setback, we submitted our proposals. Here’s a link to my proposal if anyone is interested, Sarthik’s GSoC Proposal.


Fortunately, on the day the results were announced, both my friend and I celebrated with joy as we were both selected by our respective organizations.

However, the happiness was short-lived as both of us began contemplating the time-management challenges that would be required to pull this off.

But we allowed the joyous emotions to overshadow any looming concerns.