FREE Subscription to Dr. Dobb’s Digest: Same Great Content, New Digital Edition
Site Archive (Complete)
Events
Email
Print
Reprint

add to:
Del.icio.us
Digg
Google
Furl
Slashdot
Y! MyWeb
Blink
September 22, 2004
Kent Beck's Oprah Moment

The founder of XP finds there's more to life than pair programming.

Alexandra Weber Morales
The founder of XP finds there's more to life than pair programming.
Kent Beck's Oprah Moment

Software Development
SD Best Practices 2004 / Show Daily /

Additional Conference Coverage:
  • Kent Beck's Oprah Moment
  • Ins and Outs at Work
  • Admitting Uncertainty
  • The Expert Eye
  • Portfolio Management for Fun and Profit
  • Abstract Prototyping
  • MDA Explained
  • The 2004 SD Readers' Choice Awards
  • Common Sense Scrum
  • Kent Beck's Oprah Moment

    The founder of XP finds there's more to life than pair programming.

    On Monday, Sept. 20, 2004, Kent Beck, author of Extreme Programming Explained: Embrace Change (Addison-Wesley, 1999) and a host of related books, spent most of his day-long developer testing tutorial giving geeks insight into how to incorporate testing practices and tools into their daily lives—sparing few technicalities for the hungry converts and hopefuls. But inklings of a grander plan began to emerge by the end of the day, as he delved into how to sell management and even one's fellow man on developer testing (also known as test-first development).

    By Tuesday's keynote, the kinder, gentler Beck was in full view as he advised a rapt—and packed—audience of nearly 1,000 attendees to "work in a style that's in accordance with your values. If I have to go to work and put on my work face, where I avoid responsibility, stretch the truth and so on, that's going to spill over into the rest of my life.

    Monday: "I was speaking at a conference with Guido van Rossum [the creator of the Python programming language], and we sat down and implemented JUnit in Python, all test-first, while we weren't listening to some talk.

    Tuesday: "Find a plan of change that meets your values, and begin today. And find a community that can hold you accountable to it.

    Monday: The keys to successful unit tests are isolation, automation, efficiency and composition: "I was once writing a bunch of GUI tests for a supercomputer. I'd come in in the morning and see this stack of failed tests. Then I'd realize that the first test had failed, and then 44 tests failed after it. I missed the fact that the tests weren't isolated. And then, because of that, I missed two big failures. Isolation means that every test has to do the work of creating all the objects it's going to test against, and then throw them away.

    Tuesday: "The world of software development is about to change, and there's nothing we can do about it. There are lots of ways to explain why programming jobs are wandering the globe. I'm not entirely satisfied that it's in search of lower cost. The dot-com blowup was the financial world's last attempt to give programmers control and see if it worked out—and it didn't. There are lots of ways to explain change: denial, belligerence, embracing, finding irrelevancies to be totally absorbed with. Instead of responding out of fear, he recommended trying a plan for changing software development that only partially resembled his earlier, highly technical focus on XP.

    While Tuesday's talk offered plenty of insight into how improved flow and a steady stream of working software would right many of the industry's wrongs, the most surprising issue Beck brought up was that of XPers actually being fired for their efforts, while parallel teams that had made "heroic, highly visible efforts were praised. Essentially, when faced with the fork in the road, many organizations choose the well-trampled path from whence they came.

    The solution to this conundrum is good old glad-handing—but in a genuine way. "XP teams have this kind of attitude problem, especially when they're adolescent, Beck said. "You know, the morale is a little too high, the code is a little too clean. It's more fun for them to form relationships with people inside the team rather than outside. But you've got to build those outside relationships with the sponsors who fund SD. In a similar vein, he observed Monday that evangelizing developer testing requires, first, modeling the desired behavior yourself and second, awaiting the arrival of a "teachable moment when a peer or manager is receptive to hearing about new techniques. The value of these two insights alone? Priceless, both inside and outside the office.

    —Alexandra Weber Morales

    RELATED ARTICLES
    No Related Articles
    TOP 5 ARTICLES
    No Top Articles.



    MICROSITES
    FEATURED TOPIC

    ADDITIONAL TOPICS

    INFO-LINK