The last leg of the MacDonald-Cartier Freeway Experience was last night in Toronto with the XP/Agile Toronto user group. Once again, I split the group into two and asked each to develop a plan for my talk, the theme of which was Steering the Ship: the Joy and Heartbreak of Planning. It went well, on the whole. This group took only about 40 seconds to ask me a question, whereas Ottawa took 13 minutes and Montréal around 6 minutes. The Toronto group using the computer cheated (in a good way) and abandoned the computer as a planning tool, despite my objection, after about 30 minutes. That was quickest among the computer teams at all three sites. These statistics, however, aren’t the most interesting part of the evening for me.

In Toronto, two very different things happened than Ottawa and Montréal: first, after two iterations, the two customer teams joined forces and worked on a single plan, recognizing that that would create more value and reduce the effort; second, I noticed a handful of customers very disengaged, sitting in the corner and chatting among themselves. By way of the Telephone Game, word reached me that some of those people felt thrown into the deep end with no idea what to do, so they pulled out and did nothing. I also heard at least one person was quite disappointed with the event as a result. Whoever that person is, these words are for you: now you know how a typical XP customer feels on her first project.

One of the themes of XP Day Montréal 2006 is the importance of the customer role in XP. “It’s more important than you think… no really, even more important than that.” After more than half a decade, the XP community still doesn’t seem to have a learning roadmap for customers. As a result, they are thrust into the role on a team, mostly because the programmers want to work that way, and are left with the most difficult jobs of all: decide what to build, in what order, and how to describe it in a way that programmers can build. These are all responsibilities that these people might or might not have had in their past as the customer of a software project. At a minimum, it’s likely no-one has held them this responsible and demanded such relative formality in the way they ask for features. (Isn’t that ironic?) We need to do more to support our customers, especially the would-be customers who are doing this for the first time. So if you’re undertaking your first XP project, or if your customer is undertaking his first XP project, work more closely with the customer than you think you should… no really, even more closely than that. No other single decision has as much impact on the project’s success.

Really.