Saturday, November 11, 2006

Be Like Water

Sensei: The Bruce Lee movie I allude to is Game of Death, where Bruce's character finally defeats Kareem Abdul-Jabbar because he realises there are no set forms, no correct response.

"Don't get set into one form, adapt it and build your own, and let it grow, be like water. When water gets into a cup, it becomes the cup, when it goes into a teapot, it becomes the teapot. It can flow, or it can crash. Be water my friend. Adapt!" Bruce Lee.

Student: Similar to OOD, what is the purpose of XP? Why is it used and followed? Because it is believed by some to aid in reaching the final goal of workingsoftware. Again, the practices of XP are not the point in and of themselves.

Sensei: At one extreme, any formalism can provide a crutch and a barrier to progress. Just as Lee regarded the practice of traditional style like Wing Chun as dogmatic. For most practitioners, and indeed for Jeet Kune Do (JKD) as taught by Lee to his latter-day students, it was vital to master the fundamentals.

Student: The purpose of OOD is simply to:
  • Manage complexity.
  • Divide the problem.
  • Hide details.
  • Model the real world.
Sensei: These concepts predate OO-practice in software development by decades and are vprobably fundamental to most fields, like mathematical and econometric modelling, financial and marketting planning and execution.

Student: If we do not follow XP exactly then my question would be: so what? As with coding and design, a decision to follow XP more closely would be made if it was thought it could actually *help*.

Sensei: Like in Karate where the three Ks, Kihon (fundamentals), Kumite (free-fighting) and Kata (forms) are all necessary, perhaps OO principles, XP and formal processes, like Kihon and Kata, are key to Kumite, the free-flowing practise you espouse.

0 Comments:

Post a Comment

<< Home