Top 10 Programming Languages for May 2017

The way I look at it, programmer's source of truth is StackOverflow, and it's been this way for years now. Therefore, I did some research over there and looked into the amount of questions posted for each of the top programming languages, to understand the trend and extract the 10 most popular programming languages for 2017.

The results in a summarized chart (January to April, 2017):

Some may argue that the amount of questions in StackOverflow doesn't necessarily means that the language is as popular (maybe it's just very complex to understand?). To eliminate that concern, I also took the top 5 languages from this rank, and looked into their interest trends on Google Trends. The results were very similar. The large difference though was between Javascript and Java. It seems there is a battle there that might be hard to settle (will be great to hear your thoughts on that in the comments).

So without further ado:

#1 - Javascript

Javascript has conquered the programming world the last couple of years. There is no software engineer that didn't hear about someone writing a NodeJS application at the backend side, or writing client side Javascript using innovative frameworks such as AngularJS 4 and React. Also, with the rise of Javascript, new methodologies such as Redux came into play, to simplify and standardize how we write code.

On a different note, Javascript is a lot of fun, so try it out 🙂

#2 - Java

Java is very popular for many years now, and stays that way in 2017 as well. There are several common frameworks used with Java today, but the most popular one without a doubt is Spring. The latest Java 8 came with many new features that takes the programming language and its frameworks to the next level.

#3 - Python

It's no surprise that Python takes one of the top positions in this article. It's the de-facto standard language for most new startups out there. Besides being used in writing backend software and web applications, it's also commonly used by DevOps for writing operation scripts and applications. From my experience, it's one of the easiest programming languages to learn, so take your shot at it. It doesn't mean though that it's very easy to master it, so learn the details carefully.

#4 - PHP

Over the years, I overheard many programmers saying that PHP is dead. Well, it took the 4th place, so what would they say about that? PHP is still very commonly used, especially as a bundle with MySQL databases. The open source bundle is very popular among startups and small companies, while some of them stick with this technology stack even when they become large companies. PHP is used by huge companies such as Facebook, so if you like it, don't listen to anyone else, learn it and master it!

#5 - C#

Finally, we reached Microsoft's programming language. In my opinion C# was crucial to the success of high-tech industries around the world. It brought some innovation to the world, which allowed other languages to evolve and compete with. I don't think that C# is one of the leading ones out there (depends on which country), but it definitely paved to many other programming languages and features.

#6 - C++

This programming language is not at the top of this list, but it's definitely one worth learning. There are no many C++ experts these days, while there are still many technology companies still working with this programming language and won't leave it any time soon. It's very popular in the embedded devices world, chips, etc. Also, many gaming / backend servers that require high performance are written in C++.

#7 - R

Open source programming language and software environment for statistical computing and graphics. Popular and useful for these aspects, but not as common as others. If it's one of the first programming languages you are about to learn, I wouldn't recommend R. I would go for one of the more broad use languages such as Javascript / Java.

#8 - Swift

Swift is a relatively new programming language, released late 2014 alongside XCode 6.0. Apple decided to replace objective-c with Swift, which is now the industry standard for developing native iOS applications for Mac / iPhones / iPads and other Apple devices. Apple's goal with releasing Swift was to simplify programming native iOS apps. They described it as "Objective-C without the C" (where C is considered to be a complex programming language).

#9 - C

One of the oldest programming languages, which are still commonly used. From my experience, C is mainly used in legacy systems, or where hardware requires that (in terms of memory, performance and other aspects). As I mentioned with "R", if you are new to the programming world, I would start learning a different programming language, as C has high complexity and at today's world, low reward and popularity, relatively to other languages.

#10 - Ruby

Ruby was and still is very popular, but not as much as other languages such as Python and Java. It's very simple to learn and has a lot of cool and innovative concepts. Give it a shot one day!

#11 - Go

Well, I know it's a "top-10" article, but I had to put the 11th one in here, especially because it's Go. Google describes it as "an open source programming language that makes it easy to build simple, reliable, and efficient software" - and I agree. It's not as common as others yet, but I bet it will become more and more popular in the future.

References

If you are wondering how I got the information from StackOverflow, this is the query I used with the stackexchange database.