This is the sixth and final piece in LWN's series of Google Summer of Code (GSoC) 2007 articles. The first five articles covered the program launch, Ubuntu's projects, the OpenMRS organization, the student who tackled Direct3D 10 support for Wine, and Mozilla's projects.
When LWN contacted Leslie Hawthorn, Google's Open Source Program Coordinator, back in April, Google had just announced the names of the 905 students who they would be sponsoring to work for established open source projects for the summer of 2007. For the program's third year, Google was experimenting with some administrative changes intended primarily to ease the student payment process (each student is given $4500, over three installments) and help them bond with their mentoring developers and organizations. The program ended on August 31st with the deadline for final student and mentor evaluations, and the participants seem to have had another generally successful year. Again, we look to Leslie Hawthorn for more information about the effects of those changes, the outcome of the final evaluations, the GSoC 2008, and some of the individual students and projects that LWN hasn't had a chance to cover yet this summer.
LWN: Google made several changes to the Summer of Code from the previous year, such as a new payment mechanism and alterations in the program timeline to give students and mentors more bonding time. Can you evaluate the impact that these changes have had on the program? Will you revert any of these changes for next year's program, or are all of them here to stay?
Hawthorn: Overall we've gotten good feedback that adding the community bonding period was helpful. A few students mentioned it gave them some no-pressure time to just idle in IRC and learn about how the project worked. Another few commented that the time gave them the opportunity to read up on the latest research in their project area. I'm hoping that the extra time means more projects end up with long-term contributors.
Our new payments system also meant that we were able to get 89% of our students paid within five days (and usually 48 hours), rather than weeks. That's a great improvement, but we can always do better.
LWN: From what I understand, students were asked to evaluate their mentors, as well as it going the other way round. What percentage of them received passing evaluations? What did you learn from those evaluations?
Hawthorn: We didn't ask students whether their mentors passed or failed, but I think that's not a bad idea. Most students were very pleased with their interactions with their mentors. I even had one student who failed ping me to let me know that he thought his mentor did a good job, but that the project just wasn't right for him.
LWN: What trends can you identify in the evaluation data? How have the evaluation success rates changed over the three years that the Google Summer of Code has been operating?
Hawthorn: Both students and mentors noted that they wish they had more time to devote to the project. That's a common complaint I hear from most open source developers, though.
A few newer organizations had lower success rates than we'd like, but that's somewhat to be expected. Students who had previous open source experience were more likely to pass, but other than that there are no clear trends that stick out in my mind at this time.
[The success rates over the years] have remained pretty consistent.
LWN: Are there any particular students, mentors, or organizations which you think deserve special attention?
Hawthorn: I think all of the projects are special, but a few do leap out at me as particularly noteworthy:
I'm a big fan of the OpenMRS project, but you've already profiled them in a previous article.
Creative Commons had some interesting projects this year, like the work of Jason Kivlighn, mentored by Jon Phillips. Jason worked on indexing embedded license claims, which resulted in many improvements to Liblicense, a C library that produces licensing information based on the specifications of calling libraries and programs. In addition to generating text for specific licenses, Liblicense allows an application to enumerate which licenses are currently available and provide descriptive text for each license, and for license features.
Another cool project was the work done by Andrew Morton, mentored by Angie Byron. Andrew worked on creating a project quality metrics system for Drupal modules, helping Drupal developers choose which modules would be most effective for them to use when creating Drupal sites. As there are *many* modules contributed to Drupal, Andrew's work has made developers' lives much easier.
LWN: Thank you very much for your time.
With about 733 successful projects, it is impossible to discuss every student's work. Over the past five months, LWN has reported on those GSoC projects that we hoped would be most interesting to our readership, but there have certainly been many qualified projects that slipped through the cracks. We'll try to bring justice to a few of them here:
Milot developed a plugin for AbiWord that imports documents in Microsoft's OpenXML format. According to the last update made on Milot's project wiki, the plugin is capable of importing text with some associated formatting, though advanced features such as styles had not yet been implemented.
Haken built VLOSUTS (Virtual Live Operating System Upgrade Test Suite), software which will help Debian developers make sure that their latest package set will not cause errors for upgrading users. VLOSUTS builds a custom image of a Debian installation with a user-defined set of packages, runs the installation in virtualization software (Zen, KVM, and Qemu are supported), attempts to upgrade a specified list of packages from a particular repository, and then reports any errors. It is interesting to note that the Qemu backend may make it possible to test several architectures at once. As of the most recent post on Haken's blog, the project was "just out of alpha" and is available to build as a package.
Dale created DebTorrent, software that should significantly decrease the bandwidth required to host a mirror of a Debian repository. DebTorrent harnesses a modified version of BitTorrent, altered to meet the demands of software repositories, which contain far more files, often of far smaller size and updated more frequently than the protocol is usually applied to. Dale's most recent status report indicates that the software is in working order. It appears that CPU usage is moderate while downloading packages with DebTorrent, though memory usage needs immediate attention.
Voras's finstall modular and extensible LiveCD installer is meant to be an eventual replacement for the six-year old sysinstall installer. The new installer is meant to be usable by the release of FreeBSD 7.0, but will likely not be the default and will only support the i386 and amd64 architectures. Voras has released an alpha version of finstall (screenshots are, of course, available) which is only usable on an unparitioned system.
Da Motta's Gnome-Voice-Control, only at version 0.2, is already an impressive usability tool, with the potential to be a phenomenally fun toy and time saver. Look to da Motta's blog for video demonstations of using the tool to run programs and manipulate windows and menus. The software uses a CMU Spinx speech recognition backend and is currently only available for English.
Laks' KIconCache substantially reduces disk seeking and access upon KDE application startup by caching icons in memory. The results are excellent: about 10% faster desktop startup and about 25% faster startup time for applications, using Dolphin as a reference. He also developed KPixmapCache to cache image data for individual applications. His code has already been merged into kdelibs and will be released as part of KDE 4.0.
Wolfer's work has received a lot of attention in the KDE community, where improvement of the KDE Remote Desktop Connection (KRDC) tool for VNC and RDP has been long awaited. All indications are that Wolfer has lived up to the expectations, including the complete rewrite of the VNC code, the new interface with tabbing, and a preliminary Windows build. The new KRDC has already been integrated into the KDE 4 trunk and is available as part of KDE 4 beta 2. Wolfer has indicated that he will continue to work on KRDC, suggesting possible NX support for KDE 4.1.
Holecek is bringing long overdue hardware event notification support to NetBSD via a port of the Hardware Abstraction Layer (HAL). It's a difficult project, involving some kernel modification, but it should have tremendous ease-of-use implications for NetBSD users, making transparent hardware management possible in KDE and Gnome. According to the last update posted to Holecek's project page, the port now successfully builds with some features disabled.
Johnson sought to add a potentially killer feature to Neuros' latest gadget, the Linux-based Open Source Device (OSD) media center. His project would allow the OSD, as a USB-host device, to sync music and videos with an Apple iPod. It is difficult to find information on the status of his project, but it looks as though he was successful in creating a framework for hotplugging USB devices and implementing audio-read support for the iPod back in early August.
Mathews' work should satisfy eye candy-hungry users of OpenOffice.org's Impress slideshow application. He has released five stylish 3D slide transitions rendered with OpenGL and a platform for making more. Look to Mathews' blog for screenshots and more information about the project.
LWN was also interested in learning about how the GSoC might look next year. In all previous years, the program has received substantial administrative changes, growth in participation and diversity, and budget increases. While it may be logical to assume that the GSoC 2008 will be no exception, Hawthorn could only remark, "We don't have anything to announce right now about possible future instances of the Google Summer of Code program..."
Despite the fact that Google is unwilling to discuss the next GSoC, or even confirm that it will exist, feel free to attempt your own predictions based on the growth demonstrated in figures from the past summers. The following data was gathered with the help of Chris Ulbrich of Google's Global Communications and Public Affair division:
Google Summer of Code 2007
Google Summer of Code 2006
Google Summer of Code 2005
Database Softwareannounced. "The PostgreSQL Global Development Group has released the minor update versions updating all current and recent versions of PostgreSQL, including 8.2, 8.1, 8.0, 7.4 and 7.3. The primary fix in these versions is updating PostgreSQL for the upcoming New Zealand time zone change; users in that country are urged to update their database servers immediately. Other users are encouraged to update their installations at their earliest convenience. Additional fixes contained in this release include minor security fixes for dblink and pgstattuple, a potential index-corruption issue with vacuum, fixes for GIN indexing, and logging improvements."
Device Driversannounced the availability of an initial driver for AMD/ATI Radeon R500- and R600-based graphics adapters. It is described as an alpha-quality driver with basic mode setting capability. "Next steps are adding support for more hardware, RandR 1.2 support, video overlay support and 2D acceleration." Some more information is available in this announcement by Egbert Eich. (Thanks to Paul Sladen).
Embedded SystemsBusyBox, a collection of command line tools for embedded systems, has been released. "This is a bugfix-only release, with fixes to cp, runsv, tar, busybox --install and build system."
Filesystem Utilitiesannounced. "Clonezilla is a partition or disk clone software similar to Ghost. It saves and restores only used blocks in hard drive. By using clonezilla, you can clone a 5 GB system to 40 clients in about 10 minutes. Clonezilla 1.0.5-4 (testing) and 1.0.5-4-nk-1 (experimental) released. Now the version number is synced. The same version means same programs except the newer kernel and ntfs-3g are used in "-nk" files."
LDAP Softwarecovers the state of OpenLDAP on O'Reilly. "OpenLDAP is the de facto Open Source reference implementation of the Internet standard Lightweight Directory Access Protocol (LDAP, see RFC 4510). This standard is now in Version 3 and was recently republished to clarify some points. Ever since various experimenters began developing bridges between internet applications and pre-internet X.500 directories, they have relied on a reference implementation to validate their approaches and verify the standard would be robust and complete."
Mail SoftwareJust when you thought it would never happen... we at Eridani are finally able to announce the release of MailStripper 1.4.1!" This version features numerous bug fixes and improved spam filtering.
Networking Toolsannounced. "This is probably the strongest OpenNMS release in years. Numerous performance improvements have been made as well as some cool new features." I'm now pleased to announce Vuurmuur version 0.5.73. This release both adds a number of new features and fixes a lot of bugs. To start with the latter, many bugs in the log and connection management were fixed. Also, Vuurmuur can handle systems with nf_conntrack much better. There were lots of smaller fixes all over the program."
PrintingCUPS, the Common UNIX Printing System, has been announced. "CUPS 1.3.1 is now available for download from www.cups.org and fixes some build, localization, binary PostScript, and Kerberos issues."
Securityannounced. "ClamTk is a GUI front-end for Clam Antivirus using gtk2-perl. It is designed to be an easy-to-use, lightweight, point-and-click desktop virus scanner for Linux. This release introduces a right-click "save-as" feature. This is useful for when opening downloads (from Firefox, for example) with ClamTk to scan them first: one can then save it from the usual temp (/tmp) directory as desired."
Audio Applicationsannounced a new edition of the Amarok newsletter. "After a long summer break, the Amarok newsletter is back. In the 10th issue we take a look into Amarok 2 development, talk about some interesting user interface changes & new features and instruct you how to Rok with your Bluetooth-enabled mobile phone." announced "New in this release is support for all RIFF/AIFF metadata, including Broadcast Wave Format (BWF). There are many other small improvements and bug fixes". See the changelog for more information. hi all, a quick update for the ladspa filters broken out of nova".
Business Applicationsannounced "Adaptive Planning, the leading provider of collaborative business performance management (BPM) solutions, today announced Adaptive Planning 4.0, the latest release of its award-winning software solution. Featuring a revolutionary Report Builder module and new Cell Explorer functionality, Adaptive Planning 4.0 introduces new leading-edge capabilities that put powerful yet intuitive web-based reporting and analysis in the hands of business users throughout a company. With this new release, Adaptive Planning continues to deliver unprecedented value through affordable, easy-to-use, and quick-to-deploy budgeting, forecasting, and reporting solutions."
Collaboration SoftwareChandler Project is an open source, standards-based personal information manager built around small group collaboration and a core set of information management workflows modeled on Inbox usage patterns and David Allen's GTD methodology. You can manage and share calendars, tasks, messages, notes and other information with the Chandler Desktop application and/or with the Chandler Hub web application. The Preview releases are public-beta quality applications ready for daily use. The Chandler team hopes to use feedback from these releases to build great 1.0 releases."
Desktop EnvironmentsReleased on schedule, to the day, it is the culmination of six months effort by GNOME contributors around the world: hackers, documentors, usability and accessibility specialists, translators, maintainers, sysadmins, companies, artists, users and testers. Due to their hard work, we have another great release to be proud of - thanks very much to every contributor!" See the about GNOME 2.20 page for more information. This release incorporates the GNOME 2.20.0 Desktop and Developer Platform, fine-tuned with love by the GARNOME Team. It includes updates and fixes after the GNOME 2.20.0 freeze, together with a host of third-party GNOME packages, Bindings and the Mono(tm) Platform -- this release is the first of a new stable GNOME branch and ships with the latest and greatest releases."
ElectronicsXCircuit an electronic schematic drawing application, has been announced, it features a number of bug fixes. This is the first stable release in over a year.
Gamesannounced the use of Canonical's Launchpad. "During the last couple of weeks weve been using the Launchpad service for development. The Launchpad is a rich bug and feature tracker developed by Canonical, the company behind Ubuntu. It also providers other features useful for developers, such as translations and general answers to common questions about the application. Personally I think one of its main strengths is its easy to use interface. Its a simple procedure to submit bug reports or feature requests."
GUI Packagesannounced. "This is a maintenance release of pyFltk. Changes include various bug fixes, improved documentation, a new interactive mode, support for Python objects in callbacks and the resolution of several compilation issues."
Interoperabilityannounced. Changes include: Many improvements to the crypto dlls (should make iTunes work), The usual assortment of Direct3D improvements, A number of fixes to sound support, Many more WordPad features and Lots of bug fixes.
Mail Clientsannounced, this is mainly a bug fixing release. "Claws Mail is a GTK+ based, user-friendly, lightweight, and fast email client."
Medical Applicationsannounced. "New features include, a connector for LegalCase and updated connectors for ClearHealth, OpenEMR and osCommerce, facilities to convert sales order topurchase order and/or material/service requisition so as to procure therequired material/service after a sale is concluded, addition of a sample lawoffice chart of accounts and a sample medical practice chart of accounts,addition of Australian GST tax rate and updating of Canadian GST tax rate,addition of narrow/wide display option for the various case handling screens,addition of customer, vendor, employee contact lists, and, addition of German translation for the Quotation module."
News Readersannounced. "Liferea (Linux Feed Reader) is a GTK desktop news aggregator for online news feeds and weblogs. The project focus is on simplicity and easy installation. This is a bugfix release fixing broken functionality and crashes."
PDA Softwarementions a new article about running KDE on the Nokia 770 and 800 tablets. "At Ars Technica, my colleague Ryan Paul has posted about KDE 3.5.6 now being able to run on the Nokia 770 and 800 tablets. If you want to get it up and running, check out the original forum post by "penguinbait" over at Internet Table Talk which gives the complete steps required in greater detail. The main drawback for these systems compared to full computers is the total memory available (64MB or 128MB), fortunately KDE runs quite nicely on these low memory systems nonetheless."
Web Browsersa "critical" security bug involving QuickTime files. It appears to be a Windows-only vulnerability. "Other command-line options remain, however, and QuickTime Media-link files could still be used to annoy users with popup windows and dialogs until this issue is fixed in QuickTime."
Languages and Tools
Erlangintroduces Erlang on O'Reilly. "These days, the functional languages are all the rage. You see more and more hackers from the traditionally vanilla languages trying out things like Haskell or Scheme or OCaml. Breaking away from an imperative tradition forces us to think in a different way, which is always a good thing. Recently, I've heard a lot about Erlang, especially from curious members of the Ruby community. This article is the result of my quick dive into the language, and will hopefully serve as a starting point for anyone else who's been hearing the buzz, but hasn't taken the plunge yet."
Javadiscusses Java-XML data binding on O'Reilly's XML.com. "This article introduces a new Java-XML data binding technique based entirely on VTD-XML and XPath. The new approach differs from traditional Java-XML data binding tools in that it doesn't mandate schema, takes advantage of XML's inherent loose encoding, and avoids needless object creation, resulting in much greater efficiency."
Tcl/Tkannounced. "tcllib is a Tcl-only library of standard routines for Tcl (no compiling required). This release is a minor version change which fixes numerous bugs and provides enhancements as well. This release is a minor version change which fixes numerous bugs and provides enhancements as well, to existing modules, and via newly added modules."
Page editor: Forrest Cook
Next page: Linux in the news>>
Copyright © 2007, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds