State of the Computer Book Market, Part Four – Programming Languages Q1 07

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.

A Treemap view of the Programming Languages

Overall the Q1 ’07 market for programming languages was down (9.10%) when compared with Q1 ’06. There were 482,079 units sold in Q1 ’06 versus 441,850 units sold in Q1 ’07.

In the treemap view below, you will notice a couple of bright green areas — namely Ruby and Transact SQL. JavaScript and Python, which are also green [not bright green] show a nice growth when compared to the Q1 ’06 timeframe. Actionscript, VBScript and .Net Languages are the other languages showing growth in Q1 ’07. The rest of the languages were either flat or down.

Languages Q1 07 Vs 06

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. 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 22,000 – 65,000
Mid-Major 2,000 – 19,000
Mid-Minor 1,000 – 1,900
Minor 100 – 999
Irrelevant 0 – 99

Now let’s dive into this treemap and take a closer look at the languages. 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 P A R E T O
1. Language 2. 2006
Units
3. 2007
Units
4. 2006
Titles
5. 2007
Titles
6. 06Mkt
Share
7. 07Mkt
Share
8. Top 10 9. 20%

  1. Name or short name of the language
  2. Units sold in Q1 ’06
  3. Units sold in Q1 ’07
  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
  8. Percent of total Language market for the Top 10
  9. 20% of the Titles make what percent of the Total

The pareto principle is roughly stated as the 80/20 rule where 20% of an economic distribution makes up 80% of the total. So in the case of computer books, that would mean that 20% of the titles in a particular language area would make about 80% of the total units. I also think it is important to look at the Top 10 titles and see what percentage they make of the total area being measured. Some markets are dominated by one or two books. The pareto is only useful when looking at the Major and Mid-Major languages because the other languages are typically one or two book markets. I have not included any pareto percentages on those smaller market language areas.

This chart shows the four-year trend for the Major programming languages. Red is used to highlight 2007.</p
Majors

The following table is the “raw” data for Q1 ’07 and Q1 ’06 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 P A R E T O
Language 2006
Units
2007
Units
2006
Titles
2007
Titles
06Mkt
Share
07Mkt
Share
Top 10 20%
java 77,782 63,136 228 206 16.13% 14.29% 34% 68%
c# 53,855 52,655 120 116 11.17% 11.92% 33% 54%
javascript 34,741 48,266 40 74 7.21% 10.92% 50% 58%
php 59,524 41,933 67 78 12.35% 9.49% 53% 64%
c/c 53,232 41,311 185 163 11.04% 9.35% 29% 59%
.net languages 23,183 30,712 53 70 4.81% 6.95% 51% 59%
visual basic 44,401 26,385 112 95 9.21% 5.97% 41% 58%
ruby 15,089 25,380 7 23 3.13% 5.74% 82% 62%
sql 25,784 22,188 51 56 5.35% 5.02% 49% 61%

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 P A R E T O
Language 2006
Units
2007
Units
2006
Titles
2007
Titles
06Mkt
Share
07Mkt
Share
Top 10 20%
actionscript 16,769 18,531 29 26 3.48% 4.19% 88% 50%
vba 21,420 16,717 47 43 4.44% 3.78% 59% 52%
perl 14,415 10,308 41 33 2.99% 2.33% 100% 45%
python 9,170 9,909 22 23 1.90% 2.24% 81% 53%
transact sql 2,878 5,846 7 13 0.60% 1.32% 99% 50%
vbscript 3,022 3,308 7 7 0.63% 0.75% 100% 45%
shell script 4,294 2,935 12 10 0.89% 0.66% 100% 45%
basic 3,029 2,341 6 5 0.63% 0.53% 39% 58%
pl/sql 2,207 2,033 13 12 0.46% 0.46% 100% 20%

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
Language 2006Units 2007Units 2006titles 2007Titles 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: , , ,