Archive for the 'people & systems' Category

A QWAN year :)

Friday, December 19th, 2008

I wrote a teaser post about iterative and incremental rebranding of eXperience Agile in September… It’s been four months and almost as many newsletters since then :) . So time to de-tease the blog…

Marc suggested to do part of the upcoming newsletter as a Temperature Reading, so besides getting some information, our readers also learn a technique, and it helps us structuring our own reflection over the past year. It’s been about a year since Marc, Rob and yours truly sat together after xp days london to discuss closer collaboration with courses and coaching (but still as loosely coupled as possible, because we like our independence).

A Temperature Reading has five questions, the order of which you can vary, depending on the context (see Temperature Reading for explanation and the default order, I’m going to do something different here).

(more…)

On the fringes – support your local critical thinking in 2009

Friday, December 12th, 2008

When I saw the proposed stages for agile 2009 last week, they looked a bit bland to me. A lot of the fun and risky stuff seems to have been taken out (musical stage, breaking acts, questioning agile). Ok, open space (I love open space) is still in there.

The 2008 conference was quite good for such a large event. Things that contributed to it were, in my opinion, scrapping experience reports as a separate track and instead having lots of experience reports everywhere as well as the breaking acts and questioning agile stages. Yes, you can have those topics spread out, but having those topics front and center (what is the first thing you see when you look at the conference? its the stages. So the first thing you see is: ah, critical thinking, wild new cideas).

If you want to support new ideas, and at the very least keep up the outward appearance that the agile community invites and supports them, leave a comment on David Andersons’ blog post “The case for an agile fringe” .

I also left one at Johanna Rothmann’s (2009 conference chair) response “I’m Disappointing Already” outlining some of the forces I’m seeing. Johanna ems to take it personal, which I think is unfortunate. Sometimes folks in the kanban camp seem to do the same – getting their sessions rejected for earlier conferences must have been very painful. The reasons for rejection were probably systemic, and it seems some of the systemic reasons have been fixed in 2008, now 2009 seems to be sliding back (and yes, kanban is now establishment, but it will happen again to new new stuff).

So, let’s stop taking it personal, and improve the system; no regression, if we can easily prevent that please – carry out one refactoring “replace experience reports stage with fringe stage”, that’s it.

That’s it for today, maybe I’ll post more later. I’m going back to XP days London (which is one big fringe :) lots of new ideas and critical thinking going on, and the open space is an integral part of the program, which seems to work fairly well at this scale.).

Agile Holland 2008 Conference photos

Monday, October 27th, 2008

Here are my conference photos. Portraits mostly :) . Enjoy

photo2008-10-24T16:46:46-000049.JPGphoto2008-10-24T16:27:32-000038.JPGphoto2008-10-24T16:26:16-000035.JPG
photo2008-10-24T16:26:10-000034.JPGphoto2008-10-24T16:25:48-000030.JPG
photo2008-10-24T16:25:44-000029.JPGphoto2008-10-24T16:03:34-000025.JPG
photo2008-10-24T16:03:12-000024.JPGphoto2008-10-24T15:44:20-000018.JPGphoto2008-10-24T15:13:44-000016.JPG
photo2008-10-24T15:13:10-000013.JPG
photo2008-10-24T15:13:00-000012.JPGphoto2008-10-24T15:12:50-000011.JPGphoto2008-10-24T14:11:58-000010.JPGphoto2008-10-24T14:11:44-000007.JPGphoto2008-10-24T13:10:42-000006.JPGphoto2008-10-24T13:10:36-000005.JPGphoto2008-10-24T11:36:04-000002.JPG
photo2008-10-24T11:29:18-000001.JPG

As a programmer, I want to go to a coders dojo so that I can improve my skills.

Tuesday, October 21st, 2008

Eric Lefevre and I co-organized a coders dojo at CITCON Amsterdam a few weeks ago. A coders dojo is where programmers meet to collaborate on a programming challenge, so that they can improve their skills.

What is a dojo?

The dojo takes its’ inspiration from martial arts, where practitioners get together to repeatedly practice excercises (‘katas’), amongst each other or guided by a teacher.

Coders dojos exist in many shapes. The form I often use is called ‘rand

ori’ : one or two people prepare an excercise, explain the excercise to the group and start pair programming on the excercise in front of the group, using a video projector. After five or ten minutes one of the original pair rotates out, and someone from the audience rotates in. Rotation continues every 5 or 10 minutes.

yours truly and Eric Lefevre kicking off the Randori

Benefits

  • Improve your skills by doing, and seeing other people do it (also teaches small things about editor etc.)
  • challenge and be challenged: accept criticism, defend your ideas, deliver criticism in such a way that others are encouraged to act on it
  • Learn how to better work in really, really small steps. If you want to rotate out in 10 minutes with a green bar – all tests pass – you have to :)

@ CITCON Amsterdam

