Long form thinking on architecture, debugging, AI in production, and the messy intersection of code and business. The trade-offs, failures, and decisions that do not fit into tutorials.
One email when something new goes up. No spam, unsubscribe anytime.

Microservices sound like the grown-up choice, so teams split too early and inherit a distributed mess. This guide covers the real cost of splitting a monolith, the modular monolith that is usually the smarter default, when you genuinely need to split, and how.

A client's support agent worked perfectly in the demo, then refunded three customers twice in its first week. Here is how I turned that flaky prototype into production-ready AI agents using idempotency, validation, guardrails, and full observability.