Building Reliable Research Software

In the modern age, doing science means writing code. The code you write is the method you use to generate your results. The problem is that most research code is not written by software engineers but researchers who understand the science, but often don’t have formal training in software engineering practices. These posts are where I highlight some easy ways to adopt software engineering practices in your research code, so that you can be confident that your results are reproducible and trustworthy. I tend to talk about things like design patterns, code review, testing, and documentation, but the principles are applicable to any research code, in any language.

Building Reliable Research Software
testing blue

Applying the Open-Closed Principle to Research Code

Applying the Open/Closed Principle is how you stop accidentally changing yesterday's results.

Read More
reproducability green

The Single Responsibility Principle for Scientists Who Write Code

Exploring the Single Responsibility Principle in the context of scientific programming and data analysis.

Read More
dag_1 orange

Why the Adapter Pattern is King in Health Data

This blog discusses in detail how the Adapter Pattern can bridge the critical gaps between healthcare systems to improve interoperability.

Read More
star green

Code Review for Research Code

An overview of how to conduct a code review for research code

Read More