Spa 2009 was an experience grenade, I am somewhat recovered from the blast I had there, but not quite, so here are some impressions and photos.
This years’ conference had many sessions on a hitherto rather obscure programming language: Haskell. I knew the guys from the Paris CodingDojo (at the very least EmmanuelGaillot, ChristopheThibaut and ArnaudBailly ) have been jamming on Haskell for a while, I was surprised to learn Ivan Moore and Mike Hill, this years’ programme chairs also have taken an interest in it.
I am not exactly sure why. Maybe it is because Haskell is the ultimate MindFuck where it comes to programming languages that you could use in theory (and sometimes in practice) to do interesting stuff. Maybe it is because, if you do not work in really, really small steps, you are going to shoot yourself in the foot very quickly, so Haskell, TDD and a dojo (where in the randori form you have only 5 minutes at the keyboard before you have to rotate out) seem like a natural fit.
Ivan told me they thought it would be interestingly different to let Simon Peyton-Jones, one of the stewards of Haskell, do a keynote. SPA has a tradition of keynotes that are inspiring and different from what you would expect – Kent Beck did early presentations on eXtreme Programming at this conference (then named OT) 10 years ago.
The keynote was fun and interesting, explaining the kind of problems Haskell intends to solve, with some examples. You could say haskell is kind of a spreadsheet on steroids, although it lacks the graphics . The presentation was laced with code on slides, explaining important features in Haskell. About halfway through, unique for a keynote, Simon did some live coding, showing how the haskell program quicktest can be used to test new features. Quicktest exercises code with random testdata for cases specified in haskell, and when a test fails reasons backwards to find the simplest possible failure.
Apparently Arnaud Bailly and Christophe Thibaut used quicktest in their workshop on wednesday to test a java program, I would have loved to see it, but had to be at our Consulting Without Secrets workshop, which was good fun in itself and very useful for running our businesses; you can read through the outputs on the conference wiki.
Back to Haskell. Sunday saw the RealWorldHaskell tutorial hosted by Peter Marks, Nicholas Simons and Ben Moseley. Christophe Thibaut paired with me, so we could work test-first. Unit testing was not part of the tutorial, but Christophe already knew how to do it. This helped us to getting reasonably far with the exercises. If you do not work in small steps, I find the error messages sometimes difficult to understand.
Several Bird of a Feather sessions were scheduled to do more Haskell in the form of coding dojos. There was also a discussion BoF on why Haskell? which was packed – more people attended that than the hands-on sessions, which I found a bit puzzling. The dojos consisted of a Kata performed by Christophe and Arnaud, and a Randori hosted by Rob Westgeest. That meant I got to practice a little Haskell with switched-on colleagues every day. Pair programming and learning helped a lot.
Therefore, next Tuesday, April 28th, Mike Hill and I will be co-hosting an amateur Haskell coders’ dojo at the eXtreme Tuesday Club (in London of course).
The SPA conference always has interesting ‘diversions’ in the evenings. Before the whiskey tasting there was a beatboxing tutorial, hosted by UK beatboxing championship Mc Zani. That was wicked.
Here you can see him in action for a ‘slightly’ larger audience. Mc Zani knows his stuff and his facilitation style resulted in a relaxed workshop with surprising performances by some of the participants . Definetely worth it to attend one of his workshops if you get the chance.
Some of the remarks Mc Zani made about beatboxing made me think of programming, and the agile movement. Beatboxing is more than a party trick, but after it suddenly became popular again, the media are overflowing with mediocre beatboxers – people who see it as a party trick and are not willing to put in the effort required for greatness. Great beatboxers are still out there of course, but you have to go look for them.
Which brings us to the next topic:
Anarchy Agility in the UK
The other diversion was a Panel Discussion about 10 years of agility in the UK and bar night, with drinks sponsored by the eXtreme Tuesday Club . David Harvey hosted a panel discussion between early eXtreme Programmers Paul Dyson, Tim Mackinnon, Rachael Davies and Ivan Moore. Paul Dyson wrote about his optimism already:
Perhaps the Agile community has become a bit too focussed on certification rather than learning, on easy rather than effective methods, and on being recognised as ‘being Agile’ rather than achieving agility. But I believe that the world is changing in a way that will force the Agile community to adapt or die and I’m optimistic that we will achieve the former.
Paul was was a bit surprised about the agreement on failing agile projects in the room – since it was filled with agile coaches, developers etc. who have a ‘vested interest’ in agile. I have a vested interest (I am not retired by a long shot , coaching and training agile teams, and being test-infected I have to find places of work where I can at least write tests (and preferably talk to the customers as well) . The agreement does not surprise me.
I still encounter shops (or rather, shops encounter me) that want to kick ass, but as ‘agile’ becomes mainstream we find more and more shops that are content to go throug the motions, or believe that by following some book ‘to the letter’ they will be somewhat more successful. I guess the room was filled with people who got addicted to high performance teams through the early days of eXtreme Programming. Stepping back from there into environments that lack the desire for excellence is hard.
Another thing that struck me from the panel discussion, was a remark by Tim or Paul about the early days of XTC. If something new came along, you would try it out just for fun and see if it would work for you. These days there seems to be more of a ‘not invented here’ syndrome hanging around, even in agile circles.
Paul’s optimism stems from the trend of mash-ups – applications that are made from other applications that already exist. Turn-around time of mash-ups can be a lot faster than ‘traditional’ applications, which will force the agile community to adapt or die (or perhaps ‘adapt or dye’ ). In that context the postmodern programming conference organized by Ivan Moore and others a few years ago was also mentioned.
Lasse Koskela and yours truly already decided to adapt (embrace and extend ) – we will be hosting a Scrapheap Challenge, which is a shorter version of the exercises of the postmodern programming conference, during XP2009. We see the internet as a giant Scrapheap, and Challenge the participants to complete a mash-up instead of an application, from Scap instead of Scratch, in less than no-time.
In the meantime, I hope the photos convey a bit of the buzz that was SPA2009…