Weekly edition Kernel Security Distributions Contact Us Search Archives Calendar Subscribe Write for LWN LWN.net FAQ Sponsors

# Development

## Google's Summer of Code: Past and Future

February 18, 2009

This article was contributed by Donnie Berkholz

Since 2005, Google has run its Summer of Code program each (northern hemisphere) summer, offering college students \$4500 and a T-shirt to work on an open-source project instead of flipping burgers. Students involved often report that the program has allowed them to get their dream jobs or get into their top-choice schools. For the projects fortunate enough to be accepted, the Summer of Code offers a number of benefits:

• Increased visibility of submitted code
• \$500 per student from Google, to be used for any purpose
• New developers, if you can recruit them by the end of summer
• Experience in mentoring people who may have no previous familiarity with your project, and connection with a community of people doing their best at the same.

Last summer's program was about three times bigger than the first year's (see the tables below). Because of the economic downturn, the 2009 program will be capped at 1000 students, a slight decrease from 1125 last year. The open-source community is fortunate that Google continues to offer this program at all, since it has been laying off many of its own employees. With 1000 students involved, this year's program will amount to a commitment to open-source of more than \$5 million.

To better understand the last few years and come up with some estimates about this year's program, I researched data from the previous four years, calculated a few statistics, and projected a few more. There were three numbers I was curious about: student acceptance rates, organization acceptance rates, and student-to-organization ratios.

Let's start with student acceptance. In the below table, you can see the number of applied and accepted students for each year. Bold text indicates a projection and bold, italicized text indicates a number derived from a projection. The next column has the growth rate in number of applicants. I used last year's growth rate as a conservative estimate of this year's increase, then calculated the number of applicants from a 15% increase to last year's count. Unsurprisingly, a growing number of applicants coupled with a lower number of available slots would reduce the acceptance rate. For open-source projects, this implies that students who make the cut will be even better than last year. Unfortunately, that means there will be more tough choices and deserving students who will not make the cut.

Year Accepted Applied Applicant Growth Acceptance Rate
2009 1000 8200 15% 12%
2008 1125 7100 15% 16%
2007 900 6200 103% 15%
2006 600 3050 -65% 20%
2005 420 8750 5%

Next, let's take a look at stats for the open-source projects involved in the Summer of Code. From the past two years, we can see that more than 1/3 of applying organizations get accepted. This seems high enough to be worth the effort of applying, which is primarily composed of thinking of project ideas. This exercise can be valuable for recruiting new developers outside of the Summer of Code, too.

One number that turned out to be surprisingly informative was students per organization, which has stayed remarkably consistent since 2006. Using the average of this number over the past 3 years, I estimated the likely number of organizations in this year's program and came up with around 150. If the organization applications increase at the same rate as they did from 2007 to 2008, the acceptance rate for organizations could drop below 20%.

Year Accepted Applied Acceptance Rate Students/Organization
2009 150 6.4
2008 175 500 35% 6.4
2007 130 300 43% 6.9
2006 100 6.0
2005 40 10.5

In addition to a few guesses about numbers, there's one major change to the program that we know will happen this year: the move to an open-source web application called Melange. This will enable anyone involved in the program to add new features or bugfixes on-demand. Since Google's open-source team is typically extremely busy, this means anyone who wants a feature can add it themselves as fast as they want to. One other interesting feature is that it should allow easy collection of various statistics across the entire program.

In addition, Melange's open-source nature means organizations besides Google can use the same application to run their own programs similar to Summer of Code. Work on Melange is still underway and the current developers would appreciate help in getting it ready for this year's program. So please get in touch if either of those reasons motivate you and you want to work with Django. At the moment, Melange runs on Google App Engine, but contributors are welcome to add new back-ends, according to Leslie Hawthorn, who runs the Summer of Code.

Last year's mentor summit and later discussions resulted in a wiki to collect the wisdom and experience of mentoring organizations over the years. This wiki is now hosted by the OSU Open Source Lab and was recently opened to the general public. It's only editable by Summer of Code mentors, but anyone can read and learn from it. It seems likely that it could become a valuable resource for organizations mentoring any new developers, whether within this program or outside of it. In addition, session notes from the mentor summits are also available on the wiki.

