RealTime IT News

What I Did at Google's Summer of Code

Summer is a time for vacation, for introspection and for summer student internships. In 1967, it was about love. And in 2005, it was about code –- for Google, that is.

About 9,000 people applied to Google for the paid opportunity to participate in Google's Summer of Code program, an open source development project aimed at producing new and established open source programs.

The program was originally set up to accept 200 participants but that number doubled to 410 projects that were spread across 41 different sponsoring organizations, including Google.

Each successful coder was offered $4,500 for the summer's work, and each mentoring organization was to receive $500 for each developer project they oversaw. Projects were supposed to be completed by Sept. 1.

Among the project awards are both complex and simple innovations spanning the width and breadth of everything that the open source world has to offer. There are projects dealing with security, networking, VoIP , Java, mono, IP-PBX, online picture galleries, instant messaging and content management. There is even a game that Google's summer internship helped to pay for.

Google will benefit from the program, at the very least because it is sponsoring 13 projects for itself. Google will also likely benefit, as it is a user of many of the technologies that the mentoring organizations produce.

Code and experiences produced via the Summer of Code ultimately though may prove to have a lasting effect in the open source community as a whole for years to come.

Summer Under Way

Mentoring organizations were swamped with more applications than they had positions to offer.

The Apache Software Foundation topped the list of awards at 38 projects; KDE came in second at 24. Also on the list were FreeBSD (20), Python Software Foundation (19), Mono (16), Ubuntu (14), Fedora Core (13), Google (13), GNOME (12), Gallery (12), Codehaus (12), Drupal (11), Winlibre (10), Jabber (10), Mozdev (10), Samba (6) and Asterisk (4).

Though KDE, a graphical desktop environment for Linux and Unix, received the second highest number of Google Summer of Code students, Thiago Macieira, KDE core developer, doesn't think that there's any special reason for that.

"Google decided the number of stipends per project according to some fairly straight-forward criteria: the size of the project, the number of submissions the project got and the number of students the project reported that it could handle," Macieira explained to internetnews.com.

"In our case, we were not the second most-submitted project, but we did say we could handle between 30 and 40 students and the KDE project is fairly large."

Among Linux distributions, Ubuntu received the highest number of students at 14, one ahead of the only other participating Linux distribution -- Fedora Core.

Ubuntu is a Debian-based distribution, though it is not part of the recently launched Debian Common Core Alliance.

According to Ubuntu Project Manager Jane Weideman, Ubuntu received 236 official applications, as well as many more informal inquiries for the Google Summer of Code internship. The selection process was far from simple at first.

"Since there was no interaction mechanism between the students and mentors before the selection took place, it was extremely difficult to make the selection and really assess which students had potential," Weideman told internetnews.com.

"In some cases it is believed that the candidate with better writing and/or English skills got through rather than the candidate with the best skill for the project at hand," she said. "The applications also varied wildly in quality from flippant one liners, right through to veritable dissertations."

A Google Project

When the Summer of Code began, Google didn't officially have an IM project and wasn't involved in VoIP. With the recently launched Google Talk, Google is now involved in both, which makes Summer of Code efforts in both VoIP and IM spaces even more interesting.

One project that Google sponsored was "SIP/SIMPLE support for GAIM, an open source multi-protocol IM client that is routinely listed as the most actively developed open source application in the SourceForge.net open source software repository.

Summer of Code developer Thomas Butter explained that his project was an effort to implement the IM and presence extension of the Session Initiation Protocol (SIP) as a GAIM protocol plugin. The goal is to enable GAIM to communicate with SIP servers and clients like kphone, linphone or the Gizmo Project.

"GAIM supports a lot of different instant messaging protocols, and most of them have a very big user base," Butter told internetnews.com. "However, I believe SIP/SIMPLE is an important IETF standard, and SIP is already widely used in the area of VoIP. Google announced that they will support SIP/SIMPLE for Google Talk in the future, so I hope my work will be compatible with talk.google.com."