I have since I was a young boy been fascinated with building architecture. That interest was the foundation of my passion for architecture as it applies to information technology. Being the son of a carpenter gave me plenty of opportunities to see how buildings are built and evolved. I have taken that perspective and applied it to my work in information systems architecture. So as I was rereading How Buildings Learn by Stewart Brand, I was struck by a most profound quote
A building is not something finished. A building is something you start.
In my years moving through the ranks of information technology I have seen the majority of professionals treat the thing they build as something that ends the day it ships, compiles or is deployed. The creation of systems of technology, be it for storing our stuff (thanks George Carlin) or for making our businesses more efficient, have always been intended to resolve some discontinuity we experience. Mr. Brand then goes on to write
Evolution is always away from known problems rather than toward imagined goals. It doesn’t seek to maximize theoretical fitness; it minimizes experienced unfitness. Hindsight is better than foresight.
Great businesses have been started from a problem statement and a desire to move away from that problem. The systems of technology we use everyday are applied to “minimize experienced unfitness”.
The first step towards building an evolutionary system is do something, if it hurts fix it, it its slow tune it. The key in creating a stable system is change. Change will bring mistakes and some of those mistakes might be painful but doing nothing is more painful in the end. Creating evolutionary systems can not be done in environments where change is avoided. In many of Tom Peters presentations he cites a quote “Fail Fast Forward” that’s the key to evolutionary systems in three words. Evolutionary systems are designed to allow change and then are used to fail fast forward.