This is also the form Eric and I used at CITCON Amsterdam a few weeks ago. We both had posted a coders dojo on the open space schedule. I wanted to do a dojo with Mockito (a relatively new mock objects framework for java), so that I could try out a modified excercise for an upcoming training on Responsability Driven Design with Mocking. Eric wanted to do a kata on legacy code, so that he could experiment with an excercise he uses in courses.

We decided to apply some courage and try to see if we could combine the two: use Mockito to add tests to Eric’s case. We started after very little preparation: while we were preparing a heated debate with other conference attendees on how to teach mocking and what (not) to use) already started… We introduced the case and started to work towards adding a test. We found a defect in the only test present (it was not completely legacy code ;) ), and we let the audience decide whether we should fix the test first.
The audience decided we should fix the test. We listened. Therefore we did not show how to use Mockito… Fixing the test eventually took the better part of the coders dojo, and we never got around to having the participants to try out Mockito to make a test running. Eric already summarized what came out of the mini retrospective at the end of the session.

The audience vs. Ivan Moore and …

Coding in front of an audience can be confusing at times

A test is not worth fixing, if it is the only one you have.

I would normally delete this test, guess its intention(s) and re-write the test from scratch. The reason this test was so difficult to get working, was that it was trying to do multiple things. In making the test work, it started to test even more things, so while fixing it, it became increasingly more difficult… If we had rewritten the test, we would have discovered this early on. We then would have noted the other things to test down on our ‘to do’ list, gotten a green bar quickly and then moved to the next item on our to do list.

Programming as a spectator sport. Henk Van Voorthuizen, Marc Evers watch Intently, Jamie Dobson takes notes (he was making a diagram of sorts I believe).

Some things I learned

Having some of the most clever bastards of Europe in the room made this session extremely interesting. It definetely showed me there is ‘more than one way to do it’, and that includes refactoring and adding tests to legacy code. Some will do nothing without a test, some will use automated refactorings only (me) and then add the first test ASAP. Many of these strategies work most of the time… “Many people can be right most of the time, not all people can be right all of the time”, and that shows in a dojo. Most strategies would work to make the situation of the legacy code base better (better factored and/or more tests), but changing strategies every few minutes does not ;) .

As Eric says, I’m sure we’ll do better next year. One thing I would try would be to spend more time at the start demonstrating and setting out a direction before rotating in someone from the audience. That way, I would expect less confusion by the participants, and more work in the same direction. This is what I normally do during courses, but the session slot had so little time that we (erroneously) skimped on it.

In the meantime, I’ll be doing some more experiments in (ab?)using mocking tools to shorten the “time to first test.”

Credits

  • Laurent Bossavit and Emmanual Gaillot for popularizing the idea of a coding dojo
  • The writers of DeliberatePractice for explaining some of the benefits of a dojo
  • Marc Evers for making photos (and lending me his camera during the dojo)
  • Eric Lefevre for the first writeup
  • The participants for making this a very interesting dojo

Pimp my Retrospective!

Monday, October 20th, 2008

Nicole Belilos and yours truly are going to present “Pimp my Retrospective” at the first Agile Holland conference this friday:

Title slide, with a photo by Colin a pimped ‘Lemon’ at the ’24 hours of Lemons’

Slots there are just 45 minutes, so we made an interactive presentation with two short excercises: we’re going to ask participants suggestions on how to ‘wreck’ a retrospective and then spend more time on how to ‘pimp’ one, followed by our own favourite pimpin’ practices. We made all the slides like the one above, some pimped cars, some wrecked, and some plain strange (as well as Saint Nicolas on his horse). I notice with slides like these, I’m much more looking forward to giving a presentation.

Curious? Join us at the AgileHolland conference Oktober 24 in Amsterdam :) or read on for the full session description.

(more…)

Where is Willem?

Monday, September 15th, 2008

Sometimes people around me wonder where I am. Maybe you have too. I used to say, I don’t travel much, but I realized that is because some of my colleagues travel even more… So I added a list of upcoming trips to the sidebar of my blog. You can also subscribe to my trips through dopplr. I hope this makes it a little easier to meet up with other people while I am travelling.

The travel feed does not describe that clearly what I’m up to (only if you click through a couple of times), so I guess I’ll still be posting here about upcoming events every once in a while:

  • Paris, next week, will see me and Emmanuel Gaillot co-present an in-house eXperience Refactoring in French – “des excursions dans le Rémaniement continu”. I have been brushing up on my french, and we have been talking French during the preparation. I am looking forward to it. We have been making a number of improvements to the course, e.g. a new exercise and the slides look intriguing in French
  • Helsinki, 29 October sees me and Marc Evers co-present the revamped “right-sizing your unit tests” workshop at the Scandinavian Agile Conference. The past years we toured conferences mostly with systems thinking and other people oriented sessions (e.g. cultural patterns), we thought it would be fun to give people a taste of our technical sessions as well.
  • Eindhoven, 20 and 21 November – together with Bath, UK one of my home towns -, sees yours truly and Rob Westgeest with a demonstration of story testing with rspec at XP Days Benelux and Responsibility-driven Design with Mocking with Marc Evers and Rob.
  • London, 11th & 12th December, I look forward to join Rachel Davies in co-facilitating the large open space at XP day London. It is already their eighth conference, and the XP day London organisers show courage by going with a completely different format – less presentations and more interaction between the participants through Open Space. I think it is fitting. As agile software development progresses, practitioners need a place to push boundaries and work on problems they are (still) getting to grips with. With the high caliber audience that xp day usually draws, this should make for interesting topics and lively discussions.

