Jan 20
Debian Summer of Code ’08 : Where are they now (part 1/3)
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.
January 20th, 2009 at 9:23 am
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.
January 20th, 2009 at 12:43 pm
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.
January 20th, 2009 at 3:01 pm
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.
January 20th, 2009 at 4:38 pm
“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
January 20th, 2009 at 4:42 pm
@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.
January 20th, 2009 at 8:56 pm
@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!
January 20th, 2009 at 10:17 pm
Adam, conflicts are dependencies.
January 21st, 2009 at 2:44 am
Duly noted.
I should have written, “not just ‘depends’, but also…”.