My friend has recently suffered a burnout. From one moment to the next he suddenly had a mental collapse, and he was completely unable to continue with his projects. This is something that (I believe) would never happen to me, because I have mastered the subtle art of cursing and swearing. It is my personal solution to handle the phenomenon of self-organized criticality.
One of the most important tasks for teams and their project managers is to find a way to cope with self-organized criticality. It is a form of risk management with the goal of actively preventing tension from building up in projects. Self-organized criticality is a common property of complex systems, and it can be recognized in a wide range of disciplines, including geophysics, evolutionary biology, economics, sociology, neurobiology, and… software development.
Ever since the credit crunch, and the financial crisis that followed, I have been telling people that sudden calamities in the stock markets are a natural phenomenon. Financial crashes are an intrinsic part of the vast complex system that we call our global economy. And there's not much we can do about it. Unfortunately, some people don't agree with me. So I was quite pleased to see the following text in a recent article in NewScientist:
According to classical models of economics, financial crises don't happen. […] Clearly, then, there is a lot wrong with classic economics. […] For instance, studies over decades have shown that market fluctuations have a lot in common with processes such as earthquakes that originate in systems that are very much out of equilibrium and naturally subject to abrupt upheavals. […] The implication is that extreme market events, such as a one-day crash capable of wiping out millions of investors, occur naturally in financial markets, even in the absence of any extraordinary circumstances.
So… market crashes are a perfectly natural phenomenon. Just like earthquakes. And avalanches. And forest fires. And extinctions. And epidemics. And solar flares. And wars. And burnouts. And overrun on software projects. All of these are cases of self-organized criticality. When left unattended, complex systems have a natural tendency to allow tension to build up slowly. Tectonic plates keep increasing the stress they inflict upon each other. Snow keeps piling up on mountains. Deadwood keeps building up in forests. The H1N1 virus (Swine Flu) keep spreading. And technical debt keeps growing in our projects.
And then suddenly… CRASH!
The system violently releases all the stress that has been building up over a long time. And only because of the suddenness and unexpectedness of the change we humans interpret it as a calamity. But there's nothing catastrophic about the concept of releasing pressure. The fact that humans have difficulty coping with earthquakes, avalanches, epidemics, and overrun on software projects, doesn't make these phenomena "evil". Our brains just aren't wired to see them in a positive light. It took biologists a long time to understand that mass extinctions are a natural part of ecologic systems. And it took conservationists a while to acknowledge that many forests actually need the occasional forest fire. Some economists are now trying to come to grips with the cleansing effects of stock market crashes. And who knows, perhaps project managers will some day re-evaluate overrun on their projects…
But can we prevent self-organized criticality?
Yes, sometimes we can.
Scientists have recently discovered that Taiwan is suffering fewer earthquakes than should be expected. Taiwan lies on a tectonic plate that is diving under its neighboring plate at one of the world's fastest rates. But many quakes in Taiwan are "slow-moving", meaning that they take hours or even days to complete. It has recently been verified that typhoons are a major contributor to those slow-moving earthquakes. It turns out that Taiwan's yearly typhoon season is actively helping to relieve the stress on the tectonic plates.
Likewise, conservationists have learned that they can prevent catastrophic forest fires by regularly setting fire to smaller sections of forests. And lethal avalanches in ski resorts can be prevented by shooting guns in off-hours, or by allowing professional skiers to trigger avalanches while skiing in off-limits areas. And inoculation is a method of purposefully infecting people in a controlled manner so as to minimize the chance of suffering a full-scale epidemic.
Criticality in systems is self-organized, and without controlled supervision sudden unexpected changes will happen. But you don't have to wait for the balloon to burst. You can choose to deflate it yourself, regularly. Some techniques in agile software development specifically target the release of pressure in a project:
Managing technical debt, keeping it at a manageable level (preferably zero);
Progress visibility in each sprint, to prevent work from building up without seeing it;
Daily stand-ups, to prevent unpleasant surprises at the demo meetings;
It isn't difficult to think of examples for managers to actively release pressure in their organization. One-on-ones of managers with their employees can help to prevent irritations and disillusions from building up. Informal chats in the hallway can prevent crucial information from building up on social islands. And my personal approach to stress relief is to curse and swear at my computer whenever it doesn't do what I expect (which is quite often), and to use Twitter to vent my feelings about things that frustrate me.
I rarely have problems with self-organized criticality in my mind. In fact, I sometimes joke that I'm an emotional flat-liner. You won't experience wild and unexpected ups and downs with me. Just a steady state of contented bliss, regularly accompanied with an inventive curse or swear word. I never allow the pressure to build up. And I would never allow myself the risk of a burn out.