Which means rewriting crufty pieces of your stack when certain thresholds occur. 'There will come a point where the accumulated complexity of our existing systems is greater than the complexity of creating a new one' -- is something that happens in motion, iteratively, and which you do when you have time at all levels of the evolution that we call development.
Anyway, that's my two cents. Nice others are on the same wavelength, I think.
To be regarded the same way as a long relationship with a cranky friend, maintaining an aging specimen tree, or a historic house.
Do you cut the branch off, or just prune it back a little?