The popularity of the programming language has long been a hot topic among developers. Just because a language is popular doesn’t mean it’s the best or most suitable, but it does carry some message about why it should be used. Choosing a less popular language can be dangerous, but it can also be a lot more fun.

What do we mean by ‘popular’ anyway?

Sites like Tiobe and LangPop provide monthly analysis lists of programming language popularity. Their evaluation methods are well-documented and typically boil down to an eclectic mix of analyzing career page mentions, search results, website coding, book listings, and other online language name expressions. It is not strictly a pure statistical method, but rather a practical solution to what is a difficult metric to measure. The lists usually contain over 100 languages ​​and I’m not sure where all these fringe languages ​​are used.

What do we understand by ‘programming language’?

You also need to define the ‘programming language’ itself, as it would divide languages ​​into at least two groups. I would classify a parent language as one that could create an entire application on its own, eg C#, Java, PHP, C++.

Then there would be ‘support’ languages ​​like JavaScript and SQL. There is no doubt that these are languages ​​in the strictest sense, but I would not consider writing an entire application in them. But whether you use C#, Java, or PHP to write a website, I’m pretty sure you’d use JavaScript and SQL somewhere within the application.

What do we understand by ‘Popularity’?

As mentioned above, various criteria are used to determine which language is the most popular. But is that popular because it’s commonly used, or is it popular because programmers like it? And in what context are we? Are we talking about building websites, building web services, or building Windows apps? The choice of ‘popular’ would vary between them. However, choosing a language just because it’s suitable for the application we’re building could be a mistake in itself.

So is ‘popular’ important?

If you are involved as a professional in the software industry, yes! There are a number of reasons why.

As the owner or manager of a software company

It is much safer to use commonly used languages. You will find that it is much easier to hire programmers, easier to replace a programmer, easier to hire programmers, easier and cheaper to obtain COTS (Commercial Off The Shelf) software components, and more training and knowledge will be available.

Using less popular languages ​​has risks. You may have an expert programmer now, but when he leaves, it will be difficult to replace him. Also, the company may have to write almost everything itself, including complex drivers. And the client may not buy into applications written in relatively unknown languages.

Some companies like to take chances and take chances; it may work for them. But when a company has accumulated years of software assets written in a given language (such as modules, classes, assemblies, programmer knowledge/experience, and training resources) and has invested heavily in the associated technologies (servers, platforms, databases, ) It is extremely difficult, risky and expensive to move the track. That is why the same languages ​​are always at the top of the popularity list.

as a developer

There will be more jobs available if you know the ‘popular’ languages. Java and C# programmers are in constant demand and probably will be for quite some time.

The main problem for developers is that they get bored and want to do something new. Many of the PHP developers I know would prefer to use Ruby to code their sites. But Ruby’s popularity is actually stagnating (even declining) as opportunities are not available due to company owners’ fear of switching to a new technology.

So what programming language should I learn?

At the moment I recommend that you learn one of the most popular: C#, Java or PHP. That will give you a good chance of getting a job and these are highly respected. You will need the supporting languages ​​like SQL, JavaScript, jQuery, XML, HTML, etc.

Don’t ignore learning a second language, something like Ruby, Python, Groovy, F#, Erlang, Scala, Haskell, etc. They are interesting and you don’t know which one will be the leader in the next few years. Look at their relative movement on the popularity charts.

There is also a financial consideration. In my recent experience of looking at the UK contract job market, C# programming jobs pay (on average) 50% more on a daily rate than PHP.

The times change

I started with C, then C++, then Visual Basic became very popular until C# came along. I went from Windows GUIs to Internet applications. C# is still my primary language, but now I find myself doing a bit of PHP as well.

In the early days, we had a decade of debates about which was better between Java and .NET until everyone realized there would never be a winner: both are great. Nowadays, the argument has moved more towards which is the best PHP MVC framework.

We are also in an age of hybrid systems. Thanks to web services, the back-end can be in one language and the front-end in another; Also, with MVC we are using templating languages ​​like Razor and Smarty. Combined with the power of modern platforms, the choice of language may slowly dwindle and become more irrelevant.

At the end of the day, try to be happy in what you do. There are still jobs and opportunities for other languages, but fewer than the mainstream.

Leave a Reply

Your email address will not be published. Required fields are marked *