Would Heu-risk it? Part 28: Three is the magic number
One of the easiest tools to start using! Let us dive straight into the verse:
“The rule of three you should apply To things like: times you should ask why Or pair of eyes that should something view And alternative scenarios that could be true”
So, what does it mean?
The rule of three is my second most favourite rule. (The first one being the Pareto principle)
This can be applied to, among other things, having 3 different perspectives look into a problem and talk about solutions, trying to dig into at least 3 layers of “why” to get to the root of something instead of accepting the first “because” and trying to come up with 3 solutions to a problem (or explanations to why something happened).
The concept behind it, for me, is that in order to reduce the risk of biased decisions I need to force myself to apply the thinking brain instead of the reacting brain. If you haven’t read “Thinking fast and slow” by Daniel Kahneman, I really recommend it! In it he talks about the two different systems ruling us: One is the energy-efficient, fast system that is also biased, over-values how smart it is, takes shortcuts and allows us to get through the day without (hopefully) being exhausted by the vast number of decisions we have to take each day. It’s the one that allows you to “know” how another person is feeling when you see their body-language. The other is the conscious, deliberate, thinking things through but is slow, energy-consuming and we avoid switching to it if we don’t have to. This is the one that kicks in when you try to solve a hard logical puzzle or recognize that the sound that you just heard is a particular bird that you learned about in school.
When we are faced with a problem, our instinct is to solve it with minimal energy. This could, as examples, be by doing it in a way we have done before, by doing it in a way you are very comfortable with, by doing it the way you would have wanted it to work or by doing it in a way that you just read about/learned. It’s easy. It’s fast. But it might not be right.
Three different perspectives
I like a method called Three Amigos. In short: When trying to solve a problem: Have someone with a business perspective, someone with a testing perspective and someone with a developer perspective talk it through. That way we lower the risk of getting stuck in one way of thinking, one way of interpreting things and we come to a better common understanding of both problem and solution.
Three layers of why
Originally it was “The five whys” and comes from Toyota, but for some reason I’ve always known it as three. Not sure why but the principle is the same. Don’t accept the first, seemingly obvious, answer – try to get to the root of the problem. Sometimes three is enough, sometimes you might have to go to seven (or more?). Say you get a request from Customer Service that you add a function that looks up a personal number against some official service and returns the corresponding name. First why might get you that another team needs it in order to show that name on a web page. Second why might get you that they want the customer to confirm their identity before submitting the request. Third why might get you that people enter the wrong personal number and we end up sending one person’s data to another person. Etc. The root cause might lie even deeper but I hope you understand the concept.
Three explanations or solutions
Did I mention that we are lazy and want the easy solution? Because we do. We instinctively go for the easiest solution and we are biased against looking at alternatives. If we force ourselves to come up with at least three, and prove and/or falsify those, we usually end up with a better solution. In my Speed-testing workshop (every time I use Bling-R-Us in a workshop actually), one of the simple “traps” I put in there is this short explanation of the discount system:
1-2 items No discount
3+ items 10% discount on the total price
Every 5th item Free!
Usually when doing the exercise, people make one of these assumptions: 1: By 3+ they mean more than three. The first line is wrong. 2: By 3+ they mean three and more. The second line is wrong,
Can there be more? Probably. To me it signals that the person writing the requirement needs to explain what they actually want to achieve because I have so many questions just by that short paragraph!
Another aspect of this is in our reaction to other people and their actions. We read so much into what people say, look and do and I encourage you to try the save method next time you get hurt or upset by someone. Are you sure your interpretation is correct or can there be other explanations? Try to come up with at least three and prove/falsify them. Yes. A lot of times you will still decide that they were indeed jerks, but it will save you some unnecessary sorrow/anxiety/anger if you try to not react on your first explanation. They might not have been laughing because they think you looked stupid, it might just be your imagination.
This one was a looong time ago so the details are a bit vague but I hope I can explain the situation anyway. We got a request to add a column to a report that we had in our system. It was a small change but it would add a lot of complexity to the code (due to where/how the data was stored) and would still require a release and … it was really strange. It was a report with basically all companies that were connected to a certain product and they wanted us to add which ones were new or had changed addresses. Hm, ok. So we asked why. And the answer was that they needed it to send it to an external partner.
We still did not really get it. We could do a way better solution pretty easily. So we asked why again.
And learned that the report was sent to the external partner who then took all the new and updated ones and moved to another list that they had. Manually, from an alphabetically sorted list.
Ehm. This does not sound like a good solution. It must be so much unnecessary manual labour. We asked why again
And after a few more why we realized it was because “This is the way it has always been done!” in combination with them having some additional info in their system. Information which, incidentally, we could also provide them with, if they only told us they needed it.
We suggested either sending them a complete list with everything they needed, a list sorted after latest update or only sending them the new and updated ones. Not a lot of extra work for us but much much happier people all around!
Quote of the day
“If you can’t think of at least three things that might be wrong with your understanding of the problem, you don’t understand the problem”
From “Are your lights on” by Gerald M Weinberg and Donald C Gause