Developing academic software can be an unusual exercise, especially compared to traditional software development. The goals and inputs can be undefined and fluctuating, whilst the code itself has traditionally been a stepping stone – a byproduct on the way to papers, ending up ad-hoc, unplanned and undocumented. Fortunately, things are changing. There are tools and techniques that make it easier to design, use, distribute and cite scientific software. This webinar discusses approaches to managing the development and release of academic software, ranging from coding best practices and project boards, to development environments and automated documentation that can help you write sustainable code that is easy to use, cite and collaborate with and on.
Sam Mangham is a Senior Research Software Engineer at the University of Southampton. He has an interdisciplinary background, working on fusion neutronics before moving on to PhD on to echo mapping of supermassive black holes as part of the Complex Systems Simulation Doctoral Training Centre. After graduating in 2018, he joined the University of Southampton’s Research Software Group, where he has been ever since. Though Sam’s background is with legacy HPC radiation physics codes, he is generalist in his role as an RSE – developing web platforms for the arts, software archaeology of ancient physics codes, and helping design machine learning pipelines. Sam is also a Trustee of the Society of Research Software Engineering, and helps to organise the UK RSE Conference.