My posts on design.
I write about anything and everything that interests me.

How Dropbox, DoorDash, Airbnb and Stripe designed their MVPs
Early UI and founder stories from Dropbox, DoorDash, Airbnb, Stripe, Zapier, and Product Hunt. What to design first, reuse, and leave for later.

Adaptive video with FFmpeg, Vite and a custom player
How I turn recordings into cached AV1 and H.264 streams with FFmpeg and Vite, then play them with native HLS or Mattebox behind custom React controls.

How to scope a SaaS project you can afford to finish
How I approach SaaS scope and pricing as a former agency owner and current freelancer, and what to ask when budgeting for design and development.

Optimizing the sh*t out of TanStack Start
A practical TanStack Start performance guide: how cutting downloads and fixing fonts and images took my home page from 73 to 100 on mobile Lighthouse.

How to hire a freelance designer who can deliver
A founder’s guide to hiring a freelance designer: check real contributions, constraints, working fit, and delivery before committing to the work.

Why I moved from Astro to TanStack Start
I moved my portfolio to the React stack I use for client work. Getting Astro's loading behavior and performance back took more work.

How I automated internal linking with AI
Find internal link opportunities with embeddings and a reranker, make an LLM justify each link, and place links at build time instead of editing MDX.

How to generate animated icons with TypeScript
How I replaced my Lordicon nav icons with seven animated sprite icons drawn in TypeScript, rendered with sharp, and played on a canvas.