Jan 20

Debian Summer of Code ’08 : Where are they now (part 1/3)

Category: debian,Summer of CodeObey Arthur Liu @ 1:16 am

It’s been a while now since the 2008 Summer of Code ended. This year, twelve (?) projects were selected. That’s twelve students working full time on a Debian-related project during the summer.

The Google Summer of Code has sometimes been criticized in the past for having a poor student-developer retention rate inside the host projects. One of the goals of the program has always been to bring new people to budding or established free software organizations and it’s a pity that some would leave the project as soon as the program ends.

On the other end, poor integration of created code within the project leads to work that is hard to merge in, or worse, doesn’t get merged in at all. That’s a waste of time and resources and a probably cause of global warming as well.

Hopefully, it’s not always the case. Some people choose to stay committed within the organization in the long-term. Useful code gets merged in and pushed to the public.

I am going to give a talk about this at FOSDEM (go to FOSDEM!) so I’m giving you a little preview. I need your help to collect information for my talk. As you know, information is always hard to come by with these kinds of projects so anything can be useful.

Without further ado, let’s have a look at the cast of the Debian Google Summer of Code 2008:

Netconf, a network configuration management system

Presentation

Netconf is a network configuration management system designed with modern network infrastructures and the needs of roaming users in mind.” It is a personal project of Martin Krafft that he started in 2007. He did some presentations about it that you can find on the dev website.

The project proposal was introduced by the mentor. The work was mainly about completing the roadmap items for version 1.0. Most of the design was done and code fleshed out.

The stated goal was to have netconf ready for lenny. Martin noted that due to lack of regular free time, he couldn’t reach that goal by himself.

Student

Jonathan Roes was a computer science graduate student from the University of North Carolina at Charlotte. He had programming experience as a hobby for a long time and wrote some free games and libraries for the Nintendo DS and some proprietary webapps.

He submitted a few little patches in mid-march right after the publication of accepted mentoring organizations and went on to work from mid-may to mid-august. He wrote a lot of code right into the trunk since the whole project was a prototype.

Result

The last commit by Jonathan was also the last to date in the main netconf git repository. No further progress has been made and obviously netconf didn’t get into lenny.

I couldn’t find any further public involvement of Jonathan within Debian.

UPDATE: Martin mentions that he’s open to help to continue the project.

The ultimate Debian database, all things Debian in a SQL database

Presentation

“The Ultimate Debian database wants to reunite all Debian data sources in a SQL database”

The project was mentored by Lucas Nussbaum and co-mentored by Stefano Zacchiroli and Marc ‘HE’ Brockschmidt. The project proposal was introduced by Lucas.

Student

Christian ‘Neronus’ Von Essen is.. well, there wasn’t much information readily available on him.

Result

The whole project is coded up and working well with a whole bunch of data sources. There will be a talk at FOSDEM about this so I’ll leave it to Lucas to talk about it in detail.

I couldn’t find any further public involvement of Christian within Debian.

Security-beta, a beta testing for Debian security updates

Presentation

“The task is to improve the quality assurance process for security updates by providing a public security update beta test program in addition to the existing QA done for security updates. During the preparation of security updates, there’s an inherent delay between the initial upload of the fixed packages and the time until the packages have been built on porter machines. This time gap will be used for a new security update beta program.”

The project was supposed to be mentored by Moritz Mühlenhoff.

Student

The project was supposed to be done by Nico ‘Nion’ Golde. He is studying computer sciences at the Technical University of Berlin. He’s also a DD.

Result

There’s no nothing. Nico, what happened ? And obviously, he’s still developing for Debian.

UPDATE: Nico retracted for personnal reasons before the beginning of the Summer of Code. His slot was reassigned to another student.

Debgraph, a generic infrastructure for the development of packages management tools

Presentation

“In a large software ecosystem such as Debian Linux, there is the potential for dependencies among software packages to create complex management and technical problems. For example, dependency loops (cycles) in which a package directly or indirectly depends on itself can confuse package management tools as they determine the proper order of package installation. debgraph helps developers to solve this problem by enabling generic queries (e.g., “Give me all the nodes that depend on package X”) against the graph of packages and thus automating much of the manual labor that is typically involved in resolving dependency problems.”

The project was mentored by Robert Lemmen, who introduced the project proposal. The project was already started and the C++ code foundation was done by the time it was proposed.

