I often think that modern software systems are overly complex, and I am troubled by the vast network of dependencies between their constituent components. For example, a modern operating system has an unbelievable number of layers and components; it exceeds an individual’s ability to understand them all. Guaranteeing that the system is free of errors is impossible. The thought of bootstrapping one from scratch is daunting.
But then today I was thinking about how software compares to the “real world,” and it seems that the same layering/dependency problem exists there too—what if every structure, machine, and tool on the Earth was destroyed and we had to rebuild everything from scratch? Even if the associated knowledge was somehow preserved, I wonder how long it would take us to get back to having supertall skyscrapers, fly-by-wire jumbo jets, and smart phones.
Perhaps the situation with software isn’t so bad after all, or at least the real world is no better off (depending on how you look at it).
Related posts:
- Turntables revisited… A few more turntable goodies. The ‘Triple Inchophone’ can be...



Post a Comment