To apply for Google Summer of Code, students submit a proposal outlining their project idea, which should align with one of the participating open-source projects.
The application deadline is typically in March, and students have about a month to submit their proposals.
Students can browse through the list of participating open-source projects and find one that interests them, and then submit a proposal outlining their project idea.
Google Summer of Code provides a stipend to students, which is paid out in three installments over the course of the summer.
For your interest: Android Application Open Source Code
Application Process
The application process for Google Summer of Code is a 5-step journey that starts with creating a FAS account. You'll need to sign up and log in to the Fedora Summer Coding Mailing List, which is a low-volume list where you can connect with other developers.
The next step is to join the devel mailing list, which can be a higher volume list, so be prepared to use mail filters to stay organized. You'll also need to sign the FPCA, which you can do by following the directions on the Fedora website.
After that, it's time to submit your application and proposal, including all the requirements, on the Google Summer of Code Site. Be sure to get feedback from your mentor(s) before submitting your final PDF.
If you're submitting an original proposal, you'll need to find a mentor, as proposals without mentors will be rejected. Sharing your proposal is key to finding a mentor, and you can do this by sharing a link to a Google Doc or a private ticket in the Pagure Repository.
Here are the 5 steps to apply:
- Create a FAS account
- Join the Fedora Summer Coding Mailing List
- Join the devel mailing list
- Sign the FPCA
- Submit your application and proposal on the Google Summer of Code Site
Remember, the application process is a journey, not a destination, and it's okay to ask for help along the way. Don't be afraid to share your proposal and get feedback from your mentor(s) before submitting your final application.
Before You Apply
Before you apply, make sure you're aware of the application timeline. Applications are due in Google's system by March 31st, 2020 18:00 (UTC), so don't leave it all to the last minute. Submit your proposal early, ideally before the final rush, to get more attention from developers.
To get started, create a FAS account and join the fedora-summer-coding mailing list, as well as the devel mailing list. You'll also need to sign the FPCA and submit your application proposal, which should include all requirements. If you're submitting an original proposal, you'll need to find a mentor, as proposals without mentors will be rejected.
Here are some key deadlines to keep in mind:
- March 16, 2020: Student applications open
- March 18 - April 2: Register as a GSoC contributor and submit your proposal
- March 31st, 2020 18:00 (UTC): Applications are due in Google's system
Learn
Before you apply to the Google Summer of Code, it's essential to learn about the program and Fedora.
Start by visiting the GSoC official site to get a comprehensive understanding of the program.
You can also check out Fedora's Participation in GSoC for specific information about Fedora's involvement in the program.
Here are some additional resources to help you get started:
- GSoC official site
- Information about Fedora’s Participation in GSoC
Remember, learning about the program will give you a solid foundation to build upon as you prepare your application.
General Instructions
Before you start applying to the Google Summer of Code, make sure you're familiar with the program and Fedora. Check out the GSoC official site and Fedora's Participation in GSoC for more information.
It's essential to submit your proposal early, as early submissions get more attention from developers. Aim to submit your application and proof of enrollment before the final rush, and avoid submitting very late, as this will give your proposal the least attention from mentors.
To increase your chances of getting selected, submit more than one proposal, but make sure to tell the organizers which one you would choose if both were selected. Former students recommend focusing on one or two high-quality proposals rather than trying to submit three.
Reach out to organizations early and review the GSoC Contributor/Student Guide, which has valuable tips on having a successful GSoC. You can also look at the orgs that participated previously and review their Projects Ideas list to find a project that matches your interests and skills.
Before submitting your proposal, communicate with the org and get feedback on your idea. This will give you a chance to refine your proposal and increase your chances of getting selected.
Fedora's application process consists of five steps: creating a FAS account, joining the fedora-summer-coding mailing list, joining the devel mailing list, signing the FPCA, and submitting the application/proposal.
Make sure to follow the timeline set by Google, as applications are due by March 31st, 2020, 18:00 UTC. Your final application must be submitted as a PDF, and you must file it in the Google system.
As a potential contributor, you'll need to produce code for KDE during the coding period. You'll work with mentors who will dedicate time to mentoring you, so it's essential to be committed to helping KDE long-term and be proactive in communicating with your mentor(s).
Worth a look: Generative Ai Coding Tools
Eligibility and Requirements
To participate in Google Summer of Code, you need to be a student and at least 18 years old before the results are announced.
There's no requirement for a specific department or year of study, but you can't participate in Google Summer of Code for more than two times, a rule that's been in place since the 2017 edition.
To be eligible, you must be 18 years or older on the date you register for the program.
You also can't be a resident of a country subject to a United States embargo and must be eligible to work in the country where you reside for the duration of the program.
New contributors to open source software development are preferred.
To apply, you need to register as a GSoC contributor on the program site between March 18 and April 2.
You can apply to up to three organizations, which are announced on February 21st.
Your written proposal must be submitted through the program site between March 18 and April 2.
Project and Mentorship
As a Google Summer of Code (GSoC) participant, finding the right project and mentor is crucial for a successful application. Any KDE developer can be a mentor if they meet the GSoC eligibility requirements.
You'll need to subscribe to the KDE-Soc-Mentor mailing list to discuss ideas and vote on proposals. Daily communication is required with your student during the Community Bonding period, and multiple times per week during the coding period.
The KDE project has a list of formal project suggestions, but feel free to come up with your own unique ideas. Here's a sample list of suggested project ideas:
Suggested Project Ideas
If you're new to contributing to Inkscape, it's a good idea to start with a formal project suggestion. These projects have been vetted by experienced developers and mentors, and can provide a great way to learn and get involved.
Some of the formal project suggestions include estimating the difficulty of a project, which can help you determine how much time and effort to commit. For example, one project is estimated to be difficult and long, requiring around 350 hours of work.
Another project is estimated to be hard and short, requiring just 175 hours of work. This one might be a good choice if you're looking for a shorter project to get started with.
To get started with any of these projects, you'll need to have some programming skills, specifically in C++ and CMake. You'll also need to have a good understanding of build systems, which can be a bit tricky if you're new to them.
Here are some of the formal project suggestions with their estimated difficulty and required skills:
- Estimation of difficulty: Difficult - Long (350h)
- Estimation of difficulty: Hard - Short (175h)
- Estimation of difficulty: Hard - Long (350h)
- Estimation of difficulty: Hard - Long (350h)
Each project also has a potential mentor assigned to it, who can help guide you through the process and provide feedback on your work. For example, one project has Marc Jeanmougin as a potential mentor, while another has Jabier Arraiza.
Mentoring
Mentoring is a crucial part of the KDE development process. Any KDE developer can be a mentor if they meet the GSoC eligibility requirements.
To become a mentor, you'll need to subscribe to the KDE-Soc-Mentor mailing list. This is where you'll discuss ideas, read proposals, and vote on them according to guidelines.
As a mentor, you'll be assigned a student who may need help with a large project. Make sure you're up for the task, as mentoring takes time and lots of communication. Daily communication is required with your student during the Community Bonding period, and multiple times per week during the coding period.
You'll never be assigned a project you don't want to work on, and you'll have a backup mentor in case something unforeseen happens.
To sign up as a mentor, follow these steps:
- Contact the administrators in #kde-soc on Freenode to let them know for which project you want to mentor and give us your google-connected account email
- Log in to GSoC webapp after being added as a mentor by one of the admins
- Subscribe to KDE-soc-mentor mail list
It's also a good idea to read the mentoring guide and Federico Mena-Quintero's helpful information based on his experiences in previous years.
Refactoring and Documentation
Refactoring Gcodetools is an easy task, but it can take anywhere from 175 to 350 hours depending on the scope. This project is a great opportunity to learn and improve your Python programming skills.
Jonathan is a potential mentor for this project, and having a Maker background or familiarity with the Maker community is a prerequisite.
To get started, you'll need to query Maker spaces on their needs regarding Gcodetools. This will help you understand what needs to be improved and implemented.
The tasks involved in this project include implementing the needs of Maker spaces, writing unit tests, improving test coverage, and writing proper documentation for Gcodetools.
Here's a breakdown of the tasks:
- Query Maker spaces on their needs regarding Gcodetools
- Implement those needs together with unit tests
- Improve the test coverage of Gcodetools
- Write proper documentation for it
Frequently Asked Questions
When can I apply for Google Summer of Code 2024?
You can apply for Google Summer of Code 2024 from March 18th at 18:00 UTC to April 2nd at 18:00 UTC. Mark your calendars and get ready to kick-start your open source software development journey!
How competitive is Google Summer of Code?
Google Summer of Code is a highly competitive program, with thousands of students applying each year. Only a small percentage of applicants are accepted, making it a challenging opportunity for students.
Do you get paid for Google Summer of Code?
Yes, Google Summer of Code participants receive a stipend for their work. They are paid as independent developers, not as Google employees.
Sources
- GSoC official site (summerofcode.withgoogle.com)
- communicating (.fedoraproject.org)
- Google Summer of Code Site (summerofcode.withgoogle.com)
- Pagure Repository (pagure.io)
- Summer of Code FAQ (google.com)
- Summer of Code (google.com)
- eligibility (google.com)
- Google's web interface (summerofcode.withgoogle.com)
- How to write a kickass proposal for GSoC (wordpress.com)
- GSoC Student Manual (google.github.io)
- Summer of Code FAQ (google.com)
- His HOWTO (gnome.org)
- mentoring guide (booki.cc)
- GSoC webapp (summerofcode.withgoogle.com)
- https://summerofcode.withgoogle.com (summerofcode.withgoogle.com)
- Python Software Foundation's FAQs on GSoC (python.org)
- PostgreSQL Global Development Group (postgresql.org)
- This project aims to replicate Amazon Textract using standard computer Vision techniques and well as the latest deep learning architectures. (ccextractor.org)
- CERN HSF (summerofcode.withgoogle.com)
- CERN HSF (summerofcode.withgoogle.com)
- BRLCAD (summerofcode.withgoogle.com)
- Ruby Science Foundation (SciRuby) (summerofcode.withgoogle.com)
- CERN-HSF (summerofcode.withgoogle.com)
- Aperium (summerofcode.withgoogle.com)
- Red Hen Lab (summerofcode.withgoogle.com)
- Intermine (summerofcode.withgoogle.com)
- NumFOCUS (summerofcode.withgoogle.com)
- NumFOCUS (summerofcode.withgoogle.com)
- Project Nephos (summerofcode.withgoogle.com)
- OpenMRS Android Client (github.com)
- Add On System (github.com)
- Series Expansion (github.com)
- BeagleLogic (github.com)
- Symbolic equation solvers (github.com)
- BRL-CAD (brlcad.org)
- Genome Informatics (gmod.org)
- Combinatorics (github.com)
- Drupal (drupal.org)
- Sample Platform (summerofcode.withgoogle.com)
- Nishant Nikhil (github.com)
- PRUSS Support for Newer Kernels (elinux.org)
- Improving Solvers : Extending Solveset (google-melange.com)
- "Accepted Projects – GSoC 2015" (google-melange.com)
- "Accepted Projects – GSoC 2014" (google-melange.com)
- "Accepted Projects – GSoC 2012" (google-melange.com)
- "Accepted Projects – GSoC 2011" (google-melange.com)
- https://developers.google.com/open-source/gsoc/help/student-stipends (google.com)
- "More statistics from Google Summer of Code 2016" (google-opensource.blogspot.in)
- "GSoC 2012 Stats" (google-opensource.blogspot.in)
- GSoC Stats (google.com)
- Google Summer of Code program site (summerofcode.withgoogle.com)
- FAQ (google.com)
- Program Rules (summerofcode.withgoogle.com)
- GSoC Contributor/Student Guide (google.github.io)
- Resources page (google.com)
- Google Summer of Code (google.com)
Featured Images: pexels.com