Constellation D: Tuesday, November 1, 10:30AM – 12:00PM

Digital library software projects, like all software projects, face challenges balancing code quality with new feature development. Open source projects face some additional challenges: our code contributions come from a variety of institutions with a wide range of software development practices and experience. We also face higher risks: a problem in the software has the potential to affect not just one project, but dozens. But the rewards are also greater, as institutions share new functionality with each other.

This presentation will discuss some of the strategies we use to address these challenges for the Blacklight and Hydra open source projects, as well as for internal Stanford Digital Library projects. We will discuss proven methods for producing robust and maintainable software, like test driven development, writing testable code, continuous integration, analysis artifacts like stories and fixtures, and other agile methodology practices. We will discuss why good methodology speeds up and eases the introduction of new features. Special attention will also be given to the social side of changing development practices, both inside an institution and across institutions. How do we enforce standards for voluntary contributions? How can we be firm in our commitment to quality, yet welcoming of contributions from newcomers?

Session Resources

Session Leader

Bess Sadler (Stanford University)