Stop Wasting Time: 8 Secrets About GSoC Nobody Tells You

First of all, Who am I and Why should you give a f**k
Hello, My name is Shuvam Pal and yes I cracked Google Summer of Code in my very first year of engineering. I achieved in my first year what most people only dream of achieving in their four years of college š.
Just kidding, Iām no prodigy, just another 19-year-old kid who stills Googles how to not mess up his Git treeāŗļø. I am still trying to digest the legacy left behind by my seniors at Point Blank.
Hereās how it all startedā¦
The Discord Meet
It was the month of December, and there was this announcement about a discord meet being held to talk about GSoC. I had heard only titbits before about seniors cracking GSoC, but didn't really know what it really was. So just curious I joined the meet. By the end of the meet it was clear to me what it exactly was and how big cracking GSoC was. Also one thing I concluded was that nobody had cracked it in their first year in our college yet.
I thought to myself, "Hmm, what if I could be the guy cracking it in first year?". It was just one amusing thought back then but anyways, reluctantly, I got to work.
I started looking for Organisations to contribute to. I shortlisted two: FreeBSD, which seemed really cool, and InVesalius, which matched my tech stack and wasnāt as crowded. After a lot of trial and error I managed to run FreeBSD locally, but contributing to it wouldāve been a nightmare (and Iāll admit, I was a bit lazy). So I went with InVesalius.
The First PR
Reading and understanding this codebase was an arduous task. I had written Python programs before, but nothing close to what powered InVesalius. Nevertheless, I spent the whole month trying to figure things out and fix issues. Along the way I found a few bugs of my own, fixed them, and raised PRs.
By the end of the month I had a handful of PRs but still no response from the maintainers. I started to get worried. Then, on the very last day of the month, I got a notification: one of my PRs was merged. That feeling? Unmatched. Getting your first PR merged feels absolutely awesome.
The Proposal
I continued finding issues and raising PRs. I slacked off sometimes in between, but kept the progress going somehow. I also started contributing to another Org called IOOS. At this point I was making Open Source contributions just for the fun of it and also I was getting to learn a lot. By mid March I had made quite some progress and now it was time to choose a project and start writing a proposal. I had no clue what to do but nevertheless I chose the hardest project I could find in the list.
Writing the Proposal was another nightmare. Either I was overlooking things or making them overcomplicated. I took feedback from the mentors and went through a total of four iterations before I settled on the final version (I rewrote my whole proposal right before the submission day :) ).
I let out a huge sigh of relief after clicking the submit button. The very next day, my fellow PB members and I set off on a trip to Coorg, a much needed refreshment for everyone who had been working on GSoC. That trip was one to remember. The perfect relaxation plan. Whenever I listen to this song, it takes me back to those nights.
There is so much pain in the world, but not in this moment.
The Aftermath
Back from Coorg, I continued contributing and communicating with the maintainers. I tried focusing on other things and learning new skills for a while. I don't know where I got it from, but I carried this quiet confidence that the results would turn out in my favour.
Before I knew it, a month had passed, and D-day had arrived. Nerves were high, everyone was hoping for the best, fingers crossed. Some people got their rejection mails, others received their acceptances. It was chaos, a swirl of mixed emotions.
Meanwhile, my inbox was still empty. And then - BAM! - at 11:48 p.m. on May 8th, a notification popped up. I opened it, and there it was: 'Welcome to Google Summer of Code 2025!'.
I canāt fully describe the rush of emotions that hit me in that moment. It was pure happiness and pride. I could hardly sleep that night, my head buzzing with a thousand thoughts.
But cracking GSoC was only half the story. The real challenge was about to beginā¦
Coding Begins!
Except...it didn't for me. After the results were announced, I slacked off quite a bit. I wanted to spend time on other things and explore different topics. I felt confident because I knew I had most of the project figured out while writing my proposal (or so I thought).
I didnāt actually start building the project seriously until late June. I worked on it piece by piece, and at first it felt like a cakewalk. But once the components came together, the real challenge became clear. The complexity of the implementation and the sheer scale of the project only hit me after I had finished fleshing out the pipeline.
The Encounter With Ephialtes
I was bombarded with thousands of errors, and quality issues in the output. Then I tried converting the models to ONNX and my GSoC literally turned into a nightmare. The issue was way beyond the expertise I had in ML so far. I egged AI with questions to no avail. Finally I found the answer lying in one corner of a remote blog post. It didn't really fix the issue but was an efficient workaround.
I continued grinding. Then just when I thought I had it running successfully, I saw the output I was getting and was horrified. It was ugly. I could have submitted it, it met the basic requirements, but after so much work, I couldnāt settle for anything less than the best result.
My mistake? Relying too much on AI. I learned my lesson the hard way. All I was left with after weeks of prompting was, NOTHING! Finally I thought - fuck AI. I pulled an all-nighter, manually changing and testing every little detail to trace the root cause, and by the morning I had it all working, The final product was right there in front of me, and trust me, it was beautiful.
My mentors tested it out, and I even went ahead to design and ship two additional products. At last, after a wrecked lower back, several sleepless nights and countless empty packets of instant coffee, it was done. I had pulled through. I had really clutched it this time.

I hope you got some value out of this read, and you don't make the same mistakes as me.
Despite what people say about this being a great feat, I know how much I still have to grow. At the end of the day I am just another average coder trying to find my place in the world.
The horrors persist but so must we.
Here are my links: Github | Linkedin (drop in a follow maybe :) )
And thatās a wrap! Finis coronat opus.