Despite the fact that Objective-C only gained 0.08% last month, it has
entered
the top 10 for the first time. This is quite an achievement, especially
if one
bears in mind that only 13 different programming languages had a top 10
score
since the start of the TIOBE index in June 2001. The main (and probably
only)
reason for Objective-C's popularity is that it is the only language in
which you
can write applications for the iPhone or iPad. From a programming
language point
of view, Objective-C (born in 1986) offers no new interesting features. The TIOBE Programming Community index gives an indication 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, MSN, Yahoo!, Wikipedia and
YouTube 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.
Long term trendsThe long term trends for the top 10 programming languages can be found
in the
line diagram below.
Other programming languagesThe 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@. Position | Programming Language | Ratings |
---|
21 | Transact-SQL | 0.489% | 22 | ActionScript | 0.485% | 23 | Ada | 0.432% | 24 | COBOL | 0.431% | 25 | RPG (OS/400) | 0.415% | 26 | Bourne shell | 0.415% | 27 | Fortran | 0.415% | 28 | D | 0.397% | 29 | JavaFX Script | 0.395% | 30 | Logo | 0.386% | 31 | Haskell | 0.384% | 32 | S-lang | 0.374% | 33 | Tcl/Tk | 0.349% | 34 | NXT-G | 0.347% | 35 | FoxPro/xBase | 0.339% | 36 | Scratch | 0.339% | 37 | Alice | 0.331% | 38 | Forth | 0.307% | 39 | PowerShell | 0.303% | 40 | LabVIEW | 0.294% | 41 | Groovy | 0.280% | 42 | Prolog | 0.269% | 43 | Caml/F# | 0.253% | 44 | CL (OS/400) | 0.246% | 45 | Scala | 0.240% | 46 | Erlang | 0.233% | 47 | Smalltalk | 0.230% | 48 | ML | 0.229% | 49 | C shell | 0.224% | 50 | J | 0.223% |
The Next 50 Programming LanguagesThe following list of languages denotes #51 to #100. Since the
differences are
relatively small, the programming languages are only listed (in
alphabetical
order). ABC, Algol, APL, Applescript, Awk, Beta, cg, Clean, cT, Dylan,
Eiffel, Euphoria, Factor, Falcon, Focus, Heron, Icon, IDL, Inform,
Informix-4GL, Io, LabWindows/CVI, Lingo, LotusScript, LPC, MAD, Maple,
Mathematica, MAX/MSP, Modula-2, Modula-3, MS-DOS batch, MUMPS, Natural,
Occam, Oz, PL/I, Postscript, Progress, Q, R, Revolution, REXX, Sed,
Seed7, SIGNAL, SPSS, VBScript, VHDL, XSLT
Very Long Term HistoryTo see the bigger picture, please find the positions of the top 10
programming languages from 4, 10 and 25 years ago in the table below.
Programming Language Hall of FameThe hall of fame listing all "Programming Language of the Year" award
winners is shown below.
Year | Winner |
---|
2009 | Go | 2008 | C | 2007 | Python | 2006 | Ruby | 2005 | Java | 2004 | PHP | 2003 | C++ |
Categories of Programming LanguagesIn the tables below some long term trends are listed about categories of
languages.
Object-oriented statically typed languages are most popular for more
than 4
years now.
Category | Ratings May 2010 | Delta May 2009 |
---|
Object-Oriented Languages | 54.6% | -1.1% | Procedural Languages | 40.7% | +0.3% | Functional Languages | 3.2% | +0.4% | Logical Languages | 1.6% | +0.4% |
Category | Ratings May 2010 | Delta May 2009 |
---|
Statically Typed Languages | 62.7% | +4.5% | Dynamically Typed Languages | 37.3% | -4.5% |
This Month's Changes in the IndexThis month the following changes have been made to the definition of
the index: So far JavaFX Script was treated as a 100% logical language. Based on a
discussion with Rowan Davies it is now 50% functional and 50% logical. Robert Geva suggested OpenCL as new programming language to track. The
OpenCL programming language was born at the end of 2008 and supports
writing kernels that execute on OpenCL devices. OpenCL debuts at
position 107 in the TIOBE index. There are still lots of mails that need to be processed (especially
after having been slashdotted once more recently). As soon as there is
more time available your mail will be answered. Please be patient.
Bugs & Change RequestsThis is the top 3 of most requested changes and bugs. If you have any
suggestions how to improve the index don't hesitate to send an e-mail
to tpci@. Add queries for other natural languages (apart from English). The idea
is to start with the Chinese search engine Baidu. Apart from "<language> programming", also other queries such as
"programming with <language>" should be tried out. There is a bug in the calculation of the max of all entries in a
language group.
A: A language is considered a programming language if it is Turing
complete. As a
consequence, HTML and XML are not considered programming languages. This
also holds for
data query language SQL. SQL is not a programming language because it
is, for instance,
impossible to write an infinite loop in it. On the other hand, SQL
extensions PL/SQL and
Transact-SQL are programming languages. ASP and ASP.NET are also not
programming languages
because they make use of other languages such as JavaScript and VBScript
or .NET compatible
languages. The same is true for frameworks such as Ruby on Rails,
ColdFusion, Cocoa, and technologies such as AJAX. Finally,
we have also excluded assembly languages, although Turing complete,
because they have a
very different nature. Q: How are dialects of languages grouped? A: Some languages are grouped together because they are very similar
to each other. An
example is the language entry Basic which covers Visual Basic, QBasic,
Microsoft Basic,
etc. VB.NET has been added as well to the Visual Basic entry because it
is often referred
to as Visual Basic. The ratings for a collection of languages is
calculated by taking the
maximum of all individual entries (not its sum!). Q: Why is the maximum taken to calculate the ranking for a grouping,
why not the sum? A: Well, you can do it either way and both are wrong. If you take the
sum, then you get the intersection
twice (pages that mention for instance both Visual Basic 6.0 and
VB.NET). If you take the max, then you
miss the difference. Which one to choose? Suppose somebody comes up with
a new search term that is 10% of
the original. If you take the max, nothing changes. If you take the sum
then the ratings will rise 10%. So
taking the sum will be an incentive for some to come up with all kinds
of obscure terms for a language. That's
why we decided to take the max. The proper way to solve this is is of course to take the sum and
subtract the intersection. This will give
rise to an explosion of extra queries that must be performed. Suppose a
language has a grouping of 15 terms
(such as the xBase/FoxPro grouping), then you have to perform 32,768
queries (all combinations of intersections).
So this seems not possible either... If somebody has a solution for
this, please let us know. Q: Am I allowed to show the TIOBE index in my
weblog/presentation/publication? A: This is OK provided that you refer to its original source:
www.. Q: I would like to have the complete data set of the TIOBE index. Is
this possible? A: We spent a lot of effort to obtain all the data and keep the TIOBE
index up to date.
In order to compensate a bit for this, we ask a fee of 1,500 US$ for the
complete data set.
This might seem a lot of money but it is considered strategic data. The
data set runs from
June 2001 till today. It started with 25 languages back in 2001, and now
measures more than
150 languages at least 10 times per month. The data are availabe in
comma separated format.
Part of the deal is that new data will be send to you for 1 extra year.
Please contact sales@ for more information. Q: What happened to Java in April 2004? Did you change your
methodology? A: No, we did not change our methodology at that time. Google changed
its methodology.
They performed a general sweep action to get rid of all kinds of web
sites that had been
pushed up. As a consequence, there was a huge drop for languages such as
Java and C++. In
order to minimize such fluctuations in the future, we added two more
search engines (MSN
and Yahoo) a few months after this incident. Q: Why is YouTube used as a search engine for the TIOBE index? A: First of all, YouTube counts only for 7% of all ratings, so it has
hardly any
influence on the index. YouTube has been added as an experiment. It
qualified for the TIOBE
index because of its high ranking on Alexa. YouTube is a young platform
(so an indicator
for popularity) and there are quite some lectures, presentations,
programming tips and
language introductions available on YouTube.
|