Skip to content

Google Summer of Code 2022

Akshay Vilas Jadhav edited this page Feb 28, 2022 · 13 revisions

Table Of Content

todo

AnkiDroid has applied to participate in Google Summer Of Code! 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: 2021

In order to receive updates about GSoC at Ankidroid, please subscribe to the AnkiDroid GSoC Announce mailing list and join the 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.

What is Google Summer of Code?

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.

Contributors

Potential candidates should take a look at the guidelines on how to contribute to AnkiDroid: Google Summer of Code contributor guide Google's list of resources GSoC FAQ

Getting started

If you're interested in applying to work with AnkiDroid for GSoC, please follow these steps:

  1. Sign up to the Ankidroid's mailing list in order to receive important notifications about AnkiDroid organization,
  2. Get better understanding of what AnkiDroid Orgniazation is all about by taking look at link,
  3. Read and follow the instructions in the contributors' guide carefully contributions guide link
  4. It would be advisible to start contribution in Ankidroid to get familiar with the contribution process. This will 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.
  5. Once you've merged at least 2(or may be 1) pull requests, you will added the contributors role and be officially onboarded as participant! This step is a prerequisite to applying for GSoC.
  6. Now, you can select one or more GSoC projects that you're most interested in, and write your project proposal! We'll add more details to this point if AnkiDroid is officially accepted into GSoC.

FAQs

Q: What technical skills do I need to work on AnkiDroid?

TODO

Q: How can I increase my chances of getting selected?

TODO

Q: Can you be flexible around my other commitments in the summer?

TODO

Q: Which projects are most important for AnkiDroid?

TODO

Q: Can I submit more than one proposal to AnkiDroid?

TODO

Q: What are the minimum number of PRs that one should have?

A: There is no specific minimum number. Remember that quality is more important than quantity. It is better to submit a non-trivial PR rather than a one-line wording change. Start with starter issues, then prioritize ones that touch the area(s) of the codebase which are related to your project.

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.

Dates and Deadlines

  • Feb 7 - Feb 21: Mentoring organizations apply
  • Mar 7: Mentoring organizations are announced
  • Apr 4 - Apr 19: GSoC contributor application period
  • May 20: Accepted GSoC contributors are announced
  • May 20 - Jun 12: Community bonding period
  • Jun 13 - Sep 12: GSoC contributors enjoy the summer by contributing code to their projects
  • Sep 12 - Nov 21: Extension period for GSoC coding (for projects with extended deadlines)

GSoC proposal template(Todo)

  • Tips for writing a good project plan
  • What should applicants expect from mentors in a proposal review?
  • Sample proposals from past years

Selection Criteria

In order to select contributors for GSoC, we will mainly be looking at three things:

  • 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. (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

Communication

AnkiDroid's Project Ideas List

The following is a list of Ankidroid's 2022 GSoC project ideas. You are welcome to choose among these ideas, or propose your own! However, if you're planning to propose something original, it's essential to engage with the AnkiDroid community beforehand in order to get feedback and guidance to improve the proposal. We'd also recommend taking a look at AnkiDroid's mission and seeing if there is a natural way to tie your idea to the AnkiDroid project's goals, otherwise it might not be a good fit at this time.

Please note that the list of project ideas below is not set in stone: more projects may be added later, and some project descriptions may also change a bit, so check back regularly. In addition, the mentor assignments listed below are provisional, and may change depending on which proposals are eventually accepted.