Consulting
I take on high-end Rust consulting for performance-critical and data-intensive systems, plus the data engineering around them. My clients span education, healthcare, gaming, and research institutions.
Rust
I use Rust where performance, accuracy, and reliability matter most — high-stakes systems that need to be both fast and correct. Its strong type system catches whole classes of bugs before they ever ship.
Open Science
I advocate code sharing and open science in health research, teaching researchers software best practices for transparent, reproducible research. I also build open source tools to help researchers.
My Blog
Why I teach a workshop on codelists
Codelists decide which patients end up in a study, but building one is rarely taught as a method. This post explains why I run a three hour codelist workshop for universities and what it covers.
What is the difference between selection bias and sampling bias?
A reference guide to the difference between selection bias and sampling bias in health data research, with worked examples of how each one distorts your results.
How Do We Handle Rare Events in Synthetic Data?
A look into how we can use synthetic data generation to increase the number of rare events in our dataset, and what are risks and benefits of this approach
Newsletter
I write about open science, research code, and building better tools for researchers. Subscribe to get new posts delivered to your inbox.