Why are there so many programming languages? It might sound like a dumb question to some and a genuine question to others.
The question “Why are there so many programming languages” can actually be branched into two, “Do we want so many programming languages?” and “Do we need so many programming languages?”.
Do We Want So Many Programming Languages?
The answer is no – we do not want so many programming languages. In fact, in an ideal world where everything is perfect, we might just have had one programming language that would do analysis, perform calculations, alter user experience, sort out the performance and accessibility issues and everything in between. This isn’t an ideal world, and we need more than a few programming languages to perform all these tasks.
Do We Need So Many Programming Languages?
Java can develop software and run infrastructures, but it cannot be used on its own to develop websites. HTML can be used to develop websites, but cannot be used to run infrastructures. Each language serves a specific purpose, so yes, we absolutely need them.
What’s the Same About Programming Languages?
All programming languages are the same when we consider the purpose that they are serving. Whether it is C, C++, Java, Python, PHP or any other programming language, they all have the same objective of making the user experience better. It’s not just about creating websites or sending texts and emojis on social networks. What happens at the backend that enables you to send those texts and socialize is equally important.
What’s Different About Programming Languages?
What makes every programming language different is the way that they do things, the way they operate and the way they deliver the user experience. You cannot make a programming language and hope that it will work for everything under the sun.
Take vehicles for example. Why are there so many different types of vehicles? Some run fast, a few can be used as public vehicles, some are perfect for a single person, while others work well for a large family. So, why can’t we have a car that fits everyone’s needs equally? The vehicle would need to be large enough to fit a family, but a single person may not want to pay more in fuel to run a larger vehicle. In the same way, if you’re going to develop iOS apps you don’t need to learn Java, Objective C, Python and C# – you only need to learn Swift. Why would you buy a vehicle meant to fit a family when you only need enough to get yourself to work?
We have different versions of cars the same way we have different programming languages. Some of them are really good at performance enhancing, others work at designing, a few make sure that a lot of people can use the same service at the same time and put all of them.
What Programming Languages Should I Learn?
The number of programming languages that a person should learn depends solely on his/her interests and his/her needs. You do not have to learn every programming language available to you, instead you could learn one or two and get really good at them. If all the operations of Facebook could be handled by a single person, Mark Zuckerberg would have never paid millions to hire experts from all around the globe. He needs people that are really good at their chosen language, not someone who knows a little bit about a lot of languages.
The point that we are trying to make is that from an opportunities standpoint, learning a single programming language and becoming an expert is far better than being the jack of all trades and master of none. So pick the language that suits your interests. Practice regularly and be eager to learn and evolve as the language evolves. If you do that the question, ‘why are there so many programming languages?’ would ultimately be a question you don’t need to concern yourself with.
If you’re unsure of which programming language you want to learn, you may want to make your decision based on the need for experts in that language and how much they get paid. Read more about this in our article on the Top 7 Programming Languages to Learn.