Here at Yalantis, we try to be in step with the times – or even a step ahead. That’s why we’re constantly looking for new technologies to use in our projects. Our developers learn new programming languages and frameworks when they catch wind of a hot trend.
In our courses, we teach students Golang, Node.js, and Swift in order to share our knowledge and contribute to the local development community. We also hold networking events like Web crowd to push the boundaries of our expertise.
But while we’re looking for new technologies at Yalantis, hundreds of thousands of programmers all over the world are also deciding which languages to learn to make sure their skills stay in demand. Likewise, people with ideas for apps wonder which languages to choose for development.
There are multiple rankings and indexes of programming languages. How can you avoid getting confused by the contradictory information they provide? By choosing the most reliable one.
Read also: Why Use the Go Language for Your Project?
What programming language index is worth trusting
We wanted to find out which programming languages are the most popular globally, so we looked at a variety of rankings and indexes.
One of the most popular is TIOBE. The TIOBE Programming Community index is based on the number of web pages that include the name of a given language. But this indicator doesn’t tell us much about the number of people who actually choose to learn a language and use it to create programs.
In this article, we’ve selected the most popular programming languages at the beginning of December 2019 according to GitHub’s PYPL (Popularity of Programming Language) index. So, we'll view this list of the top languages but let’s figure out first what the PYPL index based on.
How does the PYPL index work?
The PYPL index is based on the frequency of Google queries for tutorials. GitHub chose this algorithm based on a simple premise – the more people look for tutorials for a given language, the more programmers are choosing to learn it, and by extension the more popular it is.
Initial data for PYPL ratings was taken from Google Trends and analyzed using pyDatalog. Linear regression (which shows the dependence of one variable on another) over the last 12 months shows the annual trend.
Let’s take a look at the best programming languages at the end of 2019 according to the PYPL index.
Swift is an open-source programming language created in 2014 as Apple’s homegrown language for macOS and iOS apps. Swift has replaced Objective-C and has become the number one language for Apple-related software.
Apple is likely to push Swift forward, so if you’re looking for an Apple-specific development platform, consider Swift a must-know language.
According to the Apple website, Swift is more than 2.6 times faster than Objective-C and more than 8.4 times faster than Python. It’s also easier to learn than Objective-C. Thus, a lot of newcomers to iOS development are choosing to learn Swift straight away.
In 2015, Lyft rewrote their entire iOS app in Swift and saw a great increase in performance. Giant tech companies such as LinkedIn, Vimeo, Twitter, and Fitbit have also chosen Swift instead of Objective-C.
The fact that Swift is open-source means that it can be expanded to other platforms and can be used for web applications.
Apple has made it easy to run Swift on as many platforms as possible. You can even write applications in Swift and port them to Android and Windows.
During WWDC 2019, Apple announced SwiftUI. It provides a declarative UI structure design framework for all Apple platforms.
Read also: Why Is Swift Faster Than Objective-C?
A lot of experts predicted incredible growth of the Swift language and that it would outrank Objective-C in popularity. Their prophecy came true. But to date, Objective-C is still popular.
Objective-C is part of the C family. C was so popular and influential that it sparked the creation of similar languages for different purposes and with additional features. Objective-C was created as a general-purpose object-oriented programming language.
While many iOS apps are written in Objective-C, it’s time to consider moving them to Swift. When it comes to updates, Swift helps iOS developers manage any changes promptly.
R is a programming language that was established in 1993 for statistical computing and graphics.Dynamic and interactive graphics are available via extra packages.
Some vendors produce software that supports full R-based packages. Users of such products don’t need to write complex code in R. All they need to do is use a graphical user interface to create sophisticated data models.
Today, large companies including Zillow, KPMG, and Deloitte use R for big data analytics and machine learning. This language is also used in non-IT industries, including governmental and non-governmental organizations.
C and C++ share the same level of popularity according to the PYPL index and have many similarities:
- They have similar syntax.
- The code structure is the same.
- They’re compiled similarly.
- C++ has almost all of C’s operators and keywords, and they work the same way.
- C++ provides a bit of an extended grammar compared to C, but the basic grammar is the same.
- The basic memory model is close to the hardware in both languages.
- Both have the same notions of the stack, memory region, file scope, and static variables.
Now let’s consider some specifics of these languages:
C was established in 1972 to write the UNIX operating system, and it still holds a high position in all the popularity ratings. There are several reasons for this. First, it’s one of the most stable languages and is understood by the majority of programmers worldwide. Second, it works on almost all computing platforms that have ever been created. Although C++ has made inroads into C’s territory, C still hasn’t been superseded. Code compiled in C++ is still commonly larger than code compiled in C. This is because exception handling adds volume and increases the number of inline template classes whose members get included. The last main changes to C were made in C11, which added variable-length arrays, multi-threading support, better unicode support, anonymous structures and unions, etc.
C++ is a superset of C. It was created in 1983 as an alternative to the C language, and it instantly gained amazing popularity. The main feature of C++ is a set of predefined classes that can be used by programmers alongside their own classes. After a slight C++14 update, released in December 2014, multiple new additions were introduced in C++17. Further changes are planned for 2020. Most software from Microsoft is built using C++. Most Adobe products, the Mozilla internet browser, and many more well-known systems are also written in C++. In fact, even software for fighter jets is written in this language.
According to some estimates, PHP, established in 1994, powers a fifth of the web. Initially, PHP wasn’t created as a programming language. Instead, it was a set of tools to help its creator, Rasmus Lerdorf, maintain his home page (PHP originally stood for Personal Home Page).
Today, PHP stands for Hypertext Pre-Processor and is a scripting language. Originally designed to build dynamic web pages, PHP currently concentrates on server-side scripting.
At the beginning of the 2010s, PHP was criticized. The article “PHP: a fractal of bad design” even claimed that “every feature in PHP is broken somehow.” But since then, the language has evolved a lot. Here is some proof:
- PHP is developing with each annual release.
- The latest PHP 7.4 brings a bunch of sophisticated new features.
- Performance has improved since the PHP 5 period.
- PHP provides an active ecosystem of frameworks, packages, and platforms.
- Tools like static analyzers have improved over the past years.
There are lots of exciting projects developed with PHP: WordPress, Facebook, and Yahoo, to name a few.
C# is another variation on the popular C language. Created by Microsoft in 2000, C# added some Java-like features to C. It was created for the wide variety of enterprise apps that run on the .NET framework.
The latest version – C# 8, released in September 2019 – provides new features including nullable reference types, asynchronous streams, default interface members, and new code patterns.Today, 1,800 companies reportedly include C# in their tech stacks. Stack Overflow, Microsoft, and Intuit are among them.
Java was designed by Oracle in 1991 for interactive television. Since then, it has undergone a number of changes but has remained one of the top programming languages for many years running.
One of the fundamental reasons for Java’s popularity is that it’s the official language for building Android apps. This means that Java has the most support from Google and that most apps on the Google Play Store are created with it.
However, there are alternatives to Java for developing Android mobile applications. For example, Kotlin is becoming extremely popular. Like Java, Kotlin runs on the Java Virtual Machine. In addition, Kotlin is consistent with Java and doesn’t cause any slowdowns or increases in file size. But it’s still too early to say whether Kotlin can outdo Java.
Other alternatives for Android app development including C, C#, and BASIC also have their advantages. But Java is still the best option to get the most from the Android development experience.
According to Stackshare, 8,994 companies use Java in their tech stacks, including Instagram, Uber, and Netflix.
According to GitHub’s PYPL index, the most popular language going into 2020 is Python, which has gained incredible popularity since 1989 when it was created. A study by the Institute of Electrical and Electronics Engineers (IEEE) also lists Python as the most popular language.
Python’s popularity is mainly caused by the huge number of libraries available – in particular, in the field of artificial intelligence. The Keras library, for example, is in demand among developers of deep learning solutions.
The increase of computing power in microcontrollers has led to the growth of demand for embedded versions of Python such as CircuitPython and MicroPython.
Python is used in such fast-developing domains as finance and computer software. NASA, the CIA, Bank of America, and Facebook are fans of this language.
All languages are created for specific purposes and are modified to meet evolving needs. Due to the rapid growth of newer languages such as Golang and Kotlin, it’s quite possible that next year’s ratings will look radically different.
However, note that the popularity of a language doesn’t mean it will suit your app. On the other hand, choosing an unpopular language like Erlang might result in difficulties finding skilled developers. So alongside ratings, take into account your project specifics. That’s what Yalantis does when deciding on a tech stack for app development.