September 21, 2005

Google's Summer of Code concludes

Author: Bruce Byfield

Google's Summer of Code (SOC), a program that matched computer science students with free and open source software (FOSS) projects and paid for results, is over. Despite some organizational problems, the SOC attracted an overwhelming response from both students and projects, and early indications are that the program has produced a wide range of projects and attracted a number of promising students to the FOSS communities. Whether the program will be repeated, however, remains undetermined.

Chris DiBona, open source program manager at Google, said that the idea for the SOC came directly from Google's founders, Sergey Brin and Larry Page. According to DiBona, the idea was to have students "exposed to real developers and the open source development community. We also wanted the open source community to be infused with the excitement, fun and innovation that new people can bring."

The name for the program came from the Summer of Love, a name given to the summer of 1967 in San Francisco, which is widely perceived as the apex of Sixties counterculture. In addition, DiBona said, "We wanted to have the word 'code' in the title as a sidelong glance to Google's Code Web site," a site maintained by Google for external developers interested in the company's use of open source software.

Intended benefits

DiBona said that the SOC was designed to benefit everyone involved in it. Students had the chance to work on real projects, rather than academic ones, and to get paid while gaining experience and making contacts. FOSS projects benefited from getting new code and having the chance to recruit new developers.

"It was my thought," DiBona said, "that through a program like this we could infuse new blood into some long established projects."

Matt Warden, a student who participated in the program, agreed, suggesting that the program "broke the barriers of the traditional open source software meritocracy that have kept highly skilled students from contributing in the past, while still maintaining the quality barriers between submissions and code included in releases."

As sponsor of the SOC, Google also benefited, although less directly. DiBona did not mention the obvious publicity value, but he pointed out that as a company that makes heavy use of FOSS, Google benefits with everyone else. DiBona noted that Google also "gets to see up and coming developers at work," which might aid in the company's recruiting of new employees in the near future.

Initial stages

The program was announced on Google Code in June 2005 and publicized with posters at a few universities. The program's organization was simple: FOSS projects posted a list of suggested projects and selected mentors to oversee them, and students were invited to apply. Mentors could select which students to work with, using whatever criteria they chose. At the end of the summer, students who completed their projects would receive $4,500.

The original program called for 200 students. However, after an announcement on Slashdot, interest was so high that Google doubled the number of applications it would accept.

In the end, DiBona said the Summer of Code received 8,744 applications and accepted more than 400 projects, with 41 FOSS projects participating. Major beneficiaries included the Apache Software Foundation with 38, KDE with 24, and FreeBSD with 20. Smaller and more specialized projects also benefited, with WINE, Samba, and Mambo each receiving six.

The results

Results are still coming coming in, but Google estimates that more than 88% of projects were completed.

Confirming this completion rate is difficult, because, as might be expected with the FOSS development model, many projects are continuing even though the program is over. Some, too, seem to have changed direction as they developed.

Nor was this completion rate uniform. Ubuntu, for example, reports a completion rate of only 64%, and KDE reports a 67% completion rate. However, talking to students and mentors, it seems clear that, despite varying success rates, a wide variety of new projects has been added to FOSS code bases.

Summarizing more than 400 projects is impossible, but a random sampling of projects demonstrates the diversity. For the GNOME project, student assignments included a project to improve startup time, document revision control in Nautilus, and improve encrypted folder support.

MozDev assignments focused largely on localizations of Mozilla, Firefox, and Thunderbird into Hindi, Latvian, Thai, and Vietnamese languages, but also included a Thunderbird phone client, a graphical theme builder for Mozilla, and a BitTorrent extension for Firefox. Ubuntu projects focused on desktop tools, with GNOME Panel enhancements, file search, and graphical configuration tools among the assignments. Other projects showed a similar variety.

Next: Reactions from students

Danilo Segan, who worked on Sarma, a live editor for GNOME documentation, differs from many students in that he was already involved in the FOSS communities before taking part in the SOC. Previously, Segan has been involved with Serbian translation for GNOME, and several documentation-related projects. As a result, Segan knew when he applied that he wanted to work on a GNOME project. "Also," he said, "since I have been doing a lot of the behind-the-scenes work on GNOME, I wanted something where I would test myself in user interface design as well."

