Developing Research Software

Increasingly, scientific software is the basis or the result of research. Apart from proprietary software and open source projects developed in a community, this is also software and code developed from researchers themselves to control software packages or the generate or analyze research data. Most of the researches that develop scientific code are not fomally trained in software engineering. Knowledge and knowhow are handed over from colleages or learned in self studies (Hannay et. al 2009).

But there is help for the scientific developer: Wilson et al. (2017) give basic guidelines for data management and software development.

The Software Sustainability Institute networks scientfic software developers and offers guides and trainings.

Software Carpentry-Workshops impart basic knowledge in two-day workshops.


Hannay, J. E., Langtangen, H. P., MacLeod, C., Pfahl, D., Singer, J. & Wilson, G. (2009). How do scientists develop and use scientific software?. , , 1-8. doi: 10.1109/SECSE.2009.5069155

Wilson, G., Bryan, J., Cranston, K., Kitzes, J., Nederbragt, L. & Teal, T. K. (2017). Good enough practices in scientific computing. PLOS Computational Biology, 13, 1-20. doi: 10.1371/journal.pcbi.1005510

Sandve, G. K., Nekrutenko, A., Taylor, J. & Hovig, E. (2013). Ten Simple Rules for Reproducible Computational Research. PLOS Computational Biology, 9, 1-4. doi: 10.1371/journal.pcbi.1003285