Autonomy in action - school kids

Today I rode the tram to work and was faced with the barbarian horde of school kids going the other way; to their school. After I had managed not be run down and falling of the tracks from them running towards the closing doors of the train, I got an image in my head.

School kids and teacher are excellent examples of command and control vs autonomy in action.

In this blog post I’ll contrast the two models of management and see if there’s any similarities with our normal working conditions.

Command and control

Imagine the whole school going to a boring outing, probably to a place the have been to many times before. To learn stuff that they are not interested in (by now you realize that this is TOTALLY made up - that would NEVER happen in real school. right :)).

For a school with, say, 500 pupils Organizing...

Read More

Impact Mapping - Great Book, Great Tool

Impact Mapping

I’ve just got my copy of the Impact Mapping. It was long awaited for me and apparently for others too since it went out of stock in a couple of weeks. My own copy was ‘hijacked’ by a client that read it overnight and started to use Impact Mapping the day after.

In this post, I’ll write down some thoughts after reading the book from cover to cover. I wanted to do this on Amazon but sadly I cannot since they only accept reviews from people who bought the book directly from them. Well, this will have to do instead then. I’ll hint right now that this would be a 5-star review (to add to the 9 other 5-star reviews that are already on Amazon).

What is it?

Impact mapping is described to great effect at the official site; www.impactMapping.org. So here,...

Read More

Unearned trust

Today I’ve experience a rare thing. I went into a restaurant in Stockholm. It was a new place to me I’ve never been there before, to my knowledge. The restaurant was crowded as it was lunch hours. One by one the queue in front of me disappeared and went out the door again. So I started to realize that something wasn’t right here. Food’s out? Food’s bad? Only veggies left? When I came up to counter to order the man behind the counter let me and then said:

“The card machine has not been acting up during the last hours. Let’s see how this goes…”

Sure enough - the card machine was broken. I couldn’t pay. So I put my card back into my pocket and turned around to go. Then he said it:

“You know what … It doesn’t matter. Take a seat and we’ll bring...

Read More

TDD for Kids

I had the opportunity to do something exciting yesterday. I was invited by my good friend Tristessa to teach a class on programming for her 13-14-year-olds. She teaches at the International School of the Stockholm Region and had introduced them to programming just a couple of weeks before I came.

Since the first time I learned TDD I’ve always thought that it’s a bit like thinking like a child; challenging the code, come up with more examples, try to break/understand your code and just being curious. Also - when TDD works it feels much like doing a puzzle - the next piece just comes to you in a nice way, another kid-activity. So I thought I’d try to teach them TDD during an hour and a half. We did the Fizz Buzz kata together and during the class brushed on a number of interesting subjects. They also did...

Read More

Code Freeze, Recompile, and Code Generation - Not So Scary with CD

Sure enough… There’s an abbreviation for Continuous Delivery. It’s CD. I think this means that it’s important :)

The last couple of days I’ve run into a lot of expressions, true-isms and problems that we take for granted that are turned a bit on their heads when looking into releasing often. And with often I mean real often - like all the time. No, really, I mean continuous delivering.

Yes, I know that it first feels a bit scary and unachievable, but in this blog post I’ll try to show you a couple of things that make that strive worthwhile. I think.

Continuous Delivery?

Continuous Delivery

So the short and sweet introduction is really this; push EVERY change to your code, configuration, and environment to production. Do that all the time.

To unwrap that it, of course, means that you need to have your code,...

Read More

Specification by example and Model based testing

My current client, Spotify, is really on the forefront when it comes to good, solid engineering practices. There are inventors, leaders and all-around great people wherever you look. So this gig has rendered me a lot of learnings, even in the areas that I don’t touch much (being hired as an agile coach that reads coding people…).

So the first week or so heard the term Model based testing for the first time in my life. Investigating further I realized that it had strong similarities, technology-wise, with Specification by example. And there’s some fundamental differences in the thinking and reason behind each approach too.

In this post, I’ll take a brief look to clear out the differences and similarities. I think that you can have great use for both approaches but you should probably know why or you’ll find yourself fighting the tools and process for a...

Read More

You say 'continuous delivery', I say 'limit WIP'

Continuous delivery is something that everyone seems to be talking about these days. And it’s very cool. Put very simply you can say that it’s striving for releasing every change you do in your code base and configuration to the production environment.

This can seem like a very daunting task to take on but if you think about it, it only has to do with us taking on to much work in process. In this blog post I’ll elaborate on some thoughts around that.

Continuous delivery is not hard at all

This little conversation took place the other day when I explained continuous delivery for a colleague:

“When is the easiest day to release a system?” “Huh?” “The first day. Continuous delivery is to just keep doing that ever day”

Yeah - it’s one of those; that’s easy for you to say, but there’s a great amount of truth in there as...

Read More

Top 5 Agile change tips 5 - Use visualized data to improve

This is the last post on my top 5 ways of making sure that your agile change initiative succeeds. Here’s the list - in order of importance:

  1. Get a great “Or else”-reason for doing this change
  2. Sit together
  3. Let them change how they work
  4. Support the initiative
  5. Use visualized data to improve (this post)

5 - Use visualized data to improve

If there’s one thing that I’ve seen teams really get an aha-experience from, it’s visualizing. Simple stuff - just putting your work items on a board, having to talk about how your process actually is laid out or putting a little picture of yourself on every item you’re currently working on. Things like that.

But lately I’ve also been addicted to having data as the basis of changes. Quite often we seem to change based on what we feel is...

Read More

Top 5 Agile change tips 4 - Support the initiative

This is the second post on my top 5 ways of making sure that your agile change initiative succeeds. But this is not ideas made up in my head (MY GOD - the horrors…) but things that I’ve tried and failed miserably with. Over and over. And learned a lot from.

This is the list - in order of importance:

  1. Get a great “Or else”-reason for doing this change
  2. Sit together
  3. Let them change how they work
  4. Support the initiative (this post)
  5. Use visualized data to improve

4 - Support the initiative

This should be a no-brainer but once you see it in action it’s seldom handled correctly.

If you want to change how people act and work you have to be a role model for that, supporting the new ways. This means that the change must start with management. Yes -...

Read More

Top 5 Agile Change Tips 3 - Let Them Change How They Work

This is the third post on my top 5 ways of making sure that your agile change initiative succeeds.

This is the list - in order of importance:

  1. Get a great “Or else”-reason for doing this change
  2. Sit together
  3. Let them change how they work (this post)
  4. Support the initiative
  5. Use visualized data to improve

3 - Let Them Change How They Work

You need to open up and let go of the wheel. An agile transformation is, if anything, a culture shift. Towards autonomy and away from top-level steering. This should go into the agile transformation too. In effect, this means, in the words of all agile coaches, to take it to the team.

The guys that are going to live in this environment - they are the ones best equipped to know what to do about it. Hey - they...

Read More