Human societies are a lot like complex codebases. This makes sense as software is usually trying to model some real world use case.
just like a complex codebase, where it is often tempting to embark on a rewrite using a fresh new framework or language to solve all of the problems that have crept in over time as complexity grows, we see the allure of a fresh new social ideology and reset to correct all socio political problems. Walking around the killing fields in Phnom Penh reminded me that the silver bullet is almost never the answer. As others have written about, the same goes for complex software systems.
The reality is that careful ongoing maintenance and pragmatic decision making, while not as exciting, is going to avoid a massive rebuild that ultimately inherits all of the same quirks of the old working software because the human world is messy and full of compromises.
Leave a Reply