Does the way that scientists develop and use scientific software influence its sustainability?

Another interesting and relevant paper – thanks to Mark Plumbley at the Software for Audio and Music Researchers project. Its entitled ‘How Do Scientists Develop and Use Scientific Software?‘ and is by Hannay et al. One of the authors is Greg Wilson who runs the excellent Software Carpentry course – intended to give researchers better skills in software development. Throughout our study, people have said that better software engineering skills would lead to better software preservation and sustainability. The Significant Properties of Software report perhaps put it best when it said: Good software preservation arises from good software engineering.

To that end, the Hannay paper presents the results of a survey conducted online in October–December 2008 (which received almost 2000 responses) that has relevance to this. The paper’s main conclusions are that:

  1. “the knowledge required to develop and use scientific software is primarily acquired from peers and through self-study, rather than from formal education and training;
  2. the number of scientists using supercomputers is small compared to the number using desktop or intermediate computers;
  3. most scientists rely primarily on software with a large user base;
  4. while many scientists believe that software testing is important, a smaller number believe they have sufficient understanding about testing concepts; and
  5. that there is a tendency for scientists to rank standard software engineering concepts higher if they work in large software development projects and teams, but that there is no uniform trend of association between rank of importance of software engineering concepts and project/team size.”