Mon

Mar 3
2008

Mike Hendrickson

Mike Hendrickson

State of the Computer Book Market, part 4 -- The Lanugages

In this fourth post [one, two and three are found here] on the State of the Computer Book Market, I will look at programming languages and drill in a little on each language area.

Overall the 2007 market for programming languages was down (1.67%) when compared with 2006. There were 1,809,695 units sold in 2006 versus 1,779,523 units sold in 2007 which is (30,172) less units in 2007.


Before I begin to drill in on the languages, I thought it would be best to explain our "language dimension." Our view on languages is not just strictly about programming with a particular language, although we capture those very easily, but that the book being categorized has code examples in a particular language. So Flash Programming with Java would be in our Flash atomic category, but the language dimension would be Java. Similarly, our Head First Design Patterns book contains all examples written in Java, so it too carries the "java" tag on the language dimension. So with this language dimension information in mind, I am going to add one more grouping before we dive in.

A Treemap view of the Programming Languages

Caveat: The image below is about 1% or 2% off because there were several titles that were unclassified at the end of 2007 when I took this screen capture. The trends are still the same, just the preciseness is slightly askew.

In the treemap view below, you will notice a couple of bright green areas -- namely ActionScript and PowerShell. Python, Ruby and C# are green [not bright green] show a nice growth when compared to the 2006 timeframe. Unfortunately what this does not show is the rate of change and a visual reference for the Size of the box. Ruby was a small box last year and is now 8 largest language passing Perl and Python and is now knocking on the door for Visual Basic's spot. Ruby has the second largest unit growth after C# and went from 4% overall market share to 5% and is 4k units off of displacing VB for #7 overall. C# was equally impressive with a 36,811 unit growth or 18.85% growth and went from 11% market share in 2006 to 13% market share in 2007. At the rate it is going, it should surpass Java as the number one language this year as it is only (9,526) units short and is on a positive 18.85% growth rate while Java continues its slide at a (14.16%) clip.

Language_all.jpg

Now let's dive into this treemap and take a closer look at the languages. This chart shows the five-year trend for the Major programming languages. Red is used to highlight 2007. What is very noticeable is the huge decline with Java. It is half of where it was in 2003 only five years later. C# and Javascript are the only two Major languages growing consistently during the past five years.

2007 Market Share

five_year_trend_lang.png

For the sake of grouping and presenting this information in a more readable format, I have classified the categories for the languages in this way:

Category Q1 07 Unit Range
Major 100,000-250,000
Mid-Major 65,000 - 99,999
Mid-Minor 10,000 - 64,999
Minor 1000 - 9,999
Immaterial 1 - 999

The tables that I am showing will contain the following header:

*Major* U N I T S T I T L E S M A R K E T S H A R E
1. Language 2. 2006
Units
3. 2007
Units
4. 2006
Titles
5. 2007
Titles
6. 06Mkt
Share
7. 07Mkt
Share

  1. Name or short name of the language
  2. Units sold in 2006
  3. Units sold in 2007
  4. Number of Titles making Bookscan 3000 in 2006
  5. Number of Titles making Bookscan 3000 in 2007
  6. 2006 Market Share
  7. 2007 Market Share

The following table is the "raw" data for 2007 and 2006 for the major languages. As you can see, Ruby is a bright spot for the languages rights now. However, when you see that the number of Ruby titles increased from 7 in 2006 to 23 [ 300%] in 2007 and saw only a 41% unit growth, this only increased Ruby's market share by 2.6%. Sometimes the data behind growth charts reveal that things are not as impressive as they appear on the surface. The "Languages" are a big market and it will take some sustained heavy growth periods to get Ruby higher up on the scale. It may be a little unfair to pick on Ruby as it just made the cutoff of the Major languages threshold, yet it has rapid growth in the last couple of years. The rest of the languages, except for Javascript, are older and established, but all showed declines. (Note: ".Net Languages" refers to books that include both C# and Visual Basic. You could add those numbers to those for either of the other languages, but it is more likely that they should be counted for C#.)

Major Programming Languages

