What are the top 30 programming languages

These are the most popular programming languages

The top positions of programming languages ​​have been set for many years: Java, PHP, C / C ++, C # and Javascript. Other programming languages ​​could only establish themselves in niches, such as Objective-C for programming the iPhone or Python for scientific computing and machine learning.

The universal programming language is no longer needed

In the past ten years, many alternative languages ​​have gained popularity and it seems that the established languages ​​no longer meet the new demands. New concepts make it possible to solve certain problems more easily and more elegantly and to avoid certain classes of programming errors, such as the challenge of multiprocessor core systems. Often such concepts, when they have proven themselves in practice, are taken up by the established languages. So one might think that the development is heading towards a single "lingua franca" that will put an end to the current Babylonian programming language confusion.

However, such a universal programming language will not emerge, because it is no longer necessary! In today's architectures, modules communicate via defined programming interfaces (e.g. via REST interfaces), and these modules can be programmed in different languages. Of course, not every employee in a company is allowed to use their own programming language. But it is typical that different programming languages ​​are used in a project, such as Typescript for the web front end, Kotlin for Android and Swift for iOS applications and Go in the cloud. It is therefore quite possible to rely on a new programming language for a new sub-project and thus dare to take a step into the future. So it's time to take advantage of the variety of programming languages!

The table provides an overview of the most frequently used programming languages ​​as well as those most loved by programmers. We'll briefly discuss each of them below.

If you click on the table, the option to view the table in full screen appears at the top right.

C and C ++

C and C ++ are still popular programming languages ​​in system and application programming, especially when efficiency is important. C is also often the first programming language to be supported on a new hardware platform. Many of today's database systems such as Oracle, MySQL or MongoDB are programmed in C ++.

python

Python is a programming language that is characterized by its simplicity and is therefore used in the basic subject of computer science at our high schools. Python is the language in the areas of data science and machine learning, but is also increasingly used in the embedded area. Python is platform-independent, which means that Python programs can be executed on almost all operating systems. Incidentally, the name Python does not (as the logo suggests) go back to the snake family of the same name, but to the British comedian group Monty Python.

Java

Java programs are translated into a byte code and interpreted by a virtual machine (the JVM). This code is independent of the operating system and hardware and can be executed on smartphones, desktop computers and servers. The JVM is very efficient and uses concepts like just-in-time compilation and hotspot optimization to speed up execution. Even if the Java programming language will lose its importance and will probably replace COBOL as the legacy language, the future of the JVM looks bright, because many new programming languages ​​use the JVM as a target platform. Currently, Java is still one of the most popular programming languages. Around 70 percent of full-time professional developers worldwide use Java.

Javascript

Javascript is a programming language that was developed by Netscape in 1995 for interactive websites. Javascript programs are executed in the browser and used to check form data or to reload data in the background. Javascript has only the name in common with Java, but is otherwise a completely independent programming language and is also used on servers or in microcontrollers or used for the development of mobile applications.

C #

C # is the most important programming language in the world of the Microsoft .NET framework. C # was developed in 2001 to compete with Java. C # is fully controlled by Microsoft, which has the effect that extensions to the language can be implemented quickly. C # was developed by Anders Hejilsberg, who in addition to C # also developed Turbo-Pascal, Delphi and Typescript.

Scala

Scala was developed at EPFL by Martin Odersky, who did his doctorate at ETHZ and was involved in the development of Modula-2 and Oberon under Niklaus Wirth. Scala is a functional and object-oriented programming language that runs on the JVM. Scala is used by many start-ups, but also by large companies such as LinkedIn or Twitter. Netflix uses Scala in the area of ​​machine learning. According to the 2020 Stackoverflow survey, Scala is associated with the highest wages.

Go

Go is a language from Google, but it also has its roots in Switzerland. Robert Griesemer, who studied at ETH Zurich and did his doctorate with Professors Hanspeter Mössenböck and Niklaus Wirth, played a key role in the development of Go. Go is statically typed and compiled into machine code and has automatic garbage collection. Go is particularly relevant for the development of microservices in the cloud. The Docker and Kubernetes tools are programmed in Go.

Rust

Rust was developed by Mozilla and is being further developed by the Rust Foundation, which was founded this February by Mozilla, Google, Microsoft, AWS and Huawei. Rust supports an ownership type system, which forms the basis for secure memory management without automatic garbage collection. Rust is considered particularly secure and is therefore suitable for system programming as well as for the further development of the Internet of Things (IoT). Google recently opened Android for Rust, which means that components of the Android operating system can now also be programmed in Rust. What is known is that the Bluetooth stack is being rewritten in Rust. According to Google, the reason for switching to Rust as an alternative to C and C ++ is that memory errors can no longer occur with Rust, which are often the cause of stability problems and also the cause of many serious security gaps. Rust tops the list of the most popular languages ​​in the 2020 Stackoverflow survey.

Kotlin

Kotlin is an object-oriented language developed by JetBrains. Kotlin (like Scala) is seen as a better Java and has a syntax that is much leaner than that of Java. Kotlin supports many modern features that are gradually being added to Java. Kotlin is used in particular for the development of native Android applications.

Typescript

Typescript is a new language from Microsoft that is translated to Javascript. All existing libraries written in Javascript can be used in Typescript. In contrast to Javascript, Typescript is statically typed. This means that certain errors can already be caught by the compiler at compilation time and do not only occur when users use a website. Typescript is the language that Javascript will be in a few years' time, but which can already be used in all browsers today. Typescript is actually not a new language, just the Javascript from the future.

There is a ranking for each programming language

The table shows the ranking of these programming languages ​​according to the PYPL index (Popularity of Programming Language). This index is created on the basis of searches for programming tutorials on Google. In addition to the PYPL index, there are other rankings such as the TIOBE index or the Redmonk rankings, and of course the results of the surveys on Stackoverflow. There are so many rankings that you can find a ranking for every programming language in which that language is in first place.

The type of development methodology and, in particular, the programming languages ​​used in a company play a decisive role for developers when choosing an employer. Companies that have difficulties recruiting IT professionals should therefore ensure that they are open to new programming languages ​​and technologies.