To find out more details about this year's Summer of Code, check out the FAQ. The application period for organizations is March 9 to 13, which gives you a few weeks to think of projects. The FAQ is a good starting point; it describes what a strong organization application looks like. Potential mentors will want to read the mentor advice page. For students, the application period is March 23 - April 3. If you are a student who is serious about getting accepted, read the student advice page and get in touch with organizations as soon as they have been announced.

System Applications

Audio Projects

## JACK 1.9.1 released

Version 1.9.1 of JACK, the JACK Audio Connection Kit, has been announced. "Future JACK2 will be based on C++ jackdmp code base. Jack 1.9.1 is the "renaming" of jackdmp and the result of a lot of developments started after LAC 2008. What is new: - A lot of improvements and bug fixes in NetJack2, that is now working more reliably. - Synchronize the JACK2 codebase with recent changes in JACK1 API (in particular some thread related functions as well as ALSA backend, ring buffer code...) - A lot of small bug fixes and improvements everywhere."

Clusters and Grids

## GridTrust: Enforcer 1.0 released (SourceForge)

Version 1.0 of GridTrust: Enforcer has been announced. "The overall objective of the GridTrust project is to develop the technology to manage trust and security for the Next Generation Grids from the requirement level down to the application, middleware and foundation levels. GridTrust project team is pleased to announce the 1.0 release of Enforcer. This release is the first release of Enforcer."

Database Software

## MySQL Community Server 5.0.77 released

Version 5.0.77 of MySQL Community Server has been announced. "The following section lists important, incompatible and security changes since the previous (binary) MySQL Community Server 5.0.67 release..."

## PostgreSQL Weekly News

The February 15, 2009 edition of the PostgreSQL Weekly News is online with the latest PostgreSQL DBMS articles and resources.

## SQLite release 3.6.11 announced

Version 3.6.11 of SQLite has been announced. "Changes associated with this release include the following: * Added the hot-backup interface. * Added new commands ".backup" and ".restore" to the CLI. * Added new methods backup and restore to the TCL interface. * Improvements to the syntax bubble diagrams * Various minor bug fixes."

Peer to Peer

## Tahoe filesystem 1.3 announced

Version 1.3 of allmydata.org's Tahoe filesystem has been announced. "We are pleased to announce the release of version 1.3.0 of "Tahoe", the Least Authority Filesystem. Tahoe-LAFS is a secure, decentralized, fault-tolerant filesystem. All of the source code is available under a choice of two Free Software, Open Source licences. This filesystem is encrypted and distributed over multiple peers in such a way it continues to function even when some of the peers are unavailable, malfunctioning, or malicious."

Web Site Development

## lighttpd 1.4.21 released

Version 1.4.21 of lighttpd, a light weight web server, has been announced. "Four and a half months after the release of 1.4.20 comes a new version in the stable branch of lighty: 1.4.21 is here. It is a bugfix release but also contains 3 small new features. We would like to thank everybody who reported bugs, especially the ones who provided patches."

## mnoGoSearch 3.3.8 released

Version 3.3.8 of the mnoGoSearch web site search engine has been announced. See the change log for more information.

## Samizdat 0.6.2 released

Version 0.6.2 of Samizdat has been announced, it includes some new capabilities and security fixes. "Samizdat is a generic RDF-based engine for building collaboration and open publishing web sites. Samizdat provides users with means to cooperate and coordinate on all kinds of activities, including media activism, resource sharing, education and research, advocacy, and so on. Samizdat intends to promote values of freedom, openness, equality, and cooperation."

Miscellaneous

## syslog-ng 3.0 released

Version 3.0 of syslog-ng has been announced. "After the release of its commercial version last fall, syslog-ng Open Source Edition 3.0 is finally available. The syslog-ng Open Source Edition application is a mature, stable system logging application that has become the most common alternative logging server of the Linux/Unix world. The syslog-ng application is the default logging solution of the SUSE distributions, and is estimated to be used by tens of thousands of organizations on hundreds of thousands of computers. Version 3.0 contains several new features that strengthen the range of syslog-ng's functionalities."

Desktop Applications

Audio Applications

## Das_Watchdog 0.9.0 is available

