I can’t believe that this time I agree with yet another Joel’s rant about agile. How can it possibly be? I’m becoming old… that must be it!
Maybe there’s something true about what Joel writes and it reminds me a lot about many situations that I have experienced directly. Hypothetical examples really suck because they are never contextualized and characterized well enough, but loosing a lucrative deal or, even worse, loosing an existing customer in order to stick to the plan very rarely seems a good call to me. Agile or not.
However, being constantly interrupted, having the development team responsible for support as well (being there, done that, still suffering just thinking about it) are just examples of very poor management practices. Years ago a good friend of mine described this style as MBWA, that is Managing By Wandering Around ==> isn’t it so true?!?
Being flexible, being agile, doesn’t mean that we have to work with no rules, in an uncontrolled chaotic way, in the hands of the gods. It’s too easy and dishonest to say something like: “Well, you call yourself agile, don’t you? Then you do whatever I want you to do, no matter what!”
Now, I have no clue of who Dmitri Zimine is and when I say this I mean that I don’t know his history, his experiences, etc. Therefore I can only judge from what he writes. His original blog looks a little bit different if you forget about Joel. The implied tone depicts a situation where nasty sales guys continuously interrupt poor developers with no real reasons. The overall prose is a little bit too evangelical for my taste, I think that the agile community deserves more concreteness. Nevertheless, there’s also some truth in what Dmitri writes. His subsequent post, kind of an answer to Joel, has way too many discriminants to stand firmly on its own two feet, but it tries to articulate his thoughts a little bit more, looking for more balance.
Bottom line is:
- you want to give continuity to the development team, both by trying to avoid interruptions as much as possible and by planning efficiently (which means stick to the plan unless the plan proves wrong, not just stick to the plan and pretend that the Titanic hasn’t just hit a big iceberg because the orchestra is still playing)
- XP is a lot about risk management: you have to balance the risk of loosing a potential deal with the risk of impacting an existing one ==> there is never a one-size-fits-all solution, unfortunately you have to use your brain and make a decision
Play by ears, be pragmatic and please don’t be silly. Amen.