Research Software Engineering

Within the Data Science Institute, our aim is to improve the reproducibility and replicability of research by improving the reusability, sustainability and quality of research software developed across the University. We are currently funded by the N8CIR, and work closely with our partner institutions across N8 Research.

What we do

We work with researchers to improve the efficiency, sustainability and reproducibility of their research, and research software. By providing the skills and advice needed, we hope to enable all researchers to produce quality code that can help them in their research. We do this through the activities described below.

Training and Skills development

We provide skills development and training workshops in programming and software engineering good (enough) practices. These are provided in multiple languages, including Python and R, and teach tools necessary for reproducibility and creating quality software such as Git/version control and Make.

We are happy to engage with CDTs and research groups to look at providing more bespoke training to their needs. The courses we offer can be found on the skills page.

Upcoming courses are shown in the Events section below.

We are can also arrange bespoke training for your research group or department. If you require this, then please email us.

Consultancy

We can consult with you on how to improve the quality of your software, how to publish it, and which tools or techniques are most appropriate for your needs. For example, this could include advising on how to improve the testing of your software, or how to automate parts of the development cycle. It could also include code reviews to advise you on how to improve your research software. To discuss how we could consult on your project, please email us.

Collaboration

We can work with you to cost RSE time on research grants or provide RSE time to work on current software or research projects. For example, this may include writing base code to improve the quality of tests and documentation in the code and then working with the rest of your research team to write full tests and documentation; or working with the research team and taking on more software engineering aspects of the code such as parallelising it and improving the overall quality whilst advising the team on best practises and providing guidance as they write the more research focussed parts of the code. This could even include a small group or lone researcher that wants to analyse some data but does not have the skills to extract it from a website and put it into a format they can work with such as an R dataframe or Excel. Please email us to discuss how we could collaborate with you and your research group.

Community

Many researchers make heavy use of software as part of their research, and many of the problems we need to solve with software can be common across disciplines. By bringing researchers together we can create a collaborative community to share tools and libraries that we use and provide support in writing code.

To do this we have a teams group where researchers can ask for help and advice, or post useful tools and information related to research software. Furthermore, we have are starting a weekly get together, the Research Software Network. Here, we provide a code clinic and host talks and demos on tools, concepts or projects that people are working on to facilitate the sharing of knowledge and skills with others. The talks will happen every other week, in the weeks between we will run a code clinic where researchers can drop in and get help on smaller issues or queries about how best to use particular libraries of software.

People

Robin Long

Robin Long - Research Software Engineer

Robin is a Research Software Engineer (RSE) with a background in High-Performance Computing and Particle Physics. Robin has been (back) at Lancaster since May 2021. Prior to this, he was a Research Software Engineer in the RSE Group at Manchester where he worked for 2 years on various projects. Robin completed a PhD in particle physics at Lancaster in 2008 and worked in the Experimental Particle Physics group supporting the High-Performance Computing system used by Particle Physicists at Lancaster and around the world. Whilst doing this he taught several courses on tools and techniques needed for research software engineering. As part of his Fellowship with the Software Sustainability Institute, he created the Research Software Forum to support researchers at Lancaster who were using software as part of their research and provided training in various skills such as version control with Git.

Chris Jewell

Chris Jewell - Academic Lead / PI

Chris is a Senior Lecturer in Lancaster Medical School, and N8CIR Digital Health Theme lead at Lancaster. His interest in high-performance computing and research software engineering comes through designing real-time decision support systems for infectious diseases, applied to outbreaks such as foot and mouth disease and SARS-CoV-2. His research currently uses GPU-accelerated Bayesian learning methodology, using high-level machine learning libraries such as Tensorflow and Theano, as well as direct CUDA implementations. Chris’s role in this group is largely management, though he hopes to contribute research-focused “how-to” sessions as the seminar programme develops.

Events

No forthcoming events

More Events

News