๐ŸŽMy Journey to Google Summer of Code 2025

Hello everyone! Iโ€™m extremely excited to share the journey that led to my acceptance into Google Summer of Code (GSoC) 2025 with the Scala Center.๐Ÿฅ‡ This blog marks the beginning of documenting my adventureโ€”not only as a record for myself but also as a helpful guide for future aspirants who might want to embark on their own GSoC journeys.


What Exactly is Google Summer of Code

Google Summer of Code is an internationally renowned, remote summer program sponsored by Google. It pairs newcomers to open-source with experienced mentors from various open-source organizations. For approximately 12 weeks, contributors (previously referred to as students) work intensively on open-source projects, contributing real features, fixing bugs, or developing research prototypes. Participants not only enhance their coding skills but also learn essential aspects of open-source workflows such as handling issues, submitting pull requests, engaging in code reviews, and participating in community interactions.

Since its inception in 2005, GSoC has funded over 19,000 contributors across 850+ open-source organizations, fostering a vibrant community dedicated to collaborative growth and development. Each year, Google publishes a list of organizations and potential project ideas. Contributors select projects of their interest, connect with mentors, draft comprehensive proposals, andโ€”if selectedโ€”dedicate their summers to impactful coding contributions.


๐Ÿ”ŽDiscovering GSoC (Way Back When)

It's hard to remember exactly when I first heard about GSoC, but it's fair to say it's been on my radar for quite some time now.

Between casually exploring tech blogs, browsing open-source communities, and watching inspiring videos of contributors working on impressive projects, the allure of spending a summer coding under the guidance of experienced mentors quickly became something one can aspire to do. The chance to make significant open-source contributions and gain valuable industry-like experience was simply too appealing to ignore.


My First Attempts and Challenges

My journey with GSoC didnโ€™t begin this year. Last year, I applied to two organizations: City of Boston and Red Hen Labs. Unfortunately, despite my enthusiasm and efforts, I was not selected. While the rejection was initially discouraging, it was also an important learning experience. Reflecting on feedback from those applications taught me about the importance of early mentor engagement, crafting well-detailed proposals, and understanding project scopes more thoroughly.


Short-listing AI-Focused Projects for 2025

Fast-forward to Feb/March 2025, with renewed determination, I approached the selection process strategically:

  1. I carefully went through Every Single Organization listed by Google.

  2. Next, I filtered projects specifically focused on AI and Machine Learningโ€”prioritizing those aligned with my interests in NLP, data science, and LLM tooling.

  3. I shortlisted project ideas that closely matched my skills with a few exceptions.

I started making contacts with the mentors and Orgs, Among these, the Scala Centerโ€™s llm4s project instantly caught my attention because i liked the project descriptions(๐Ÿ’ฏ for the README).


Making the Initial Connection with Mentors

To ensure clarity and gain deeper insights, I reached out to mentors of the shortlisted projects. This was a significant step in my application process. With the Scala Center, I had the pleasure of connecting with Kannupriya Kalra, my eventual mentor. Our initial conversations were immensely helpful, covering topics such as:

  • My inclination to contribute to the LLM4S projects.

  • My experience in Scala language.

  • Discussion about the projects.

Kannupriyaโ€™s responsive and clear guidance significantly shaped my subsequent actions.


Overcoming Initial Issues and Making My First Contribution๐Ÿ’ป

The first practical challenge I encountered was setting up the development environment on my Windows machine and running tests.

This process exposed some critical issues with the existing code, such as not generalizing for Non POSIX Operating systems, path issues etc.

After some troubleshooting and meticulous debugging, including managing admin vs. user profiles and environment variables, I finally achieved a successful build. Resolving this issue was not only rewarding but also allowed me to contribute to the codebase and raise a much rewarding PR.

Reference : https://github.com/llm4s/llm4s/commit/0896d8e953855ccaaf36cef7ad005d9c48a05fee


Crafting and Submitting Proposals

The next significant milestone was drafting my proposals. These documents required extensive research, thoughtful planning, and careful structuring of deliverables and timelines. I wrote two different versions to cover varying scopes and different projects and solicited valuable feedback from Kannupriya. After iterating and refining my proposals based on her suggestions, I submitted them.

BUT then, after discussing, I submitted one more(yes, third proposal in the same organization. Although i was trying also for Fedoraโ€™s Project).

