I used to think testing was a chore—a checkbox you tick after the real work, just to keep a manager calm. Then I spent a year next to an engineer who refused to write a single line of implementation before the test existed. At first, he looked slow. His pull Continue Reading
webmaster
The Problem With Writing Tests After the Feature Is Already Merged
You know the scene. The pull request sits open for days, sometimes weeks, collecting comments about naming conventions and edge-case handling. Eventually, it clears review. The branch gets merged into main. There’s a collective exhale. And then, almost sheepishly, someone says it: “We’ll add tests in a follow-up.” Most teams Continue Reading
Tests After the Merge: The Technical Debt You Voted For
There’s a quiet little ritual in a lot of engineering teams. A feature branch sits open for days, sometimes weeks. It passes review with a handful of scattered notes about naming and structure. It gets merged. The CI pipeline glows green. Then, almost like an afterthought, a fresh ticket appears Continue Reading
Stop Writing Tests After the Feature Ships—You’re Digging a Hole
I’ve watched this exact loop play out in three separate engineering orgs. A feature gets built, reviewed, merged, deployed. Then somebody opens a ticket that says “Add tests.” That ticket rots in the backlog for a sprint, maybe two. When someone finally grabs it, they discover the original assumptions are Continue Reading
How Canary Deploys Taught Me That Trust Is Earned in Small Percentages
A deployment script stopped cold at 5%. No dramatic crash—just a dashboard I’d been watching for about twenty minutes. The line for 5xx errors had bent upward. Not much. A few dozen requests failing in a way our staging boxes never saw. The canary gate slammed shut before my fingers Continue Reading
The First 1% Is a Mirror You Didn’t Ask For
The First 1% Always Feels Like a Betrayal The terminal spat out one line: Canary deployment initiated—1% of traffic rerouted. My stomach knotted. Every engineer knows this moment. It’s not that something broke. It’s that the system just shoved a mirror in our faces. Real people, mid-scroll through their morning Continue Reading
Why Regression Tests Are More Important Than Unit Tests for Legacy Systems
Most engineers treat unit tests as the bedrock of software quality. For greenfield projects, that instinct is sound. But shift your focus to a legacy systemâone where the original authors are long gone, documentation is a ghost story whispered in code comments, and the business depends on it running exactly Continue Reading
The Difference Between Alpha, Beta, and We Just Pushed It
There’s a moment every engineer knows. Code compiles, test suite goes green, and someone fires off a Slack message: “We just pushed it.” Then a PM leans over and asks the one question that makes the room go quiet. “Is this alpha, beta, or what?” The answer matters, and more Continue Reading
How Continuous Deployment Broke the Relationship Between Building and Shipping
For the first two decades of my career, shipping software meant something specific. It had weight. A release was a named entity—version 3.2, the Q4 update, the patch we all stayed late to finish. The build was the thing we made; the ship was the moment we handed it over. Continue Reading
Why Your Test Coverage Percentage Is Lying to You
The Seductive Lie of a Green Dashboard A coverage percentage sits on your CI dashboard. It reads 87%. Maybe 92%. The number is high enough to offer comfort, to let you ship on a Friday afternoon without that familiar tightening in your chest. The suite passes. The badge is green. Continue Reading