Writing

Thinking out loud.

Notes on product systems, the reality of applied AI, and how state shapes software. Each one doubles as a record of how I approach a problem.

#FrontendSystemsJun 16, 20266 min read

One Component Library, Three Applications

What changes when three apps depend on the same components — and why the components are the easy part.

Read more →
#SystemsComplexityJun 14, 20266 min read

Making Change Cheap

The thread through everything I build: the expensive part of software isn't writing it, it's changing it — and good systems make the next change smaller than the last.

Read more →
#ProductSystemsJun 12, 20267 min read

Every System Eventually Wants to Become Configurable

Why configuration eventually replaces code — and when not to reach for it.

Read more →
#FrontendSystemsJun 9, 20266 min read

Serving Many Brands from One Codebase

How to serve many products or brands from a single codebase without forking — and why the real work is a boundary, not a theme.

Read more →
#SystemsComplexityJun 7, 20265 min read

The Hidden Cost of Exceptions

A single special case is cheap. The tenth one is what quietly makes a system unmaintainable — and why the cost is invisible until it isn't.

Read more →
#AIRealityJun 5, 20266 min read

The problem is almost never the model

When a computer-vision system underperforms, the fix is usually in the data — not the architecture.

Read more →
#BackendSystemsJun 2, 20265 min read

Measuring Latency Honestly

Why averages flatter the truth, what percentiles fix, and how to keep a fast metric from quietly becoming a wrong one.

Read more →
#SystemsComplexityMay 29, 20266 min read

Why "Just Add a Flag" Eventually Fails

A feature flag is a great way to defer a decision and a terrible way to avoid one forever — and how flag sprawl is usually a missing model in disguise.

Read more →
#ProductSystemsMay 22, 20266 min read

Schema-Driven Forms: When Rules Become Data

Why business rules belong in data rather than scattered through components — and how schema-driven forms become the first step toward a configurable system.

Read more →
#SystemsStateMay 19, 20265 min read

Why AI assistants forget decisions

It looks like an AI problem. It's really a state-management problem on a new surface — single source of truth, records over logs.

Read more →
#AIRealityMay 15, 20265 min read

What Computer Vision Taught Me About Software Engineering

Lessons from applied computer vision that turned out to be lessons about software in general.

Read more →