Street fight is messy and chaotic.
First I have to talk of a russian martial art and self defense system called Systema. I have discovered Systema five years ago, and even if I am a late comer to any art martial arts and even sport, I became a fan.
Systema doesn’t follow the classic Shu Ha Ri long phases of many martial arts. You don’t have to follow the ordered steps:
- repeat and perfect precise patterns of movement (the typical Kata)
- understand the principles behind the patterns
- finally begin to invent your own movements.
here is some sort of Shu Ha Ri but there is no clear stage. Each learning stages are merged together. Systema doesn’t want you to learn from Katas but pushes you to build your own Systema, your own movements, as quickly as possible.
Why? Because Systema was invented for the Russian army. It’s actually taught to train bodyguard or other security forces. No kata or precise methods survive in the context of a real life combat, when your life or the people you defend is at stake. It’s also typical in a war context where “no plan survives contact with the enemy”. In a street fight, anything can happen. It’s the realm of uncertainty. Control [uncertainty] is a dream of man and chaos is the law of the universe says Sonny Puzikas, a Systema instructor and ex-Spestsnaz. Trying to control real life is the consequence of ego or fear. It’s also directly related to trying to handle the complexity of a fight situation.
Instead of trying to control complexity and uncertainty, you should, as he told us, “embrace the suck”. The interesting story is that this sentence is also used in military operations where uncertainty and complexity are omnipresent.
Systema makes you learn simple principles quickly, in order to handle complexity and uncertainty and to create the most lazy but efficient solution to the current problem in the context (Yes systema is a Lean Martial Art ! ☺ ). We learn by creating a safe environment and by playing with each partners (some systema instructors push this far).
Systema doesn’t teach you specific methods but to embrace the suck and complexity. Stop craving for security and order and accept a bit of chaos to survive the complexity of life. By the way, to sidetrack a little, if you want a great view about order vs disorder and the danger of craving for security read Ultra-Solutions: How to Fail Most Successfully by Paul Watzlawick.
The dream of order in software development.
You might be wondering how this relates to development but the similarity is there. Business is a perpetual war where companies are fighting each others and it’s getting more and more violent. The average lifespan of companies is even decreasing (see here or here). It’s getting more violent because IT can increase the speed of massive disruption. The most visible examples, like Google, Amazon, Uber, AirBnB, are called Unicorns. Even the term “Unicorns” highlights the chaotic nature of the current business. One of the few similarity of all these companies is that they are great at doing software development.
So let’s talk of software development ! With 10+ years of software development, I have finally accepted that all the methods or architectures trying to control complexity or craving for security, for SAFety are doomed to failure.
Any new project involve mainly creativity and learning (or you’re duplicating code which is bad). The majority of projects starts with incomplete or misunderstood client needs. The layer of architectural complexity makes coding prone to black swan like the missing API or the bug that even Stack overflow has no answer to.
This is why estimation, detailed design or specific decision made by central architects or managers rarely survive the first contact with coding implementation. Some people even say you know how to develop a software when you have finished it.
As street fighting, software coding is the kingdom of uncertainty and complexity. Trying to control it, to bring perfect order, due to ego or fear is an illusion.
But the typical organization pushes any manager to control, to pursue order and safety because of fear or ego. They do this by multiplying meetings, regularly asking for estimations, creating many Powerpoint or Word documents instead of being productive and implementing methods which sell the dream of bringing security and order in these chaotic and complex software developments. One is even named SAFe because, hey !, it’s easier to sell when the pitch directly sells the dream.
Is there a solution ?
Sadly, if you are looking for a shelf method you can implement or easy solutions, here is the bad news: there are none.
As Dave Snowden told us in his awesome keynote at Scrumday France, all the shelf methods are based on a limited number of successful samples. For him, there is no universal method and you should move away from them. Another interesting point of view is that many organizations are trying to bring order regardless of utility. Instead, you should learn to live in the complex part of the Cynefin framework. He makes an interesting metaphor that living in complexity is like riding a bicycle: not too slow or too fast and constantly adapting to the context and the environment. This relates directly to what System thinkers says: “you should dance with the system”. Jurgen Appelo uses the same metaphor for changing an organization in his book “How to change the world”. Dave Snowden also suggested to deal with complexity by starting with the unknown and an open mind.
Dave Snowden with his work and his talks brings us the first key solution: accept complexity and find your own practices without trying to replicate the perfect method. Like Systema is teaching us self defense.
The most interesting experiments aiming at handling organizational and project complexity seem to come from liberated companies like FAVI (you could find more examples reading the book Freedom Inc).
Luckily, I have spent one day with Jean François Zobrist, the amazing previous director of FAVI. He has liberated his company, removing most of the control, the planning, the meeting, the managers… even the classical annual budgeting has disappeared (others are doing it see Beyond Budgeting).
By doing this, he has transformed FAVI in one of the leading foundries in Europe, providing many car companies, with almost constant 20% cashflow and great innovations like one of the best technology for electrical motors or antibacterial elements. More importantly he has made his employees happy, boosting productivity, profits, and growth even in troubled economic times.
By listening to employees instead of telling them what to do, by treating them as equals and not limiting information through a trickle-down hierarchy, and by encouraging a culture in which employees have commitments (something chosen) as opposed to jobs (something imposed).
To quote him “by liberating the productive of the constraints of the unproductive” or to present one of his favorite quotes “The good prince is one that by removing restrictions and exclusions allows each existing to blossom at will. His action without action is a let-do which is not doing nothing at all because it is equivalent to ensure that this can be done on its own. » (in French here).
To handle complexity, he also teaches us to replace fear and ego by trust and openness, to apply simple principles and clear values. Dave Snowden told us also the same at the end of his keynote: complexity is best managed with simple things..
Fun fact of the personal story of the man, his father was in the army and he also began in the army. In many of his talks, he begins by relating that, during his youth and his time in the army, he has learned to accept uncertainty (and even certainty of a war).
Jean François Zobrist offers us the second key solution. The best way to handle complexity in our organization is to let the people closest to the job being done free of constraints and directly responsible of creating value to the customers. Free of constraints means, of course, free of universal method and controls pushed by the management. Surely to do this, you must accept a bit of chaos and a lot of uncertainty.
This is why we should embrace the suck!
Clearly we are living in an increasingly complex world. Using on the shelf methodology like Scrum or SAFE is not a free win solution. This is why more and more people make violent charges against methods coming from Agile or Lean Startup. This is the result of many consultants not knowing how to cultivate practices from principles when they push these methods.
To solve the problem of complexity, we should accept uncertainty, avoid universal methods, create our owns, constantly learn and adapt and surely remove ego and fear.
We should create our own methods, our own System(a), our own Mixed Method Art based on good principles coming from many frameworks or even other areas of expertise.
We should embrace the suck, constantly keeping the balance between order and chaos. Perfect order is death and chaos can bring you lots of innovation, as the theory of evolution has told us.
Some others references
You could find many systema videos on youtube
On Dave Snowden
His blog page is here http://cognitive-edge.com/blog/author/19/
You could find many of these talks on youtube like this one https://www.youtube.com/watch?v=APB_mhpsQp8
On Jean Francois Zobrist sadly the majority of content is in french.
You can find some of his talks here http://www.mom21.org/categories/videos-et-visuels/
Freedom Inc website can give you many other stories in English http://www.amazon.fr/Freedom-Inc-Employees-Business-Productivity/dp/0307409384
A very interesting TED presentation with many ideas and questions close to this article: https://www.youtube.com/embed/k4vzhweOefs