The Importance of Failure and Organizational Maturity

Friday, August 14, 2009

This is me raising my voice, "If you want to be a grown-up organization, stop treating your staff like children!" Good - now I feel better. However, managers frequently echo a far different sentiment, "If they just acted more like adults, then we would treat them accordingly, but the truth is they need constant supervision or else..." Maybe these types of managers are simply responding to the same assumption by senior management. Is it possible this lack of faith, the fear, is a systemic social virus pervading organizational culture? Like, duh! So, where does this leave us? This makes an organization a stagnant environment lacking in creativity, initiative, and makes for a typical sucky place to work. I'm starting to believe that one of the most important approaches an organization can take with staff is to encourage failure. "Say, what!? Tell staff to make mistakes? That's fucked up, dude!" Really? Think about it. Failure is critical to progress and may be especially important for people in software development where there are many unknowns and rapid technology advances makes it challenging to maintain and evolve software. If we are doing only that which we already know, how can we improve and evolve our software - how can we learn anything new? Further, how can we attempt to learn these new things without experiencing failure? If failure is something to be avoided, it seems that it would be hard, if not impossible, to grow in the absence of failure. As a manager or technical leader, maybe the risk of failure should be embraced (at a minimum, suspended) rather than deterred. Maybe a metric to know whether a solution is reasonably viable is how many set-backs or fuck-ups occurred during the research or proof-of-concept phases. If the answer is 0, then that may be suspect or pure bullshit altogether. If the response was, "Well we tried X and it broke Y, and we learned something about P, so we tried R and that broke Y, too. Eventually we saw that Z was the best way today because it made A faster and subsequently Y worked as expected.", then maybe there might be some validity. I'm certainly not encouraging lower quality products - God knows we don't need more crappy software! - or a chaotic approach to problem solving. On the contrary, allowing for the exploration of alternative solutions methodically but with wide boundaries and the freedom to fail may produce a higher quality work product in the end simply because more alternatives have been explored. I wager that allowing developers to play and be creative will produce some very interesting results and I would put my own money down on the fact that would make developers want to come to work. Equally as important, giving developers your faith that they can and will come up with a decent solution instills confidence and respect all the way around and contributes to your organization's maturity. On a personal note, this is how I try to avoid the swirling vortex of mediocrity and apathy at my workplace where success and failure are deemed foes. A lot of what I do is done without official approval and I have incurred numerous political risks because of this way of thinking and action; i.e. failures. I guess management has learned to tolerate me because in the end I have have consistently delivered solutions of high quality and value. With that said, it is tiresome to be at an organization that does not embrace creative thinking or innovation. If you want what you always get, don't change what you do ... But, there are many opportunities ... For this programmer, failure is the road to success. It's kind of like a Samurai death - going knowingly towards a certain end is not negative - it's freeing. "Even if one's head were to be suddenly cut off, he should be able to do one more action with certainty" -The Hagakure Ok and now for some organizationally immature content. My favorite Samurai movie scene ever! Enjoy :-)



Marc Esher said...

I really believe that the reason my boss and I get along so well at work, and why we have such a good track record of success, is that failure is not something to be feared. Probably every big thing we've done together has started off with "I dunno... let's try this and see how it goes".

The last project I worked on, which turned out to be insanely fun, was a small one to deal with the problem of file systems filling up too quickly. It was an incredibly stupid problem to have. But our current method of dealing with it just couldn't scale. So I made a proposal about a possible way to solve it. Turns out, that way couldn't work b/c of underlying limits on Windows itself... but man, the exploration was fun as hell. But then that exploration turned into something else, and I ended up with a great solution.

You just never know what's gonna be at the end of a road.

Great post, Bill.

billy said...

Marc, what I keyed in on in your comments were: "...[the project] turned out to be insanely fun ...", "...the exploration was fun as hell", and "...I ended up with a great solution." The enthusiasm is apparent and it sounds like the freedom to fail allowed you to deliver a great solution. Thanks for sharing!