Today I met up with some of the old Connextra crowd for drinks. It was really nice to meet up with Scott, Elena, Matt, Tung, Duncan and Ivan because we built a very strong bond between us while working in an XP team for a few years together. I also met up with their new Tim (not Mackinnon who couldn't make it) who joined Connextra as a graduate after I left - inspired by a lecture I gave at his university!
The above doesn't really make sense without some background. Connextra is a small company that specializes in intelligent web advertising. I worked there from 2000 to 2003. The Connextra team is probably the longest running XP team in the world. The company was set up on XP principles in 1999 by John Nolan and Peter Marks and is still generating a profit today. It was an amazing place to work because the development team were truly empowered to resolve their issues and encouraged to trust their own judgment - a very refreshing management attitude!
The reason I joined the company was that after hearing the XP theory, I wanted to find out if XP actually worked. I gave up a better paying job, took on a long commute and stepped out of a career in management to start work there as a Java developer because I believed XP might be used to avoid cancelled software projects. During my time at Connextra, I learned huge amounts about software design through Test-Driven Development and Pair Programming with some excellent developers. I now know that full XP can work and is sustainable. Connextra is a living testament to that and continues to make a profit from a code base developed entirely with XP over the last six years.
It felt odd to walk back from The Highgate (the bar below the Connextra offices) to Kentish Town Underground station. It was a journey I had walked so many times - it felt like I knew every cracked paving stone and seedy cafe. Nothing much had changed but I think maybe some of my idealism has gone. Retrofitting XP to companies is tough and that's how I have chosen to make my living. This evening reminded me that being part of an XP team can develop deep understanding and strong ties between a team that survive the passage of time. I wish more teams could experience being in a team like this.
I don't like being called a Fluffy. This term seems increasingly popular way to refer to facilitators versus Spikies who are techies. I don't think creating the Fluffy/Spikey division is helpful.
Although Fluffy may be a term of endearment, I feel that being called Fluffy also infers ineffectiveness, in the same way as the term "lightweight method" did before the Agile manifesto.
The main reason that I don't like the term is that the categorization into Fluffies and Spikies implies an either/or that I would rather not propagate. It is possible to be technically competent AND care about team interactions. As an XP coach, I try to be both by writing code and learning about facilitation skills.
Agile software development requires a high level of face-to-face communication but it's unlikely that most software development projects will be able take on a team member who cannot write code. For teams to succeed with agile software development, we have to recognise all team members can benefit from developing their facilitation and communication skills.
I am writing this on the train on my way home from attending Agile Open in Belgium - a two day agile conference run as pure OpenSpace. This conference was conceived at XPDay Benelux by Willem Van Ende and Marc Evers when commenting there is never enough time between sessions for all the conversations on topics outside the schedule. The event was organized by Agile Systems with sponsorship from Agile Alliance.
On the first morning I wasn't sure what to expect. I was the only person attending from the UK but when I went down for my hotel breakfast I was relieved to see plenty of familiar faces (25 attendees from Belgium, France, Finland and Netherlands).
As with previous events, the Agile Open organizers created a conference wiki to facilitate communication with attendees in the months leading up to the event. This meant conversations about session ideas got started on the wiki months before the conference. The organizers decided to printed off all these session proposals from the wiki and bring them along to the opening session. Even though some people who originally proposed session ideas did not make it to the conference, participants wanted to schedule some of these topics anyway so the surprise was that sessions happened without the original authors! In practice, this worked just fine - the group of people who wanted to go to the session had plenty of ideas and enough thoughts on the session topic to make these enjoyable sessions.
Sessions I attended were:
* Agile Tools: conversations ranged from benefits of FiT/FiTNeSSe, wiki, planning with mind-maps (Mindjet) vs index cards, Ant vs build scripts in Python/Ruby and tools for achieving consensus within development teams.
* Building a Community of Trust
* Cynefin Experiential
* How Velocity relates to Productivity
* Crossing the Chasm
* Balancing Act - modeling Satir stances and sculpting XP values. This session was great fun!!
I really enjoyed the conference and for a change - because we had enough time for agile conversations during the day - our chat over dinner was about music and fashion!