Version 0.9.0 of Das_Watchdog has been announced, it includes bug fixes Fedora 10 support and improved documentation. "Das_Watchdog is a general watchdog for the linux operating system that should run in the background at all times to ensure a realtime process won't hang the machine."

## PMDEX 4.0 released (SourceForge)

Version 4.0 of Project Manager Dexea has been announced, it adds several new capabilities. "Project Manager Dexea is a simple multiuser timetracking & multiproject management tool with a intuitive and easy to use web interface. Control your projects with a lot of charts, gantts and statistics."

Desktop Environments

## Announcing the Awesome project

Julien Danjou has announced the Awesome project. "Speaking of awesome, I'd like to bring your attention to the awesome project, a window manager designed rather as a frame-work than as a classical flat-configuration-file-driven window manager. It allows to do almost anything you can expect with a window manager, and probably more. It even respects and implements many of the Freedesktop standard, like EWMH, XDG base directory, system tray or notifications. We are also the first, and still one of the only, window manager to use the X C Bindings, dropping Xlib usage."

## GNOME Software Announcements

The following new GNOME software has been announced this week:
You can find more new GNOME software releases at gnomefiles.org.

## KDE Software Announcements

The following new KDE software has been announced this week:
You can find more new KDE software releases at kde-apps.org.

## Xorg Software Announcements

The following new Xorg software has been announced this week:
More information can be found on the X.Org Foundation wiki.

Electronics

## Herb status and eye candy

A new status report has come out of the Herb VLSI design project. "There are a ton of changes happening in Herb (a complete set of tools for VLSI design). Jan Schmidt has joined in to hack on the code. It would be nice to have several more C developers join us, and this is an extremely interesting project which uses GLib, so why shouldnt you?"

Financial Applications

## JStock - Stock Market Software: 1.0.3 Released (SourceForge)

Version 1.0.3 of JStock has been announced, it adds some new features and bug fixes. "JStock is a free stock market software, which supports multiple countries' stock market. (11 countries at this moment) It provides Real-Time stock info, Stock indicator editor, Stock indicator scanner, Portfolio management and Market chit chat features."

Interoperability

## Wine 1.1.15 announced

Version 1.1.15 of Wine has been announced. Changes include: "Gecko engine update. Better region support in GdiPlus. Support for cross-compilation in winegcc. Beginnings of MS Text Framework support. Many fixes to the regression tests on Windows. Various bug fixes."

Multimedia

## Elisa Media Center 0.5.27 released

Version 0.5.27 of Elisa Media Center has been announced. "This release is a 'light weight' release, which means it is supposed to be pushed to the users through our automatic plugin update system. That is why there is no new Elisa installer nor any new packages from our side: use the existing ones for 0.5.27; with the default configuration, they should upgrade automatically to 0.5.28, asking you to restart Elisa when everything is downloaded. Tarballs are provided for packagers who want to disable the automatic plugin update system on their distribution, so that they can make new packages for their users to be able to update (I strongly advise that, the new video section is worth it)."

Music Applications

## Marlin 0.13 released

Version 0.13 of Marlin has been announced. "After far too long, I got round to releasing a new version of Marlin. Marlin is a sample editor based around GStreamer, JACK and GTK."

Office Suites

## KOffice 2.0 Beta 6 Released (KDEDot)

KDE.News covers the release of KOffice 2.0 Beta 6. "The KOffice developers have released their sixth beta for KOffice 2.0. With this release we start to approach the end of the beta series and move towards the Release Candidates. As usual the list of changes is rather long, but it is obvious that the really large issues are starting to dry up."

Video Applications

## Dirac 1.0.2 released

Version 1.0.2 of the Dirac video CODEC has been announced. "This a a minor release complying with the latest Dirac Bytestream Specification 2.2.3."

Miscellaneous

## BleachBit 0.3.2 released

Version 0.3.2 of BleachBit has been announced. "BleachBit is a Internet history, locale, registry, privacy, and temporary file cleaner for Linux on Python v2.4 - v2.6. Notable changes for 0.3.1: * Clean apt cache, yum cache, rotated system logs, Skype chat logs, Transmission cache, Exaile cache, and more localizations. * Fix bug in selecting trash for cleaning. * Fix permission of configuration files created when running in sudo mode. * Fix unusual situation where selected language could disappear. * Fix situation where BleachBit could fail to start. * Add French, Arabic, and Turkish translations."

