Research software · Evidence synthesis · Meta-research · Interactive science · GNU/Linux
Projects · Writing · LinkedIn · X
I build statistical and research tools that make evidence synthesis, biostatistics, and scientific publishing more reproducible, and browser tools that let people see how the science works.
My work sits mostly at the intersection of R, Python, Bayesian modeling, meta-analysis, research integrity, interactive visualization, and GNU/Linux.
- Population-adjusted indirect treatment comparisons and target trial emulation methods
- Meta-research and research integrity: retractions, citation validation, transparency, FAIR metadata
- Interactive, backend-free browser tools for teaching anatomy, statistics, and mathematics
- Research with language models where every claim is checked against its primary source before it is published
- R packages for biostatistics workflows and reproducible research on GNU/Linux
| Project | What it does | Stack |
|---|---|---|
| mlumr | Multilevel unanchored meta-regression for disconnected evidence networks | R, Stan |
| cpaic | Component network meta-analysis extended to population-adjusted indirect comparisons | R, Stan |
| Mathematics-of-ITC | Graduate textbook on indirect treatment comparisons with every result proved and a machine-checked Coq companion | Quarto, LaTeX, Coq |
| ITC and TTE open problems | Audited catalogs of open methodological problems, each claim verified against its registry and sources | Quarto, Python |
| NMAViz · site | Reads the evidence structure of a network meta-analysis in the browser, drawn eight ways | JavaScript, SVG |
| OMFAtlas · site | Interactive 3D atlas of oral and maxillofacial anatomy for dental education | JavaScript, Three.js |
| MetaCan · site | Provenance-tracked map of Canadian meta-research with a bilingual web app | R, Python, PostgreSQL |
| citicious | Chrome extension that flags retracted articles and hallucinated citations on academic pages | TypeScript |
| sysreqR · krt · respondeR | R packages for system requirement preflight checks on GNU/Linux, Key Resources Tables, and responder analysis | R, Shiny |
| BiostatAgent | Claude Code plugin marketplace for biostatistics in R: Bayesian modeling, ITC, and trial simulation | Python, R |
Also in the browser: catigraphy (CT atlas of the domestic cat) · How Things Work (everyday machines as 3D lessons) · MilleViz (the Millennium Prize Problems, explained from the picture up) · FracGen (fractal studio) · Geography Words (English words that carry a place inside them) · Game of Life (a life budget from UN life tables) · The Evidence Behind (a book auditing the evidence behind UK oral health guidance).
Good research software should be:
- Reproducible enough for another analyst to rerun it.
- Transparent enough for a reviewer to audit it.
- Documented enough for a tired user to understand it.
- Small and boring where possible; cleverness is not a substitute for reliability.
Open science over closed claims. Reproducible code over screenshots. Useful tools over vanity metrics.