-
-
Notifications
You must be signed in to change notification settings - Fork 2.3k
Google Summer of Code
expand
expand
AnkiDroid has participated in Google Summer Of Code in 2024, 2022; 2021 and 2020!
GSoC is a global program which offers non-experienced contributors (and, historically, post-secondary students) the opportunity to discover and work with open-source organizations. The contributions are supported by a stipend. Contributors work closely with one or more mentors from an open-source organization to implement either a project idea by the organization, or a proposal of their own. You might be interested in our GSoC info pages from previous years:
In order to receive updates about GSoC at Ankidroid, please join our Discord,
Also, please note that acceptance into GSoC isn't a prerequisite for becoming an AnkiDroid contributor. The AnkiDroid project is run by the community for the community, and we welcome any contributors, you can start contributing immediately if you desire so. For the sake of transparency, we are all volunteers here and if you participate now, it's as a volunteer, it does not guarantee, even implicitly, that you will be selected for GSoC.
Google Summer of Code is a global, online program focused on bringing new contributors into open source software development. GSoC Contributors work with an open source organization on a 12+ week programming project under the guidance of mentors.
Potential candidates should take a look at the guidelines on how to contribute to AnkiDroid
Contribution links & advice
If you're interested in applying to work with AnkiDroid for GSoC, please follow these steps:
- Sign up to AnkiDroid's Discord [
#ankidroid-gsoc
] in order to receive important notifications about GSoC - Understand what AnkiDroid is all about by taking a look at our README and Development Guide
- Start contributing to AnkiDroid to get familiar with our contribution process
- Our recommended first issue is designed to help you quickly get your first pull request merged is: [Cleanup]: Fix Android Studio Warnings
- Your contributions help us get an idea of what it's like to work with you — e.g. how independent, resourceful, responsive, etc. you are. It will also help you get a better understanding of the codebase, so that you can write a good and detailed project proposal.
- Once you've merged your first pull request, you will be assigned the
AnkiDroid Contributor
role and be officially onboarded as participant! This step is a prerequisite to applying for GSoC. - You can now select one or more GSoC projects and write your project proposal!
- We recommend that you continue submitting pull requests and integrating yourself with our mentors and development community while you're writing your project proposal
In order to select contributors for GSoC, we will mainly be looking at:
- The quality of the submitted proposal
- The quality of the applicant's previously submitted PRs (in order to assess their ability to code, debug, break down complex tasks, etc.). Note that quantity isn't a prerequisite in itself, though contributors who've submitted multiple PRs are likely to have had more opportunities to demonstrate the abilities needed to succeed in GSoC.
- Clear, unambiguous communication. We expect you to comment at least one PR you did not create to show your interaction with other contributors. (This is important; your proposal will be read by many mentors!)
- A proposed solution approach that is sufficiently concrete and which demonstrates that the applicant has a good understanding of both the scope of the problem and the existing codebase.
View Student Eligibility and we created a document explaining our selection process.
AnkiDroid has a real-time chat server on Discord! You can join the server by clicking this link and you will then be able to communicate with the AnkiDroid community. Please feel free to ask for help from the community or if you have any general questions.
Q: How can I increase my chances of getting selected? A: Writing a good project proposal, engaging with the community, helping other contributors, successfully contributing, and demonstrating that you can work independently can all help you. We've also compiled some notes below on the selection criteria we'll be using this year.
Q: Can you be flexible around my other commitments in the summer?
A: Yes (within reason)! This year, GSoC is going to be a bit different from previous years. The program has been restructured in a way that allows contributors to take some time off for any other commitments such as exams. (view timeline here.) AnkiDroid will respect the same timelines that are given by GSoC; the main concern is whether you can still get the project done on time. Be upfront about your other commitments and make sure you schedule your time accordingly when creating your proposal. Other commitments you should list include time when you'll be in school and will commit less time to GSoC, time when you'll be travelling and away from GSoC work, any summer jobs you need to commit to, etc. We will try to be flexible around other time commitments, as long as your proposal convinces us that you will have enough time to complete the project by the end of the GSoC coding period. On the other hand, if you do not disclose other commitments, and it turns out that you are unable to commit to what you wrote on your proposal, this is grounds for failing the program.
Q: Can I submit more than one proposal to AnkiDroid?
A: Yes, you can. However, we strongly recommend picking one project and writing a solid proposal for it. Splitting attention across multiple projects might not be a great idea. (That said, since this is the first year GSoC is offering full-length and half-length projects, one exception might be if you're interested in doing either the 'full version' or the 'half version' of a project idea that can support both modes. In such a case, you would be welcome to submit both the 'full version' and the 'half version' as separate applications, but, before doing so, please make sure that you'd be happy with either outcome if you are selected.)
Q: How early should I start working on the proposal?
A: As early as possible. Make sure to get feedback from mentors before finally submitting the proposal. This will help you to write a better proposal, as you can refine the details based on the feedback you receive. Mentors will need some time to review your proposal, so it's a good idea to begin as early as possible. Make sure to follow all instructions in the proposal template (especially around sharing and access) to reduce delays in reviewing your proposal.
Q: I do not have any experience in skill XYZ. Is some certification required?
A: Try to work on good first issues and take courses online. In the field of software development, it is common to develop experience and expertise as you take up and complete projects successfully. We do not require any formal certification of particular skills.
Help us make AnkiDroid better: Sponsor AnkiDroid on GitHub Sponsors 💜