Programming Language Popularity Based On O’Reilly Book Sales

Python source code

Python source code O’Reilly’s Mike Hendrickson has published some interesting data about the company’s programming book sales.

I 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 languages amongst programmers can help companies decide what languages to use for projects in order to find the most qualified developers, and it can also help developers decide what languages to learn. But these sorts of metrics can overlook the realities of what’s actually being used at companies. Looking at job postings on Dice can be a portal into what’s actually being used, as opposed to what developers like using for side projects.

O’Reilly’s book data seems like it can provide a bit of insight into both, if we assume that employers will buy books for employees based on internal needs and that individual developers will buy books based on their own interests.

Hendrickson identified 11 “large” programming languages. These comprised the top 11 languages by language sold:

  1. Java
  2. JavaScript
  3. C#
  4. Objective C
  5. C++
  6. PHP
  7. VBA
  8. Python
  9. SQL
  10. ActionScript
  11. .net Languages

The next tier was labeled “major” languages, and included Ruby, R and Perl. Hendrickson writes:

You’ll notice in the Major languages that Ruby had the biggest growth among this grouping. And the R language had significant growth and surpassed Perl in sales units. Perl used to be one of the largest languages around and is now ranked #19 among the languages. PowerShell experienced it second consecutive year of growth in 2011.

I was surprised to see Ruby so low. It was the second favorite in the Hacker News poll, and a top tier language in RedMonk’s poll. But perhaps I shouldn’t have been so surprised. In Dennis B. Moore’s analysis of listings last May, Ruby ranked only #11 even though it was one of the fastest growing languages Moore looked at. I was also surprised at how Smalltalk ended up ranking – far ahead of Lua, for example, which I also thought would rank higher.

Other factors may influence the results as well. For example, it could be that just about everyone who wants to learn C or Perl already has a book on it. It could also be that the preferred books on some languages are not published by O’Reilly. Still, I think we can conclude a few things based on the data we have now:

1. Java is still very popular, thanks in part to Android.
2. Python is more popular than Ruby.
3. R and JavaScript are still growing fast.
4. Despite challenges, PHP isn’t going anywhere any time soon.
5. The Microsoft languages are still sitting pretty.

Photo by Tim Lucas