With over 700 programming languages, it's only natural that some rise to the top while others fall into obscurity. But can a programming language really die?
There are as many programming languages as there are computer scientists with the desire and desire to write something new. Languages come in all forms, from languages that try to follow programming paradigms to languages that are outright satire.
Considering that there are around 700 programming languages (that we know of), it should come as no surprise that some of them thrive, while others are relegated to the dark corners of IT history.
We all know the success stories of C, Java, C++, Python and JavaScript. All of them are programming languages that have stood the test of time and have become some of the most common and renowned names in the field.
It's not hard to see why they were successful. These languages have a foundation/company that supports them with funds, a strong and growing community that creates courses, libraries and content for the language. And most importantly, they just work.
But what about the other 680 programming languages? Are they all dead? Are they doomed to disappear over time? Well, not exactly.
Quality is not everything
The fate of a programming language is closely tied to its community. It doesn't matter the size, but the passion and commitment. A strong community, even a small one, can keep a programming language running for decades.
Take R, for example. A language perfectly suited to mathematics, R is not the easiest to learn. It's verbose, complicated and, frankly, inefficient when compared to MatLab and other competitors.
What makes R such a great language is the community. Most developers who build libraries for R are academics from fields such as mathematics, biology, psychology, and so on.
In turn, this means that the libraries, while far from perfect, have some of the most elaborate methods available. For example, if you want psychometric tools, nothing beats the robustness of the psychological library. And yes, this includes other more popular languages with similar uses, like Python.
A more complex example would be PHP. Even its most ardent supporters have to admit that it is one of the most peculiar programming languages on the market. However, it is still extremely popular and the reason is twofold.
First, PHP was adopted at a time when we had few backend technology options, so everyone jumped on what was the most user-friendly alternative available.
Since then, the web development services market has been flooded with alternatives like NodeJS and Python frameworks like Django or Flask. But PHP is still by far the most used backend scripting language. Why is that?
On the one hand, PHP is the backbone of the internet, as 79% of web pages use it . It has stood the test of time, and even if developers don't like it, that's not a good enough reason to migrate your entire backend to a new solution.
Secondly, it is the community. Just a look at the PHP repository shows how many people dedicated to the language are actively working on it. A complicated language with a healthy, active, and helpful community is a better experience for a developer than working with a perfect language that they have to learn on their own.
Carving a Niche
Other programming languages survive by solving a very specific problem or finding their place in a certain ecosystem. Objective-C and Swift are perfect examples.
Both are supported by Apple and actively used for development within its ecosystem. Neither sees much use outside of that, but considering how big Apple's share of the mobile market is, that's not a problem.
Another great example is Clojure, a functional programming language that runs on the Java platform. It may seem strange that the community, with Java being the poster child for object-oriented programming, needs a functional programming language. Even so, Clojure has found a rabid fan base among senior developers.
Some programming languages thrive, not because of their popularity or readability, but simply because, for all their quirks, they do something that no other language can accomplish.
LUA is an unremarkable scripting language – it lacks functionality and is relatively slow. But if you want to write a screenplay quickly, there's nothing like it. What it lacks in tools it makes up for in friendliness and simplicity.
The lesson here is that a programming language doesn't need to be all-purpose to thrive. Just do one thing and do it well.
Can a programming language really die?
It's common for people to say that the newer web development programming languages are where it's at and that older, less popular programming languages are dead. But that's not the case. As long as there are people out there who know about them and computers that can run them, they will still be alive and kicking.
Apple has done everything in its power to push developers towards Swift, but there are thousands of developers out there who still know and work in Objective-C. The accumulated knowledge and time invested in language development do not disappear spontaneously.
If you asked 99% of software developers where to start, it's very unlikely anyone would even think to mention COBOL — and that's even though millions of lines of code are written in COBOL every year.
The truth is that although the language may be obscure by today's standards (it was created in 1960), it is the backbone of very important legacy systems around the world. If you've used your credit or debit card in the last few hours, thank COBOL, as it is one of the most common languages in financial systems.
Still, languages can fall out of favor or be forgotten in place of other alternatives. Ruby used to be extremely popular thanks to Ruby on Rails, but thanks to the huge growth in the web development market, it doesn't make a splash like it used to.
What does this mean for you?
If you're about to undertake a new project, it's tempting to stick to what's popular. But just because a language is widely adopted doesn't necessarily mean it's right for your project.
There's a reason why senior developers often shy away from popular programming languages. After building their careers around these languages, they feel constrained by their limitations and prejudices. So they look for less popular, but still very powerful alternatives.
No one can take away what we achieved with C++, and it's a language that won't disappear. But why don't we try Rust? Among the obscure and sometimes mysterious gems are waiting to be found.
Source: BairesDev