Got back to London after having spent the day in Oxford at the BarCamp Apache Oxford (#barcampoxford).

Between meeting interesting people and discussing various topics Gianugo and I led a session about Open Development and Agility. As you might expect the topic is very broad and it's easy to get sucked into one aspect or another (and even one specific practice or another) but I believe we managed to discuss quite a few interesting things.

The discussion started by showing a wiki page I wrote back in 2003 titled OpenSourceAsAgileProcess. Yes, the page is kinda stale now but it was my way to try and focus the session on values and principles rather than practices.

Of course all sort of questions and opinions came up about colocation vs distributed, programming focus vs management/governance and so forth but I hope I managed to get my main point across:

I see little value in mapping exercises (being it mapping XP or Scrum practices to CMMi or Open Development or whatnot). I see value in discussing commonalities and differences in values and principles and drive everything else from there.

Now, values are so high level that it's easy to agree on them and then go about implementing completely divergent practices. That's where principles come into play - those 12 principles behind the Agile Manifesto that most people have never heard of (or at least forget easily about).

From my point of view principles are what bridge the gap between values and practices: use the principles to drive the practices that help you realise the values.

During the session we took a look at the 12 principles in question and it became quite obvious to me that one of the reasons why it's so hard to adopt Agile fully - whatever that means - in a typical Open Source project can be nailed down to one single word in the first principle:

"Our highest priority is to satisfy the customer through early and continuous delivery of valuable software."

As there isn't necessarily a customer in the common sense of the term. It might be a whole community, the single developers working on the project or something else entirely.

Will need to think more about this and luckily a conversation started on twitter among a few people following the BarCamp and we are going to try and discuss this further soon.

Thanks for the day!