Research Software Development
Projects
We've enjoyed helping researchers from many different academic disciplines with research programming projects at UCL. See our projects page for a full list of current and completed projects.

HemeLB: After a successful first round of collaboration we are now working to make further improvements to this open-source computational suite for fluid dynamics simulations of blood flow.

Zacros: A Kinetic Monte Carlo software package written in Fortran, for simulating molecular phenomena on catalytic surfaces. We are currently working to add MPI parallelisation to the code to support more detailed simulations on high performance systems.

BICO: Collaborating with Dr Jason McEwen of the Mullard Space Science Laboratory, we are working to build a reusable high performance parallel framework for the application of Compressive Sensing to image cleanup, with applications to the Square Kilometre Array.

OPTIMET-3D: We are working with Prof. Nicolae Panoiu on the OPTIMET-3D code, for massively parallel simulation of 3D electromagnetic nano-structures. The objective is to further scale the code from running efficiently on Legion to running efficiently on ARCHER. PHOTO: © Christophe FINOT.

Big Data for Critical Care with the National Health Informatics Collaborative: We are supporting the UCLH Critical Care team and colleagues at the Farr Institute to build tools for research, and ultimately, for real-time patient care.

Delivering accurate structural bioinformatics to the yeast community with the HHprY data: We are working with Dr Tim Levine at the UCL Institute of Ophthalmology to develop an automated pipeline and web interface.

ORACC: The Open Richly Annotated Cuneiform Corpus (ORACC) supports editing of translations and transliterations of ancient Mesopotamian (Iraqi) texts. The principal aim of this project is to create a new user interface for ORACC.
Our mission
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.