In 1963, the people at NASA needed a building. And not just any building. It had to be large enough to be able to assemble the enormous space vehicles NASA designed as part of their massive effort to send astronauts to the Moon. The building that was completed in 1966 allowed for the vertical assembly of rockets like the Saturn V, and it is to this date the largest single-story building in the world. Located at Kennedy Space Center in Florida, the “Vehicle Assembly Building” (VAB) is 160 meters tall, 218 meters long, and 160 meters wide, with a volume 3.75 times that of the Empire State Building, and built to withstand hurricanes. The building is a vast and complex system that includes five overhead cranes used to pick up the heaviest elements of rockets and to place them carefully into position ahead of launch. It also has the largest doors in the world, through which the rockets roll to the launch pads.
Yet, after the Vehicle Assembly Building was completed, it had a surprise in store: It creates its own weather. The building is so vast that, on very humid days, rain clouds form below the ceiling and about 10,000 tons of air conditioning equipment are needed to control the moisture inside. And so it only takes one hour to completely replace the air in the building. Although, rumor has it that the folks at NASA often just leave the doors open…
That a building can have its own weather is not only a good story to start a blog post with, but it also teaches us something about the nature of complex systems: They come with unintended consequences and unexpected behavior. “The larger the system, the greater the probability of unexpected failure,” John Gall wrote in General Systemantics, his seminal book about how systems work – and how they fail. In the book, which can be borrowed from the Internet Archive, Gall offered many principles of systems design, especially with regards to complex systems. One of those principles has become known as Gall’s Law:
He might have a point here: Many of the complex systems around us that work, weren’t designed from scratch. They evolved from a simpler system, a basic set of rules and conventions. Nation-states, companies, the World Wide Web – it would have been impossible to design them in all their complexity without failing miserably. And history has seen countless failed attempts at designing complex systems, from Le Corbusier’s radically geometric ideas for urban planning to the utopia that is Brasilia to the sinking of the Titanic.
So when you set out to design a system, whether it is a business, a team, its workflows, a website, or a design system, it is good to remember Gall’s Law. A complex system designed from scratch never works. Start with the simplest system you can come up with and enhance it incrementally. Don’t overspecify, but leave enough room so that connections and structures can evolve and grow over time. Loose systems last longer and work better. Lastly, be aware that your system might fail at any time. At least, anything that can go wrong will go wrong, right? So also ask yourself: How well does it fail?
Designing a simple system is much harder than designing a complex system. But at least you might end up with a system that actually works.
This is the 49th post of my 100 days of writing series. You can find a list of all posts here.