Fallacies of Software Development
- Not Invented Here
- Strong bias against ideas from the outside.
- Often excused via the sunk cost fallacy.
- Ikea effect
- People would pay 63% more if they assembled it.
- The mere-exposure effect
- Tend to prefer things we are familiar with.
- Part of dogmatism around programming languages.
- Developers tend to think time began with the first language learned.
- “That’s how we’ve always done it.”, to which you can ask “Does it have to be this way?”
- Customers want features and functionality.
- Never be afraid to ask why.
- We can get myopic.
- Never dismiss the power of a fresh perspective.
- Challenge the status-quo.
- Encourage junior devs!
- XY problem, also known as the “jump to conclusion mat”.
- We tend to go straight to a solution.
- Often before we really understand the problem.
- No amount of testing, not type system, finds misconceptions.
- Rather than work around a problem? Avoid it in the first place.
- Sometimes we focus on the wrong details, and make wrong assumptions.
- Ask why.
- Take the time it takes so it takes less time.
- Check your assumptions.
- R-mode vs L-mode in our brain, like forest vs trees.
- R-mode processing: search and retrieve.
- non-verbal
- not directly controllable
- runs in the background
- Distract the L-mode: take a walk, take a shower, sleep a bit.
- Be ruthlessly programatic. Adapt to the current situation.
- Beware of the person who knows everything. They don’t, and they can be dangerous.