Release Early, Often, & Open

The benefits of iterative and incremental development over waterfall-based development have been known for decades. While both closed and open source projects go through thousands of iterations of a complete executable system from skeleton to pre-pre-alpha and on up, the early releases of the latter are generally visible to the public. Undergraduate student projects under Recourse follow this development model, facilitating early, frequent, and unrestricted dialog among students, instructors, and fellow students on current progress.

Rather than student projects being "closed" to each other over the duration of a term, code-in-progress will be open to fellow students, allowing sharing of common functionality and encouraging proper structure for effective software reuse. Code sharing also exercises the "credit where credit is due" value of the open source culture. As an additional incentive, extra credit can be given students who produce widely reused code --- in the same way that widespread adoption can be viewed as a measure of success for an open source project. Version tracking provides a strong disincentive to cheat; unexpected, uncited similarities between separate student submissions can be tracked by date, adding some strong, though not incontrovertible, evidence of the original author.

The release early, often, & open approach for managing software projects applies to both student coursework and faculty research. Open source in research is nearly the norm today; the Recourse project's teaching techniques serve primarily to make this norm explicit, so that students can use existing research as examples for developing, presenting, and distributing their own work.

An early success of the release early, often, and open technique is the XMLPipeDB project, produced by the LMU Bioinformatics Group. The project started as a mechanism for teaching biological databases to a group of computer science students with minimal prior biology training. XMLPipeDB has been hosted on SourceForge from the beginning, and has produced working releases of real bioinformatics research value.