XP 1.0 is better than XP 2.0

Alan Francis: Jobs, etc.: “[...] being an old-school XP-er who thinks Kent got right the first time and only dug a deeper hole trying to re-explain himself. ”

Well put. XP 1.0 is mostly brilliant, whereas the additional value of 2.0 could could have been published in a short addendum.

Kent Beck is probably the hero of the geeky part of my life and I am sorry to say that I find the quality of his work receding. Whatever he wrote or spoke about before, it was always empirically based and with a very appealing rebel touch. It seems to me that he is becoming more and more theoretical. For example, I found his keynote at XP2006 about “responsible developing” very abstract.

Let’s hope that the book he is releasing this fall proves me wrong.

(Via Planet TW – Alumni.)

  • del.icio.us
  • Digg
  • DZone
  • Technorati
  • Reddit

Tags:

  • I have recent experience from very large organizations where communication is far from osmotic and releases are far apart, and I tend to agree with Alistair; their best bet in the current situation would be to address these issues before starting anything else.

    In general I feel that Crystal Clear is a very good methodology in this kind of environment with its focus on being nonintrusive, as opposed to XP's focus on being as effective as possible. Of course, I'd rather do XP, but if it is not an option Crystal Clear is a good alternative.
  • You have a point there - I probably do take these things for granted because I think they are fairly widespread in non-XP and even non-Agile environments (I would think most small to medium software companies work by osmotic communication and even RUP realises the importance of not just releasing everything at the end of the project)

    On "small releases" I have a more extreme version: "continuous release". I develop my TextTest testing tool continuously and it is released automatically to everyone where I work every time I check in (which is probably some 60-70 users across 7 or 8 projects) The automatic test suite for it (in itself, of course...) is strong enough to allow this to work and save me the trouble of a having a release process at all...
    (It isn't foolproof of course but failures are rare and important failures even rarer)
  • Geoff, while mostly agreeing with you, I find what Alistair Cockburn writes in Crystal Clear very interesting. Crystal Clear has two mandatory practices: frequent releases and osmotic communication as these are the ones Alistair sees changing a project the most. These would in my mind map to Small Releases and (Pair Programming + Customer Onsite).

    Perhaps we take these for granted? I've certainly never done TDD in an environment with yearly releases.
  • After around 5 years of doing XP I would say that TDD is far and away the biggest gain of it. By "TDD" I mean the practice of having a comprehensive automatic test suite that is run at least before every check-in and preferably more often than that.

    Not that I necessarily disagree with the rest of XP, just that it won't change your life. TDD will. Continuous integration and refactoring (the next biggest gains) almost follow as corollaries. If you are confident your code works, you check it in soon. If you are confident of not breaking it, you refactor often.

    As for pair-programming, I started as a major advocate, but now find myself more skeptical - at least to its constant use for all tasks. I'd now be more inclined to advocate selective use of it for complex, design-intensive tasks and the early stages of a project, rather than doing it all the time by default. Apart from anything else, it's pretty exhausting - at least with some partners...
  • Anonymous,

    Sure, pair programming will continue to divide the development world even if i am firmly in the pro camp, and I believe that Metaphor could have been left out. But among the rest of the ten ideas I find for example continuous integration and coding standards. Not entirely unproven and detrimental in my book.
  • XP 2.0 is what I personally call what Kent describes in the second edition of "Extreme Programming Explained".
  • pulihora
    what the heck is xp2.0
  • Anonymous
    I don't understand what is so brilliant about XP. It's a methodology that contains two good ideas (TDD and refactoring) and ten ideas that are completely unproven in the real world and arguably even detrimental to productivity.
blog comments powered by Disqus