Deleting a Database Column Is Harder Than It Sounds
A column removal looks like a one-line change. It can take weeks, require multiple deployments, and still bring down production if you get the order wrong.
Deep dives into the technology that shapes our world, from hardware breakthroughs to platform strategies.
A column removal looks like a one-line change. It can take weeks, require multiple deployments, and still bring down production if you get the order wrong.
The most important infrastructure in your stack isn't the one handling requests. It's the one watching everything else and deciding what to do when things go wrong.
Your test suite passes every time. Your production system fails once a month. These are not the same problem, and no amount of unit testing will close the gap.
Tony Hoare called null his billion-dollar mistake in 2009. The type-system fix existed before he made it. We just keep choosing not to use it.
Some bugs vanish the moment you try to observe them. That's not magic — it's a timing problem, and it tells you something important about how your software actually runs.
Router contention isn't a failure case. It's the normal operating condition of the internet, and how it's handled explains a lot about why networks behave the way they do.
Performance optimization usually means making code faster. The better approach is usually making it unnecessary. Six principles engineers reach for last but should reach for first.
The padlock means your connection is encrypted. It says nothing about whether the site on the other end is honest, safe, or who it claims to be.
A stock trading firm lost millions on trades that happened in the wrong order. The culprit wasn't a bad algorithm. It was a clock.
Durability guarantees cost real performance. The databases powering your favorite apps often skip them deliberately, and the tradeoffs are more defensible than you'd think.
Encryption is strong. What surrounds it often isn't. Here's the full chain of events, and where it actually breaks.
Developers learn the textbook definition of race conditions early. Most never learn how many forms they take, or how quietly they can hide.
Your operating system reads every byte of a file and writes it again, even when the data never leaves the same disk. This is a design failure we've accepted as normal.
Modern encryption is mathematically sound. That's not why your data gets stolen. The real attack surface is everything surrounding the cipher.
Every computer clock drifts. The protocols we built to fix this are fragile, political, and surprisingly close to breaking.
Adding features is celebrated. Removing them is avoided. The story of how Basecamp killed its most-used feature explains why subtraction is the real test of product discipline.
TCP's failure detection is a 40-year-old educated guess dressed up as engineering certainty. That guess shapes everything about how the modern internet feels.
Most people think a URL request is like flipping a light switch. It's closer to orchestrating a small city. That gap in understanding matters.
Join thousands of readers who get our weekly breakdown of the most important stories in technology.
Free forever. Unsubscribe anytime.