Google Summer of Code/2025

From OpenStreetMap Wiki
Jump to navigation Jump to search
Google Summer of Code logo

Google Summer of Code 2025 (https://summerofcode.withgoogle.com/) is the 21st year of GSoC, a global program that offers students and new open source developers stipends to write code for various open source software projects. OpenStreetMap has been accepted as a mentoring organization and is welcoming contributors!

Project ideas

We accept projects for software around OpenStreetMap core, mapping and usage. This includes the OpenStreetMap website, editors, tools that help mappers, software for routing, map making, geocoding and others. The goal of GSOC is to introduce you to working within an Open Source project. Your GSOC project should therefore improve an already existing software. We do not accept project proposals that intend to implement a new idea from scratch.

If you are already working with software from the OpenStreetMap ecosystem, think about what new feature or improvement you would like to see in the software. We love project ideas where students want to scratch their own itch! If you have an idea, get in touch with the project proga at gsoc-orga@openstreetmap.org and we see that we get you in touch with the right people.

If you don't have an idea at hand, some of the OpenStreetMap software projects have listed project ideas on the project ideas page. If you like one of them, please get in touch directly with the listed mentors.

Participant applications

If you are interested in working one of the open source projects around OpenStreetMap during this year's GSoC, you will need to submit an application on the official GSoC website. Here we summarize our expectations from a potential GSoC contributor.

Preparing for GSOC

To ensure a successful coding period, we expect that contributors are familiar with OpenStreetMap and the software they want to work on over the summer.

We will give a strong preference to candidates who have already worked with OpenStreetMap. You may have already contributed as a mapper or you may have worked with OpenStreetMap data: created a map, set up a routing application or similar. If you haven't done so yet, then this should be your immediate priority. Create an account and start mapping some features in your area. Your editing should show that you have understood the OSM data model and methods of mapping. Alternatively, look into setting up a custom map from OpenStreetMap data. This is another good way to familiarize yourself with the project.

We also require for all projects that you familiarize yourself with the software you want to work on. By the time you hand in your project proposal, you should have set up a working development environment and started to make a few simple changes to things that bother you. This part is not optional! Be aware that we expect that every contributor who applies will have already contributed in a small way to the software project that they apply for. This can be anything that shows that you have already successfully worked with the project: code contributions, writing tests, improving documentation. Have a look at the project's issue tracker to find possibilities for contributions or talk to your mentor. Sometimes they might point you to assignments specifically geared towards the project you want to work on.

Writing the application

Whether you choose a project from the list of ideas or come up with your own suggestion, it is absolutely vital that you get in touch with your potential mentor as early as possible. If you don't know, who your mentor could be, write to the organizers at gsoc-orga@openstreetmap.org and we assist you.

When the official application phase for contributors opens up, you should supply your application as soon as possible so that your mentor, but also other mentors (who will take part in evaluating applications) have time to ask questions if needed.

The application should start with some general information about you. Here is a list of useful information to include:

  • Your name and your OSM account name
  • Your current occupation (University, course of studies, job, etc.)
  • Website/Blog/GitHub page
  • Your involvement in OpenStreetMap (mapping or using the data)
  • Relevant programming and other technical skills
  • Details of any previous and current computer programming projects
  • Have you applied for other project ideas/organizations?
  • Pointers to the contributions you have already submitted for the software you apply for (Please note: having contributed is a strict requirement this year)
  • Time Schedule:
    • Are you planning any vacation this summer?
    • Do you have any classes, employment or other commitments this summer?
    • Which weeks you will be available for how many hours? (Make sure this adds up to the required project time of 90/175/350h.)

Next, the project proposal should make up the main part of the application. Describe what you propose to do, how you propose to do it, what you think the project consists of. What parts of the project have to be done to be successful, what could be additionally done if you're quick and what happens if you are too slow. What do you expect to learn from this project? Remember, the most important thing about your proposal is to demonstrate that you know what you want to do, have an understanding of the sort of issues that you will need to address to meet your targets, and that the project is achievable on the timescales of Google Summer of Code.

The last part of your application should be the schedule for project completion. Its purpose is to identify the major milestones to completing the project. The schedule should be sufficiently detailed that each step can be completed in at most 1-2 weeks.

There is quite some flexibility in planning the work time this year, so it will be much easier for you to work around other commitments like school or vacation. However, that means that you must plan ahead yourself. Please include a plan how you would like to spread the 90/175/350h work time over the summer. The plan can then be discussed with your mentor. Once finalized, we consider this plan a binding commitment from your side. You won't be able to change it unless there are exceptional circumstances.

Note on using AI tools

We recognize that generative AI tools like ChatGPT or Copilot can be a tremendous help when writing code and project proposal texts. However, always keep in mind that they are only tools. They cannot do the work for you. In that spirit, you are welcome to use generative AI tools when preparing your application and during GSoC but you must always ensure that you have read, understood and verified the output. Do not copy and paste ChatGPT answers without thoroughly rereading what it has said. We expect that you will be able to answer questions about the content at any time. Furthermore, when you use generative AI, you must mention the tool(s) you used.