Research IT

A stream running through woods from left to right surrounded by trees. There are small rocks in the stream.

Software as a Research Output - GeoCARET

When researchers are getting ready to publish a paper, they increasingly want to publish their software as well. Quite often, though, research software isn’t initially ready for public consumption. This is where research IT can help.


The Research Software Engineering Department were approached by a group of researchers from the Tyndall Centre Manchester (School of Engineering). They wanted to make their specialist software, GeoCARET, accessible to the wider research community in time for an upcoming paper publication.

GeoCARET is a tool for delineating and analysing catchments and reservoirs, and the team were preparing a paper highlighting its capabilities alongside related software. To maximise the impact of that work, they wanted GeoCARET to be easy for others to download, install, and run.

However, despite being feature‑complete, GeoCARET wasn’t ready for public release. The software had a complex set of dependencies, which meant that, for users without a strong technical background, simply getting the tool running was a major barrier.

That’s where Research IT came in.

The Challenge

The research team—Dr Jaise Kuriakose (PI) and Tomasz Janus (PDRA) from the Tyndall Centre, Manchester —approached Research IT on a consultancy basis, looking for support in preparing GeoCARET for a wider audience. Their goals were:

  • Make GeoCARET simple to install and run, even for non‑technical users
  • Improve and streamline the documentation
  • Get guidance on distributing the software to the research community
  • Do this quickly to help them meet their paper deadline!

Ann Gledson of the Research Software Engineering team supervised the project, working with her colleague James Sinnott, who brought expertise in Python and software packaging tools such as Docker.

Our Approach: Turning a Complex Setup into a One‑Step Experience

When we investigated the installation process, it became clear why the research team needed our help. The tool relied on a very specific environment – without the correct (out of date) versions of Python and the Google Cloud SDK, the software would not run. Setting up this environment to be able to run the software would likely be frustrating and difficult for less technically experienced users.

To overcome this, we explored several packaging and deployment options with the researchers. After weighing the pros and cons, Docker emerged as the ideal solution. It offered a clean, reliable, cross‑platform way to bundle everything together and dramatically reduce the effort required to get GeoCARET running.

Using Docker gave us several advantages:

  • We could provide the exact Python version, all required libraries, and the Google Cloud SDK in one neatly packaged environment.
  • Users wouldn’t need to install anything except Docker itself, a well‑documented tool that many researchers are already familiar with.
  • More advanced users could still check out the source code and build the Docker image themselves if they wanted.
  • Most importantly, we could achieve all this without rewriting the software, enabling a quick turnaround.

The research team agreed, and we quickly implemented a ‘Dockerised’ version of GeoCARET, tested it across platforms, advised the researchers on publishing images, and wrote clearer, more approachable end‑user documentation.

The result: users could now pull the GeoCARET image and start working with the tool in minutes.

Outcome

The project delivered exactly what the research team was aiming for and only 12 days worth of effort. The GeoCARET codebase is now publicly available on GitHub and a Docker image is also published and ready for use.

The work also supported the researchers with the publication of their recent paper: “Re-Emission: A free open-source software for estimating, reporting, and visualizing greenhouse gas emissions from reservoirs”.

We were delighted to see Research IT acknowledged:

The authors would like to acknowledge the assistance provided by the Research IT Group at the University of Manchester, in particular James Sinnott, for their help in containerizing our software using Docker.”


If you are interested in having a Research Software Engineer work with you on your latest research project or, if you are interested in help and advice from the team, please get in touch.