Why engineers can’t be rational about programming languages

November 5, 2025

Paper-cut style illustration of a man in glasses and a suit pointing to a red "HYPE" sign on his left, with a white "LOGIC" sign on his right, set against layered blue background waves.

A programming language is the single most expensive choice a company makes, yet we treat it like a technical debate. After watching this mistake bankrupt dozens of companies and hurt hundreds more, I’ve learned the uncomfortable truth: these decisions are rarely about technology. They’re about identity, emotion, and ego, and they’re destroying your velocity and budget in ways you can’t see until it’s too late.

Source: Why engineers can’t be rational about programming languages | spf13

For many, many software developers, the programming language we use (even if not consciously) says something about ourselves and our identity. This can border on the tribal.

It’s also a way we often gatekeep, where certain languages are considered inferior to others and therefore the users of those languages are considered inferior to the users of “real” programming languages.

A big challenge is when that interferes at a more senior level in the kind of technical decisions we’re making. And this is a salutary tale. But I think it’s important to note that we are all subject to biases like this. And indeed, what makes something a bias is it’s something that we can’t see in ourselves as much as it can be quite straightforward to see it in others.