Does the five-stage collapse model still make sense?

It’s been 14 years since I wrote the article “The Five Stages of Collapse” which I subsequently turned into a book, which, in turn, was published in a dozen languages. The idea was generally well received. It was a way of systematizing what to most minds was and is an unpredictable and chaotic process. It was also an idealization (which is engineering-speak for a gross oversimplification made for the sake of explaining a concept or making a quick, although inaccurate, calculation).

I based my five stages of collapse (financial, commercial, political, social and cultural) on Elizabeth Kübler-Ross’s five stages of the grieving process (denial, anger, bargaining, depression and acceptance) but the similarity is superficial: yes, there are five of them and yes, they are sad things; count them and weep. But then it is also like the now outdated waterfall model of software development (gather requirements, write design, code, test/debug, launch)—and, again, weep, because by the time you are done the requirements most definitely will have changed.

While weeping profusely and cursing their fate, software project managers came up with some palliative measures: phased development, beta versions, soft launches, etc. But in the end the fashion shifted to agile development, where development teams implement a limited set of features by a certain deadline, then repeat. As requirements change and new features are grafted on top of old, the software accumulates cruft, or scar tissue, in the form of dead code, huge bloated libraries of functions that are barely used, other gross inefficiencies and generally stupid ways of doing things. All of these have to be removed through a painstaking process called refactoring, which grows ever more complex and error-prone over time.

Eventually the software system forms a big ball of mud where subtle bugs are lurking everywhere and everything is connected to everything else in inexplicable ways. It is then time to rewrite the whole system from scratch, but since by then nobody fully knows what this software is supposed to do any more, this cannot be done either. And then it’s time for the project managers to go back to weeping profusely while cursing their fate.

I would like to develop a more agile model of collapse than the rather rigid framework of the five stages, based on examining synergies of decay and ecosystems of collapse. In the meantime, the staged model of collapse still seems to have merit:

Continue reading…

%d bloggers like this: