Biases that creep into our decisions... and into our projects
23-09-2025
Lately I've been thinking about those ideas, those mental biases that "railroad" us into making decisions both in personal life and in the field of development. Being aware of these issues would fall within the scope of reflections prior to action, not putting labels and other issues that we have discussed on different occasions. Let's discuss these biases, relate them first to daily life and present their reflection in the world of development.
- Anchoring bias: Tendency to base decisions on the first information received (the "anchor"), even if it's irrelevant. Example: seeing a high price first makes another lower one seem like a bargain.
In the development field, this could present itself as a client mentioning in the first meeting: "I thought this system should cost around €10,000".
Although the team calculates that the project actually requires €80,000, the figure of €10,000 remains "anchored" in everyone's mind.
- Availability heuristic: Judging the probability of an event based on how easily we remember examples. Example: after seeing news of plane crashes, we overestimate the risk of flying.
This bias could present itself when a company application suffers a high-profile security attack, managers believe that cyberattacks are more frequent than they really are and over-dimension security resources instead of other priorities.
- Bandwagon effect: Believing or doing something just because many people do it. Example: following a fashion because "everyone wears it".
This has been seen in many companies in the sector, some begin to use microservices and the company in question decides to migrate their entire architecture to microservices without evaluating if it's really the best for their product.
- Outcome bias: Judging a decision only by its outcome and not by how it was made. Example: criticizing a strategy because it went wrong, even though it was well thought out.
Looking at it from the other extreme, we could talk about a team that launches software with very few tests but has sales success. Management concludes that testing is not so necessary, instead of recognizing that it was luck or external factors.
- Survivorship bias: Focusing only on successful cases and forgetting the failed ones. Example: believing that being an entrepreneur always leads to success because only success stories are told.
This is clear with company founders who only analyze cases of successful software startups (Google, Microsoft, etc.) and believe that with effort and talent they will also achieve it, ignoring the thousands of projects that failed.
- Halo effect: Forming a positive or negative global impression of someone based on a single characteristic. Example: thinking that someone attractive is also intelligent.
Sometimes a developer is very charismatic and presents ideas well, and is automatically considered a great programmer, even though their code has many errors.
- Fundamental attribution error: Explaining others' behavior by their personality and our own by circumstances. Example: if someone is late, "they're irresponsible"; if I'm late, "there was traffic".
In the development field, if a programmer from another team delivers late, we think: "they're unprofessional". But if our own team delivers late, we justify it: "the client's requirements changed"
- Sunk cost fallacy: Continuing to invest in something because we have already invested a lot, even though it's not worth it. Example: continuing to fix the family car only because we have already paid for many expensive repairs.
The classic case of a company that invested years developing its own framework that is now obsolete. Instead of migrating to more modern technologies, they continue investing time and money just because "we have already invested too much in this"
Keeping these issues in mind, what importance should we give to issues like self-reflection, active listening, "labels", etc.?
Surely these situations resonate with you, with other examples, in other projects or in daily life. Often we are not aware of it and it passes us by how much our decisions are influenced by mental constructs.