The major languages each sold more than 20,000 units in Q1 '07. These are what I consider the major languages.

*Major* U N I T S T I T L E S M A R K E T S H A R E
Language 2006
Units
2007
Units
2006
Titles
2007
Titles
06Mkt
Share
07Mkt
Share
java 77,782 63,136 228 206 16.13% 14.29%
c# 53,855 52,655 120 116 11.17% 11.92%
javascript 34,741 48,266 40 74 7.21% 10.92%
php 59,524 41,933 67 78 12.35% 9.49%
c/c 53,232 41,311 185 163 11.04% 9.35%
.net languages 23,183 30,712 53 70 4.81% 6.95%
visual basic 44,401 26,385 112 95 9.21% 5.97%
ruby 15,089 25,380 7 23 3.13% 5.74%
sql 25,784 22,188 51 56 5.35% 5.02%

Notice in the table that the top 10 titles [pareto column] typically represent between 30 and 50 percent of the market for that specific language. Two noticeable exceptions are Ruby and C/C . C/C has more titles and is not heavily loaded on the "bestseller" side of things, but rather dispersed among many titles. Ruby on the other hand does not have as many titles, so the top 10 represents a high percent of the language's total titles as well as the units. From a title growth perspective, JavaScript had the largest increase in new titles making the Bookscan list.

Here are the top five titles for the major languages:

Pragmatic Agile Web Development with Rails
O'Reilly JavaScript: The Definitive Guide
O'Reilly Ajax on Rails
O'Reilly Head First Java
O'Reilly Head First Design Patterns

Mid-Major Programming Languages

The following languages all sold between 2,000 - 19,999 units in Q1 '07. These are what I am considering the mid-major languages.

*Mid-Major* U N I T S T I T L E S M A R K E T S H A R E
Language 2006
Units
2007
Units
2006
Titles
2007
Titles
06Mkt
Share
07Mkt
Share
actionscript 16,769 18,531 29 26 3.48% 4.19%
vba 21,420 16,717 47 43 4.44% 3.78%
perl 14,415 10,308 41 33 2.99% 2.33%
python 9,170 9,909 22 23 1.90% 2.24%
transact sql 2,878 5,846 7 13 0.60% 1.32%
vbscript 3,022 3,308 7 7 0.63% 0.75%
shell script 4,294 2,935 12 10 0.89% 0.66%
basic 3,029 2,341 6 5 0.63% 0.53%
pl/sql 2,207 2,033 13 12 0.46% 0.46%

You'll notice in the Mid-Major languages that Python and Actionscript are the two languages that are showing growth when you compare the 2006 and 2007 first quarter. Python achieved its growth by adding one more title to the list and ActionScript grew with three fewer titles. In this language area, there are some languages that the top ten titles represent all of the titles for the language -- Perl, VBScript, Shell Script, and PL/SQL.

Here are the top titles for the mid-major languages.

O'Reilly Learning Perl
For Dummies Excel VBA Programming For Dummies
For Dummies Excel 2003 Power Programming with VBA
O'Reilly Learning Python
Microsoft Press Microsoft VBScript Step by Step

Mid-Minor Programming Languages

The following languages all sold between 1,000 - 1,900 units in Q1 '07. These are what I am considering the mid-minor languages.

*Mid-Minor* U N I T S T I T L E S M A R K E T S H A R E
Language 2006
Units
2007
Units
2006
Titles
2007
Titles
06Mkt
Share
07Mkt
Share
windows script 3,771 1,859 7 5 0.78% 0.42%
powershell 527 1,827 1 5 0.11% 0.41%
groovy - 1,552 - 3 0.00% 0.35%
objective c 1,784 1,424 6 5 0.37% 0.32%
assembly 1,734 1,049 11 10 0.36% 0.24%

The noticeable trend with the mid-minor languages is that Groovy came from nowhere and has now sold 1500 copies in the first quarter of 2007. Also Powershell titles are starting to nudge the needle a bit.

Here are the top titles for the mid-minor languages.