Student

The project was executed by Adam Jensen, research assistant in the Software Engineering and Network Systems Laboratory at Michigan State University.

Result

Adam maintained a blog about his progress and finished ahead of schedule. However, the resulting work seems to be unused, which is a pity since the code could be used within other programs (package managers?).

I couldn’t find any further public involvement of Adam within Debian.

UPDATE: Robert notes that Adam did a great job within the project but a lot remains to be done. Although the last months have been very quiet, he expects to pick up shortly when he has more time.


That’s all for now. The information is quite fragmented I admit. Most of it was pulled from Google, mailing lists, commit logs, blogs, whatever. If some projects are lacking in information here, it’s because I couldn’t find it readily (which is an issue in itself!).

In my next post, I’ll try to analyze the success and failures to extract some insight. Teaser: pet projects!

If you’re a student or a mentor mentioned above, feel free to fill any of the blanks in my report. It’s much appreciated. You’re not a student or mentor mentioned above and have an opinion on how to improve the next Debian Summer of Code ? Feel free to comment.

Sledge, ping!

Here’s a list of projects to be described in my next posts:

  • Debian NAS, improve support of Debian on NAS devices
  • Cran2deb, generate Debian packages from R packages
  • Mergemaster, interactively merge changes in configuration files
  • PAS NSS Debian Installer, improve support of PAM and NSS at install-time
  • Jigdo-ivory, a JavaScript Jigdo client
  • Aptitude-gtk, usability and GTK+ GUI for the Aptitude package manager
  • Lintian for fuller automated setups
  • Debexpo, a generic web-based package repository

UPDATE: I added some informations I received since.

8 Responses to “Debian Summer of Code ’08 : Where are they now (part 1/3)”

  1. Tshepang Lekhonkhobe says:

    I myself was really curious about this GSOC results and found pain in having to search in too many different channels to find this info. The Debian wiki’s, which is supposed to track such things, were created but abandoned. For that reason, thanks for these efforts.

  2. Mikko Rantalainen says:

    About debgraph: I thought that aptitude already computed dependencies? How is this different?

    I’m looking forward to hear more about Aptitude-gtk and Lintian process. The Ultimate Debian database project seems interesting, too.

  3. Daniel Burrows says:

    Mikko, as I understand it, the debgraph project was about creating a (virtual?) graph of the whole database, and giving the user some sort of language to describe queries about relationships between package. aptitude has a few dependency graph-basd searches, but nothing very sophisticated. Presumably debgraph provides more.

  4. nion says:

    “There’s no nothing. Nico, what happened ? And obviously, he’s still developing for Debian.”
    I had good reasons not to continue on summer of code, if you want to know the details ask our mentors, I won’t post them in public.
    (Didn’t we talk about the SoC and my reasoning at the OMGWTFBBQ?)
    cheers

  5. Obey Arthur Liu says:

    @nion Well, I didn’t hear your reasoning well enough I think. Then again I may have had one too many beers. Anyway, I’m not going to dig past what persons involved want to reveal. It would only be to the extent that it would be useful for future GSoCs.

  6. Adam Jensen says:

    @Mikko, the main goal of debgraph is to provide a powerful API for querying any sort of information about package relationships, as Daniel noted — not just dependencies, but also “provides”, “conflicts”, and others. We tried not to make assumptions about how it will be used. Hopefully it will become a solid launching pad for people interested in analyzing the package database to look for interesting constellations.

    @Obey, thank you very much for giving a talk about our projects at FOSDEM. I wish that I could be there to meet you and enjoy the talk.

    Regarding my work on debgraph being “unused”: Robert Lemmen and I are working behind the scenes to replace the old (pre-SoC) debgraph so that its analysis results can be used by the community. The new data will be published on his website at http://debian.semistable.com/debgraph.out.html (or similar) when it’s ready. Everyone is free to download the code and do her own analysis, but we will be publishing nightly analyses of (e.g.) dependency cycles to the web for convenience. If there are other analysis results that are helpful to many community members, we are happy to include nightly snapshots of those as well.

    I will be updating my SoC blog as our work (and my Debian involvement) progresses.

    Cheers!

  7. Daniel Burrows says:

    Adam, conflicts are dependencies.

    :-)

  8. Adam Jensen says:

    Duly noted. :) I should have written, “not just ‘depends’, but also…”.

Leave a Reply