Segan was more focused and more articulate than some of the students in the SOC program. "What I liked best," he said, "is the opportunity to work on free software that I love, while not worrying about real life problems. And it was also the opportunity to finally learn a few technical things I always wanted to learn. Another nice thing is the chance to get to meet a whole lot of IT/Computer Science students sharing the same ideals."

While generally satisfied with his experience, Segan noted widespread dissatisfaction with the management of the program. In particular, he mentioned that many participants were disgruntled because "most non-US students will probably be getting $3,150 because of 30% tax in the US" instead of the full $4,500. This is a problem that might have been avoided for students living in countries with which the United States has reciprocal tax agreements. According to Segan, students also complained about the slow payment and a lack of organization. "Paperwork has been lost and resent for almost everybody a couple of times," he alleged. Nor was there any online tracking system for payments. "I still don't know if I submitted enough data for electronic payment," he said, "or [whether] I will be getting cheques."

These administrative problems aside, Segan views his experience in the SOC as generally positive. He described Federico Mena Quintero, the mentor assigned to him, as "very nice and responsive," and seemed pleased that they could settle some differing ideas about the direction of the project. Segan also believes that his participation has increased his connections in the GNOME documentation project.

On a more personal level, the SOC gave Segan "a good reference on his CV" and increased his technical knowledge while providing him with money to live on for at least six months. "The Google Summer of Code is what every free software contributor dreams about: A chance to earn money working on what you love and enjoy."

Next: Responses from mentoring projects

Some sponsoring projects were skeptical about the program at first. Luis Villa, a member of the board of directors for the GNOME Foundation, initially expected "no concrete results" over the summer for a project he championed while selections were being made.

Jane Weidman, who coordinated the SOC efforts at Ubuntu, was even more skeptical at the outset. The selection process, Weidman suggested, was "extremely difficult" because applications varied "from flippant one-liners right through to veritable dissertations." Moreover, since mentors were not allowed to interact with applicants, Weidman believes that there was no way to accurately assess them. At times, she suggested, "the candidate with better writing and English skills got through rather than the candidate with the best skill for the project at hand."

As a result, Weidman said, Ubuntu's "students got off to a relatively slow start." Mentor assignments had to be changed, and, in the first weeks, "it seemed the hopes of obtaining creative and skillful coding solutions through the program seemed to be dashed."

However, during the last month of the program, Weidman said, most of these problems resolved themselves. By the end of the SOC, most students "impressed their mentors with their learning curves, and have shown enthusiasm, dedication and commitment to their projects."

Ubuntu now plans to include the GNOME panel enhancements created by Emmanuel Cornet in its next release, and Carsten Hey's Firewall in the April 2006 release. Ultimately, Weidman judges the program a "positive" experience, marred by teething problems that can be avoided if Google repeats the program.

Villa is equally positive. "We have very concrete, and I think very exciting results," he said. He hopes to see Danilo Segan's live documentation tool included in the next release. He is equally excited by the prospect of decreasing the boot time of the next release by as much as 15 seconds.

From these samplings, it seems as though few, if any, of the SOC assignments were revolutionary. The majority, however, seem to be solid and much-welcomed contributions to the mentoring projects. Google's DiBona summarized many of the mentoring projects' reactions when he said, "The jury is still out ... [but] I've been very happy with the early returns. The students have certainly exceeded expectations."

Repeat performances?

Whether the Summer of Code will be repeated is still undecided. Judging by the problems reported by both students and mentoring projects, it seems that Google was unprepared for the overwhelming response to the program, and had difficulties managing the project as a result.

Also, the program seems to have clashed with existing bounty programs. Jane Weidman pointed out that Ubuntu already offers bounties for completing code. She worries that the size of Google's payments will raise expectations about bounties to an unrealistic level in the future.

These problems aside, responses from both students and mentoring projects remain positive. Most would agree with Weidman when she added, "The goodwill and generosity shown by Google has been amazing."

DiBona said that Google is assessing feedback from students and mentors to gauge the success of the SOC. From his current knowledge, he said, "It's likely that we'll do this again." At the same time, he cautioned, "Two million dollars" -- the amount, presumably spent paying students and managing the program -- "is a lot of money, so no promises."

Bruce Byfield is a course designer and instructor, and a computer journalist who writes regularly for NewsForge and the Linux Journal Web site.

Click Here!