Manning Windows PowerShell in Action
Manning Groovy in Action
Microsoft Press Microsoft Windows Scripting Self-Paced Learning Guide
Wiley Reversing: Secrets of Reverse Engineering
Course Technology Microsoft Windows Powershell Programming for the Absolute Beginner

Minor Programming Languages

The following languages all sold between 100 - 999 units in Q1 '07. These are what I am considering the minor languages.

*Minor* U N I T S T I T L E S M A R K E T S H A R E
Language 2006
Units
2007
Units
2006
Titles
2007
Titles
06Mkt
Share
07Mkt
Share
sas 574 999 7 10 0.12% 0.23%
applescript 1,053 894 6 4 0.22% 0.20%
mdx 516 764 4 3 0.11% 0.17%
abap 538 624 1 2 0.11% 0.14%
latex 826 594 4 4 0.17% 0.13%
awk 889 580 2 2 0.18% 0.13%
lisp 759 557 4 4 0.16% 0.13%
lua 138 509 2 3 0.03% 0.12%
tcl 612 398 2 2 0.13% 0.09%
scheme 331 371 4 5 0.07% 0.08%
haskell 47 345 2 4 0.01% 0.08%
directx 552 310 1 1 0.11% 0.07%
mysql spl - 282 - 1 0.00% 0.06%
mel 541 260 3 2 0.11% 0.06%
vhdl 201 225 3 2 0.04% 0.05%
rpg 52 210 1 2 0.01% 0.05%
cobol 171 168 1 3 0.04% 0.04%
c 45 114 2 6 0.01% 0.03%

The noticeable trend in the minor languages is that Haskell is up, although there were two additional Haskell titles added to the space in Q1 '07. The four Haskell titles are averaging fewer than 30 copies per month.

Here are the top titles for the minor languages.

Wrox Professional SQL Server Analysis Services 2005 with MDX
O'Reilly sed & awk
Prentice Hall Practical Programming in Tcl and Tk
O'Reilly AppleScript: The Definitive Guide
Addison-Wesley ABAP Objects: Introduction to Programming SAP Applications

Irrelevant Programming Languages

The following languages all sold between 1 and 99 units in Q1 '07. These are what I am considering the irrelevant programming languages.

*Irrelevant* U N I T S T I T L E S M A R K E T S H A R E
Language 2006
Units
2007
Units
2006
Titles
2007
Titles
06Mkt
Share
07Mkt
Share
alice 64 71 1 2 0.01% 0.02%
delphi 345 48 3 1 0.07% 0.01%
ocaml - 38 - 1 0.00% 0.01%
jcl 30 33 1 1 0.01% 0.01%
realbasic - 31 - 1 0.00% 0.01%
ada 26 11 2 1 0.01% 0.00%
labview 148 - 1 - 0.03% 0.00%
lingo 30 - 1 - 0.01% 0.00%
squeak 20 - 1 - 0.00% 0.00%
rexx 17 - 1 - 0.00% 0.00%
fortran 16 - 1 - 0.00% 0.00%

Here are the top titles for the irrelevant languages. Incidentally, each of these titles has sold less than 60 units each in the first quarter of 2007.

Prentice Hall Learning to Program with Alice
Wordware Inside Delphi 2006
Apress Practical OCaml
Mike Murach Murach's OS/390 and z/OS JCL
Apress Beginning REALbasic: From Novice to Professional

So this concludes the languages view of the State of the Computer Book Market. I hope you enjoyed it. Pay attention to this space, as I will be publishing this information quarterly. Now that I have all the queries, spreadsheets, pivot-tables and systems down, I should be able to update these posts much more easily going forward. If you have anything you would like explored a bit more thoroughly, please leave a comment here and I will see what I can do.

tags:   | comments: 0   | Sphere It
submit:

 
Previous

Subscribe to Comments on this Entry:

0 TrackBacks

TrackBack URL for this entry: http://radar.oreilly.com/mt/mt-tb.cgi/9961

Post A Comment:

 (please be patient, comments may take awhile to post)






Type the characters you see in the picture above.

Subscribe to this Site

Radar RSS feed

RELEASE 2.0 BACK ISSUES

BUSINESS INTELLIGENCE

CURRENT CONFERENCES