Making the most of Google Summer of Code - Dave Neary, guest blogger
2/16/2012 8:51 AM
So you want to be a Google Summer of Code (GSoC) mentor in 2012
... here are a few things to keep in mind when preparing your project's application, and should you be chosen, how to get the most out of the experience.
The first thing you need to do is propose your organization for inclusion. The proposal period for 2012 is February 27th to March 9th
, so you need to think about this now.
Google picks projects based on a few criteria: the project's track record is the most important, but for new organizations, your ability to provide mentors, the reputation of your project, your reactivity to any questions, and having a good and well signposted ideas list are also vital.
If your project is lucky enough to get some slots, you should ensure your proposed mentors are aware of the GSoC Mentor Guide
, a comprehensive guide to running a mentoring program, with a strong focus on the Google Summer of Code.
If not, then all is not lost! You can still propose project ideas, and suggest yourself as a mentor, for related organizations which have been chosen. Many organizations, such as the Outercurve Foundation, have a broad scope, and are happy to accept proposals and mentors from projects with a relationship to the organization.
When you are drafting project ideas, bear in mind that a student will be new to your project - it will take them between two to three times as long to complete a task as it would take you. Scope tasks appropriately.
One of the hardest things about the process is recruiting and selecting students. You can expect some applications because of the high profile of the program, but most projects also advertise themselves specifically in universities, if they have the ability to do so. If you have any connections with the student or academic world, take advantage of them to promote your project and to ensure a good pool of student applicants.
Most projects these days have a simple test task which they expect applicants to do as part of their application process - this could be as straightforward as checking out your source code, compiling and running it, changing one string in a user interface, and submitting a patch and a screenshot. The goal of this is to ensure students fulfill the basic prerequisites to be able to start working with your project. It can be worthwhile teaching basic programming skills, and helping people become familiar with developer tools, but that's not really what GSoC is for.
Entry tests are a good opportunity to review how easy or hard it is for a first time contributor to get to the starting line of your project. If a lot of students are complaining about the difficulty of your test, it might be worth your while to consider how good your "Getting started" tutorial is, or whether you are using a tool or framework which is difficult to install and configure.
Once the project starts, be sure you can commit the time necessary to mentor a student well. The Summer of Code mentor guide suggests that 5 hours a week is appropriate. Federico Mena Quintero's excellent guide to being a mentor
suggests that mentoring will take an hour a day, plus two hours a week to review and test everything your student produces.
A key component to a successful GSoC internship is integrating the student into your community, and encouraging them to participate on your project's communication channels. If you find yourself regularly being the go-to person for questions which really should be asked on a mailing list, this should raise a red flag. Also, no one likes to see work they produce going to waste, so try to break up tasks into smaller chunks which can be included progressively into the mainline of your project. This will ensure your student's code gets used, and gets wider review.
Above all: remember the goal of participating in GSoC is not to get a nice new feature or some cheap code. It is to bring new contributors to your project. To build quality relationships, I recommend that no mentor take on more than one student. Meet regularly during the project and follow up often after the internship has finished to keep them involved in the project, if only in a small way.
For my money, the best thing about the GSoC program is how it has encouraged projects to formalize their mentorship programs and think about the experience they are giving to new members. Even if you are not accepted into the official program, either as a mentor or as a project, consider taking a student under your wing anyway. It's a great experience, and it'll increase your chances of being accepted into future programs.
For more information on Dave Neary click here
1 comment(s) so far...
By Paula on
2/28/2012 1:01 PM
Re: Making the most of Google Summer of Code - Dave Neary, guest blogger
Great post Dave, timely given the deadlines for GSoC. I encourage Outercurve project leaders to take advantage of this!