DanNorth.net

February 6, 2010

Time for a change

I’ve been in the IT industry for about 20 years now, and for nearly the last 8 years I’ve been a consultant with the rather excellent ThoughtWorks. Being anywhere for that long in our industry is quite uncommon, and to spend that long in a consulting role, with all the travel and disruption that implies, is even moreso. I’ve had a fantastic time with ThoughtWorks and I feel I’ve grown tremendously during the time I was there. Eventually something had to give though, so at the end of last year I decided it was time to try something else.

In particular I found I had moved away from the things I really enjoyed – writing software that matters and building high-performing software teams – more towards big organisational change, which, while it arguably has a bigger impact on an organisation, isn’t really where I wanted to be. So my criteria for what to do next came down to: writing business-critical software in a small, high-performing team, in an organisation that trusts its people and encourages them to excel. Having a great relationship with the consumers of that software and having them closely engaged with its delivery would be a huge plus.

Luckily for me such organisations do exist. One of them is a proprietary trading firm (basically a bunch of partners trading their own money) called DRW Trading, and it works a bit like this: The partners want to trade, so they have traders. In order to trade well the traders need to work with good financial models, so they have analysts who build those models. In order to trade effectively with these models they need good software, so they have programmers who build the software. That’s about it. The software development value stream is something like:

- I’ve had an idea for something that will make money. - Ok, here’s some software. - Thanks.


The procurement process seems equally onerous:

- I need a Thing. - You should get it then.


So there you have it. I’m taking a break from consulting, at least for a while, in order to rediscover good old-fashioned software delivery. I’m going to be doing a lot less on the conference circuit, although I don’t intend to vanish altogether, and hopefully I’ll be blogging and writing more now I’m doing less travelling and feeling less exhausted all the time.

Obviously I no longer have a ThoughtWorks email address, but you can contact me at dan@dannorth.net or I’m occasionally on Twitter as @tastapod. We now return you to your regular scheduled programme.

Filed under: Uncategorized — Dan North @ 4:35 pm

November 12, 2009

The lady in the taxi – a parable of metrics

Once upon a time there was a lady in a taxi. It took such a long time for the lady to get to her destination in the taxi that she went to the town hall and told the man from the council. The man from the council wanted to figure out why the taxi journey was so slow, so he placed cameras at all the traffic lights in the town to measure how many cars went past, and how quickly. The traffic light cameras would click every time a car went past the lights.

He wanted to speed up the rate of cars, so he changed the layout of the town. He figured if he introduced a one-way system the traffic flow would be more efficient. This confused the taxi drivers and they started to get lost. The taxi driver would go past a light, click, discover he couldn’t go the way he wanted, try to find a way through and find himself going back past the same light, click, realise he had been this way before, turned around and drive back through the light, click, and would still not find his way to the lady’s destination. The new one-way system was good at moving cars around – it just wasn’t very easy to navigate. And just as the taxi drivers were learning the new layout, the man from the council would try a new layout just in case.

What a lot of clicking, thought the man from the council, and what a lot of cars must be driving through my town. How efficient this is! I shall invite more cars into this town because it is so efficient at moving cars around.

So he invited more cars into the town, which of course just clogged up the streets. Every time the light would go green, a line of cars, nose-to-tail, would crawl through the lights: click, click, click! When they were past the lights, they would sit stuck in traffic. Sometimes the taxi drivers would get so fed up they would just abandon the journey and make the lady get out of the taxi. Of course she would have to pay for the journey so far. And wait for another taxi. And get in and try to resume the journey. (She often had to go a way back up the road to find another taxi.) Same lady, same journey, different taxi, back through the same lights. Click, click.

The taxi drivers realised they were losing money by spending all day in traffic jams, so they decided to have two kinds of tariff. When the taxi was moving they would charge by the mile. When the taxi was stopped, they would charge for waiting. What a clever idea!

This made the lady very upset. It is taking me longer than ever to get to my destination, she thought, and it is getting more and more expensive because it is costing me money just to sit here.

She sighed and looked out of the taxi window, and saw the cameras at the traffic lights. Then she realised what was happening. The poor man from the council thought that each time the same taxi went past the light, it was a different vehicle! He thought that when different taxis were taking the same lady to the same destination, that it was different jouneys! He probably figured that having lots of cars going through the lights meant they were travelling quickly!

