Agile Conference 2009 - Day Four

Agile's Too Slow: Developing a Facebook App for the Obama Campaign - Andy Slocum

Andy worked on the Facebook application for the Obama campaign. In two months they build a Facebook app that could assist users in encouraging their friends to register and vote. There where only two people on the project and they came in with the common ideas of XP: continuous integration, weekly iterations, story estimates, developer testing, etc.

Except that all of the above was way too heavy for the Obama campaign's pace. They'd have an Iteration planning meeting on Monday and by the Tuesday it was out of date because so much had changed. Also Facebook apps don't really run very well outside of Facebook so they could only write tests around code that was completely isolated from the Facebook stuff. So they basically moved to a lean process with priorities set at the standup meeting every day. They also ditched the idea of continuous integration as there were only two people to integrate.

An interesting part of the presentation was about the lack of privacy in Facebook. Any Facebook app can get the birth date, state of residence, and name of any user and all their friends. So the Obama app could use existing voter registration databases to figure out if a user's friends were already registered.

They deployed the application multiple times a day. Their load testing was asking one of the stakeholders, who had over a thousand Facebook friends, to test out the new features.

The Ogre and the Wimp: Cleaver Influencing Tricks - Help the Most Reluctant Teams -- Anda Abramovici

This talk was about how to introduce agile practices to particularly stubborn developers. Anda was a consultant on project where she had a bunch of developers who didn't want to pair or use TDD. She conspired with an upper level manager known for her toughness to come in and play the Ogre while she played the wimp. She would join the team and pretend to be just as unhappy and resistant to TDD and Pairing as the rest, but then the Ogre would come in and demand that the team increase it's test coverage. Then she'd feign resistance while helping the developers respond to the 'crazy' demands of the Ogre.

Later they conspired to move a bunch of equipment into Anda's workstation so she had no place to sit. So she shared an station with another developer. Eventually they started pairing.

They also recommended using free drinks to help the wimp bond with her new team.

All this seemed a little dishonest to me and has a large chance of backfiring if the wimp was ever found out as an agile advocate. It did, however, work for them.

Slow and Brittle: Replacing End to End testing -- Arlo Belshee and James Shore

This was a workshop where we discussed the problems of End to End testing (they tend to be, uh, slow and brittle) and possible solutions. I had to leave to catch my flight to Austin (I'm on a plane to Lone Star Ruby Conf as I type this) before the end so I'm interested to hear what they came up with. One of the answers was the idea of giving up on trying to test all paths in an End to End test and focusing on unit tests and an abbreviated 'smoke test' suite that is forbidden to go above 5 minutes. There was quite a lot of passion in the room.

OK, I'm exhausted. Time to hit 'Publish Post' and relax for a bit as tomorrow will be my third conference in as many days.


Popular posts from this blog

Point Inside a Polygon in Ruby

What's a Good Flog Score?

SICP Wasn’t Written for You