Writing

Notes from frontend work.

React architecture, configurable forms, shared components, and review tools for model output. Each article comes out of a real project.

Start here

If you only read three, read these.

All articles (15)

#FrontendSystemsSep 23, 20268 min read

A Keystroke Shouldn't Wake the Whole Form

In a configuration-driven form with hundreds of inputs, typing one character re-rendered nearly every field. The fix had little to do with memoization and a lot to do with deciding who is allowed to listen.

Read more →
#SystemsComplexityAug 25, 20266 min read

When the Measurement Is the Bug

Evaluating a candidate system against one already in production, the hard part was never the thing being measured. It was three numbers that looked healthy and described a different experiment than the one intended.

Read more →
#AIRealityJun 20, 20266 min read

Human-in-the-Loop Isn't Going Away

When an AI system is accurate enough for the demo but you still can't remove the person, the missing piece isn't the model — it's who carries the cost of being wrong, and whether the system routes by that cost.

Read more →
#FrontendSystemsJun 18, 20265 min read

When to Extract a Shared Component

Extraction is a bet that a shape is stable — not a rule about counting to three. The third copy just happens to be where you finally have enough evidence to judge.

Read more →
#FrontendSystemsJun 16, 20266 min read

One Component Library, Three Applications

What changes when three apps depend on the same components, and why the components turn out to be the easy part.

Read more →
#SystemsComplexityJun 14, 20266 min read

Making Change Cheap

The most expensive part of software is changing it after it ships. What that costs teams, and how good systems keep each next change small.

Read more →
#ProductSystemsJun 12, 20267 min read

Every System Eventually Wants to Become Configurable

Why configuration eventually replaces code, and the cases where reaching for it makes things worse.

Read more →
#FrontendSystemsJun 9, 20266 min read

Serving Many Brands from One Codebase

Serving many brands from one codebase without forking. The hard part is deciding where configuration ends, not picking a theme.

Read more →
#SystemsComplexityJun 7, 20265 min read

The Hidden Cost of Exceptions

A single special case is cheap. The tenth is what quietly makes a system unmaintainable, and the bill stays 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 model.

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 bad way to avoid one forever. Flag sprawl is usually a missing model in disguise.

Read more →
#ProductSystemsMay 22, 20266 min read

Schema-Driven Forms: When Rules Become Data

Business rules scattered through components age badly. How schema-driven forms move them into data and open the door to configuration.

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: a 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 →