Research software engineering
Reading: Software in science is ubiquitous yet overlooked, Nature Computation Science, 1 June 2024.
There is a “culture clash between science and software engineering”, and “the field of research software engineering has emerged, aiming to bridge both cultures.”
My experience, coming from the engineering side, is that there is a difference between pretty solid libraries used by scientists, and the code published along side papers which tends to be more script-like. The later is often a bit of a slog, and each time I open a repository there’s a sense of dread. With exceptions, of course!
Concerns about software robustness, maintenance and durability, reproducibility and actionability, dissemination and consistency, all have epistemic dimensions.
I take “epistemic” here to mean our trust in the knowledge generated is damaged by dodgy software practices. It’s a topic I’ve been interested in for a while.
Some great references to follow up:
- Improving Science That Uses Code: “As code is now an inextricable part of science it should be supported by competent Software Engineering, analogously to statistical claims being properly supported by competent statistics.”
- Platforms are infrastructure on fire (from the intriguingly titled Your Computer is on Fire): “software infrastructure is nowadays more fragile, described by historian Paul Edwards as ‘flammable’”.
- The Software Sustainability Institute (from Edinburgh, Manchester, Southampton): “dedicated to improving software in research“ and first used the phrase “research software engineering”.
- The other day I mentioned science replication is fun, and there’s a journal for that. Looks a bit quiet right now: ReScience C.