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
What did half a million people actually consent to?
UK Biobank participants signed a one-page consent form in 2006, years before generative AI existed. We look at what that broad consent covered, why trained models and AI-driven analysis fall outside the safeguards built around it, and what consent and governance could look like instead.
What is a directed acyclic graph (DAG)?
How directed acyclic graphs (DAGs) help epidemiologists separate causal from non-causal paths, and decide which variables to adjust for in health data research.
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.
Newsletter
I write about open science, research code, and building better tools for researchers. Subscribe to get new posts delivered to your inbox.