
TIOBE : C overtakes Java as the No.1 programming language - sonic0002
http://pixelstech.net/article/index.php?id=1333969280
======
apl
So Scala ranks behind the Lego Mindstorms language and Visual FoxPro in terms
of community popularity? Sure thing. I know that valid results don't always
conform to expectations, anecdotal evidence and intuition; there's a
believability limit, though, which is being crossed here. TIOBE may be
measuring its thing _correctly_ , but in that case it's measuring the _wrong_
thing.

~~~
bad_user
The TIOBE index is measuring the hits these languages get on Google, Blogger,
Wikipedia, YouTube and other search engines.

See:
[http://www.tiobe.com/index.php/content/paperinfo/tpci/tpci_d...](http://www.tiobe.com/index.php/content/paperinfo/tpci/tpci_definition.htm)

It's easy to see how this measures the wrong thing. A better metric for me is
the popularity of languages in open-source software, which could be measured
by (say) the number of popular/active projects.

For instance take a look at: <https://github.com/languages> ... but this also
has flaws, because GitHub is favored in the Javascript/Ruby communities and
open-source C#/.NET projects end up mostly on CodePlex, a lot of Java projects
are hosted by Apache, a lot of Python projects are on BitBucket and so on.

So a better metric would be to aggregate the projects from all popular project
hosting services and count them, with some kind of weight attached. So for
instance it would be unfair to count the lines of code in the Linux kernel,
but it would also be unfair for the Linux kernel to have the same weight as
some random project on GitHub that's being watched by 5 people. I would make
this weight proportional to the number of active contributers, such that when
a project is left unmaintained its weight will eventually drop to zero.

~~~
lkrubner
>So a better metric would be to aggregate the projects from

> all popular project hosting services and count them, with

> some kind of weight attached.

Great idea. Do you think you might run with this idea? I like it as a
corrective to TIOBE.

On another topic: I know that TIOBE sometimes lumps several related languages
together. Does anyone know if they are doing that with "Lisp"? What does
"Lisp" measure? Common Lisp? Scheme? Emacs lisp? Does it measure Clojure?

~~~
davidw
Someone can and has run with it:

<http://langpop.com>

"Unfortunately", that someone now has a house, two kids, and more work than he
can handle, and is thus looking to exit the fun and flame filled world of
language popularity.

Based on Instagram's valuation, I guess I'd settle for a million for it;-)

~~~
lkrubner
Hi, David. I am stupid. I've checked out your site before and had totally
forgotten about it.

Can you email me at lawrence @ krubner . com? I'd like to know how much you
want to sell langpop for.

------
mindcrime
Yes, and in other news:

While Aquarius is in the Seventh House of the Principal Equinox and Jupiter is
aligned with Mercury and Thor is napping in the Trunk of a Ford Pinto, Java
shall tremble at the Sight of the Blood running down the walls of Fear, for
Clojure shall overcome Mindstorms when the Adjudicated Maximus crosses the
Greater Chaotic Plane, and BOFH's everywhere shall rejoice! Ia, Ia!!! Chtulu
Fthagn!!

(IOW, no, I don't put much stock in the Tiobe index.)

~~~
EliRivers
Right on. We all know C has always been the big one :)

------
eliben
Please, please, stop with this TIOBE nonsense. This index is a joke - can't
someone with a burning desire for a weekend project create an open-sourced
index website and engage with other hackers to incrementally improve it?

~~~
draegtun
The _Transparent Language Popularity Index_ is an opensource alternative:
<http://lang-index.sourceforge.net/>

~~~
spitfire
People are still using Eiffeil and Overon? All the other results I believe
(Even clipper and module-2), but that is a bridge too far.

~~~
danvet
It's used to teach CS undergrads programming basics at ETH Zürich. At least a
few years ago ...

~~~
UK-AL
Not surprised since Overon was invented there...

~~~
pjmlp
It's called Oberon!

------
mrcharles
Their methodology is suspect as hell:

"TIOBE Programming Community Index is an indicator of the programming language
trends. It is updated monthly, this list is based on the number of experienced
programmers,courses and third-party vendors on the Internet. It uses the well-
known search engines (such as Google, MSN, Yahoo) as well as Wikipedia and
YouTube to calculate the ranking."

Frankly that doesn't sound like a proper method to determine a ranking of
anything, let alone programming languages.

~~~
buro9
It is meant to be nothing but a trend indicator. Taken as such, and knowing
that the methodology they use is flawed but mostly constant, then it actually
works OK.

