Journal

Thinking, in public

Field notes on design, engineering and growth — written by the people who ship the work. No thought leadership, just lessons with receipts.

Growth · 25 Feb 2026 · 9 min

Alternative-to pages that rank and don't embarrass you

Comparison and 'X alternatives' pages capture high-intent search. The honest playbook: structure that concedes strengths, verified matrices, tone rules, upkeep, pipeline.

SEOcomparison pagescompetitors
Growth · 24 Feb 2026 · 11 min

Attribution is 90% noise: making decisions anyway

Last-click lies, multi-touch dreams, and what actually works for teams without a data science department: a decision framework for acting on noisy attribution.

attributionanalyticsdecision-making
AI · 19 Feb 2026 · 11 min

When the model fails: fallback UX for LLM features

LLMs fail — slowly, confidently and at the worst times. How to design degradation tiers, honest error states and timeouts that keep users' trust intact.

AI UXerror statesgraceful degradation
Brand · 19 Feb 2026 · 10 min

Brand voice that survives the handover: writing guidelines people use

Most voice guidelines die at handover to a busy marketing team. The fix: decide who's protecting the voice, write for the rushed reader, and test in 15 minutes.

brand voicetone of voicecopywriting guidelines
E-commerce · 19 Feb 2026 · 9 min

Returns are a retention channel in disguise

Stop cost-centre thinking on returns. Cohort economics, the post-return lifecycle, save-rate measurement and the budget line returns deserve.

returnsretentioncustomer lifetime value
Engineering · 19 Feb 2026 · 10 min

Service workers: an honest production guide

Service workers are the most powerful and least forgiving API in the browser. Cache strategies by content type, update flows, offline fallbacks and production debugging.

service workersofflinePWA
Playbooks · 19 Feb 2026 · 9 min

Retainer or project? An honest decision guide

Retainer or fixed-scope project? An honest guide to when each engagement model wins — risk profiles, budget shapes, switching costs, and the questions to ask first.

engagement modelsretainersagency relationships
Brand · 18 Feb 2026 · 9 min

Generative AI in brand work: our position, in plain language

Where generative AI genuinely helps brand work, where it quietly rots it, and the disclosure we give every client. Our studio position, stated plainly.

AI in designbrand ethicsgenerative AI
Engineering · 18 Feb 2026 · 10 min

Container queries: finally designing components, not pages

Media queries ask the viewport; container queries ask the room. Production notes: containment costs, cqi type, fallbacks, and cards that go anywhere.

CSSresponsive designcomponent architecture
Engineering · 18 Feb 2026 · 9 min

Design tokens are an API — version them like one

Rename a token and you ship a breaking change. Semantic versioning for token contracts, codemods for renames, migration windows, and deprecation hygiene.

design-systemsdesign-tokensversioning
Growth · 18 Feb 2026 · 9 min

Site migrations that don't tank organic traffic

The migration runbook we run before every relaunch: redirect mapping at scale, staging audits, launch-day checks, rollback triggers and the 30-day watch.

site migrationtechnical SEOredirects
Web design · 18 Feb 2026 · 9 min

Maps on the web: restraint and alternatives

A map is the most expensive component on most sites — in kilobytes, attention and accessibility. When a map earns it, how to design one that doesn't, and when a list wins.

UXmapsaccessibility