Why I Finally Made a Site


I’ve started personal sites three times before this one. Each time I spent most of the energy on the setup and very little on the writing, which is the thing that was supposed to matter.

This time I made a rule: no customization until there’s something to read. I broke that rule, obviously — you can see the serif fonts and the cream background from here — but I broke it in a single afternoon and then stopped, which feels like progress.

The actual reason

I work with data all day and produce a lot of observations that don’t fit anywhere. Not quite a paper, not a tweet, not a Slack message. Things like: this method behaves badly when you do X, or I thought I understood this well until I tried to explain it, or here’s what I wished someone had told me three months ago.

Notes to future me, mostly. But if they’re useful to someone else, that’s a bonus worth having.

What I expect to write about

Mostly technical things — statistics, machine learning, computational biology, the specific frustrations of working with clinical data. Sometimes the meta-level: how I think about problems, what I’ve changed my mind about, what’s harder than it looked.

Occasionally something completely off-topic, because a blog that only contains work thoughts starts to feel like a performance review.

The workflow

This site is built with Claude code, using Astro and deployed to GitHub Pages. Kep steps in creating this website is:

  1. Create a repo and set up blog templates with Astro
  2. Create a github repo and configure Astro for GitHub Pages
  3. Enable GitHub Pages and GitHub Action for build and deploy.

That’s it. I wanted something where the activation energy of publishing was as low as possible, because the gap between I have a thought and I post the thought is where most writing goes to die.

Let’s see how it goes.