From the studio

Notes worth slowing down for

A running log of the decisions behind the work. Open a note for the full write-up, or just scroll — the photos catch up with you.

Tokens are a promise, not a paint bucket — cover image
Design systems

Tokens are a promise, not a paint bucket

Why a token should describe intent before it describes a hex value, and what that changes about who can touch it.

Read more

A design token is a contract between design and engineering: change the token once and every surface that reads it updates together. Treat tokens like a paint bucket instead — hard-coding values that happen to match — and the contract silently breaks the first time a brand refresh needs a different blue. We keep every token named for what it means, not what it currently looks like.

The best onboarding screen is the one you delete — cover image
Studio journal

The best onboarding screen is the one you delete

Three products, three onboarding flows we cut entirely, and what we replaced them with instead.

Read more

Every onboarding flow we have shipped was, at some point, a five-step tour nobody asked for. The fix was never a better tour — it was moving the explanation into the moment someone actually needed it, as an inline hint instead of a modal gate. Across three products, deleting the tour and shipping contextual hints instead cut time-to-first-value by more than half.

Rebuilding a checkout without touching revenue — cover image
Case study

Rebuilding a checkout without touching revenue

How we shipped a full checkout rebuild behind a flag, with a rollback plan nobody ever had to use.

Read more

A checkout rebuild is the kind of project where the safest plan is the slowest one. We built the new flow behind a flag, mirrored every event from the old checkout into the new one for three weeks before anyone saw it, and diffed the numbers daily. By the time we flipped the flag for everyone, the migration was a formality — the data had already told us it would hold.