Research Software Engineering (RSE)
Research software engineering (RSE) is the art and science of creating good research software; "good" here means reliable, reproducible and sustainable. The term was coined to recognise a large (and growing) number of researchers who develop software to tackle research problems. Many of these `research software engineers' find themselves spending more time creating and maintaining the software than doing research with it, and it is common for the majority of the actual science to be done by other researchers using the software.
RSE at the University of York
York has a substantial number of RSEs across the University, both within Research Computing and embedded in individual departments (though in many cases they don't actually have RSE as their job description at the moment). From a Physics point of view, the people you are most likely to engage with are:
- Emma Barnes (Head of RSE, IT Services)
- Ed Higgins (RSE High-Performance Computing Specialist, Physics/IT Services)
- Peter Hill (York Plasma Institute, Physics)
- Peter Byrne (Condensed Matter Theory, Physics)
- Phil Hasnip (Condensed Matter Theory, Physics; me!)
Any of these people would be more than happy to talk to you about research software and research computing, whether you're looking for RSE support for a research project, help developing your own software or RSE skills, or just to find out more about RSE.
Research Coding Club
The Research Coding Club is a University-side initiative, which grew out of the Physics Department, to provide coding support, raise awareness of RSE and help researchers to develop their own RSE skills. The Coding Club is organised by a group of RSEs and an informal steering group of:
- Peter Hill (York Plasma Institute, Physics)
- Phil Hasnip (Condensed Matter Theory, Physics; me!)
- Killian Murphy (WACL, Chemistry)
- Stuart Lacy (WACL, Chemistry)
- Ed Higgins (IT Services)
- Matt Probert (Computational Dynamics group, Physics)
RSE Examples
At the Physics Department we develop software to tackle a wide range of research problems, but 3 codes in particular are used and developed worldwide:
- BOUT++, for plasma fluid modelling
- CASTEP, for first-principles materials modelling
- Vampire, for atomistic magnetic simulations
These are high-performance programs, supporting a vast range of academic and industrial research worldwide, and capable of running efficiently from a single-core of a PC to thousands of cores on a large high-performance computer. They are all free to UK academics, including full source code and repository access, and have been designed to be maintainable and extensible.
Finding out more
If you'd like to know more about research software engineering, feel free to email me (pjh503 at York). There are also some external organisations you might like to get involved with: