Monday, January 12, 2009

Learning From Mistakes

In my experience, most people seem reasonably capable of learning from their own mistakes, although a select few of them are doomed to keep repeating the same errors in judgment, over and over, while optimistically expecting different results each time. Someone who falls off a bicycle and scrapes a good patch of skin off their forehead just might be more inclined to start wearing a helmet on subsequent trips; a person who fails to file their income tax on time and ends up forking over a big late penalty as a result is more likely to make an effort in the future to get that annual task done earlier. I suppose, in a way, those sorts of events are just more sophisticated versions of the scenario in which a small child reaches out and touches a hot stove element (despite parental instruction against it). Put simply: pain can be an excellent teacher!

But I wonder just how well most of us do at learning from others' mistakes? In that case, the pain part of the equation is either removed entirely, or at least dulled considerably. For example, would the story of a friend being pulled over and charged for drunk driving have enough of an impact to make me adapt my own behaviour around that sort of thing? (I don't drink, so this one's purely hypothetical!) As someone who simply hears about this incident, I don't actually experience any hardship myself, but can I still learn from what happened to my buddy?

Thinking back on my experiences as Agile Manager, I worry about just how difficult it is for one Agile team to learn from the mistakes (or successes, for that matter) of other teams. There's an obvious driver for wanting that sort of thing to happen: what organization would prefer to incur the cost of several teams all skipping merrily down the same garden path that leads to nowhere (for example)? By the same token, if a team tried a variety of approaches to solving a particular problem, many of which were deemed utter failures, before finally arriving at what they found to be a very viable solution, isn't it better for everyone if that eventual panacea is shared with all, and as soon as possible?

One of the hurdles that may get in the way of such a happy outcome, of course, is that one group of people may not accept another group's solution, for any number of reasons: ego, a "not invented here" mentality, an incomplete understanding of the problem and/or solution, an ignorance around how the lesson actually developed, or simply personal preference ("We just don't like that approach"). As Agile Manager, I saw abundant examples of each of those in action.

But even worse than lack of acceptance was the lack of communication. In many cases, each team simply had no insight into what their counterparts were learning, and therefore didn't even have the opportunity to benefit from or reject the revelations happening elsewhere. Various attempts were made to remedy this, including holding "Scrum of Scrum" type meetings, using the Product Development Leaders in that capacity, and even having AgileMan blog about whatever he discovered teams trying in his travels. I wouldn't say that any of those worked especially well, though, as our largely-stovepiped Feature Teams / Product Development Teams proved. As such, I have no magic recipe for how to fix this.

What I do know, though, is that there's a hierarchy in life where learning from mistakes is concerned, and it goes something like this:

Top rung: Learn from mistakes around you, whether yours or others'
Middle rung: Learn from your own mistakes
Bottom rung: Never learn from mistakes

We're a species who attained our current "top of the food chain" status thanks to our opposable thumbs and all of the nifty tricks that we discovered we could do with them. Adaptation is what's gotten us where we are, and it's just as much of a game-changer now as it's ever been. And that means that how high you climb, as an Agile practitioner or even just as a human being, depends on how willing you are to inspect and adapt at every opportunity. And that's no mean feat!

2 comments:

Unknown said...

Agileman,

These last 3 posts have been great.

Thanks for posting.

Kimota94 aka Matt aka AgileMan said...

Thanks a ton, Urban... glad to know that someone out there's enjoying these little diversions of mine!