So in the physical world, there’s tremendous constraints placed on a system by existing infrastructure. It defines and limits what can be done without significant extra resources expended – which means cost, complexity, risk, etc.
In a recent issue of Wired, there’s an article about how a new city in China is being designed with what amounts to a well thought out infrastructure optimized towards energy use
It’s an interesting contrast between that approach and the agile software approach of evolving the infrastructure (and the approach to infrastructure that’s true for most cities as well). Of course, the infrastructure in software is much more malleable than the physical infrastructure of a city – yet there are still great costs and challenges with evolving software infrastructure.
Why haven’t we figured out how to make this easier?