Google Summer of Code (GSoC)

GSoC logo

Kiwix is regularly selected as an Open Source Organisation to participate in Google’s annual Summer of Code.

The GSoC is a yearly program by Google that essentially pays FOSS newcomers to work on identified Open Source software for 12+ weeks. Participants are mentored by Organisation’s developers.

Timeline of events

GSoC has three sets of projects, lasting approximately ~90, ~175 and ~350 hours so that people who can not work full-time (because of exams or whatnot) can still participate.

Candidates are free to submit any proposal they want. We do maintain a list of GSoC-appropriate projects for candidates to pick but it’s not a requirement.

Upcoming projects

Here are the projects scheduled during the upcoming GSoC.

Most recent projects
Must-read for candidates

Here is a list of Good First Issues to get you on-boarded.These are low-hanging fruits, grab them.

We have three main projects:

  1. Kiwix: the reader
  2. openZIM: the file format and scrapers
  3. offspot: the Raspberry Pi-based hotspot

Check the Hub, poke around and do something fun / easy / that makes you comfortable with the project. Then do it again until you are really comfortable and can pick more subtle tasks.

There are no designated mentors at this stage so ask questions in the relevant repo/issues. You can actually open your own issues if you identify a bug or problem!

Our list of projects for GSoC is above, but they’re not set in stone. Historically, 20-30% of the GSoC projects we ended up picking were not on the initial list but suggested by candidates themselves.

Check the timeline for Applications dates to submit a detailed project proposal.

✅ Things to do
Include a list of previous PRs you’ve made, and if your proposal includes some UI, add a mockup of what you propose.

❌ Things to not do
Ask to contact mentors directly, send your CV, or a motivation letter (they’re all written by an LLM nowadays).

============================================================
Just. Send. Your. PRs. and a detailed proposal with timeline.
============================================================

You can make more than one proposal (they need to be separate in the Google dashboard), and you can apply to several orgs at the same time.

We do not give individual feedback on proposals before the deadline, but you normally can edit them until the last minute.

We ask to see your PRs in order to know that you can code, comment your code, and answer questions or comments about your code.

Don’t try to be smart, but rather show that you can work as part of a team (someone has to review those PRs: make it easy for them).

Last but not least: use of AI-generated code = banned! Google is not paying you to use their products, or those of their competitors. It’s easy to spot and shows you are lazy and disrespectful of our time.

We usually get 60-80 formal applications submitted each year, 90% of which are garbage because people did not follow what you just read above. We request 2-3 slots from Google, meaning that if you follow the guidelines properly, you will jump from 3-4% chance to a 30-50% chance of getting selected.

Additional application-writing tips
Here are the main tips to help you in writing your GSoC application (thanks to the folks at Apertium!).
More tips

We’re not saying that following the advice below will automatically get you a mentor, but going through it will give you a pretty good chance!

… and lastly, good luck! 🤞