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.”

A Mozilla VoIP Project

The Mozilla Foundation is not on Google’s list of awarded projects, but the Mozilla application development group MozDev is.

One of the projects that Google is funding at MozDev is called Cockatoo, which, according to developer Filip Dalüge, is about implementing the SIP protocol for Mozilla in order to enable phone calls from Mozilla Thunderbird.

There was already an internal Mozilla project, which tried to implement a SIP stack for Mozilla (called “zap”), so Dalüge had to reorganize his project somewhat.

“The general goal of my project is to advance Thunderbird by an increasingly important Web standard, SIP,” Dalüge explained to internetnews.com. “Users should be able to make more use of their address books, which often already contains many phone numbers. With Cockatoo they will be able to initiate calls as easily as replying to an e-mail.”

Microsoft recently paid an undisclosed amount to acquire a similar technology for use with its Outlook and IM applications.

According to Dalüge, Cockatoo will only provide minimal functionality based on the code provided by the end of the summer.

“But as the first step has been done now, I hope that it will be an invitation for other developers to extend the project, as SIP will surely be an important topic for Mozilla in the future,” Dalüge added.

Some of The Rest

Nestled among the 410 projects that Google funded this past summer are 13 that were directly sponsored by Google for Google.

One of those projects was awarded to Meredith Patterson who spent the summer modifying PostgreSQL to support more natural, intuitive queries, ones that are qualitative rather than quantitative.

Meredith Patterson, a student sponsored by Google, noted that recently there have been a lot of new applications that use similarities to provide users with a more personalized experience.

One example cited by Patterson is OkCupid, which looks for similarities between users’ responses to multiple-choice questions in order to help people find other people with common interests or possible romantic partners.

Another example is the new music-delivery service Pandora, which has a large library of songs, each annotated with information about the song’s style. It uses this information to find music similar to songs that a user has already said he or she likes.

“I’m hoping that my project will make it easier for people to develop services like these,” Patterson said.

The Google Sugar Daddy

Working for “free” is one thing; getting paid to work on Free and Open Source software is quite another. Google’s funding of the various projects didn’t raise notable problems, though it may have raised expectations for the future.

“One minor issue for us it that the reward offer is quite sizable, and was, in most cases, larger than what the bounty would have fetched in the usual Bounty system employed within Ubuntu,” Ubuntu’s Weideman said.

“This expectation will need to be managed.”

KDE, however, didn’t expect the “funding” to be any trouble at all.

“Google is going to fund us by making a donation, and the non-profit organization that is handling this (the KDE e.V.) is already used to receiving donations from companies,” KDE’s Macieira said.

“The KDE e.V. has existed for several years now and we have the experience in dealing with partner companies. The only problem will be to
find out what to do with that money.”

The lasting effect of what those projects achieved or will achieve for the sponsored organizations, the wider open source community and for Google itself has yet to be fully determined.

“Quite frankly, I don’t know how Google will use the projects’ results,” Macieira said. “I hope they use it to promote free/open software and show that there is a healthy relation between the corporate world and the free software developers.”

News Around the Web