Bruce Lee and the essence of Agile
I have been writing this paper in the light of a logical theory which implies that for the human race to sustain for thousands of years there must be some core agile values & principles lying in the root of mindset & school of thoughts of mankind as a whole. It wouldn’t have been possible without these agile values and principles to build Engineering marvels like Pyramids, ancient cities like Atlantis etc, Or to fight wars of the scale of Mahabharata and Rama-Ravan war that would need Management practices and process control of higher order.
The way I see it, human race as a whole is re-evolving in our times with Agile values and principles and the way we define and interpret each of them. In order to provide impetus to my theory, I would like to correlate essence of Martial Arts that has been in existence since ancient times and Agile Methodology. When it comes to Martial Arts, What better I can get than Bruce Lee.
Let me start with very well known quote about Bruce Lee, which says : “Bruce Lee was lightning fast, very agile and incredibly strong for his size”
Now, below Non-Agile Bullet Points completely defy above statement of what Bruce Lee was.
Being Non Agile means :
Collect ALL Requirements
Think of Everything
Make a complete plan
Execute the plan, do all programming
Do all the testing and documentation
Deliver the software
The customer likes it because it’s exactly what they wanted
What we can learn from Bruce Lee about Agile Software Development ?
1. BALANCE :
First thing we should learn is Balance. Which is clearly incorporated into Core Values in Agile Manifesto.
The Agile Manifesto Core Values :
individuals and interactions over Processes and Tools
working software over comprehensive documentation
customer collaboration over contract negotiation
Responding to change over following a plan
2. Philosophy :
In one of his interview , Bruce can be seen telling his philosophy of life, that is quoted as follows :
Bruce Lee and the Essence of Agile
2
“When one has no form, one can be all forms; when one has no style, he can fit in with any style. “ - BRUCE LEE
Now, what we have from 12 Agile Principles in compliance with the above stated philosophy of Bruce Lee is :
Welcome changing requirements, even late in development
Self-organising teams
Regular adaptation to changing circumstance
3. Embrace Change :
Only Change is constant. And Agile way of thinking is never been an exception. Below are some of the entities that have influenced Agile in some way or the other :
Lean Manufacturing / Just In Time
Toyota Production System
Theory of Constraints (E. Goldratt)
Martial Arts ( Code Kata)
Continuous Change and evolution are the pre condition for any school of thought to retain its existence and Agile school of thought has to follow the same.
4. No Fixed Positions
“All fixed set patterns are incapable of adaptability or pliability. The truth is outside of all fixed patterns.” - BRUCE LEE
Now, below mentioned are some of the methodologies and framework that comes under Agile Umbrella. 1. Scrum 2. Lean Software Development 3. TDD 4. Kanban 5. XP
We need to be very careful while applying any of above mentioned methodologies and framework as too much following without understanding the essence is refraining yourself from the Truth.
Bruce Lee and the Essence of Agile
3
5. Progress
“Efficiency in sparring and fighting is not a matter of correct classical, traditional form. Efficiency is anything that scores.” - BRUCE LEE
PROGRESS, from the 12 Agile Principles :
Working software is delivered frequently (weeks rather than months)
Working software is the principal measure of progress
A Couple of more valuable teachings from Bruce Lee are :
“Use only that which works, and take it from any place you can find it.” - BRUCE LEE
“Any technique, however worthy and desirable, becomes a disease when the mind is obsessed with it. “ - BRUCE LEE
Both of the above quotes are the core principles of Agile Manifesto and are being used in Agile software development. For ex: Scrum framework does not own or suggest any specific tool or technique. Any technique that facilitates the delivery of sprint is useful.
6. Simplicity
Mr. Lee also elicit the essence of simplicity in his way of life.
“To me, the extraordinary aspect of martial arts lies in its simplicity.” - BRUCE LEE
“It’s not the daily increase but daily decrease. Hack away at the unessential.” - BRUCE LEE
SIMPLICITY From the 12 Agile Principles :
Simplicity—the art of maximising the amount of work not done—is essential .
7. Iteration
A couple of more thought from Bruce Lee carrying importance of Iteration.
Bruce Lee says – “If you spend too much time thinking about a thing, you’ll never get it done. Make at least one definite move daily toward your goal.” - BRUCE LEE
“A fight is not won by one punch or kick. Either learn to endure or hire a bodyguard.” - BRUCE LEE
Thus, keep your sprint short and deliverable. Take small steps towards your goal with constant review and feedback. Inspection and Adaptation is a continuous phenomena.
Bruce Lee and the Essence of Agile
4
8. Best Practice
“ Effectiveness can be achieved only through repetitious practice.” - BRUCE LEE
“I fear not the man who has practiced 10,000 kicks once, but I fear the man who has practiced one kick 10,000 times.” - BRUCE LEE
Gist of above quotes can be captured by saying that there is no such thing called BEST practice, its only Practice. One makes a practice Best with continuous efforts.
9. Kai Zen = Continuous Improvement
“ Be happy, but never satisfied. “ - BRUCE LEE
“I never wanted to be the next Bruce Lee. I just wanted to be the first Jackie Chan. Don't try to be like Jackie. There is only one Jackie. Study computers instead.” - JACKIE CHAN
I would like to comprehend above two statements by putting that Improvement is important but more important is maintain and nurture genuine DNA of yours.