Skip to content

Google Summer of Code

Robert Coup edited this page Feb 18, 2022 · 14 revisions

Getting Started

Download Kart, follow the tutorial, and start exploring with your own datasets. If you find any bugs, report them, and maybe try to fix them? It's a good way to learn how the project works. We'd definitely welcome suggestions to improve the help or documentation too.

Start communicating with the developers — start a discussion or explore the issue tracker to see the current topics we've been focussing on.

Have a look through the ideas list and see whether any of the proposed ideas interest you.

How to Apply

  1. Read the links and instructions given on this page. We've tried to give you all the information you need to be an awesome GSoC applicant.

  2. Start a discussion and talk with your prospective mentor about what they expect of GSoC applicants. They can help you refine your project ideas. Listening to the mentors' recommendations is very important at this stage!

  3. Usually we expect GSoC contributors to fix a bug and have made a pull request (or equivalent). Your code doesn't have to be accepted and merged, but it does have to be visible to the public and it does have to be your own work.

  4. Write your application (with help from your mentors!) The application template is available here. All applications must go through Google's application system; we can't accept any application unless it is submitted there. Make it easy for your mentors to give you feedback. If you're using Google Docs, enable comments and submit a "draft" (we can't see the "final" versions until applications close). If you're using a format that doesn't accept comments, make sure your email is on the document and don't forget to check for feedback!

  5. Submit your application to Google before the deadline. Google does not extend this deadline, so it's best to be prepared early. You can keep editing your application up until the deadline.

    💡 Communication is probably the most important part of the application process. Talk to the mentors and other developers, listen when they give you advice, and demonstrate that you've understood by incorporating their feedback into what you're proposing. If your mentors tell you that a project idea won't work for them, you're probably not going to get accepted unless you change it.

Application Template

An ideal application will contain 5 things:

  1. A descriptive title
  2. Information about you, including full contact information. Which time zone you're in. If you're studying, your institution, course, and year.
  3. Link to a code contribution you have made/proposed to Kart. If you've made some contributions to other open source projects that you're proud of please link to them too.
  4. Information about your proposed project. This should be fairly detailed and include a timeline.
  5. Information about other commitments that might affect your ability to work during the GSoC period. (exams, classes, holidays, other jobs, weddings, etc.) We can work around a lot of things, but it helps to know in advance.

Ideas List

This is our current ideas list for 2022. Remember, you're welcome to propose your own idea, but you need to start a discussion with the mentors before submitting so we can all make sure it has the best chance of being accepted. Keep checking back, this list will evolve as we go along.

Kart CLI Help Improvements

  • Project Size: Medium (175h)
  • Mentors: TBC
  • Skills needed: Python

Kart could do better to support CLI users as they interact with the commands and the data in their repositories. Adding tab completion so it works smoothly and consistently for Kart commands and their options would make this better. Then expanding that further so datasets, branches, tags, files, metadata, features, and other context-relevant information is also presented where appropriate. Kart currently doesn't have a means of building or exposing man-style documentation — establishing such a framework the project can build upon would also fit into this project (eg: via kart x --help). This should be cross-platform as much as possible, supporting bash/Zsh/fish/etc as well as PowerShell on Windows.

Attachments Support

OGC Features API Support


🤍 Some of the content on this page was originally sourced from the fine folks at Python Summer of Code and their documentation (CC-BY).

Clone this wiki locally