202205131318 Software only supports one order of magnitude
Most implemented systems are only designed to support one or two orders of magnitude of growth from the current load. Even systems that were designed for more growth typically run into this problem anyway since knowing the specifics of the future is nearly impossible (202204031033 Abstractions and future-coding are actively harmful).1
Perhaps contrary to intuition, the fact that the systems don't support more than that means that they were designed well in the first place. They achieved the goals of what they needed to do, didn't try to solve problems that couldn't be predicted, and were efficient solutions to the previous constraints rather than being over-designed.
So, if your systems' usage are doubling every 6 months, you cross an order of magnitude every 18 months. Things that were trivial or afterthoughts at one point can become the focus of whole teams of people and require deep, plateauing investment to use and adapt. You'll have to rewrite or re-implement all of your systems twice every three years. These rewrites are risky and can contend with each other for resources, but they need to be done since 202205111310 Migrations are the only solution to tech debt.
-
Larson, W. (2016, October 10). Productivity in the age of hypergrowth. Irrational Exuberance. https://lethain.com/productivity-in-the-age-of-hypergrowth/ ↩