Pair Programming with a Customer. EXTREME.

The week before YAPC was terrible.

First my AC went out. That’s a drag in Texas. Because the AC was out, my apartment got really hot, I couldn’t sleep, and then the mantle fell off the wall. That was crazy. Then I found out that I purchased a plane ticket to Raleigh, NC for a family reunion for the same days as YAPC::NA. That cost me an excellent $500. And then (I think Thursday?) I did something that was pretty crazy. I pair programmed with a customer.

We spent four hours with him sitting in a chair next to me while I grabbed the low-hanging fruit that he mentioned. Basically there were a whole lot of small details that needed fixing, like nomenclature, layout, and other things like that.

I have to admit that it was probably one of the most productive days I’ve ever had. You know how people are always saying JFDI? Well, when the customer is watching you code, that’s really all you can do.

The craziest part is when he asked about a fairly complex feature and I told him it would take a while so I’d do it once he left. He said something like, “why can’t you do it now?” And I said something about how it would be a lot of work and stuff and he said he wanted to see it done. So what I normally would have expected to take a few hours took circa thirty minutes. It was pretty nuts!

I got a ton done that day, but it was also extremely stressful. It’s one of those things that I certainly couldn’t do all of the time, but it’s definitely worth doing sometimes. Fortunately my boss told me ahead of time that I should plan on initiating at least one break. That way I got to make tea and at least have a 15 minute break.

So with that in mind, I’m doing it again tomorrow. Hopefully it won’t be quite as stressful while still getting a lot done!

Posted Tue, Jun 30, 2009