June Headline: Lua enters the top 10 for the first time in history
Creating software applications for mobile devices is hot. Think of the recent rise of Objective-C because of the iPhone and iPad we have seen. But now also scripting language Lua is getting more and more popular. The major advantages of Lua are its small footprint and fast performance. A year ago, Apple decided to allow Lua to run on iOS systems. Nowadays many popular iPhone apps have been written in Lua, including Angry Birds.
Traditional web scripting languages, on the other hand, have a hard time. They are quickly losing market share at the moment. Take a look at the decline of PHP, but also Ruby and Python are going down.
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. The popular search engines Google, Bing, Yahoo!, Wikipedia, YouTube and Baidu are used to calculate the ratings. Observe 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.
Position Jun 2011 |
Position Jun 2010 |
Delta in Position | Programming Language | Ratings Jun 2011 |
Delta Jun 2010 |
Status |
---|---|---|---|---|---|---|
1 | 2 | Java | 18.580% | +0.62% | A | |
2 | 1 | C | 16.278% | -1.91% | A | |
3 | 3 | C++ | 9.830% | -0.55% | A | |
4 | 6 | C# | 6.844% | +2.06% | A | |
5 | 4 | PHP | 6.602% | -2.47% | A | |
6 | 5 | (Visual) Basic | 4.727% | -0.93% | A | |
7 | 10 | Objective-C | 4.437% | +2.07% | A | |
8 | 7 | Python | 3.899% | -0.20% | A | |
9 | 8 | Perl | 2.312% | -0.97% | A | |
10 | 20 | Lua | 2.039% | +1.55% | A | |
11 | 12 | JavaScript | 1.501% | -0.58% | A | |
12 | 11 | Ruby | 1.484% | -0.61% | A | |
13 | 9 | Delphi/Object Pascal | 1.070% | -1.50% | A | |
14 | 16 | Lisp | 0.935% | +0.28% | A | |
15 | 15 | Pascal | 0.731% | +0.00% | A | |
16 | - | Assembly* | 0.673% | - | B | |
17 | 21 | Transact-SQL | 0.651% | +0.16% | B | |
18 | 25 | RPG (OS/400) | 0.637% | +0.22% | B | |
19 | 23 | Ada | 0.606% | +0.17% | B | |
20 | - | Scheme* | 0.579% | - | B |
* See FAQ for more information about Assembly (which also holds for Scheme)
Long term trends
The long term trends for the top 10 programming languages can be found in the line diagram below.
Other programming languages
The complete top 50 of programming languages is listed below. This overview is published unofficially, because it could be the case that we missed a language. If you have the impression there is a programming language lacking, please notify us at tpci@tiobe.com.
Position | Programming Language | Ratings |
---|---|---|
21 | Logo | 0.550% |
22 | PL/SQL | 0.502% |
23 | MATLAB | 0.476% |
24 | SAS | 0.474% |
25 | F# | 0.473% |
26 | C shell | 0.465% |
27 | NXT-G | 0.446% |
28 | D | 0.437% |
29 | Visual Basic .NET | 0.434% |
30 | Scratch | 0.427% |
31 | Go | 0.424% |
32 | Q | 0.420% |
33 | Fortran | 0.389% |
34 | R | 0.369% |
35 | Forth | 0.366% |
36 | ABAP | 0.362% |
37 | ActionScript | 0.359% |
38 | ML | 0.341% |
39 | Alice | 0.334% |
40 | NATURAL | 0.334% |
41 | COBOL | 0.331% |
42 | PL/I | 0.309% |
43 | Clean | 0.304% |
44 | Haskell | 0.301% |
45 | APL | 0.280% |
46 | OpenEdge ABL | 0.269% |
47 | Smalltalk | 0.265% |
48 | Scala | 0.264% |
49 | J | 0.255% |
50 | Ladder Logic | 0.254% |
The Next 50 Programming Languages
The following list of languages denotes #51 to #100. Since the differences are relatively small, the programming languages are only listed (in alphabetical order).
- (Visual) FoxPro, 4th Dimension/4D, ABC, Algol, Arc, ATLAS, Avenue, Awk, Bash, bc, BETA, BlitzMax, Boo, Bourne shell, CFML, cg, CL (OS/400), cT, Dylan, Eiffel, Erlang, Factor, Groovy, Icon, IDL, Inform, Io, Korn shell, LabVIEW, Limbo, MAD, Magic, Maple, Mercury, Monkey, MUMPS, Oberon, OpenCL, Oz, PILOT, PowerShell, Prolog, Revolution, S, SIGNAL, Standard ML, Tcl, TOM, VBScript, VHDL
Very Long Term History
To see the bigger picture, please find the positions of the top 10 programming languages from 5, 15 and 25 years ago in the table below.
Programming Language | Position Jun 2011 |
Position Jun 2006 |
Position Jun 1996 |
Position Jun 1986 |
---|---|---|---|---|
Java | 1 | 1 | 5 | - |
C | 2 | 2 | 1 | 1 |
C++ | 3 | 3 | 2 | 5 |
C# | 4 | 8 | - | - |
PHP | 5 | 5 | - | - |
(Visual) Basic | 6 | 4 | 3 | 6 |
Objective-C | 7 | 43 | - | - |
Python | 8 | 7 | 26 | - |
Perl | 9 | 6 | 6 | - |
Lua | 10 | 50 | - | - |
Lisp | 14 | 15 | 16 | 3 |
Ada | 19 | 16 | 11 | 2 |
Programming Language Hall of Fame
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 |
---|---|
2010 | Python |
2009 | Go |
2008 | C |
2007 | Python |
2006 | Ruby |
2005 | Java |
2004 | PHP |
2003 | C++ |
Categories of Programming Languages
In the tables below some long term trends are shown about categories of languages. Object-oriented statically typed languages have been most popular for more than 5 years.
Category | Ratings Jun 2011 | Delta Jun 2010 |
---|---|---|
Object-Oriented Languages | 56.5% | +2.5% |
Procedural Languages | 37.4% | -3.9% |
Functional Languages | 4.6% | +1.4% |
Logical Languages | 1.5% | -0.1% |
Category | Ratings Jun 2011 | Delta Jun 2010 |
---|---|---|
Statically Typed Languages | 64.8% | +2.2% |
Dynamically Typed Languages | 35.2% | -2.2% |
This Month's Changes in the Index
This month the following changes have been made to the definition of the index:
- It doesn't happen very often that somebody suggests a programming language that would have been part of the top 50. Benjamin Pratt suggested the programming language Ladder Logic. It entered the chart this month at position 50. Thanks Benjamin!
- Udo Krause did some fantastic research. He checked the validity of all names we use for querying. Based on his investigations we removed AD (no Wikipedia entry), Alpha (only false positives), Lansa (programming environment instead of a programming language) and PowerBuilder (programming environment instead of a programming language, PowerScript is left in). Moreover the confidence of BETA is set to 70% and lots of programming languages have the right spelling now, e.g. Haxe has become haXe and Intercal has changed into INTERCAL, etc.
- Since Wikipedia redirects the Delphi programming language to Object Pascal nowadays these terms are now combined in the Delphi/Object Pascal entry. This is something that has been observed by Cesar Marrero.
- Patrick O'Reilly suggested to merge the ABL and Progress entry and add OpenEdge to it. This reflects the current situation better and is according to the TIOBE index definition. The new name of this grouping is OpenEdge ABL. It consists of search queries "Progress", "Progress 4GL", "ABL", "Advanced Business Language" and "OpenEdge".
- There appear to be 2 programming languages called Alice: Alice ML and the Alice 3D programming language. Graham Stephens came up with this issue. Some research revealed that about 90% of all Alice hits concern the 3D programming language. So the Alice confidence is set to 90% and Alice ML is simply ignored.
- There are lots of mails that still need to be processed. As soon as there is more time available your mail will be answered. Please be patient.