Home > technical > Fellow Tribe Members

Fellow Tribe Members

Being a somewhat skeptical evaluator of conventional wisdom myself, I always enjoy promoting heretical ideas shared by unknown members of my “tribe“. Doug Rosenberg and Matt Stephens are two such tribe members.

Waaaay back, when the agile process revolution against linear, waterfall process thinking was ignited via the signing of the agile manifesto, the eXtreme Programming (XP) agile process burst onto the scene as the latest overhyped silver bullet in the software “engineering” community. While a religious cult that idolized the infallible XP process was growing exponentially in the wake of its introduction, Doug and Matt hatched “Extreme Programming Refactored: The Case Against XP“. The book was a deliciously caustic critique of the beloved process. Of course, Matt and Doug were showered with scorn and hate by the XP priesthood as soon as the book rolled off the presses.

Well, Doug and Matt are back for their second act with the delightful “Design Driven Testing: Test Smarter, Not Harder“. This time, the duo from hell pokes holes in the revered TDD (Test Driven Design) approach to software design – which yet again triggered the rise of another new religion in the software community; or should I say “commune“.

BD00’s hat goes off to you guys. Keep up the good work! Maybe your next work should be titled “Lowerarchy Design: The Case Against Hierarchy“.

  1. Mark Wilson
    April 1, 2012 at 6:15 pm

    Meh. I still think trying to design something entirely up front is impossible, and using UML to do it is just a stupid waste of time. If I’m going to specify the software that exactly in UML, I may just as well write the code. I think incremental development makes a lot more sense. Not that my shop does either – no design, no incremental development, nothing but pure brain-dead hacking. A thousand monkeys at a thousand keyboards comes to mind…

  2. April 1, 2012 at 6:43 pm

    Thanks for stoppin’ by Mark.

    So, say you knew beforehand that your product was going to be around 500K lines of code when released. You’d still just fire up the editor and start typing away without doing any modeling beforehand?

    I think one can always design something entirely up front – at some reasonable level of detail – but not down to the class and member function level of detail. It sure is a waste of time and money to try to dot all the “i”s and cross all the “t”s before hitting the keyboard. But it’s also just as financially bad to try and cobble something big together from the ground up and hope that the behavior that “emerges” is what you intended and what your customer wants.

    Your shop does neither? D’oh! 🙂

  1. No trackbacks yet.

Leave a comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.