GSoC 2012 Experience
Roughly the same time last year I was caught in a dilemma of what to make of my summer. Given my low interest in departmental courses, I was not so convinced about going for an industrial internship with just one year knowledge of relevant courses. Research domain was beyond me to say the very least and whole idea of mailing exhaustively professors with little or no idea of research topics, just for the sake of a free holiday did not amuse me much.
In short, I was looking for something more substantial and widely recognized. I ended up being a part of Google Summer of Code 2012 program, this post is a brief introduction about the program for the uninitiated who take programming as a passion and are willing to step it up for real world applications
Google Summer of Code Introduction as on their official page :
Google Summer of Code(often abbreviated as GSoC) is a global program that offers post-secondary student developers ages 18 and older stipends to write code for various open source software projects.
-
Anyone who is above eighteen and enrolled in an university (as of May, 27th for this year) whatever his/her major may be, is eligible for applying
-
Google only sponsors the open source development done during the three months. Which means you would not be working for Google but you would be working for an Open source organization where your contribution being funded by Google
Open Source development is what one does if accepted in this program. Many of your favorite softwares you might be using are open sourced ,ie, majority of their code base is public and community driven. Anyone who wishes to contribute can request a feature or fix a bug. It’s quite amazing to know how these organizations work given they hardly interact physically, credit must be given to how well they plan their roadmap, maintain their code repositories, and have a dedicated group of programmers who keep their projects running
All open source projects have well structured documentation, sophisticated bug-tracker and a majority of them use Internet relay chat(irc). A quick word about irc : IRC is an instant chat service for groups, full of people who would be more than happy to help you out. As IRC ports are blocked on the IITR network, you may use a web client as an alternative.Here’s a nice overview of IRC by Mozilla - https://quality.mozilla.org/docs/misc/getting-started-with-irc/
While Google Open Source Office has broken down the evaluation in two stages, being accepted as a student developer is the tough part. Formally, acceptance requires interested students to write a proposal on one of various ideas which the participating organization floats for the year, although one is not restricted and can suggest an idea of their own as long as it is relevant.
This proposal is a brief overview of what you intend to do to achieve your targets, your strategy for solving the issue, and a brief background about you your skill-set and past contributions in relevant projects. Although a good proposal might appear to be the obvious judging ground, most organizations count on student’s past participation which may be in form of bug fixes or general participation in public discussions, hence it’s always advised to start early as to blend in a big organization takes time. Some organizations also prefer to have an interview, although the major weight-age is always given to the former factors.
Coming back, what makes SoC different from what you may think of an internship is the fact the entire thing is done online. It doesn’t matter from where you work on as long as you can contribute on a regular basis. People from different parts of the globe with diverse backgrounds come together the fact that the chances are you will never physically meet your fellow developers or your mentor are quite high.
This year 177 mentoring organizations have been accepted into the program, of which 40 organizations have been accepted for the first time. My mentor organization for last year was Statistics Online Computational Resource(SOCR) at UCLA. My project was to create a portable application that demonstrates the concepts of statistical resampling, randomization and probabilistic simulation. More details about my project can be found at http://wiki.stat.ucla.edu/socr/index.php/SOCR_Resampling_HTML5_Project . My project was more about application of fundamental statistical concepts. This is another speciality about this program that one gets an opportunity to work on wide range of topics from genetic engineering to kernel design.
Owing to the popularity of the Summer of Code program several other programs on similar lines have been initiated. Outreach Program for Women in FOSS is the most recent and intended to promote girl participation in Open Source Porgrams.
Some resources have been mentioned in the end which I believe will be useful if you are interested to apply this year. If accepted, you are in for summer full of learning, collaborating with the best, a starry bullet in your resume and a fat paycheck. Are you game?
Resources:
http://www.google-melange.com/gsoc/homepage/google/gsoc2013
http://groups.google.com/group/google-summer-of-code-discuss
http://flossmanuals.net/GSoCStudentGuide/
http://blog.vmsplice.net/2011/03/advice-for-students-applying-to-google.html
http://developers.google.com/open-source/soc/