And eventually this last one , the project LLM4S - Support image, voice and other LLM modalites was destined for me!!!!!

Checkout the Announcement post - Linkedin Announcement Post

Checkout the proposals - Drive


The Mentor Impact

Throughout the entire process, the role of my mentor, Kannupriya, cannot be overstated. Her quick and invaluable feedback, patience in guiding me through proposal structures immensely contributed to my confidence and success.

Also kudos to Rory for being a fantastic mentor as well. Effective mentorship proved crucial in creating viable proposals.


Looking Ahead

Currently, I am in the community bonding period. My immediate plans include:

  • Deepening my understanding of the projectโ€™s existing architecture.

  • Syncing the Proposed deliverables with the codebase.

  • Networking with like minded people.

  • Expanding the horizons of my Scala knowledge.

Stay tuned for updates in my upcoming posts, where I'll document the details of work done in the community bonding period.

To keep track of the work along with me , follow the Work Log - https://github.com/users/AnshumanAI/projects/2

W๐—ฒโ€™๐—ฟ๐—ฒ ๐—ฎ๐—น๐˜€๐—ผ ๐—ฏ๐˜‚๐—ถ๐—น๐—ฑ๐—ถ๐—ป๐—ด ๐—ฎ ๐˜„๐—ฎ๐—ฟ๐—บ, ๐˜„๐—ฒ๐—น๐—ฐ๐—ผ๐—บ๐—ถ๐—ป๐—ด ๐——๐—ถ๐˜€๐—ฐ๐—ผ๐—ฟ๐—ฑ ๐—ฐ๐—ผ๐—บ๐—บ๐˜‚๐—ป๐—ถ๐˜๐˜† ๐—ณ๐—ผ๐—ฟ ๐—ฑ๐—ฒ๐˜ƒ๐—ฒ๐—น๐—ผ๐—ฝ๐—ฒ๐—ฟ๐˜€; who want to get hands-on experience and grow alongside this open-source AI project. If youโ€™re looking to contribute, learn, or simply be part of something exciting, weโ€™d love to have you with us. ๐Ÿ’ฌ๐Ÿค

๐Ÿ’ฌ Join our community here: Discord

โœจ Letโ€™s fork it, learn Scala, and build AI together until we make it โ€” with heart, hustle, and a lot of collaboration. ๐Ÿ’ซ๐Ÿ’–

And if you want LLM4S to grow and you're excited about Scala and AI, ๐˜€๐—ต๐—ผ๐˜„ ๐˜€๐—ผ๐—บ๐—ฒ ๐—น๐—ผ๐˜ƒ๐—ฒ ๐—ฏ๐˜† ๐˜€๐˜๐—ฎ๐—ฟ๐—ฟ๐—ถ๐—ป๐—ด ๐˜๐—ต๐—ฒ ๐—ฝ๐—ฟ๐—ผ๐—ท๐—ฒ๐—ฐ๐˜ ๐—ผ๐—ป ๐—š๐—ถ๐˜๐—›๐˜‚๐—ฏ: LLM4S ๐ŸŒŸ

This is more than just a project; itโ€™s an invitation to join and ๐˜€๐˜‚๐—ฝ๐—ฝ๐—ผ๐—ฟ๐˜ ๐—ฎ ๐—ฆ๐—ฐ๐—ฎ๐—น๐—ฎ-๐—ณ๐—ถ๐—ฟ๐˜€๐˜ ๐—”๐—œ ๐—ถ๐—ป๐—ป๐—ผ๐˜ƒ๐—ฎ๐˜๐—ถ๐—ผ๐—ป, ๐˜๐—ต๐—ฒ ๐˜ƒ๐—ฒ๐—ฟ๐˜† ๐—ณ๐—ถ๐—ฟ๐˜€๐˜ ๐—ถ๐—ป ๐˜๐—ต๐—ถ๐˜€ ๐˜€๐—ฝ๐—ฎ๐—ฐ๐—ฒ. Together, we can shape the future of AI with Scala at the forefront. ๐ŸŒ๐Ÿ’–

Thanks for joining me on this journey, and to future aspirantsโ€”good luck and don't give up!๐ŸŽˆ๐ŸŽˆ

1
Subscribe to my newsletter

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

Written by

Anshuman Awasthi
Anshuman Awasthi