tecosystems

The RedMonk Programming Language Rankings: February 2012

Share via Twitter Share via Facebook Share via Linkedin Share via Reddit

For years now, it has been self-evident to us at RedMonk that programming language usage and adoption has been fragmenting at an accelerating rate [coverage]. As traditional barriers to technology procurement have eroded [coverage], developers have been empowered to leverage the runtimes they chose rather than those that were chosen for them. This has led to a sea change in the programming language landscape, with traditional language choices increasingly competing for attention with newer, more dynamic competitors.

The natural consequence of this tectonic shift has been uncertainty. Vendors for whom supporting Java and Microsoft based stacks was once sufficient are being forced to evaluate the array of alternatives in an effort to maximize their addressable audience. Platform-as-a-Service (PaaS) stacks like Cloud Foundry and OpenShift are perhaps the best example of this; the differentiation for each at launch was in part their support for multiple independent runtimes from JavaScript to Ruby.

While the question is obvious – which languages should I support? – the answer, and mechanisms for determining an answer, have been considerably less so. There is no canonical metric for determining platform traction; we employ half a dozen or more internally at RedMonk, depending on context, which incorporate everything from GitHub LOC rankings to LinkedIn group membership data.

But one of our favorites is the one originally developed by Drew Conway in 2010. It compares and contrasts the rankings of programming languages on GitHub and Stack Overflow to provide a broader view of language popularity. Our first snapshot using this model came in September. Five months later, we recompiled the data and plotted it to see what – if anything – had changed. Herewith the updated plot.

In general, the addition of languages like Dylan, Turing or Rust aside, little has changed six months on. We still have two clearly defined upper language tiers, with two to three less visible below that. There are, however, several developments worth discussing in more detail.

  • CoffeeScript: billed as a more syntactically approachable alternative that compiles to JavaScript, CoffeeScript made subtantial performance gains relative to its Stack Overflow tag volume (63%), but also jumped significantly in terms of its popularity on GitHub. Since September 1st, CoffeeScript was not only one of 11 languages to increase in popularity, it jumped the furthest, going from #19 to #13. The jump is even more significant since six new languages were added to GitHub’s list in that span. With all due apologies to Bryan Cantrill, the numbers indicate that CoffeeScript is one of the fastest growing platforms by this metric.
  • Java: as recently as a year ago, Java was widely regarded as a language with a limited future. Between the increased competition from dynamic languages and JVM based Java alternatives, while the JVM had a clearly projectable future, even conservative, enterprise buyer oriented analysts – the constituency most predispoed to defend Java – were writing its obituary. As we argued at FOSDEM last February, however, these conclusions were premature according to our data. One year in, and the data continues to validate that assertion.
    Apart from being the second highest growth language on GitHub next to CoffeeScript, Java – already the language with the second most associated tags on Stack Overflow – outpaced the the median tag volume growth rate of 23%. This growth is supported elsewhere; on LinkedIn, the Java user group grew members faster than every other tracked programming language excepting C# and Java. This chart, for example, depicts the percentage of LinkedIn user group growth for Java and JVM based alternatives since November of 2011.

    linkedin-percentage-growth

    This outperformance is even more impressive when the overall member numbers are factored in.

    linkedin-member-count

    Our data, then, indicates that Java remains – in spite of the fragmented programming language landscape – a viable, growing language.

  • Rust: a C/C++ like syntactical language originally developer in 2006, with the 0.1 of its compiler completed only last month, Rust has surprising traction on GitHub. On February 1st, it sat at 21 on GitHub Explore, ahead of Clojure, Groovy, Erglang, R, Go and a half dozen other relatively popular languages. While this is almost certainly a product of Mozilla’s involvement in the project, it has caught the eye of more than a few prominent technologists. There are a mere 4 questions tagged with Rust on Stack Overflow, so it’s clearly early days, but Rust is on the radar.

Other quick hit observations:

  • C dropped 2 spots on GitHub’s rankings, from 5 to 7
  • Go posted the fourth highest growth percentage on Stack Overflow, R was sixth
  • Java passed PHP
  • Prolog jumped six spots on GitHub from 30 to 24
  • Scala may be separating itself from the other Tier 2 languages
  • Viml is popular on GitHub

67 comments

  1. Rust’s ranking on github was erroneous, unfortunately:
    https://github.com/mozilla/rust/issues/1512

  2. on LinkedIn, the Java user group grew members faster than every other tracked programming language excepting C# and Java.
    ——–
    probably mean C# and javascript

  3. You know what would be totally awesome? Making an vector plot with arrows from old to new locations of each language. That would make the moves you mentioned obvious, as well as others like the increases in popularity of XQuery and Arduino, Puppet, Standard ML and AutoHotkey (whatever that is), and other even less common languages. I’m particularly intrigued by XQuery and Puppet.

    1.  Just indicating the popularity trend with a colour (green for increasing, red for decreasing, for example) would be great.

      Also, it looks to me as if there are three clear clusters. Perhaps tracking movement between those clusters over time would be a good alternative metric? So mark the boundary of each cluster with a colour (blue for the leaders, orange for the challengers and grey for the specialists) and then mark each language in the colour of the circle that that appeared in last time. That way the movers would stand out clearly against the rest in their cluster.

  4. Rust is ranked #23 on Github right now, but if you look at some of those “Rust” repos, you will notice that most of them are false positives probably due to wrong interpretation of the .rc file extension.

    1.  Interesting. Based just on the chart above I was about to start digging into Rust. It really looked like I was missing something.

  5. Suggestion — add a third dimension (perhaps with bubbles) representing the number of jobs posted on indeed.com, or some other site (maybe dice, as it’s less prone to noise).  Would be an interesting addition to ‘economic activity’

    1. How about a fourth dimension with animated, time-shifting nodes. With a fifth dimension and the cooperation of the LHC we may even be able to reach into the very chasm of eternity and touch language nirvana. Hm, Nirvana sounds like a good programming language. I think I’ll base it on the JVM. Ooo, I’m getting numb just thinking about it.

    2. There is some jobs data on (my site) http://jobstractor.com/monthly-stats if you’re interested. Although a more limited data set than indeed I think it shows a reasonable snapshot of the jobs market for developers.

  6. I’m guessing viml isn’t actually a popular programming language.  most of us keep our vim plugins in a git repo and keep that in github.  So I might have a bunch of viml repos, but I’m not maintaining them or programming in them.  Same for the rest of my dotfiles.

    1. That and vim.org/scripts/ is mirrored on GitHub.https://github.com/vim-scripts

  7. C# and Ruby would/should be closer to the middle.
    The reason they are not is that Stackoverflow was created/shared by C# programmers at first:Jon Skeet co-wrote the F# book and Stackoverflow was written in C#.

    Likewise Github was very popular by the Ruby community because Github was written in Ruby.  The Github authors wrote the Git/Ruby connectors.

    1. I agree with you anecdotaly but the data does not agree. Perhaps your assertions explain why Ruby is to the right of the line and why C# is above it, but both languages show about the same degree of popularity on both axes. Your interpretation does not explain why Ruby is so popular on Stack Overflow or why C# has so many projects on GitHub. To me, C# is especially surprising since CodePlex and OuterCurve no doubt suck up a lot of the C# projects. Then again, Mono has moved to GitHub so that adds a bit of a bump (the Mono project has quite a few GitHub repositories I think).

      1. Well I think you answered yourself with another interpretation. That is overtime as github and stackoverflow improve with popularity languages are moving towards the middle. Kind of like when facebook and twitter killed off the other social media services, github and stackoverflow are doing so likewise. 

        You are for sure right that C# should be even further away from the middle considering that Git is not as popular on windows (its only been recently that Git worked natively on windows) and the plethora of other C# project hosting.

        What is very surprising to me is how Haskell is in the dead middle. I expected to see far more questions than projects. A good sign for Haskell.

  8. Do you have data for earlier months?

  9. Why GitHub and not BitBucket? Why bias this by making GIT-usage an entire axis of how we measure EVERY language?

    1.  Yes, data from bitbucket would be kind, and definitely add to python’s repo count 🙂  The reality though is that both SO and github are “new fangled” and “more social” (which is also somewhat “new”) so will tend to favor younger/newer languages/developers, too, so…take the entire study with a grain of salt I guess.

  10. >> Java was widely regarded as a language with a limited futureLol in what universe? A lot of people hate it for it’s success, but it’s a fast enough, clear-enough language with a lot of purposes.

  11. Nice analysis.

  12. Nice, having some math and graphs to show people that Java is not dead and reports of it are “greatly exaggerated”. Good to see JRuby and Scala growing too 😉

  13. Do you have anywhere raw data available? I’m interested in the first picture mostly.

  14. Wow – I’ve been programming for nearly 20 years and this is the first time I’ve ever commented as regards these “popularity polls”.  Just wondering what the exact point of these surveys is – other than to try and direct non-thinkers as to which direction they should be pointing their CV?  Bring back the engineering spirit I reckon, less of this pointless marketing bollocks. 

    1. To train sheeple, sorry people, and deploy as worker threads.

      1. Oh, “guest”, you’re such sn individual!

      2. Well FWIW, if unis actually paid attention to something like this, it’d still be an improvement.

        1. Whatever do universities have to do with programming language choice in industry?

          I certainly hope your university (unless perhaps it is a 1-year trade school like “ITT Tech”) is teaching you first how to learn, and second the fundamentals of the field, rather than wasting exceptionally valuable time with such minutae as programming languages.  Programming languages are absolutely guaranteed to change completely during one’s career.  I’ve never met anyone who used professionally a programming language they learned in college.

          Students today are graduating with record amounts of debt, and I wouldn’t want anyone to be going into debt to learn details of Java syntax.

  15. It’d be interesting to see a plot of just the delta from the last dataset.  (I’d really like to see some ranking over time, but just the Sep delta is probably easiest to do) .

  16. what do we mean by?
    Scala may be separating itself from the other Tier 2 languages

  17. I think you are misunderstanding the criticisms of Java. No one is arguing that its popularity is going down, it is definitely the lingua franca of the business software world (like COBOL before it). It is just no longer the best choice out there in terms of technological superiority (again, like COBOL before it).

  18. […] RedMonk Programming Language Rankings: February 2012 ::: RedMonk ::: The […]

  19. No MUMPS?  Hmmmmm.

  20. […] The RedMonk Programming Language Rankings: February 2012 (redmonk.com) […]

  21. […] may not be why CoffeeScript and Java are making gains on GitHub and Stack Overflow according to RedMonk’s February 2012 language rankings, but it probably doesn’t […]

  22. […] The RedMonk Programming Language Rankings: February 2012 For years now, it has been self-evident to us at RedMonk that programming language usage and adoption has been fragmenting at an accelerating rate [coverage]. As traditional barriers to technology procurement have eroded [coverage], developers have been empowered to leverage the runtimes they chose rather than those that were chosen for them. This has led to a sea change in the programming language landscape, with traditional language choices increasingly competing for attention with newer, more dynamic competitors. […]

  23. […] -The continued persistence of legacy technology, including COBOL and FORTRAN, and the RedMonk programming language rankings. -HP’s Gen8 servers and the future of commodity servers. -Parallels and the small business […]

  24. “…on LinkedIn, the Java user group grew members faster than every other tracked programming language excepting C# and Java.”

    Java was most popular except for C# and… Java?  I’m not sure what you mean.

  25. Glad to see Go getting more popular!  It’s such an awesome language…  Speed + simplicity + concurrency == Awesome.

  26. Java is growing because of Android, don’t you think? Would that be hard to analyse? 

  27. […] language out there. Scala seems to get more of the flak because it’s more popular and possibly pulling ahead of the others (despite what TIOBE’s baffling index claims, leaving Scala out of it’s Top 50 languages for […]

  28. […] RedMonk Programming Language Rankings: February 2012 – tecosystems http://redmonk.com/sogrady/2012/02/08/language-rankings-2-2012/ For years now, it has been self-evident to us at RedMonk that programming language usage and […]

  29. […] the RedMonk programming language rankings from February, Go sat squarely in the middle of the chart. Like this:LikeBe the first to like this […]

  30. […] is how much traction Go seems to have achieved in that time. O’Grady ranked Go in the second tier of programming languages in the RedMonk Programming Languages Rankings in February. But, he says […]

  31. […] is how much traction Go seems to have achieved in that time. O’Grady ranked Go in the second tier of programming languages in the RedMonk Programming Languages Rankings in February. But, he says […]

  32. […] is how much traction Go seems to have achieved in that time. O’Grady ranked Go in the second tier of programming languages in the RedMonk Programming Languages Rankings in February. But, he says […]

  33. […] the second-highest-growth language on software-development project hosting site GitHub, behind CoffeeScript. It’s the No. 2 […]

  34. […] http://redmonk.com/sogrady/2012/02/08/language-rankings-2-2012/ Geposted in Home Weiterempfehlen: Twitter Facebook Delicious StumbleUpon E-mail ← Grundgerüst einer C++-Anwendung ohne GUI Zur Zeit keine Kommentare […]

  35. […] questions and GitHub projects. Comparing Stephen’s findings from September 2011 and February 2012 show a significant improvement in ColdFusion’s ranking […]

  36. […] previously looked at Hacker News poll on readers’ favorite languages and compared it to RedMonk’s analysis of programming language use on Github and questions on StackOverflow. Looking at the popularity of […]

  37. […] Other PaaS providers may offer support for the Java language, or for just a few Java frameworks like Spring.  They often have proprietary Java APIs that can only run in one cloud.  But, OpenShift provides access to the entire Java EE ecosystem because it offers the same middleware that leading enterprises use in their own datacenters.  This is especially important for enterprises, given that Java is still routinely one of the top couple programming languages and continuing to grow rapidly in usage. […]

  38. […] underlined by Redmonk analyst Stephen O’Grady: “For years now… programming language usage […]

  39. […] underlined by Redmonk analyst Stephen O’Grady: “For years now… programming language usage […]

  40. Just remember that popularity does not equal higher pay if anyone’s interested in that. I specialize in a narrow niche middleware product that pays way more than .NET and Java. In other words, there is value and usually less competition in ‘unpopular’ languages.

  41. […] denn nun die wirklich lebendigen Programmiersprachen unserer Tage? Dieser Frage sind die Jungs von tecosystems nachgegangen haben ein klasse Diagramm dazu erstellt. Die Idee stammt ursprünglich von Drew Conway […]

  42. […] The RedMonk Programming Language Rankings: February 2012 – Our data, then, indicates that Java remains – in spite of the fragmented programming language landscape – a viable, growing language. […]

  43. […] このランキングはプログラミング言語市場の状態を表すひとつの逸話であると解釈すべきだ。例えばこの順位は、Stephen O’radyが2月に書いたRedMonkブログのものとはかなり異なる。彼はObjective-Cを総合12位にランクした。 […]

  44. […] For example, the rankings are much different from what Stephen O’Grady posted in February on the RedMonk blog. He ranked […]

  45. […] O’Grady 在 RedMonk blog 的数据显示 Objective-C […]

  46. […] For example, the rankings are much different from what Stephen O’Grady posted in February on the RedMonk blog. He ranked […]

  47. […] skaičiumi, rengiamais kursais ir trečių šalių pardavėjais. Remiantis kito šaltinio – RedMonk skaičiavimais, objective-C užima 12 vietą, tačiau tai yra mažiau populiarus reitingas ir jame […]

  48. Remember to not be fooled by trends. A really good strategy (highlighted in the book “The Passionate Programmer”) is to 1) Don’t marry a language 2) Know two or more languages, one established and on the way out, and one that is trending up, and find a market in integrating both.

    Also important to know that programming is programming. If you are a good programmer,  a new language is simply a matter of learning syntax and rules.

  49. […] embrace new languages and new ways to ingest.  In a recent RedMonk article from February 2012 (http://redmonk.com/sogrady/2012/02/08/language-rankings-2-2012/), Stephen O’Grady took a clever snapshot of the changing programming landscape by plotting […]

  50. […] embrace new languages and new ways to ingest.  In a recent RedMonk article from February 2012 (http://redmonk.com/sogrady/2012/02/08/language-rankings-2-2012/), Stephen O’Grady took a clever snapshot of the changing programming landscape by plotting […]

  51. […] embrace new languages and new ways to ingest.  In a recent RedMonk article from February 2012 (http://redmonk.com/sogrady/2012/02/08/language-rankings-2-2012/), Stephen O’Grady took a clever snapshot of the changing programming landscape by plotting […]

  52. […] recent blog from RedMonk produced results of a programming language popularity study.  The study involved ranking popularity using common social media online sites such as Stack […]

Leave a Reply

Your email address will not be published. Required fields are marked *