- June Headline: C++ is about to surpass Java
It seems to be that Java is on the losing side. In April 2020, Java was still number 1 on the TIOBE index. In that same month, Java had to give up its first place to C. Later on, in 2021, Python became unstoppable and surpassed Java as well. Now it looks like C++ is the next language to overtake Java. High level programming with performance is C++'s key reason why it is doing so well. The C++ language is revised every 3 years. Such revisions contain ground-breaking new features, which get the language on par with C# and Java, but without the performance penalty of a garbage collector. Let's see where C++ is heading the next few months. -- Paul Jansen CEO TIOBE Software
The TIOBE Programming Community index is an indicator of the popularity of programming languages. The index is updated once a month. The ratings are based on the number of skilled engineers world-wide, courses and third party vendors. Popular search engines such as Google, Bing, Yahoo!, Wikipedia, Amazon, YouTube and Baidu are used to calculate the ratings. It is important to note that the TIOBE index is not about the best programming language or the language in which most lines of code have been written.
The index can be used to check whether your programming skills are still up to date or to make a strategic decision about what programming language should be adopted when starting to build a new software system. The definition of the TIOBE index can be found here.
Jun 2022 Jun 2021 Change Programming Language Ratings Change
1 2 change Python page Python 12.20% +0.35%
2 1 change C page C 11.91% -0.64%
3 3 Java page Java 10.47% -1.07%
4 4 C++ page C++ 9.63% +2.26%
5 5 C# page C# 6.12% +1.79%
6 6 Visual Basic page Visual Basic 5.42% +1.40%
7 7 JavaScript page JavaScript 2.09% -0.24%
8 10 change SQL page SQL 1.94% +0.06%
9 9 Assembly language page Assembly language 1.85% -0.21%
10 16 change Swift page Swift 1.55% +0.44%
11 11 Classic Visual Basic page Classic Visual Basic 1.33% -0.40%
12 18 change Delphi/Object Pascal page Delphi/Object Pascal 1.32% +0.26%
13 8 change PHP page PHP 1.25% -0.97%
14 23 change Objective-C page Objective-C 1.02% +0.33%
15 20 change Go page Go 1.02% +0.07%
16 14 change R page R 0.98% -0.22%
17 15 change Perl page Perl 0.76% -0.41%
18 38 change Lua page Lua 0.76% +0.43%
19 13 change Ruby page Ruby 0.75% -0.48%
20 26 change Prolog page Prolog 0.74% +0.18%
Position Programming Language Ratings
21 SAS 0.70%
22 (Visual) FoxPro 0.70%
23 COBOL 0.69%
24 MATLAB 0.64%
25 Scratch 0.60%
26 Fortran 0.55%
27 Rust 0.52%
28 Julia 0.52%
29 Ada 0.50%
30 Kotlin 0.44%
31 PL/SQL 0.40%
32 Lisp 0.35%
33 D 0.30%
34 Scala 0.30%
35 Groovy 0.26%
36 TypeScript 0.25%
37 Dart 0.23%
38 Haskell 0.21%
39 VBScript 0.20%
40 Awk 0.20%
41 Transact-SQL 0.20%
42 Apex 0.20%
43 PowerShell 0.19%
44 Scheme 0.19%
45 Bash 0.18%
46 ABAP 0.18%
47 Simulink 0.18%
48 LabVIEW 0.17%
49 X++ 0.17%
50 ML 0.17%
The hall of fame listing all "Programming Language of the Year" award winners is shown below.
The award is given to the programming language that has the highest rise in ratings in a year.
Year | Winner |
---|---|
2022 | C++ |
2021 | Python |
2020 | Python |
2019 | C |
2018 | Python |
2017 | C |
2016 | Go |
2015 | Java |
2014 | JavaScript |
2013 | Transact-SQL |
2012 | Objective-C |
2011 | Objective-C |
2010 | Python |
2009 | Go |
2008 | C |
2007 | Python |
2006 | Ruby |
2005 | Java |
2004 | PHP |
2003 | C++ |
To see the bigger picture, please find below the positions of the top 10 programming languages of many years back.
Please note that these are average positions for a period of 12 months.
Programming Language | 2022 | 2017 | 2012 | 2007 | 2002 | 1997 | 1992 | 1987 |
---|---|---|---|---|---|---|---|---|
C | 1 | 2 | 2 | 2 | 2 | 1 | 1 | 1 |
Python | 2 | 5 | 8 | 7 | 12 | 28 | - | - |
Java | 3 | 1 | 1 | 1 | 1 | 14 | - | - |
C++ | 4 | 3 | 3 | 3 | 3 | 2 | 2 | 4 |
C# | 5 | 4 | 4 | 8 | 14 | - | - | - |
Visual Basic | 6 | 15 | - | - | - | - | - | - |
JavaScript | 7 | 7 | 10 | 9 | 9 | 21 | - | - |
Assembly language | 8 | 10 | - | - | - | - | - | - |
PHP 9 | 6 | 5 | 5 | 8 | - | - | - | |
SQL 10 | - | - | - | 34 | - | - | - | |
Fortran | 20 | 27 | 26 | 21 | 24 | 16 | 3 | 7 |
Prolog | 24 | 34 | 42 | 27 | 25 | 19 | 14 | 3 |
Lisp | 31 | 31 | 13 | 14 | 10 | 9 | 11 | 2 |
(Visual) Basic | - | - | 7 | 4 | 4 | 3 | 7 | 5 |
There are 2 important remarks here:
1.There is a difference between "Visual Basic" and "(Visual) Basic" in the table above. Until 2010, "(Visual) Basic" referred to all possible dialects of Basic, including Visual Basic. After some discussion, it has been decided to split "(Visual) Basic" into all its dialects such as Visual Basic .NET, Classic Visual Basic, PureBasic, and Small Basic, just to name a few. Since Visual Basic .NET has become the major implementation of Visual Basic, it is now called "Visual Basic".
2.The programming language SQL has not been in the TIOBE index for a long time. In 2018, somebody pointed out that SQL is Turing Complete. From that moment on, SQL is part of the TIOBE index. So although this language is very old, it has only a short history in the index.