~~~
petdance
But a trend of what? I don't see how anyone can conclude "X is used more (for
whatever 'more' means) than Y" simply because there are more documents on the
web about X than Y.

~~~
buro9
From the TIOBE website:
[http://www.tiobe.com/index.php/content/paperinfo/tpci/index....](http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html)

    
    
        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, Amazon, 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.
    

That last line points to the definition here:
[http://www.tiobe.com/index.php/content/paperinfo/tpci/tpci_d...](http://www.tiobe.com/index.php/content/paperinfo/tpci/tpci_definition.htm)

------
noarchy
Assuming that we trust these numbers, what does it say about mobile
development that Obj-C continues to shoot up, while Java has lost momentum
(though still high on the list)? There are more Android devices out there than
iOS, but the development market seems skewed in favour of the latter.

~~~
buster
You mean, despite that fact that Android is not actually Java(tm) and a lot of
job offerings etc. may mention "Android Development" but not "Java
Development", because they are in fact not the same, except for the syntax. As
mentioned everywhere in the thread, the TIOBE index may not be optimal..

------
gukjoon
A bit of the ole Ralph Nadar effect going on here, I presume. Java's share is
being cannibalized by Groovy, Scala, Clojure, etc. They should start making a
JVM ranking to start consolidating all those languages.

~~~
davesims
As Javascript's is cannibalized by node, jquery, ember, etc., etc., etc.

~~~
spullara
None of those are languages. CoffeeScript does come to mind though.

~~~
davesims
Yes, I understand those are frameworks not languages. The point was that since
TIOBE indexes against the word 'javascript' and not 'node,' etc. I think it's
possible that JavaScript's relative usage is obscured.

This is purely anecdotal on my part but it seem to me I see many posts or
articles talking about 'writing an app in node.js' or 'the UI was written in
jQuery' rather than 'written in JavaScript.' This seems to me a phenomena more
or less unique to JavaScript.

------
st3fan
The bigger news is that Objective-C went from 8th place to 4th.

------
petdance
The title of the article is wrong. A correct title would be "The number of
documents on the web about C is now larger than the number of documents on the
web about Java."

There is no reason to believe, and no facts are given to support the notion,
that there is ANY correlation between popularity of a programming language and
the number of web documents related to that language.

TIOBE just leaves it to us to draw that conclusion ourselves, and then we
commence arguing over it.

------
krollew
I think that there is no need to check popularity of C and compare it to other
ones. Even if C isn't most often used programming language anymore, it is and
will be programming language number 1. Most popular languages are not realy
different from C. Python, Ruby, PHP, Perl, Lisp - ok. those languages are
different, OK. But C++, C# and Java are just C made bit more convienient tool
for object oriented programming. Morover, if it isn't enough so much currently
used software is written in C. Yeah, no doubt that C is programming language
number 1.

~~~
mikegirouard
PHP is very much akin to C. I wouldn't categorize it w/Ruby or Lisp.

~~~
krollew
Sure it's not not as different from C like Lisp is, but there are many
differences. First of all: everything outside "<?php ?>" is treated as
argument for print. Second, PHP is dynamicaly typed and support many
functional language stuff like closures. In my opinion it's much more
difference between C and PHP and between C and C#/Java.

------
callumjones
I'm curious to know what has happened in the VB.Net community that has
encouraged such a huge shift upwards.

Has Windows 8 dropping on the scene encouraged this?

------
lucasgonze
TIOBE's methodology is skunky, but there's an underlying truth to the results.
C really is that good.

------
shomyo
fuck yeah

------
Aedan
Excuse my apparent ignorance, but people are still programming in C?

Why? On which fields? Is there something C can do better than Java or C#?

~~~
sophacles
Off the top of my head, big important projects written in C, which are still
actively developed:

* Linux

* GNU

* Apache

* Ruby

* Python

* nginx

* mysql

* posgresql

* Redis

* VMWare

* OpenSSL

* Almost everything "embedded"

Because C allows extreme control and performance. Anecdotally, a lot of people
write in higher level languages, then rewrite critical bits in C for that
speed boost. In many cases they just start at C if they know it requires
certain levels of performance, for instance code on massive super computers or
super low latency communications packages.

~~~
st3fan
'GNU' is not a project. At least not like the others in your list.

~~~
Turing_Machine
Sophacles probably meant
<http://www.gnu.org/software/software.html#allgnupkgs> Looks projecty to me.
:-)

