It worth mentioning that the proposal plays a very big role in selecting in Google Summer of Code. A proposal is basically you describing to your organisation how you would go about the project. Based on this and your credibility, your organisation would contemplate on whether to select you or not. I was Google Summer of Code student in 2018. During the proposal submitting time, I have seen a lot of proposal on the organization chat channels, some are good and some bad. Many people try but some of them get in as there are limited slots in every organization. What stands out the selected student from the student who didn’t get selected is their proposals (there are other factors too). Your proposal should convince the mentors that you’re the right person for the project that can take project to next level.

I did Google Summer of Code 2018 with FOSSASIA and Mentored Google Summer of Code 2019 students. I am sharing my perspective as a mentor, what mentor except in a proposal and what are some things that make you stand out.

What a good proposal contain?

Project Description

Write a small description of the project. It makes sense when you are proposing a new project. Do not copy the project description from the project GitHub page and paste.

Deliverables

You should propose a clear list of deliverables, explaining exactly what you promise to do and what you do not plan to do. You can also include the list of libraries/frameworks/tools which you are planning use for deliverables to make things clear.

Implementation

Implementation is the detailed section of Deliverables. Describe each deliverable in detail, how you are planning to get deliverables done. Write little about the technical things like mentioning libraries/frameworks/tools or including small code snippet or wireframe.

Timeline

In this section, break google summer of code timeline into the small time interval right from the Community Bonding Period right to the Final Submission date and write about what you will be delivered in particular time interval. Be realistic about the timeline, mentors can easily spot unrealistic timelines. You can split the time up into two week periods and described what I would do in each those periods. Find the full program timeline here.

Open Source Contributions

It is also important to mention how much you have contributed to the organization or Open Source in general. You can give links to the Pull Requests you have made or issued you have opened.

Personal Information

Write some important information about yourself. I have mentioned the following info in the proposal:

  • Name
  • University
  • Email
  • Personal Website
  • Github Handle
  • LinkedIn Profile Link
  • Resume Link
  • Location
  • Timezone

About Me

Write down a few sentences about yourself like your coding background, coding projects, internship experience etc which show that you are the strong candidate. Showing that you have already worked on a similar project helps a lot.

Obligations/Schedule Conflicts

Mention about the obligations you will be having during the GSoC period, mention the number of hours in a week you can give to your GSoC project. Mentor understand that you have you may have university classes/exams, they will not mind but mention it to avoid future inconvenience. Most likely many students have exams in the initial period and new semester starting in the final period.

Post GSoC and Future Work

Write a little about the work that will not be delivered during the GSoC period due to the time limit but after GSoC. Mention about how you will be making contributions to the organization after GSoC (coding is not the only thing that matters to organizations).

References

Provide links to the sources you have used in the proposal, it is always a good idea.

PRO TIPS

that’s what you need to know to stand out!

  • Get your proposal reviewed - It is important to get reviewed your proposal from the project mentor or right person in the organization. Organizations are always looking for the best students, they are always ready to review your proposal. The mentor can tell you what exactly the organization is willing to get done from a particular project in GSoC. You can get the review from the other participating students, friend/senior of you who have done google summer of code in the past. I would suggest you make proposal in a google doc which you can edit anytime. Make sure comments are enabled on the doc. Share the document link on the organization mailing list/channel and ask others to review. You can ping personally too.
  • Check the Grammar before submitting - Mentors know that students come from very different places and it is not necessary to be proposal in good English, no mentor will mind that but check your punctuation and use a spellchecker like Grammarly.
  • Submit your draft proposal early - Submit your draft proposal early so that mentor can give their feedback before final submission and ask you questions or request more detail on aspects of your proposal. Google allows you to edit the draft as many times as you wish before the application deadline.
  • Quality > Quantity - You can submit up to three proposals to one organization or different organizations, it’s up to you but I would suggest you to submit less proposals but make sure they are the best.
  • Describe your proposal, not project - Use the abstract section to briefly describe your proposal ideas than the project itself. The project in GSoC sense is the actual work you will be doing and not the organization project. Your mentor know very well what your project is.
  • Be proactive - Mentors are more likely to select students that openly discuss the existing ideas and/or propose their own. It is a bad idea to just submit your idea only on the Google web site without discussing it because it won’t be noticed.
  • Do not sit back after submitting the proposal - Keep working on the bug fixes, this could influence their decision. Try to learn more about the codebase. Selecting or not selecting is in organization mentor hand but keep working, that’s what is in your hand.
  • We’re long-term people looking for long-term people - Students that are likely to disappear after GSoC are less likely to be selected. This is because there is no point in developing something that won’t be maintained. And moreover, one scope of GSoC is to bring new developers to the community. Show them that you are long-term people.
  • Keep it short - Do NOT make a very lengthy proposal, mentors have limited time and many proposals to review. Keep your proposal short and informative. Your lengthy proposal will look like filling space with noise. Keep your proposal DRY (Don’t Repeat Yourself)

Here are my proposals that I submitted to the FOSSASIA organization:

  1. Enhancement to SUSI iOS Project (Accepted)
  2. Phimpme iOS Project (Not Accepted - to be honest, I gave a lot more time making this proposal and did good research than the accepted proposal above. It was a new proposed project. You can see how much it is important to know about the priority of the project for you are going to submit the proposal. Pro tips: contact the mentor earlier, they can tell you what are their priorities and what exactly they are looking for!)

Closing Notes

I hope I have provided useful information. Wish you all the best for the Google Summer of Code. Do NOT get demotivated in case your proposal didn’t get selected, Keep doing open source, I am sure you are gonna learn a lot. After all Open Source is Love. In case of any query, you can always reach out to me on twitter OR contact information given on About Me page. You can find my GitHub Profile here.