Writing

Notes from the unglamorous side of software

Six pieces so far, and I would rather publish one good one a quarter than a content-calendar's worth of filler. Most of these started as an internal write-up that somebody told me to make public.

·9 min read

Boring infrastructure is a feature

Every novel piece of technology you add is a thing you will have to debug at three in the morning with no documentation and a Slack channel full of people asking whether it is DNS. A case for choosing the tool you can reason about under pressure.

Engineering
·12 min read

Shipping a design system in six weeks

Four teams, four competing button components and three brand skins. We built the token layer first and let the components fall out of it — which is the only reason the system outlived the project that funded it.

Design systemsEngineeringAccessibility
·8 min read

A performance budget you will actually keep

Budgets fail for the same two reasons every time: nobody owns the number and nothing blocks the merge. Here is the version that survived two years of feature work, plus the CI job that enforces it.

PerformanceEngineering
·7 min read

Cascade layers changed how I write CSS

Twelve years of fighting specificity, solved by a single at-rule I ignored for two years because it sounded like a build-tool thing. How I structure a stylesheet now, and what I deleted to get there.

CSS
·11 min read

The five Postgres indexes I actually use

Not a tour of everything the manual lists — just the five index types that have earned their place in production, when each one is the wrong answer, and how to tell that an index has quietly become dead weight.

DatabasesPerformance
·6 min read

An accessibility audit in one afternoon

You do not need a specialist consultancy to find the first eighty percent of problems. A four-hour pass that caught 212 issues across a fintech product, and the order I do things in so the findings are actually fixable.

Accessibility