Writing
Words on shipping software
Field notes from building products on the modern web. New posts when I have something worth saying.
All posts
Latest
May 20, 2026
Building this portfolio with Claude Code
Not “the AI wrote it” — more “we wrote it together,” with a careful initial prompt, a lot of fact-checking, and the occasional wrong turn. Notes on the back-and-forth that produced this site.
- claude-code
- ai
- nextjs
- cloudflare
Apr 12, 2026
Notes on building a design system with Tailwind v4
Tailwind v4’s CSS-first config changes the ergonomics of theming. Here’s the small set of conventions I’ve landed on after a few months of using it in anger.
- tailwind
- design-systems
- css
Mar 2, 2026
Shipping tiny apps to Cloudflare’s edge
How I’ve been structuring small, full-stack apps on Cloudflare Pages + D1 + Workers — and where I keep tripping over the edge runtime’s constraints.
- cloudflare
- edge
- typescript
Jan 20, 2026
Less mocking, more confidence
A short defense of integration tests that actually hit the database, and the small infrastructure investment that makes them painless.
- testing
- engineering