## VPTerminal: initial release announced (SourceForge)

The initial release of VPTerminal has been announced. "RS232 Terminal Program. The first public release of VPTerminal is available at SourceForge."

Languages and Tools

C

## GCC 4.4.0 Status Report

The February 16, 2009 edition of the GCC 4.4.0 Status Report has been published. "The trunk remains Stage 4, so only fixes for regressions (and changes to documentation) are allowed. As stated previously, the GCC 4.4 branch will be created when there are no open P1s and the total number of P1, P2, and P3 regressions is under 100. We've achieved that, but are still waiting for the FSF to provide instructions regarding the installation of the new run-time library license."

Caml

## Caml Weekly News

The February 17, 2009 edition of the Caml Weekly News is out with new articles about the Caml language.

Perl

## Parrot 0.9.1 released

Version 0.9.1 of Parrot has been announced. "On behalf of the Parrot team, I'm proud to announce Parrot 0.9.1 "Final Countdown." Parrot (http://parrot.org/) is a virtual machine aimed at running all dynamic languages."

## The Periodic table of Perl operators

An updated version of the periodic table of the operators for Perl 6 has been posted. It is truly a work of art, to say the least; suitable for framing.

Python

## ftputil 2.4 released

Version 2.4 of ftputil, a high-level FTP client library for Python, has been announced. "The ``FTPHost`` class got a new method ``chmod``, similar to ``os.chmod``, to act on remote files. Thanks go to Tom Parker for the review. There's a new exception ``CommandNotImplementedError``, derived from ``PermanentError``, to denote commands not implemented by the FTP server or disabled by its administrator. Using the ``xreadlines`` method of FTP file objects causes a warning through Python's warnings framework. Upgrading is recommended."

## Numexpr 1.2 released

Version 1.2 of Numexpr has been announced. "Numexpr is a fast numerical expression evaluator for NumPy. With it, expressions that operate on arrays (like "3*a+4*b") are accelerated and use less memory than doing the same calculation in Python. The main feature added in this version is the support of the Intel VML library (many thanks to Gregor Thalhammer for his nice work on this!). In addition, when the VML support is on, several processors can be used in parallel (see the new `set_vml_num_threads()` function)."

## Released Python 3.0.1

Python 3.0.1 has been unleashed. This is the first bugfix release of the new 3.0 branch. "Python 3.0 represents a major milestone in Python's history. This new version of the language is incompatible with the 2.x line of releases, while remaining true to BDFL Guido van Rossum's vision." Get it, test it.

## Python-URL! - weekly Python news and links

The February 17, 2009 edition of the Python-URL! is online with a new collection of Python article links.

Tcl/Tk

## Tcl-URL! - weekly Tcl news and links

The February 12, 2009 edition of the Tcl-URL! is online with new Tcl/Tk articles and resources.

Version Control

## Bazaar 1.12 released

Version 1.12 of Bazaar has been announced. "Bazaar (bzr) is a decentralized revision control system, designed to be easy for developers and end users alike. Bazaar is part of the GNU project to develop a complete free operating system. This release of Bazaar contains many improvements to the speed, documentation and functionality of ``bzr log`` and the display of logged revisions by ``bzr status``. bzr now also gives a better indication of progress, both in the way operations are drawn onto a text terminal, and by showing the rate of network IO."

## List of proposed backward incompatible changes to git

Junio C. Hamano has sent out a list of proposed backwards-incompatible changes to git. "Here is a list of possible future changes to git that are backward incompatible that are under discussion on the git mailing list. None of them will be in the upcoming 1.6.2 release, but some of them are likely to appear in future versions. If you think we should not introduce some of the listed changes, here is a chance to voice your opinions and make a convincing argument against them, so please do so."

Miscellaneous

## Gerrit Code Review 2.0.3 announced

Version 2.0.3 of Gerrit Code Review has been announced. "Gerrit is a web based code review system, facilitating online code reviews for projects using the Git version control system. Gerrit makes reviews easier by showing changes in a side-by-side display, and allowing inline comments to be added by any reviewer."

Page editor: Forrest Cook
Next page: Linux in the news>>