6 min

Hooks and the classes I kept

Two weeks old, and the reaction has been the usual mixture of delight and grief. Having used them on something real, the interesting part is the problem they were built for. It isn't the problem everyone's arguing about.

React JavaScript
7 min

Naming things

I spent 20 minutes on a variable name last week and felt bad about it for the rest of the afternoon, and I've since decided the 20 minutes was the only honest work I did that day.

Culture CSS
5 min

A simple new field

I said an afternoon. It was four days. The gap between those two numbers is a data model I had never looked at properly.

Ecommerce Agency
7 min

The estimate is a distribution

Someone asks how long the checkout will take. What you believe is a lopsided curve with a long tail. What comes out is one number, and by Thursday it's a date in a plan.

Agency Culture
7 min

Commit messages are the design doc

Every other document about a codebase starts drifting the moment you save it. A commit message is welded to its diff forever, which makes it the only one that can't lie to you.

Git Documentation
6 min

git bisect

Somebody says the thing worked in June, there are 900 commits since June, and the temptation is to sit and think really hard, which is exactly the wrong instinct because a computer can do this in ten questions.

Git Debugging
7 min

Static site, dynamic client

A static build is faster, cheaper, safer and better in almost every measurable way, and it keeps losing to a CMS on the one axis I don't get to measure, which is a person changing a price on a Tuesday afternoon.

Agency Tooling
6 min

Make it pop

Clients hand you a solution and call it a requirement, and most of the job is quietly working backwards to the problem underneath it without being a jerk about it.

Agency Culture
7 min

The cookie banner is the product now

A month after the deadline, the visible output of the largest privacy regulation in a generation is an interface that appears on every website in Europe and is designed, carefully and expensively, to be got past.

Privacy Performance
7 min

GDPR is a design brief

I got 41 emails in one day asking whether I'd like to keep hearing from companies I have no memory of ever contacting, which tells you roughly how the last six months have gone.

Privacy Forms
6 min

Motion is not decoration

I built a parallax hero because a client asked for one, showed it to a colleague, and they asked me to close the tab, and then had a headache for the rest of the afternoon.

Accessibility CSS
6 min

A wall of green squares

A candidate apologized to me for their contribution graph before I'd asked about it, and I've been uncomfortable about that for about a month, mostly because I'd have done the same thing.

Careers Culture