Programming languages are tools, not a religion

Brandon Lim
Layhill L. Tech
Published in
2 min readJan 17, 2023
Photo by Florian Olivo on Unsplash

As professional software engineers, we may find ourselves in a situation where we argue or attempt to justify to our peers or even management about which programming language is better. Emotions may run wild.

This could arise as a result of our personal attachment to the language because we preferred the way it represents certain concepts or construct. It might be because of its vast ecosystem such as JVM-based languages. Or the language might sport a bunch of features not found or implemented “properly” in other language from our perspective. Everyone will have their own justification of why a language is better.

Personally, I had loved Java because it was the language that made sense to me and I was exposed to it first. I had some exposure to Javascript, ASP.NET and C++. I hated Javascript and ASP.NET because they seem unintuitive to me.

And with each generation of programming languages, we gain more flexibility and capabilities in the way we manipulate electronic devices we call computers to perform actions and tasks to make our lives easier and more productive. We created software that do things unthinkable decades ago: it allowed us to communicate with each other over vast distances, run the global economy or improve our daily lives with different form of entertainment (video, games, audio).

So, we might find ourselves gravitating towards newer languages as we progress further in our career, gained better understanding of the problems we try to solve and gained more experience.

But, as I went further in my Software Engineering career, having been exposed to other languages such as C#, C, Python and Typescript, I saw the truth:

Programming languages are tools, not a religion

We need to separate ourselves from the tools we use if we want to be good at what we do. We want to be professional software engineers who solves problems that our customers are facing.

Therefore, it is important for us to put emotions aside and ask ourselves if a particular language or framework is suitable for the problem at hand or do we need something else.

--

--