And the award for the BEST programming language goes to...

The answer is of course, the one you know. But dig a little deeper and ask yourself, why do we get so hot under the collar about programming languages? Why all the dogma? And what really is the best programming language?

And the award for the BEST programming language goes to...

How we love to hate

Developers love to have their favourite language. Perhaps more accurately, we love to hate the "worst" language.

For the longest time that was, of course, PHP.

Lots of folks dunk on JavaScript today, and we often choose to use other languages (like TypeScript) instead, treating JavaScript as a runtime target. Remember that Kotlin initially became popular as an alternative to Java too.

Last month, Github announced that Python was now the most popular language on their system. That is probably largely driven by the surge in AI and Python's traditional role in machine learning circles.

Popular here just means most common, rather than a statement of preference. If you want a perspective on how much the love the language gets from developers, you'll need to look at StackOverflow's annual survey.

À la mode

As a trainer in the Instil Learning team, I get to live the dream and all the languages. Just in the last month alone, we've run courses in Kotlin, TypeScript, Python, Java, and C#. There's really not much to separate them. Our choices are mostly fashion.

Bite code had it right in XML is the future

I learned that geeks think they are rational beings, while they are completely influenced by buzz, marketing, and their emotions. Even more so than the average person, because they believe they are less susceptible to it than normies, so they have a blind spot.

We tend to have shiny object syndrome, chasing after new technologies when reliable, well-known, trusted solutions already exist. We've previously posted a similar link, but here's another post arguing for just using Postgres.

If you see a college student or fresh grad using MongoDB stop them. They need help. They have been led astray.

But let's get back to talking about languages.

The static divide

Opinions about things like dynamic vs. static types regularly divide programmers, with static type support often being cited as more scalable or safer. The research might not back that up.

They look at bugs in production JavaScript systems, then went back and added type annotations to the buggy code to see whether static typing would have caught the error. The answer was "yes" in 15% of cases, which is either high or low depending on your perspective. Their experiment doesn't tell us whether static typing is cost-effective…

There's also a literature review on the benefits of static types, but:

the main takeaway I have from them is that, under the specific set of circumstances described in the studies, any effect, if it exists at all, is small.

The consensus seems to be the researchers did a bad job rather than there is no benefit – or, I’ve made up my mind and no contrary evidence will persuade me.

So, what's the best programming language? Well...

I think one of the signs of being a senior-level engineer is recognising nuance and appreciating that there are no absolutes in software development. The clearest way to see that is to start talking about choice of language. Hate and disgust, even for PHP, is a sign you have more learning to do.

Roy Straub said it well in “It Depends

Whether you see them or not, trade-offs are there. If you don’t see them, that’s a good indicator of a blind spot. Consider it an invitation to dig deeper.

And it's Python. Python is the best programming language. 🫣

Article By
blog author

Ryan Adams

Head of Learning