Writing

Blog

Apr 2026

·

3 min read

Monthly favourites

April: monthly favourites

Apps, articles, and things I kept coming back to this month. Arc, Canva, Raindrop.io, and a few blog posts.

Apr 2026

·

4 min read

Tech

Why CSS collapses your margins

Two margins that should have added to 64px gave me 40px. A note on why that is not a bug.

Apr 2026

·

4 min read

Tech

A simple rule for keeping mutations consistent across the codebase

Every time I wrote mutation logic inline, something ended up missing. Moving it all into the hook fixed that, and adding the rule to CLAUDE.md meant Claude stopped getting it wrong too.

Apr 2026

·

5 min read

Tech

Frontend Optimization: Small Changes That Make a Big Difference

A list of small things I do to keep my frontend pages fast.

Mar 2026

·

3 min read

Tech

Why button elements don't use cursor: pointer by default

The arrow cursor on a button is not a browser oversight. Here is why it is that way, and why almost everyone overrides it anyway.