That’s it for now. I will probably go to London and Bath somewhere in October as well. I don’t know when yet.

Iterative and Incremental rebranding

Friday, September 12th, 2008

Several people have been asking me how we market and sell development projects, consultancy and courses. I don’t know exactly, and I don’t know many people who do…

Marc, Rob and I have been busy for a while, thinking about repositioning what is soon to be formerly known as eXperience Agile. We were feeling that what we are offering is more than ‘just agile’. We also want to reach pragmatists on the other side of the chasm, who don’t respond well to the zeal that seems to rear its’ ugly head around methods every once in a while.

In short, We’d like a new website, so that our regular customers can easily find out which courses are forthcoming. We want new versions of the brochure, so that people can see the new courses, and we want to send out mailings more often, so that we can keep our clients and alumni informed on interesting conferences and new developments. There must be a system to all this, most likely similar to a tale of website traffic. And we’d like a new name and logo, so the brand fits better with our aspirations and activities.

Not that we know much about branding (or are necessarily fond of it – I’ve even said Branding is for cows in the past). But we got to do something :)

So we spent a day brainstorming new names, and finally found one that we all liked and had an available domain name that was not too long. If I remember correctly, Rob came up with the name and it fits well with the name of Marc’s company (Piecemeal Growth) and mine (Living Software), as it is also inspired by patterns.

Rob and Marc during the brand name brainstorming session

Rob and Marc brainstorming on the new name

We also decided to do some experiments. We moved slowly, we were all available at different times and registering the domain name took longer than expected.

One of the experiments we decided to do is sponsoring a conference with money – usually we sponsor conferences with blood, sweat, and tears (and a good portion of laughter of course). And then it took us a couple of months to get moving on it.

We were procrastinating, because not ‘everything was ready’…Sounds like a software development project, doesn’t it ;) . We did not have a logo, nor did we have the new website we wanted so badly – the current one is inconvenient to maintain and could look nicer.

This week, I decided to get moving, even though the sponsoring deadline of the conference had already passed. Luckily, one of the organizers mailed me if we were still interested in sponsoring – I had talked to him at the agile2008 conference already. That was excellent timing.

So I decided to go for it, and pay for the sponsoring. Doing that helped us to move forward. The conference organizers helped us by giving us a deadline – the logo had to be in by friday to make the printed programme :)

We felt we can always iterate over the logo and change it later. We also had to give them a url to the website. Oops. Ok, so we don’t have the flashy new site yet, but we have the domain name, so we point it to the old one for now. Ah. brochures. We should have something to hand out at the conference. Hm. The previous one was quite succesful, but we didn’t get around to making a new one. What changes do we really, really want to make so we can send it to the printer this week? Let’s take out the course schedule so the brochure lasts a bit longer, add a new course and announce the rebranding in the brochure.

By now, I hope you are curious about which conference we are going to sponsor, what our new name is going to be, and what our new offerings are. Be the first to know, and subscribe to our – soon to be revamped ;) – newsletter – leave your e-mail address in the box at www.experienceagile.eu or contact me directly.

Credits: Thanks to Marc Evers for simplifying the text.

Open Space rules! – the movie

Wednesday, September 3rd, 2008

Harald Walker shot a little video at Agile Open in June. He edited it, so that it became a nice little explanation of the Open Space “rules” in three minutes.

Enjoy!

Step away from the keyboard, and put your hands where I can see them

Friday, July 4th, 2008

When we let participants pair program in courses, it is always difficult to make them stop… Over time we have experimented with various techniques. Marc and I are at the ESSAP summer school this week, and we needed to pull out all the stops – they were that focused :)

Techniques we used to get people to stop

  • Pomodori (kitchen timer set to 25 minutes, with 5 minutes in between), it makes noise, so some people stop.
  • Marc’s Horn – this gets some more peoples attention
  • and finally this:

I shout “Step away from the keyboard, and put your hands where I can see them!”.

That gets everybody’s attention (and laughs). We are having good fun, and seem to have found a good way to explain refactoring when you are almost having some tests :) (more about that later, hopefully).

More pictures from this session (including the retrospective stickers)

Unit Testing Masterclass open for enrollment :)

Tuesday, June 24th, 2008

After running it in-house (Marc and I are travelling to Switzerland in two weeks to do just that :) ), we are now happilly responding to demand for an open-enrollment Unit Testing Masterclass. In this class we practice more Test- and Behaviour-driven development in small steps, you will experience various mocking techniques as well as how (not) to make tests that you and your colleagues can understand.

First courses planned are 8,99 and 22,23 September in Tilburg, Netherlands. See the course page for a full description and the booking form to reserve your space. We are looking forward to meeting you there!