Research Software Development
Our goal is to help researchers to produce high quality research software, from the simplest scripts to complex simulations running on state-of-the-art supercomputers.
We’ve enjoyed helping researchers from many different academic disciplines with research programming projects at UCL. You can see a full list of the projects we've been involved with here.
The Research Programming Hub promotes community support and discussion through regular meet ups, technical social events, and online chat.
Details about the support available for research programming at UCL, including tools, training, and development effort are on the ISD website.
Computationally based research has the potential to set the highest standards for openness, reproducibility, and reliability in research methods. However, a lack of appreciation for the significance of software as a research output often leads to software created in research institutions being treated as a secondary concern. Research software is often developed quickly to solve one-off problems, leading to fragile code that is generally not sustainable or usable beyond the lifetime of a given project, and is hard for other researchers to read and understand. Whilst commercial software engineers tend to follow a more disciplined approach to software development, collaborations with academia can fail due to lack of understanding of the research context.
Our solution has been to create a dedicated group of Research Software Engineers at UCL who combine academic research experience with an appreciation of good software engineering principles. We provide a service which helps researchers to build more readable, reliable and efficient code. Our work is not just about producing software on behalf of researchers; we work collaboratively, providing the tools, advice and training researchers need in order to follow best practice and continue to develop sustainable software in future.
We also work with partners such as the Software Sustainability Institute to advocate on behalf of research programmers for software as a first-class research output. Research Software Engineers will be an important part of the twenty-first century research team, and building a stable home for these skills in academia will help secure for research the benefits of a high quality, sustainable software infrastructure.
We are keen to engage with research groups from across UCL who are developing their own software, to learn about existing projects and to understand the needs of the research community. If you are interested in using any of our services, please visit our support pages on the ISD website for more information.