Tuesday, 1 March 2011

Advice for students applying to Google Summer of Code

For the past several years Google has run a program called Summer of Code (GSoC) that funds university students to work on open source projects during the summer. A large number of leading open source projects participate and provide mentorship to students.

Google have announced that organizations can start applying for GSoC 2011. Students will be able to apply for projects once the accepted organizations have been announced. See the timeline for details.

In 2008 I participated as a student and worked on remote GDB debugging for the gPXE network bootloader. I had a great time and stuck around after GSoC ended, continuing to contribute to Etherboot.org. In the following two years of GSoC I participated again, this time as a mentor.

I've seen GSoC from both sides and here is my advice for students who want to apply.

Is it worth doing?

Yes, definitely. GSoC gives you privileged access to an open source community and a mentor who has committed to supporting you. If you have ever been interested in contributing to an open source project then this is the chance!

Choosing a project

In past years there have been many participating organizations to choose from. You can either apply for a listed project idea or suggest your own project idea. If you have your own project idea then make sure to get in touch with the organization well before the student application deadline in order to pitch your idea to them and get their support.

Choose a project idea that you are comfortable with, both in terms of the amount of effort it will take and your current level of skills. You can learn a lot of new things during the summer but make sure you can deliver on what you are promising. The good news is that there are so many project ideas to choose from that you should be able to find something that matches your interests and skills.

The other common factor is the amount of time you will be expected to spend on your project. Many students work full-time from Monday to Friday much like a regular job. Sometimes organizations are happy to accept talented students who can deliver their project with less time commitment. You can probably take some vacation days off but make sure to state your availability upfront when applying.

It's worth keeping in mind that GSoC is quite decentralized. Individual organizations have a large degree of control over how they run their projects. No two organizations work the same so look at their previous years' wiki pages and project archives or ask the mentors to understand how they operate.

I suggest applying to two or three organizations. Since organizations are free to approach GSoC quite differently, it's worth diversifying your applications so you can choose the organization and mentor you are most comfortable with in the end. Remember that just because a piece of software is cool does not mean that their GSoC or community are the right place for you, so look at multiple organizations. Also keep in mind that organizations have limited "slots", or numbers of students that Google will fund, so if you are unlucky an organization may run out of slots and be unable to take you even if they are interested. For these reasons it makes sense to apply to two or three organizations.

Making your application

The bare minimum student application involves filling out a project proposal form. To increase your chance of getting accepted you need to consider how organizations select students.

Organizations will receive more student applications than they have slots. In the past I've seen 5:1 to 10:1 ratios so understand that GSoC is competitive. There are three levels of student applications:
  1. Students who either do not have the skills or did not put in enough time to prepare a decent project proposal. These are easy to spot for the organization and they are not your competition. They do serve as a reminder to double-check the timeline and make sure you fill in appropriate information. If you have questions just ask the organization you are applying to, they'll be glad to help interested students.
  2. Students who might be good candidates but do not stand out from the competition. The majority of applications will be students who probably have the skills to tackle the project but their attitude, personality, and enthusiasm is unknown. These students fail to communicate their abilities and vision clearly enough to stand out. Your main goal when applying should be not to fall into this group.
  3. Students who have shown enthusiasm, ability to communicate, and clearly have the skills not just to complete their project but also to contribute to the community. If you can stand out like this then you're likely to get picked. These students will contact the mentor ahead of time and discuss the project idea. This will arm them with the information to put together a good proposal. They will join mailing lists, forums, or IRC channels to learn about the community. They will even contribute patches before being accepted for GSoC - this is a key action you can take to improve your chances.

Another way of explaining this is that a large number of students will apply. Many of them will be in the ballpark and could potentially complete the project. But due to the high applications to slots ratio, only the best will get chosen.

Perfectly good students will not get a slot so aim to be that top level of student who is interested not just in doing a project over the summer but in diving into the community, helping users, contributing patches, and fixing bugs. If you do that then your chances of being accepted are good.

Final thoughts

I hope this helps you prepare for Google Summer of Code. For more information check out the official FAQ.

This year I'm excited about helping QEMU. A project ideas page has been published, so check that out if you are interested in emulation or virtualization.

Have GSoC questions or advice to share? Post a comment!


  1. nice overview about the GSOC

  2. The post is written in very a good manner and it contains many useful information for me. PhD Dissertation Proposal

  3. A few scholarships offer a bit of the general educational cost expenses while others may take care of the whole expense of instruction. homepage

  4. Schools will be given COMPUTER SCIENCE MUT more self-sufficiency over school spending plans and staff necessities, and also the ability to postpone obligatory expenses, as they remain openly financed.

  5. Investigation has dependably been a test for computerized promoting, nonetheless, Google Data Studio enables you to make adaptable information perception and report.אינדקס אתרים

  6. Amazing, this is great as you want to learn more, I invite to This is my page. best free pc games

  7. Yes scholarships offer a small of the general educational cost cheap while others may take care of the whole expense of instruction

    Most beautiful

  8. I have read your article; it is very informative and helpful for me. I admire the valuable information you offer in your articles. Thanks for posting it.

    Good Morning Messages For Friends In English

    avenger 4 Trailer

  9. I have read your article; it is very informative and helpful for me. I admire the valuable information you offer in your articles. Thanks for posting it.

    Get latest school updates here

  10. I have read your article; it is very informative and helpful for me. I admire the valuable information you offer in your articles. Thanks for posting it. Federal Fire Service Recruitment

  11. Therefore from the very beginning, you need to save money for your child's education. Your child will grow and the fixed amount will also be growing into maturity.course help answers

  12. It actually helped me a lot! Thanks. I know this post is a bit late now but you made a great contribution.

  13. Very informative post! There is a lot of informationhelena school pune here that can help any business get started with a successful social networking campaign.

  14. The equivalent can be said of the Two-year Post-Diploma in Basic Education, Four-year Bachelor's qualification programs kept running by the University of Cape Coast, the University of Education, Winneba and different Universities and University Colleges. best coursework writing service uk

  15. awesome this was the post i was looking for thanks for the information

  16. so helpful information
    i love this website

  17. I couldn’t resist commenting. Exceptionally well written! It’s perfect
    time to make some plans for the future and it is time to be happy.
    I’ve read this post and if I could I wish to suggest you some interesting things or suggestions.
    Perhaps you can write next articles referring to this article.
    I wish to read more things about it! I have been browsing online more than 4 hours today, yet I never found any interesting article
    like yours. It’s pretty worth enough for me.

    In my view, if all website owners and bloggers made good content as you did, the web will be a lot more useful than ever before.

  18. This information you have shared is really enlightening. I'm glad you shared it. I must say you are season with your niche. Thanks for the share and keep up the good work. Nice one.