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.

Engineering · 14 Aug 2026 · 10 min

Queuing writes for a flaky world

Offline writes done honestly: outbox queues, idempotency keys, optimistic state that admits it's pending, conflict surfacing, and deciding which features truly need them.

architectureofflinesync
Growth · 14 Aug 2026 · 10 min

The help centre is a growth channel: SEO that deflects tickets

Your help centre is a growth channel in disguise. How to write support docs that rank for problem-aware searches and measurably deflect tickets.

help centreknowledge basesupport SEO
AI · 13 Aug 2026 · 11 min

Our responsible-AI review, in the open

The full review we run before any AI feature ships: risk taxonomy, red-team scripts, disclosure patterns, data-handling checklists — and how we say no to features.

responsible AIAI governancerisk assessment
E-commerce · 12 Aug 2026 · 10 min

Site search: the highest-intent feature most stores neglect

On-site search users convert at multiples of browsers, yet most stores never open their search logs. The analytics loop, merchandising rules and KPIs that fix it.

site searchsearch analyticsmerchandising
Growth · 12 Aug 2026 · 10 min

Community-led growth: the honest ten-year version

What a decade of building B2B communities taught us: when community is worth the commitment, formats that sustain, and measuring dark-funnel influence.

communityB2B marketingdark funnel
AI · 11 Aug 2026 · 11 min

RAG and the staleness problem: freshness is a ranking signal

Stale retrieval makes RAG answers confident folklore. Treating freshness as a ranking signal, surfacing 'last updated' in answers, and designing the re-indexing pipeline.

AIRAGretrieval
Product · 11 Aug 2026 · 8 min

Command palettes: patterns for the Cmd-K era

When a Cmd-K palette earns its complexity: ranking that beats fuzzy match, mixing actions with navigation, keyboard ergonomics, discovery and mobile equivalents.

command palettekeyboard navigationpower users
Brand · 6 Aug 2026 · 10 min

Will your logo survive your product?

Identity work gets judged at 16 pixels. Favicons, avatar crops, dark surfaces, motion restraint, and the logo-usage contract that keeps engineers on side.

logo designfaviconbrand system
AI · 5 Aug 2026 · 10 min

AI triage for support: routing, not deflecting

AI support triage should route customers, not wall them off. Intent detection that errs toward humans, handoff packages, and the deflection metric trap.

supportagent UXtrust
AI · 5 Aug 2026 · 11 min

Human-in-the-loop: designing the review queue

Human-in-the-loop AI fails at the queue, not the model. Triage design, keyboard-first reviewer ergonomics, feedback loops into evals, and honest staffing maths.

AI UXhuman in the loopreview queues
Engineering · 5 Aug 2026 · 9 min

Keep your pages findable by Ctrl-F

Virtualisation silently breaks in-page search. The hidden=until-found and content-visibility toolkit, chunk-rendered long lists, and when a custom find box earns its keep.

accessibilityfront-endperformance
Web design · 5 Aug 2026 · 9 min

Bento grids: when the box layout earns its keep

A fair assessment of bento layouts: what they do well, where they collapse, span systems that survive real CMS data, and typography rules for mixed-size tiles.

layoutCSS gridlanding pages