Larry Page, one of the co-founders of Google, was very thoughtful about the age-old problem of educational slip back. He noted that many brilliant computer students who worked hard during their senior academic year would fail to find further educational or meaningful employment opportunities once they graduated. This would then begin the deterioration of their technical skill set.
For example, a graduating student from a remote location -- say somewhere in Zambia -- doesn't have the same opportunity to obtain a valuable developer internship like a student from the USA. Even if this student does find a good experience, money can be a problem. So the student flips burgers or washes dishes to make some bucks. Even if a job is available for these students in technical field, it won't necessarily help to extend their skill in software development.
Since students are not getting continuous support to perfect their skills during the holidays, their overall computer discipline tends to backslide. Larry wanted to help solve this problem, so Google introduced an open source project program for students called Google Summer of Code.
Introduction to Google Summer of Code
Google Summer of Code (or widely known as GSoC) is a global program for high school grad and college student developers that offers a stipend to write code for various open source software projects. This gives students an opportunity to develop code and hone their technical skills over the summer months when they're not in school.
The Summer of Code projects may belong to different open source, free software and other tech-oriented partner organizations. Organizations include Blender, the Berkman Centre at Harvard, Wordpress, MySQL, the Electronic Frontier Foundation, The Linux Foundation, Mozilla, OpenMRS, Sahana, Apache, Creative Commons and Google. (View a complete list of partner organizations from 2011's Summer of Code.) Students write code for various open source software projects, and Google plays a vital role as the administrator of the program, spending $5 million annually.
Who Can Participate
Any student above 18 is eligible to participate in Summer of Code, which defines "student" as someone who has enrolled for a fulltime or part-time undergraduate, master or Ph.D. program. The student need not be an IT or computer science major to participate. Even students who have some university level coding experience but are pursuing a degree in another program are eligible to participate. Google has another open source project program called Google Code-In (GCI) for students aged 13-17. They can produce a variety of open source code, documentation, training materials and user experience research. This typically starts at the beginning of the school year.
The best thing about Summer of Code is that there is equal opportunity for all students, whether they are experienced or brand new to open source software projects. For those students with no previous experience in open source coding, the name "Summer of Code" and the term "open source" may be a bit intimidating. Google understands this, and makes it a point to provide every participant with a mentor. Mentors will guide students to connect with the community, write code and provide any other help needed to develop the code.
How to Participate
Google has just announced the program for 2012. They are seeking both students and mentor organizations. Student applications will be accepted from March 26 through April 6. Mentor organization applications will be accepted February through March 9.
1) Match Your Students' Skills Carefully
There are many different organizations with needs for many different skill levels. A student should make sure that his or her skill level matches the requirements of the partner organization.
2) Familiarity Breeds Success
Each student applicant should be familiar with the open source software he or she is applying to work on.
3) Propose Your Own Idea
Student applicants can add their own ideas. Here is last year's list of accepted projects to get your students' creative juices flowing.
4) Connect with Others
Open source project development is all about communication. Talk with the open source community and get feedback about your idea.
Getting Started: A Resource List
GSoC FAQ - There's no better online resource available about Google Summer of Code than the Frequently Asked Questions page.
GSoC Timeline - Know what GSoC event happens when.
GSoC Student Guide - This provides everything a student needs to know about Summer of Code, from applying to submitting final codes.
GSoC Mentors Guide - This is a perfect free guide for those looking forward to mentor a Summer of Code project.
Since the 2012 Summer of Code has not yet announced this year's organization list, it is highly recommended to check out last year's list. Most of the previous organizations will be participating again this year.
However, Google has announced the GSoC guidelines. The skill requirement for each software project varies, so students should evaluate their technical skill levels when choosing a suitable project. Follow these steps to choose a particular project and organization for Summer of Code.
1) Identify Potential Organizations
There are plenty of organizations on the list, but when choosing one, consider:
Which open source software applicants use most often
How to fluently present your skill set and professional interests
2) Review Project Ideas List and Find Potential Projects
The project ideas list suggests student projects that will introduce contributors to the range of what's available, encouraging them to short list their potential ideas. Note that quality is better than quantity.
3) Talk with the Community Before Applying
Open source project development is all about communication. Talk with the open source community to get feedback about your idea. If everything is OK, look forward to applying for Summer of Code.