All blogs

I write about building for the web — interfaces, performance and the craft of shipping. These are my notes, published as I learn.

State Management: A Complete Guide

From local component state to app-wide stores: a map of the options, what each is actually for, and a decision framework that keeps your app from adopting three of them at once.

Web Performance Optimization: A Comprehensive Guide

Essential techniques for a fast site — measuring what matters, shipping less JavaScript, loading media responsibly, and keeping interactions smooth after the page is up.

Practical CSS Layout Patterns for Modern Interfaces

A tour of layout patterns that hold up in real products — intrinsic grids, container-aware components, and the handful of rules that make responsive design feel effortless.

Type-Safe Frontend Code, in Practice

The habits that make static types pay for themselves in interface code: modeling states honestly, typing at the boundaries, and knowing when an escape hatch is a bug report.

Mastering Component State

How to decide where interface state should live, which pieces of it deserve to exist at all, and the patterns that keep interactive components predictable as they grow.

Static Site Generators, Explained

Why pre-rendering keeps winning for content sites: how static generation works, when it beats a server, and how to decide if it fits your next project.

Ace Your Next Coding Interview

A preparation plan that respects your time: what interviewers actually evaluate, how to practice deliberately, and how to talk through a problem you cannot immediately solve.