Slides from a talk at the Lean Startup conference (video link below).
Update: I've interleaved slides covering what I actually talked about onstage.
Update Update: video is up at http://www.ustream.tv/recorded/27482093/highlight/310486
1. How to run a 5 Whys (With Humans, Not Robots)
Dan Milstein
@danmil
Director of Product Development, Wingu
2. What Is a 5 Whys Anyways?
• Something you do when your company has badly screwed up
• E.g. your CEO demos your cloud storage system to an early prospective
customer, and, when he runs a search, it shows other customers’ data (I have
done this, it was not awesome)
• You get a bunch of people into a room and say: “How on earth did that
happen? And how can we make sure it never, ever happens again?”
• That’s a 5 Whys (aka, a Post-Mortem)
• But, there’s a problem....
4. Human Beings Will Eff It Up
• Humans (unlike robots) feel this intense emotion called shame
• Shame will suggest (strongly) “Slow Down, Stop Making So Many Mistakes”
• Aka “Throw overboard everything the Lean Startup tells you is important”
• Has potential to be incredibly damaging to your startup
• And I have some bad news...
6. This Emotional Experience Can Not Be Avoided
• I’ve run c. 50 post-mortems, have studied failure... and I still have this
emotional reaction
• You will, too. And so will your team.
• Much more strongly than you realize right now
• This is the “Fundamental Attribution Error” (FAE), from psychology
• FAE = humans vastly underestimate the power of a situation on our behavior
12. When The Machine Breaks...
• Belt slips off every once in a while
• Ruins a bunch of widgets
• Gotta replace it, drift a little behind plan
• So... what questions do humans ask in this situation?
13. Economic Mindset = Broken Machine
• “How much is it costing us?”
• “How much does it cost to repair?”
• “Can we kludge a partial fix?”
• “What are risks if we delay a fix?”
14. Note the Key Words
• “Cost”, “Partial”, “Risk”
• These are things you hear a lot in an economic discussion
• Okay, meanwhile in Factory 2, also missing by 10%, different reason...
16. After Every Axe Murdering...
• Have to, like, hire a new guy, train him on the machine, takes forever
• Questions we asked before are now somehow deeply wrong:
• “What if we just cut down on the rate, so there’s less axe murdering?”
• “Hey, we can train a pool of temps on all the machines, when someone gets
killed, we’ll just swap some new guy in, bang, problem solved!”
• “How much is it really costing us, anyways?”
• These ideas seem obscene, not merely bad
17. Moral Mindset = Axe Murderer
“Search for villains,
elevation of accusers,
and mobilization of authority to
mete out punishment”
(Pinker, The Blank Slate)
18. Moral Mindset, Key Words
• “Villains”, “Accusers”, “Authority”, “Punishment”
• I believe that most companies, in investigating outages, act much more
like they’re looking for an axe murderer, than trying to fix a broken
machine
19. Your Challenge, As Person Running 5 Whys
Get team out of moral mindset.
Note: this is not, in fact, easy.
20. Why It’s Hard
• Mindsets control how we interpret the world...
• ...including what people say to us
• So, a team sitting there, fearing moral censure, hears you say “We’re not
looking to blame anyone”, they just think you’re lying. How could you mean
that, when the thing that happened was so terrible and wrong?
• The deep trick (and this is the point of this whole presentation, frankly), is that
you have to take advantage of the thing that separates humans and robots...
22. Humor == Breaking Frames
• That’s what humor actually is -- something that stretches or breaks the
mental frame that people are using to interpret a situation
• So, you use humor to break the frame, release people from the blame/fear/
punishment of the moral mindset, and then refocus them on the economic
challenges you’re facing
• The humor is, IMHO, not a nice-to-have. It’s absolutely central. I’ve seen
smart, caring leaders get this one wrong, and finish their post-mortems with a
room full of tense, closed-up team members (and no good ideas on the table)
• Rest of talk is specific examples of this, but this is the main point
24. Place The Bad Thing on a Continuum
• Moral mindset is very absolutist: this bad thing is The Worst Thing Ever
• I like to say “Okay, well it’s pretty bad, let’s compare it to some things”
• Did we irretrievably lose customer data? (I’ve done that, not awesome)
• Did we almost get our customer fired by her boss (also, not awesome)
• Did we send hundreds of emails to everyone on our customer’s mailing list...
but the emails were all question marks? For a customer who was in the
proofreading business? (done that, very much not awesome)
• People laugh, and then say “Okay, how bad was this, really?” Win.
25. More Stories of Actual Failures (Just For Fun)
• Did we break our allergies-to-medicines module, and risk having a doctor
prescribe the wrong medication to someone?
• Did our internet-connected home thermostat system have a server crash,
causing all the thermostats to set the temp to the default... of 85 degrees?
• Did our high-frequency trading program have flaws that led to our company
losing 450 million dollars? (that is a tough one to beat, IMHO)
• Collect your own! It’s fun!
26. Tip 2: Mock Hindsight Bias To Its Face
“Let’s plan for a future
where we’re all as stupid
as we are today.”
27. How Hindsight Bias Shows up in a 5 Whys
• Someone says “Oh, yeah, I screwed that one up, I knew I had to run the
deploy in that one order, and I just forgot. I’m really sorry, I won’t make that
mistake again, totally my bad.”
• You have to utterly reject this. It’s pure hindsight bias (easy to see errors after
the fact, very difficult in the moment).
• I say “It’s like we’re saying ‘I was stupid, this one time, and we’ll fix that
problem by never being stupid again.’”
• Hence: “planning for a future where we’re as stupid as we are today”
• aka “Must create a system which is resilient to occasional bouts of really
intense stupidity”.
29. 5 Whys Will Highlight That Your Code is a Mess
• E.g. you’ve refactored, and rewritten in python (or node or something), and
moved to the cloud, but this 5 whys is making clear that your most important
report is still run by a VisualCron job on a Windows server that never quite
made it out of the office... and someone just tripped on the power cord
• Team will feel ashamed, you have to give them license to relish absurdity
• I often point out “There are two kinds of startups: the ones that achieve some
modest traction on top of a pile of code of which they are vaguely ashamed...
and the ones that go out of business. That’s it. No third kind.”
• Also sometimes it helps to just laugh: “It’s kind of amazing this works at all”
31. Handling a Fork in the Road
• Example: bad outage at Wingu: was triggered by a mistake in db access
code. But we couldn’t fix it for three hours, because our error reporting
system was trying to send us hundreds of emails/minute, so our email
provider throttled us, and we didn’t get those email until hours later.
• Which is the Root Cause? DB access bug or monitoring failure?
• Answer: don’t care about “root causes”. They don’t exist (multiple things
conspire for failures to happen). Also, kind of moral/blame-ish.
• Ask instead: if we made an incremental improvement in area A or area B,
which would prevent the broadest class of problems going ahead?
• Much better conversation. Answer here is clear: monitoring.
33. Photo Credits
• “Robot de Martillo”, by Luis Perez, http://www.flickr.com/photos/pe5pe/2454661748/
• “Helios-Factory floor”, http://commons.wikimedia.org/wiki/File:Helioshall2.jpg
• “old machine”, by Jun Aoyama, http://www.flickr.com/photos/jam343/1730140/
• “Axe Marks The Spot”, by Alan Levine, http://www.flickr.com/photos/cogdog/4461665810/
• “Failboat Has Arrived”, http://www.rotskyinstitute.com/rotsky/wp-content/uploads/2008/02/
failboat2.jpg
• “14 plugs but only 6 sockets”, by Jason Rogers, http://www.flickr.com/photos/restlessglobetrotter/
2661016046/
• “Life is like that… a fork in the road… decision required”, by Roger Price, http://www.flickr.com/
photos/rwp-roger/6687024883/