Interaction Design vs. Extreme Programming

I discovered a great conversation/argument between Kent Beck “the father of extreme programming” and Alan Cooper “the father of interaction design.”

I have to side with Alan, I think his architecture analogy trumps most of what Kent says about reflecting the realities of programming.

It seems like the biggest challenge is corporate discipline and the idea that software is never “done.” However, true to form, most old software is ripped down and rebuilt, just as it’s been with architecture for thousands of years.


outstanding article. thanks.

from my perspective its almost like listening to my two hemispheres. little freaky. but in the end i agree w you - Cooper makes more sense. Beck (as i would expect) is reluctant to acknowledge the role human behavior plays in development. part where Cooper mentions a programmer’s reluctance to abandon code… could have been a CAD jock.

I love XP, but Kent is clearly treating the symptoms instead of curing the illness.

great article i agree. There is an interesting debate going on here about the nature of collaboration. The well-defined ‘phased’ process that Alan is talking about vs. the improvised, free acceptance of change in XP. I’ve never worked within an XP team but it seems that it is would very well be suited for experimentation and discovery rather than well-defined plan to meet the goals of users. I agree with CG all the way in ‘XP’s curing of symptoms rather than the illness/disease.’ I wonder though what would happen if you put Kent in charge of creating software that doesn’t have to meet the changing needs of customers; rather meet changing needs of human desire and curiosity. For example, if you put people that are experimenting with software to discover new paradigms in visualization like casey reas, golan levin, maeda, yugo nakamura…etc. with an XP team to develop software for specific human desires that change(ie our moods, social situations, physical condition, physical context…etc). With the direction of Cooper of course to ensure that specific user’s goals are met… while being totally delighted by the engaging/beautiful/enjoyable experience…sounds exciting to me…