Well done that man


It's attracting some easy cynicism, but I can't see David Milliband's blog as anything but a good thing.

So far he's doesn't seem to be filtering hostile comments, there really is a dialogue and despite the civil service support there is the sound of a human voice there - which is, after all, the point.

Pair Programming



We've taken some babysteps toward pair programming here at work. The key thing holding us back being that we don't do much actual development, and that we work across so many projects it's rare for two people to be assigned to anything.

Even so, reading things like this makes me think we need to take the plunge sooner rather than later.

Keeping arms under control



I've just signed up to Amnesty's 'Control Arms' campaign. Amnesty are a group I've got huge respect for, they achieve a lot and speak with an exceptionally strong moral voice. Occasionally they get criticised for an overfocus on western regimes (especially the US) who aren't perfect while ignoring terrible dictatorships.

This is of course garbage. It's just that when Amnesty put out a report on terrible dictatorships they get ignored by the news at 10, but when they slate the most powerful man in the world, well that's news. It's not Amnesty's fault, it's down to the media, and ultimately the public indifference that they're working so hard to counter.

Anyway, signing up was easy, as was uploading a photo to become one of the million faces. They did ask for a bunch of personal info at that stage, which I didn't give to them.

They also score bonus points for making it really easy to place their banner ad on my sidebar.

Greenpeace confronts the Whalers

There are some days I'm pretty damn proud to work where I do.

http://www.greenpeace.org/international/news/whalers-found

This is one of them. If you'd seen the huge amount of effort it takes to make something like this happen, the sheer effort involved in finding a fleet of ships in somewhere as huge as the antarctic ocean.

Go get em guys!

Because they'd publish if they had nothing to hide



I will publish the bomb al jazeera memo if 100 other people will

Or something like that. I actually will publish it if no other people will, but Pledge bank doesn't have an option for that.

Agile Experiences



So after a pretty good pitch process I've found myself working with a company called ThoughtWorks, who are very good at what they do, and rather keen on agile methodologies.

Agile's an interesting thing. It's got devotees who are nothing short of religious and on account of it's reliance on eXtreme Programming (XP) practices it's got something of a rebel edge to it. Documents like this one can be somewhat unnerving at times.

My early experiences of Agile were largely negative, and I assumed that it was a convenient way for programmers to cover up lousy project management and poor client handling. This turned out to be more to do with the practitioners I was talking to being lousy at project management and client handling than any shortcomings of their methodologies. Confronted with problems I'd get the response that 'this is agile' and that I should stop asking inconvenient questions like 'are you doing anything' and focus on the ideas.

My new experiences of agile go a bit like this.

It's not a religion but it helps to be religious about it
If you're going to buy into a methodology buy the whole thing. This goes for business process re-engineering, six sigma quality, Prince 2, lean manufacturing and pretty much every major methodology around. You can't be a 'little bit six sigma', you can't be committed to constant process improvement 'some of the time' and if you're going to run your project on Agile methods you can't expect them to co-exist with more traditional ones.

It's not process or documentation light
In fact to do Agile properly (and I'm sure we could do it better) involves putting in place a lot more low level routine processes than most software project management. You can't do it without source control, you can't do it without daily meetings, you can't do it without written tests for everything - starting with 'is there a homepage', you can't do it without a great big list of stories which require about as much effort to write and update as any specification I've been involved in.

The difference is that these processes are constant, low level and baked into the way of working. It's not about 'do the process then do the work', it's about 'the process is the work'. I suspect that this, coupled with the fact that Agile forces people to use good programming habits (lots of testing, small chunks at a time) explains most of it's productivity benefits.

It takes good people to stick with it
A lot of the discussions about Agile have suggested that it wouldn't work for average or below average programmers. I suspect this isn't true. I suspect that there comes a point where all that baked in process stops looking useful because you know it would be quicker to 'just get on with it'. I think the self control to avoid doing that comes from a deeper understanding of your job and what it involves than most people have - the same thing that makes some graphic designers good and others merely competent, or turns an accountant from someone who can do the books into someone you'd ask for business advice.

Agile is for people who think about how to write good software, not because they're paid to, but because they want to.

It's still too early to tell how this particular Agile experiment is going. So far the signs are good, but it will be a huge amount of work to shift all our projects onto this development process, and Agile is a very intense way of doing things - not necessarily suited to running 8 projects through a team of five or six people. It's also not something all our suppliers could or would want to do. But it's got a lot of potential, and so far I like it.

(Google) bombs away!



Traitor