Working notes.
Engineering, product, and the occasional overlap with running. Mostly written in the gap between shipping and recovering.
How AI has changed the way we program
Three years in, the IDE is no longer where I write code. It is where I review it. A working report from the inside.
Glance-legible UIs
On building interfaces a runner can read at 4:35/km. The discipline of saying less.
Rule engines still win
I trained a transformer to generate marathon plans. I shipped a rule engine instead. The audit trail.
The pace of the UI
Interfaces have a cadence. Bad ones stumble. Running taught me to feel it.
Typed all the way down
Pushing types past the UI into the database query and back. Worked examples from production.
Three habits from the taper
What the two weeks before a marathon taught me about shipping. Rest is a feature.
The deploy that goes quiet
Designing release tooling that gets out of your way. Notes from Harbor.
Against the dashboard
Why most analytics surfaces fail their users — and one alternative shape.
Small teams, big tooling
On the unreasonable leverage of a 4-person platform team.
Reading the room (codebase)
Pattern-matching as a senior engineer's primary skill. How to develop it.
The first hundred users
What I wish I had measured in Cyclethon's first month.