Joe White's Blog Life, .NET, and cats

XP: Round Three #Programming #extreme programming

Since we're now an XP shop, I just added an Extreme Programming category to my blog.

Brian Marick is back in our office this week, and Ron Jeffries is here as well. It's too bad I was sick for a day and a half out of the week, but I wanted to make sure I was well in time to get back by this morning, and I beat that by half a day.

We just finished our second XP iteration yesterday (with working lava lamps, by the way — they got integrated into the build last week). It's a little odd to end an iteration midweek, and a little odder that we made that iteration six days long (instead of either two weeks or three weeks), but we wanted Brian and Ron to be able to see the end of one iteration and the start of the next. The planning game — the reason I wanted to be back — was this morning; Brian had facilitated the planning game for our first iteration, and now both Brian and Ron facilitated this one to start off our third iteration.

It was pretty cool. Our first planning game, around three weeks ago, was pretty grueling; it took three and a half hours. (Brian said, before we started, that he expected that first planning game to be a disaster. Afterward, he said it had gone better than he'd expected.) Our second one was much better, at only an hour and fifteen minutes and mostly on-topic (though it was for a short iteration). Today's meeting took an hour and a half, and a lot of that was because a lot of us were woefully underprepared. (Especially me. The lead guy for my project was out today, so I wound up writing some of the major stories for the next iteration. And we didn't decide what those stories would be, even on a broad scale, until ten minutes before the start of the planning game. I had to duck out in the middle of the planning game to do some spot research, so I could come up with halfway-sane estimates for the six stories I finally managed to scribble out.)

We had a lot of side discussions at the meeting, and one point where I think we had at least five or six different discussions going on in the room at once, and a lot of tangents, and a lot of talk that should have been taken offline, and we should have prepared a lot better, and we still need to work on writing our stories in a way that clearly shows the business value (we still have too many technical stories, especially on my project — which, unfortunately, is tough to avoid when your project is a port to a different architecture).

Despite all that, Ron said this was the best planning game he's ever seen for a team as new to XP as we are. So there's hope.

Actually, it's going pretty well. I paired (trioed?) with Brian and one of our other devs yesterday afternoon, and finished the story they and Sam had started while I was out sick. Then this afternoon I got to pair with Ron on one of the stories I had scribbled out this morning (story: spend two beans trying to figure out the best way to crack a particularly thorny problem). We wound up writing some new code test-first. I liked some of his suggestions for the code, and he liked some of mine, which I think was pretty cool. We wound up with what we both agreed was some pretty good code, good enough to check into VSS, and a decent idea of what to attack tomorrow morning. And I caught him off-guard more than once today, by doing the simplest thing that could possibly work.

All in all, this has been a very good week so far. The part I've been in the office, at least...