How Cognitive Biases Affect Developers




Complete Developer Podcast show

Summary: <br> “Critical thinking is an essential skill in our age of constant information (and misinformation), but our own subconscious biases don’t help matters much when it comes to sorting out truth from viral nonsense.” ~ Alan Henry<br> Alan Henry created a great infographic of 10 Cognitive Biases in Decision Making on LifeHacker. BJ liked the information so much he built an episode to explain cognitive biases and ways to avoid them to fellow developers.<br> Each day we make over 30,000 decisions most of which we do not put much effort into thinking about. There are many influences on us that affect our decision-making. The following are just a few of the more pervasive patterns that affect developers when making important decisions about code or life.<br> <br> Episode Breakdown<br> <br> * <br> 15:52 Bandwagon Effect and Confirmation Bias<br> “You see it on the internet all the time, the echo effect. Take a look at Tumblr for example.”<br> The bandwagon effect comes from the saying, “hopping on the bandwagon” which means to do something because the people around you are doing it. Popularity of an item can make it seem more desirable look for example to reviews on shopping websites and how they influence the popularity of an item<br> Along with jumping on the bandwagon we have a tendency to prioritize information that confirms our own beliefs. We will seek information that supports our own preconceptions. Both of these are popularity based, the popular opinion influences our decisions.<br> “This is what internet marketing, or really any marketing is based on.”<br> To combat these biases avoid relying on a few popular opinions without first considering a broad range and weighing the information available. Sometimes opinions are the only available information such as product reviews on Amazon. In these cases look at both positive and negative reviews of multiple similar products.<br> <br> * <br> 21:40 Reactance<br> “It’s the opposite of the herd mentality.”<br> This is the rebel without a cause mindset of wanting to do the opposite of what is is advised. Many times it falsely claimed to maintain freedom of choice but in reality the advice conflicts with our own preconceptions.<br> The trick to avoiding reactance is to leave ego at the door. Ask yourself, “Why am I rejecting the advice?” If you can state a solid reason then you are not a rebel without a cause.<br> These first two points tie in together as examples of not thinking for yourself. Where the first is following the crowd or your own preconceptions the latter is rejecting the crowd for no other reason than to not follow the crowd.<br> <br> * <br> 26:05 Availability Heuristic<br> In decision making often we will base our choices on the results of similar decisions we’ve made in the past. Ones that easily come to mind or on quickly retrievable information. There is a tendency to give higher value to easily remembered information.<br> “This can very much skew your decision on anything.”<br> Combating this involves substituting intuition with data or not relying solely or heavily on intuition. When making a decision assess all the available data for that instance.<br> <br> * <br> 30:37 Dunning-Kruger Effect<br> “One of the painful things about our time is that those who feel certainty are stupid, and those with any imagination and understanding are filled with doubt and indecision.” ~ Bertrand Russell<br> The Dunning-Kruger Effect states that unskilled individuals tend to overestimate their abilities. The corollary to which is that skilled individuals underestimate their abilities. In both cases it is a failure to adequately assess competence. Junior developers can know just enough to get in trouble and have a sense they know much more whereas more senior developers may suffer from impostor syndrome.<br>