XP/Agile Universe 2003: Day 3, part 1

XP/Agile Universe 2003 was held Aug. 10-13 in New Orleans, LA (NOLA). See my previous posts regarding day 1 and day 2.

Day 3 started with “Uncle Bob” Robert Martin giving a talk on Aristotle's Error. If you haven't seen Uncle Bob talk, make sure you do, he is a great speaker. Aristotle's error is essentially about the fact that Aristotle (1200AD)observed several things and then “went meta” and invented things because they sounded right. Such as a 30lb rock falls 30x faster than a 1lb rock. This hypothesis could have been checked with a 5 minute experiment (observation) but wasn't until Galileo (1600AD). This story was Bob's warning that the XP community was running the risk of “going meta”. He warns that we need to continue to observe and not just hypothesize.

Next was an Openspace discussion on “Performance Management of Agile Teams”. This was centered around how to manage and reward individuals working in team environments. Much of the discussion revolved around dealing with “slackers” since the team will compensate for their lack of effort to achieve the goals. No real answers here, just that the managers should really know who is working and who is not. The second part of the discussion revolved around compensation/rewards at the individual level vs. the team level. Once again, no real answers, just experiences about how others are handling it (for better or worse). Essentially it is all subjective.

Just before lunch was Uncle Bob again. This time the topic was “Agile Architecture Principles, Patterns & Practices”. Some of the talk duplicated his earlier talk, but with a different emphasis. This time the focus was “what is our craft?”. Bob discussed the Principle, Patterns & Practices (PPP) that developed in each of the 60s, 70s, 80s, 90s, & 00s. He also discussed the pathologies that emerged from each decade. Ultimately he proposes that the synthesis of PPP gives our craft definition in the following way:

  • Practices guides daily work and detects problems.
  • Principles diagnose problems
  • Patterns solve problems

Bob finished up with the following observations:

  • Practices are tools, not laws
    • pairing helps, so we do it.
    • test first helps, so we do it.
    • collective code ownership helps, so we do it.
    • but we are not constrained.
  • Principals are tools, not laws...
  • Patterns are tools, not laws...

Our craft is to use these tools to deliver.