My Blog

telescope yellow

How Synthetic Data Gets Made

High level overview of how synthetic data is generated.

Read More
hand blue

Fairness and Bias Amplification in Synthetic Data

Explore how synthetic data can amplify existing biases and affect fairness in health research. Learn why this happens and how it differs from representativeness.

Read More
construction orange

The Typestate Pattern: Moving Checks into the Compiler

Learn how to use the typestate pattern in Rust to make missing required fields a compile error instead of a runtime one. Building on the builder pattern, this post shows how to encode construction state in the type system so invalid records cannot be built at all.

Read More
triangle green

Bias in Synthetic Data

An exploration of bias in synthetic data and its implications for health research.

Read More
plusfile1 yellow

What Do We Mean by Bias in Health Data Research?

A reference guide to what bias means in health data research and the distinct types you meet in electronic health records and other health datasets.

Read More
shield green

How Private is Synthetic Data? Understanding the Tradeoff with Utility

Synthetic data is a powerful tool for health research, but it comes with a tradeoff between privacy and utility. This blog explores what this means for researchers and how to navigate the tradeoff.

Read More
crane blue

The Builder Pattern for Complex Records

Learn how to use the builder pattern in Rust to construct complex records in a flexible and readable way. This helps manage optional fields and maintain code clarity in data pipelines, and can help your data science and engineering teams build more reliable and maintainable systems.

Read More
histogram orange

How Do We Measure the Utility of Synthetic Data?

A practical guide to some of the metrics you can use to evaluate the utility of synthetic data.

Read More
presentation_outline_2 green

Logs and tracing in Rust: From Terminal to Grafana

How to ship structured logs from a Rust application to Grafana Loki and query them, with a complete local setup using Docker Compose.

Read More