Tuesday, July 17, 2007

Agility | Cybernetics | Jeet Kune Do

In the software development game, there is a lot of talk about being agile. It's a set of practices and methodologies that describe a light-weight, flexible, adaptive and reflexive way of doing things.

Really, the concepts are pretty simple and straight forward:
It's all about communication, collaboration, feedback and the acceptance of change.

do what works


Back in 2001, a respected group of developers let loose with the Agile Manifesto. This statement increased the visibility of the movement a great deal. Unfortunately, it was also partially responsible for the branding of various Agile (big A) belief systems... and my sense of it is that any sort of dogmatic belief system is a bit counter to the agile mindset.

use the right tools for the job
even if those tools change over time



A consideration of all the various brands and flavors of Agile led me to rethink my own take on agility, both as I practice it in my work environment, and as a conceptual space.

I found that I'd already encountered agility several times in my life, in different arenas of experience. In the foundational theories of cybernetics, from Wiener to von Neumann, I'd seen the theories many times before: a self regulating system that optimizes itself through reliance upon protocols of reflection and feedback. Or, as
Louis Couffignal more artfully describes it, cybernetics is "the art of ensuring the efficacy of action."

point
and counter-point

I'd also encountered this modus operandi at an earlier age, and as I thought back, I realized that it was very similar to two of the principle tenets of Jeet Kune Do: be like water, and embrace an economy of motion.

Simple power and graceful elegance, adapting to situations in both mindset and practice - these are the unifying concepts that drew me to the agile way. It's the startling efficacy of the paradigm that keeps me there.

0 comments: