JavaProgramming Language Popularity: The TCP Index for August, 2004

Programming Language Popularity: The TCP Index for August, 2004 content and product recommendations are editorially independent. We may make money when you click on links to our partners. Learn More.

This article is based on information provided by  Tiobe Software.

There are a number of methods for determining which programming languages are the most popular. If you ask ten developers for the most popular language, the odds are that the languages they use will influence their answer. If you look at the number of lines of code, you may find that some of the older languages seem to be more popular. You can check the number of classes or the number of job openings. If you go to the search engines, you can search on different languages to see which returns the most results.

This is all related to popularity. This doesn’t indicate which is best or even which is the most used or has the most lines of code.

Here on, we have decided to post the TIOBE Programming Community (TPC) Index. This is just one possible means of indicating the popularity of a language. The TPC index is updated once at the beginning of the month, so the August index is posted in this article. This index is based on the world-wide availability of skilled engineers, courses, and third party vendors. This availability is determined by using the Google and Yahoo! search engines to calculate the ratings.

TIOBE Programming Community Index for August 2004

The August data provides some interesting changes in the TPC data. The biggest decrease in popularity can be seen with Java. While it took the biggest fall, it still held onto the top spot over C and C++. Gaining the most ground in August was PHP followed by Python. This, however, is not too much of a surprise due to the recent release of PHP 5. Even more surprising is the increase in the Delphi/Pascal/Kylix group.

From the trends in these charts, you can do lots of speculation. For example, it seems that there is a trend showing a movement away from enterprise, object-oriented, statically typed languages such as Java, C++ and C#. There is more focus on the lightweight interpreted languages such as PHP and Python. Could this be related to the popularity of Extreme Programming?


Position Delta 1 YearProgramming LanguageRatingsDelta 1 YearStatus
1 Java 16.997% -6.21% A
2 C 16.335% -1.64% A
3 C++ 15.306% -1.27% A
4 PHP 10.427% +5.75% A
5 (Visual) Basic 10.136% +2.67% A
6 Perl 8.440% -0.54% A
7 Delphi/Pascal/Kylix 4.814% +2.94% A
8 Python 4.704% +3.41% A
9 SQL 2.856% -0.14% A
10 JavaScript 1.681% -0.11% A
11 C# 1.633% -0.37% A
12 SAS 0.729% -0.25% A
13 COBOL 0.526% -0.54% B
14 IDL 0.349% -0.12% B
15 Lisp 0.328% -0.34% B
16 Fortran 0.327% -0.54% B
17 Ada 0.317% -0.19% B
18 MATLAB 0.276% -0.05% B 19 RPG 0.276% -0.38% B 20 Prolog 0.259% -0.24% B


The last 3 columns need a bit of extra explanation:

  • Ratings. The search query '+" <language> programming" -tv' is used to calculate the TPC Index. This query is executed both for the regular Google and Yahoo! web search and the Google newsgroups for the last 12 months. The formula that is applied is #(Google web hits) + #(Yahoo! web hits) + 50 * #(Google newsgroup hits). If the number of hits for one of the 3 applied queries deviates more than a factor 2 from the results of the previous month, its new value is discarded because the query result is considered to be a temporary anomaly.
  • Delta 1 Year. This column indicates the changes in ratings for the last 12 months. Observe that the first “Delta 1 Year” column indicates the difference in position.
  • Status . Programming languages that have status “A” are considered to be mainstream languages. Status “A-” and “A–” indicate that a programming language is in between status “A” and “B”. If a programming language has a rating that is higher than 0.7% for at least 3 months it is rewarded status “A”. The first two months the programming language will receive status “A–” and “A-” respectively. The opposite holds for languages that go from status “A” to status “B”.

Get the Free Newsletter!

Subscribe to Developer Insider for top news, trends & analysis

Latest Posts

Related Stories