COVID-19 software and the RSE role
One positive outcome from the controversy around the modelling of the COVID-19 pandemic is that many more people are aware that the reliability of research results is inexorably linked to the reliability of the software used to generate them. Ultimately, if we value reliable research, we must value reliable research software – and this means we must provide researchers with access to expertise in software engineering. This is the mission of the Society of Research Software Engineering.
Although software is essential to the majority of research, the structure and incentives of academia do not support the development of reliable software. Traditional academic career paths do not support software engineers, academic evaluation does not reward work with software, and funding models do not meet the requirements of software engineering. Under these circumstances, it is easy to see why some academics do not follow good software engineering practices.
Transforming academia into a supportive environment for software has been challenging, and the work is far from complete, but the Society (and its predecessor) has achieved considerable success. The Society helps support the growth of research software engineering as a recognised role within academia. Academic software development requires more than just professional expertise in software engineering: it also requires an intimate knowledge of research and the way it is conducted. Research Software Engineers (RSEs) combine both these abilities and are perfectly suited to working with researchers to develop reliable and reproducible software for research. It has been only eight years since the emergence of this new profession, but thousands of people are now part of the worldwide RSE community – and 28 UK research organisations support a centralised RSE group.
The recognition of the RSE profession is an important step towards improving academic software, but much more needs to change. Recognition that software is critical to research needs to spread to the entire academic community: academics, government, publishers and funders. Access to training in software engineering should be expanded so that all researchers can understand at least the basic concepts of good software engineering practice. Research incentives, at both a local and national level (e.g. the Research Excellence Framework), must be adapted to benefit those who invest time into developing reliable and impactful software. Transparency of the entire research process should be increased.
Open sharing of source code allows anyone to assess the quality and reliability of the software. Indeed, it was only after the open publishing of the code that was used to model the spread of COVID-19 that it could be evaluated. However, it must be noted that the ferocity of some of the criticism is dangerously counter-productive. If researchers are attacked for the standard of the software they created in an environment that is far from conducive to software engineering, they will become considerably less open to sharing their software in the future. This is a significant concern for research reproducibility. Criticism is vital to the progress of knowledge, but it must be conducted in a way that fosters dialogue rather than destroying it.
RSEs have an important role to play in encouraging the research community to release software as early as possible and to support the constructive criticism and improvement of software. The RSE community is enthusiastically supporting COVID-19 research: responding en masse to requests for help via a number of local and national initiatives – both funded and voluntarily. RSEs are working with researchers to transform single-developer research software into collaborative open-science projects in a matter of weeks, rather than the more typical months or years. Their expertise is also being requested for peer review of these models and their outputs.
The emergence of the RSE profession as a role distinct from traditional research roles, but equally vital to the research process, has significantly increased access to professional software engineering within academia. The COVID-19 pandemic has led more people to understand the importance of software in research. We encourage them to join our community and work with us to support the conduct of reliable and reproducible research.