Most popular programming languages in 2018

By Chris Fontes

Programming languages come and go. There always seems there is some new, “hot” language that is all the rage. With constant change how do you decide what language you should use to write your software?

What’s popular?

How do we even know what is popular at the moment? There are a few different methods to determine what is being used in the real world. You can search job boards and see what companies are hiring for. You can follow news sources and get a feel for what is in the news. Or, you can get statistics from popular code-related sites such as a code repository host like Github.

Github language popularity

For example, in the fourth quarter of 2017, Github reports the following for the top five programming languages:

  1. JavaScript
  2. Python
  3. Java
  4. Ruby
  5. PHP

Javascript holds the top spot, and has for some time. It doesn’t look like it’s going anywhere anytime soon, either. (It is important to note, however, there are several frameworks that use Javascript and this report lumps them all together; we could easily have an entire article on JS frameworks alone).

Python currently holds the next largest market share, with Java, Ruby and PHP rounding out the bottom three. While Javascript usually reigns king on lists like this, the next four trade places with each other often, but the members are usually the same. Sometimes a language like C# (currently ninth) or Go (currently 6th) will jump into the top five.

Does popularity matter?

Popularity does matter, but not as much as you’d think. Ultimately, you want to have code base that stays relevant, in terms or language support and developers who still write that language. For that reason, you want to consider a language that has been around for a bit and appears that it will be around for a while longer.

different programming languages

Additionally, the more popular a language is, the better the chance there’s some great open-source solutions to help. You don’t always have to reinvent the wheel, and it’s best practice to use existing frameworks and packages to both expedite and stabilize your software.

Should you select a language on popularity?

The answer is an unequivocal no. Popularity should play a part in the decision, but there are many more important factors to consider:

  • What is the intent of my software?
  • Who are the intended users?
  • In/on what environment will the software be run?
  • Should data be centralized or localized?
  • How important is security? (think Flappy Bird vs. Software to manage a power grid)
  • How important is speed?
  • What type of data will the software be working with?

Each of these questions will point toward a language(s) that best suits your needs.

Ultimately, you want to approach these questions with a sense of language agnosticism, then let the requirements hint toward the answer. If after careful consideration of all factors a few different languages would fit the requirements, there is a good chance the lead developer will have an opinion on which they prefer.

This article is edited from its original appearance on Surge is a software consulting firm that offers US-based, elite engineers on demand. Surge is a company of Catalyte.