Google Summer of Code/Participants

If you are considering to apply to the next round of Google Summer of Code program, first check the eligibility criteria and then learn more below.

IntroductionEdit

Wikimedia is a global movement whose mission is to bring free educational content to the world. One of our most popular projects is Wikipedia. Wikipedia is powered by the free and open source software MediaWiki. Besides Wikipedia, MediaWiki also powers its sister projects and thousands of wikis all over the world. Though MediaWiki (primarily written in PHP, uses the MySQL and MariaDB database servers and jQuery as the client JavaScript Library) is well known among Wikimedia developers, there are hundreds of technical areas in which one can contribute. You can learn more about the differences between MediaWiki, Wikimedia, Wikipedia and Wiki. By working with us, you're contributing to one of the world's largest collaborative knowledge bases.

Do you have questions? Please first read the most commonly asked questions and answers related to the Google Summer of Code and Outreachy program.

Application process stepsEdit

If you are considering applying, follow the steps in the order in which they are listed:

  1. Read the GSOC guide for students Develop your understanding of the various stages of the program.
  1. Understand Wikimedia's technical areas There are a lot of technical areas in which you can contribute (e.g. Gadgets, Extensions, Skins, Bots, etc). Knowledge of these areas will help you a lot in choosing a project.
  2. Understand how and where to communicate Different places serve different purposes. Read the communication tips for good practices and which topics or questions to ask where.
  3. Choose a project that best suits your interests and skill set from the ideas listed on the GSoC 2021 page on mediawiki.org.
  4. Do your research about the project thoroughly. Do not expect spoon-feeding. Ask intelligent and explicit questions. "Can you tell me more about this project?" is a bad question. Read Google Summer of Code/2021#Contact which place to use for which type of questions.
  5. Express your interest in working on a project by commenting on the corresponding task on Wikimedia Phabricator. (See Phabricator/Help if you do not have a Phabricator account yet.)
  6. Communicate with project mentors Discuss with them your ideas for implementation and learn about their availability and willingness to mentor.
  7. Learn basic skills required for development If you are planning on contributing to a project that involves the MediaWiki codebase, learn how to start hacking. For other projects, check the getting started steps in the task description of the project you have chosen on Phabricator.
  8. Fix small bugs Work on a microtask linked in the Phabricator task description. If there are none in the task, ask mentors to point you to some. You could also fix smaller bugs in that project. This help candidates understand the skills required for a project and mentors whether the candidate has these skills.
  9. Read a few good proposals that were accepted for the previous round. Here they are: example 1, example 2, example 3.
  10. Submit your proposal as a task on Wikimedia Phabricator:
    • Fill out this pre-populated application template.
    • Make sure to add "Google-Summer-of-Code (YEAR)" in the "Tags" field.
    • Set yourself as task assignee in the "Assigned To" field of your proposal.
    • Your proposal in Phabricator will be public, so do not add here any personal information such as your email address or phone number.
    • Check the Preview at the bottom. If it looks fine, click "Create New Task".
    • You can still edit and improve your existing proposal (before the application deadline) via "Edit Task".
    • If you apply for an existing project idea, then make your proposal a subtask: Click "Edit Related Tasks… 🡒 Edit Parent Tasks" and add the task of the project idea (e.g. "T123456").
  11. Make sure that you upload a copy of your proposal on the Google's program site as well in whatever format it's expected of you, include in it the link to your public proposal on Phabricator.
  12. Discuss your own project idea with a possible mentor If you couldn't find anything interesting in our project ideas, you could ask organization administrators to help you connect with a mentor.

Accepted participantsEdit

If you get accepted, here is what we will encourage you to do to have a successful project:

Community bonding periodEdit

  • Refine your project proposal with guidance from mentors.
  • Join Zulip (more info) to keep yourself up to date with the announcements related to the program and opportunities for participating in Wikimedia activities.
  • Write blog posts in a language you are most comfortable with and add it to the Bi-weekly Reports page.
  • Add your updates about non-coding tasks (e.g., writing a blog post, joining Zulip, etc. to the Updates column in the Accepted projects section

Internship periodEdit

  • Write weekly reports
  • Stay up-to-date with your goals as outlined in the timeline
  • Communicate regularly with mentors and keep them updated about your progress and challenges
  • Submit evaluations on time
  • Attend any program-related meetings we host
  • Follow any guidelines we share to involve you in our community and process.

Stay involved after the internshipEdit

  • Become a mentor in the next round of Google Summer of Code or Outreachy. Interns who demonstrate good quality work and ability to mentor will be encouraged by their mentors and organization administrators to apply.
  • Learn about the upcoming Wikimedia Hackathons and apply for a scholarship to attend.
  • Request quick support through Grants:Project/Rapid if you would like to continue working on further ideas for improvements to your GSoC project. You could also request support for conference travel. Read previous grant requests such as this one and this one.
  • Spread the word in your university about Wikimedia Outreach programs.
  • Stay in touch with organization administrators on Zulip.
  • Continue working on Wikimedia New Developers projects.


Stay tuned!Edit