If you’re in charge of making technology decisions or come to a fork in the road where you need to make one, read this first. Boring technology might be less exciting but that new technology comes with lots of “unknown unknowns” that will haunt you later down the road.
When choosing technology, you have both known unknowns and unknown unknowns.
- A known unknown is something like: we don’t know what happens when this database hits 100% CPU.
- An unknown unknown is something like: geez it didn’t even occur to us that writing stats would cause GC pauses.
Both sets are typically non-empty, even for tech that’s existed for decades. But for shiny new technology the magnitude of unknown unknowns is significantly larger, and this is important.