Architecture should be designed for the team that has to operate it, not for the fantasy team you wish you had.
/3 min read/Read essay →
What This Site Is For
Judgment for people who already know the basics.
For developers who have already outgrown tutorials and want sharper judgment about production systems, architecture tradeoffs, AI-assisted development, and what actually breaks after launch.
Less recycled best practices. More consequences, failure modes, and hard-earned tradeoffs.
Rails Has Been Dying Since 2010. I'm Still Building Production On It in 2026.
Every couple of years someone publishes the Rails obituary. Every couple of years I ship another production system on it. The reason isn't loyalty — it's that nothing has actually replaced what Rails decided to do.
Read article→
/4 min read
Why Senior Developers Sound Slower Than They Really Are
Experienced engineers ask more annoying questions up front because they have seen what rushed certainty costs on the back end.
Read article→
/4 min read
The Best Stack Is the One Your Team Can Debug at 2 A.M.
Stack decisions are not just about developer experience on launch day. They are about who can understand the failure when production gets weird.
Read article→
/4 min read
Most API Versioning Advice Falls Apart in the Real World
The argument is rarely about URLs versus headers. The real problem is that most teams version without a consumer strategy, a deprecation plan, or any operational discipline.
Read article→
/4 min read
Most Teams Do Not Need Microservices. They Need Better Boundaries.
Splitting a messy system into five deployables does not create clarity. It usually creates more places for the same confusion to hide.
Read article→
/5 min read
AI Can Write Code. It Still Cannot Own Production.
Generated code makes shipping faster. It does not make consequences smaller. The expensive part of software is still ownership.
Read article→
/6 min read
Your Staging Environment Is Lying to You
Staging is useful, but teams keep treating it like a trustworthy preview of production when it usually lacks the traffic, data, timing, and constraints that cause the real problems.
Read article→
/11 min read
IFrames, CORS, and postMessage: Why This Still Feels Broken
Most developers think CORS is the reason iframe communication fails. Usually it isn't. The real problem is that cross-origin embedding and cross-origin scripting are different things.
Read article→
/10 min read
You're Paying for UI When You Need UX (And It's Costing You Customers)
Why businesses spend $50k on pixel-perfect interfaces that nobody uses—and how confusing design with problem-solving destroys products
Read article→
/10 min read
The 2026 Web Development Roadmap Nobody's Saying Out Loud
Why learning frameworks matters less than learning to work with AI—and the skills that still separate juniors from seniors
Read article→
/9 min read
I Built a Production iOS App With Rails and No Swift Developer
Why Hotwire Native ships mobile apps faster than React Native—and when you actually need a native framework
Read article→
/12 min read
Server-Sent Events: When WebSockets Are Overkill (And When They're Not)
Most teams reach for WebSockets when all they need is a long-lived GET request. Here's what I learned after choosing wrong multiple times.