Published on (
 See this if you're having trouble printing code examples

Python News

Software Carpentry Spin Offs


The Software Carpentry project is an effort to create better engineering tools. Sponsored by the Advanced Computing Laboratory and with additional prizes offered by O'Reilly, Addison Wesley, and Red Hat, Software Carpentry held a contest last year. Prizes were to go to the best designers of a configuration tool to replace autoconf, a build tool to replace make, a testing tool to replace xunit, and an issue tracking tool to replace gnats and bugzilla.

Winners of three of the contests were announced but not with much fanfare. As money began to dry up in the tech industry, the contest began to fall into obscurity. Greg Wilson, who initially directed the project, left the project late last year for other employment. The project web site and mailing lists have not seen much action since. It contains the winning submissions for three of the tracks, but not for the test track, which was to undergo another round of submissions. The projects current director, Mark Mitchell of Code Sourcery, tells me that they intentionally left the site dormant, but that they have been working on builds of the winning submissions for testing and tracking, QMTest and QMTrack. They expect to release beta versions soon.

Some people aren't waiting. Richard Jones has announced an independent project to build the winner of the issue tracking category, Ka-Ping Yee's Roundup. Jones initial 0.2.2 release in July has been followed by several updates and is currently at version 0.2.8. Installation is fairly straightforward, though you have to manually edit some files to get it to work. It would have been easier with some information on what exactly an "instance home" is. It's the directory that will contain an issues database. Like most fledgling projects, this one is still weak on documentation, but the specifications used in the contest help immensely, explaining how things are meant to work.

Another impatient developer is Steven Knight. On August 17 he announced the SCons project, based on his winning entry in the Build contest. SCons is mostly a Python implementation of the Perl Cons tool. Knight says,

Cons has the great strength and weakness of being implemented in Perl.[..] The idea of a Python version of the Cons architecture had been kicked around in the past, and I thought the idea was attractive and worth pursuing. [..] I spent the first part of this year coding some SCons infrastructure in my spare time, experimenting with different ideas and trying to learn enough Python on my own. [B]y June I felt comfortable going public.

Knight is looking for some developers to join him in his efforts Besides some good, pragmatic Python coding skills, he is is looking for people familiar with Visual C++/Developer Studio experience, a Java build expert, and experience building software for MacOS.

I am eager to see QMTest and QMTrack, Particularly QMTest. The winner of the Test contest was never announced on the Software Carpentry site. What will it look like? With QMTest three of the four categories will be on their way to working tools. All we would need to complete the set is for someone to implement Lindsay Todd's Site and Platform Customization Administration Tool, SapCat, the winner of the configuration contest. But, even without it, I think Software Carpentry's mission to create a new generation of Software Engineering tools has been a success. It set the wheels in motion.

Stephen Figgins administrates Linux servers for Sunflower Broadband, a cable company.

Read more Python News columns.

Return to the Python DevCenter.

Copyright © 2009 O'Reilly Media, Inc.