Choose Boring Technology
Every organization has a finite budget of complexity it can absorb. Spending that budget on technology choices rather than business problems is a reliable way to fail.
"Let's say every company gets about three innovation tokens. You can spend these however you want, but the supply is fixed for a long while." Dan McKinley
The "best tool for the job" philosophy sounds rational but takes a myopic view of both "best" and "job." Your job is not to solve an isolated technical problem it is to keep a complex system running reliably while shipping value. Every new technology you add brings an entire universe of unknown unknowns: failure modes you have not encountered, operational quirks you have not internalized, edge cases that only surface under production load. For mature, boring technology, the unknown-unknowns space is smaller. Not empty, but smaller. That difference compounds over years of operation.
The real cost of technology diversity is operational. Polyglot programming and heterogeneous infrastructure mean every on-call engineer must understand more systems, every deployment pipeline must accommodate more configurations, and every incident draws from a larger pool of possible root causes. The long-term cost of keeping a system working reliably vastly exceeds any inconvenience encountered while building it. A team that picks three databases because each is locally optimal for one use case has globally burdened itself with three sets of failure modes, three backup strategies, three scaling playbooks, and three pools of required expertise.
The discipline is not to avoid new technology entirely but to treat adoption as a company-wide decision requiring explicit justification. Before adding anything new, first ask: how would we solve this with what we already have? The answer is almost never "we can't" it is usually somewhere on the spectrum of "it would be harder." That harder path often costs less in total when you account for the operational burden of the alternative.
Takeaway: Optimize globally, not locally the technology that occupies the "least worst" position for the most problems is usually the best choice.
See also: Complexity Has Three Sources | Cognitive Load Is the Real Bottleneck in System Design | Correlated Failures Are the Real Threat
Linked from
- AI Infrastructure Is Insanely Hard to Build
- Cognitive Load Is the Real Bottleneck in System Design
- Complexity Has Three Sources
- Compound AI Systems Beat Monolithic Models
- Gall's Law Complex Systems Must Evolve From Simple Ones
- Lampson's Hints Distill System Design Into Timeless Principles
- The Fundamental Mechanism of Scaling Is Partitioning
- VMMs Hide OS Limitations Instead of Fixing Them