Then she had an idea. I shall take a camera in the taxi she thought, and I shall show the film to the man from the council. So she took a camera in the taxi (and cleverly recorded the taxi meter at the same time). Look at this, she said to the man from the council. Ths shows you my experience as a passenger in the taxi. I move from red traffic light to red traffic light, crawling through the lights in a little batch of cars, queued up behind the next traffic light. I don’t mind paying for the mileage, but I don’t think I should have to pay just to sit waiting to go forwards. And to make matters worse, the journey to my destination is taking longer and longer!

Oh my! said the man from the council. I’ve been looking at the wrong thing all along. Instead of trying to maximise the amount of cars that go through a particular light, I should try to minimise the amount of time it takes you to get to your destination! How silly of me.

Oh, and perhaps I should pay you if you have to sit there in a taxi because my town is all backed up with traffic. At least then there would be an incentive for me to work on the most blocked-up parts of the town. Perhaps they are the only places I should be concerned with anyway, because by unblocking the most constrained parts I will probably have a better flow of traffic altogether. And perhaps when a particular street is backed up, I should stop more traffic coming in and causing traffic jams.

Thank you! said the lady. I now feel like you really are going to be able to help me to get to my destination quicker. I know it won’t happen overnight, but I am sure that over time my journeys will be faster. That’s quite alright, said the man from the council. Thanks for teaching me to look from the point of view of a passenger in the taxi, and not just to take snapshots from the different stages of the journey.

And they all lived happily ever after.

Thanks to Oliver Schreck for the idea that led to this story.

Filed under: Uncategorized — Dan North @ 9:15 pm

October 12, 2009

New translations

I currently have a backlog of about 15 blog articles I am failing to finish. The most embarrassingly laggy one dates from around the end of 2007. Now I know I’m a slacker.

However, others have been far more industrious than me.

What’s in a Story in Japanese and Introducing BDD in Korean

The industrious Yukei Wachi has followed up his translation of my Introducing BDD article by producing a Japanese version of What’s in a Story.

Inspired by Yukei’s translation, a Korean developer HongJoo Lee has written a Korean translation of Introducing BDD. How cool is that?

Enormous thanks to you both for your hard work.

Update: HongJoo has also translated What’s in a Story? into Korean.

Filed under: Uncategorized — Dan North @ 8:46 pm

August 24, 2009

Introducing BDD in Japanese

I am delighted to announce the official Japanese translation of Introducing BDD.

It’s easy to forget how big the Internet is and how small the world can be. Last year I gave a BDD talk at QCon in San Francisco that made its way onto InfoQ.

A Japanese programmer called Yukei Wachi watched it and decided he wanted to know more about BDD. He read my Introducing BDD article and felt it was worth translating into Japanese. He then translated several thousand words in what seemed like no time at all.

Yukei asked me for a couple of sentences to introduce the Japanese translation, and then with typical Japanese modesty decided to drop the part where I thank him. So here is the introduction again with the first sentence intact.

I am thankful to Yukei Wachi for translating this article from English for you, and I am grateful to you for your interest in Behaviour-Driven Development. I hope you find this article useful, and that you enjoy your journey into BDD as much as I have.

Thanks Yukei.

Filed under: Uncategorized — Dan North @ 10:23 am

June 15, 2009

One day DDD track at SkillsMatter

There’s a one day domain-driven design event happening at SkillsMatter this Friday, 19 June in London. I’m not speaking this time so I get to sit back and enjoy some talented folks talking about really applying DDD rather than just theoretical stuff.

Eric Evans will be kicking things off at 10am then there are five talks throughout the day. Two sessions I’m particularly looking forward to are Gojko Adzic – who spoke on my “Architecture for Architects” track at QCon earlier this year – talking about DDD in a distributed environment, and mild-mannered superhero Phil Wills from The Guardian talking about how domain-driven design helped them rebuild the http://guardian.co.uk site.

In the interests of full disclosure I’ve been given a complimentary ticket, but in any case the event is well worth the cover price and I’m happy to help publicise it. As I write this, places are still available and you can book online.

Filed under: Uncategorized — Dan North @ 1:12 pm
Next Page »

Powered by WordPress