
When building complex systems, whether they are software, organizations, or other intricate structures, there’s a powerful principle to consider: systems that work are invariably found to have evolved from simple systems that worked. The inverse is also true: complex systems designed from scratch rarely work and cannot be patched up to make them work. You have to start over with a working simple system.
This idea highlights why overly ambitious projects that attempt to build vast, complicated structures from the ground up often fail. They bypass the natural, evolutionary process that builds resilience and functionality through iterations of simpler, working versions. Trying to foresee every possible interaction and dependency in a highly complex system from day one is practically impossible.
A better approach is to begin with a minimal but functional core. Get that simple system working reliably. Then, incrementally add features and complexity, ensuring that at each step, the system continues to work. This iterative process allows for learning, adaptation, and the natural resolution of unforeseen issues that inevitably arise when dealing with intricate designs. It acknowledges that successful systems are grown, not just built in one go. Embracing this evolutionary method significantly increases the likelihood of achieving a robust and functional outcome, contrasting sharply with the high failure rate of attempts to conjure complexity into existence all at once.
Source: https://itnext.io/galls-law-is-coming-for-your-overly-complex-project-bebd9547589f?source=rss—-5b301f10ddcd—4