Jul 26

Tim O'Reilly

Tim O'Reilly

State of the Computer Book Market, Q206, Part 2: Category Winners and Losers

Yesterday, I talked about the overall market trend in computer books versus last year. As always, though, the opportunities and interesting tidbits are in the category visualizations we do. Here's a treemap view of the quarter on quarter differences between Q2 of 2006 and the same period last year:

Q206 YoY Treemap

As I've previously described in Book Sales as a Technology Trend Indicator, in a Treemap visualization, the size of a square indicates the relative size of the category, and its color indicates the rate of change. A category that is bright green is up significantly. One that is bright red is heading strongly in the other direction. Colors that are more muted show smaller rates of change. As you can see from the controls at the top of the display, we're showing quarter on quarter unit sales compared to the same period in the previous year. (Note: quarters are 13 week periods as closely aligned to calendar quarters as possible. Because Neilsen reports data weekly, and weeks don't match up exactly with quarters, we do a best fit.)

A few high-level observations:

  • C# book sales continues to gain on Java, with a 49% unit sales increase compared to Java's 10% decrease.

  • Ruby continues its momentum, and is the fastest-growing programming language in terms of book sales.

  • Microsoft's new release of SQL Server has continued to drive significant book sales, with that market up 86%. ASP.Net is also on a roll, with book sales up 61%.

  • It's amazing how many books so simple a device as the iPod can manage to sell!

Drilling Down Into the Data

As described in previous postings about our technology trend research, we've organized the Bookscan data into a five level category hierarchy. At the top level, books are grouped into Systems and Programming, Web Development, Digital Media Applications, Business Applications, Consumer Operating Systems and Devices, and Other. In addition, though, because books can only be in one category (tagging style approaches with overlapping categorization don't work when you want to count and compare), we do alternate rollups along dimensions that are of interest to us, such as programming languages, databases, and operating systems. (To understand the difference, consider for example that a Ruby on Rails book will appear in the RoR category, but also needs to be counted as a Ruby language book.)

Computer Languages

For this reason, we'll start with some of the alternate rollups, because they give a truer picture of the actual change in key areas. First, let's look at computer languages:

Programming Language Treemap, Q206A

  • As you can see, the gains of C#, mentioned above, are even more striking than on the primary category treemap. While Java is off 10%, C# is up 78%. And that's without counting books whose programming language shows up as ".Net Languages." These are books that cover both C# and VB.Net. Combining these two categories, the C# book market is now actually a bit larger than the Java book market.

  • The Ruby book market, up 743% since the same period last year, driven largely by the success of Ruby on Rails, is now almost as large as the Perl book market. Python also continues to gain on Perl, with book sales up 4% to Perl's 4% loss. While PHP continues to show some growth, its rapid growth from previous years also appears to suffer from the incursions of Ruby.

  • Javascript, driven by the interest in Ajax, is up 171%. It will be really interesting to see the surge grow even faster with new books coming this fall to cover the first new release of Javascript in over six years.

  • Books on SQL continue to show strong growth, showing the increased importance of databases in today's applications.

  • C and C++, which have held steady for years, finally seem to be on a bit of a decline.

When I circulated a preliminary draft of this piece to the O'Reilly editors, chromatic wrote: "Ugh, I can only imagine the language FUD that will fly without any further explanation here." So Roger Magoulas, the director of O'Reilly Research, offers some further insight and qualifications about this data:

The book market being what it is, new, popular books on a topic will distort sales during their first few weeks/months of release. This is why I like to spot interesting areas in the treemap, then look at the time series, and, if time warrants, the individual titles that make up the topic to see what's behind a trend. For example, in Perl, last year a bunch of new versions of popular titles were released and sales have faded in what may be a mostly saturated market. For Ruby and Javascript, new topics (Rails, AJAX) with pent up interest and a few well received titles released in late 2005 and 2006, and, in the case of Ruby, a small base, mean big treemap increases.

So does what does what does this mean? Well, it may sound simplistic, but Ruby and Javascript are of increasing interest to developers and have become more important topics. Perl, with not much new and competing with languages reputed to be easier to maintain, read and with better object-oriented support is losing relative interest. Supporting the book trends, perl jobs are down year over year and biggest job growth areas are Ruby, AJAX and Web 2.0.

I'll point out another example of why book results require careful analysis: The new Microsoft products released in Nov 2005, C# 2005, Visual Studio 2005 and SQL Server 2005 (I'm skipping Visual Basic 2005 - so far gone it doesn't register) show big increases in book sales. When we look at the job data we don't see any corresponding changes. We also don't see much overlap between Windows and other development environments (e.g., ~14% of Windows .Net oriented job postings also include Java). So, our conclusion is that the new version - the first in five years - generated a lot of developer interest in Windows shops, but doesn't represent a trend towards increased use of Microsoft products.

(The job data that Roger refers to comes from analysis of job postings from all of the online job sites, which we receive as part of a data sharing arrangement with SimplyHired. Just as we do with the computer book market, we've built a data warehouse for technical job data and trends, which helps to put some "hard numbers" into the O'Reilly Radar.)

Andrew Odewahn added: "There are 9 books in our Ruby + RoR categories. The two biggest, Programming Ruby and Agile Web Development With Rails, account for over 75% of the total market. For Perl, there are 37 titles, and the top 2 titles (Learning Perl and Programming Perl) account for about 33% of the market.... as chromatic suspects, [the Ruby book market is] much more concentrated -- the bulk of the market goes to a few superstars. It remains to be seen if it can support the rich and long lasting ecosystem of perl." This question will be tested in the second half of the year, as a flood of new Ruby and Ruby-on-Rails books hit the market.

Looking at the sales rate of the category bestsellers is also telling. The top Ruby language book, Programming Ruby, released in October 2004, sold 3715 units in Bookscan-reporting stores during the quarter, while Learning Perl, the top Perl book, whose fourth edition was published in July 2005, sold 2232 copies, and Learning Python, the top Python book, published in December 2003, sold 1903 copies. (Agile Web Development with Rails sold even more copies than Programming Ruby, but it seems fairer to compare the books on the actual language.)


Looking at the Database rollup, we again see the strength of SQL Server, the decline of Oracle book sales, and that while MySQL is still a much larger category than Postgres, Postgres is showing some curious strength. This is one of the things that treemap visualizations are good for. Small, bright green categories stand out, and you can start paying closer attention. (Ruby also showed bright green while it was still a tiny category before its remarkable surge over the past year.) We also see the continuing popularity of personal databases like Access and Filemaker.

Database Treemap Q206

Operating Systems

The operating system rollup shows that, absent significant new releases, there's not a lot of action in operating system books. The only categories showing strength are Cisco, up 31%, and Blackberry, up 105%. (The tiny bright-green dot in the lower right corner is books on Juniper, up 76%, so while the market is still small, Cisco doesn't have it entirely to itself.)

Mac OS X's 12% YoY decline should not be seen as a sign that the OS is falling behind. During the second quarter of last year, many of the books on the new Tiger release were still in the full flush of their initial sales. We expect the Mac OS X category to revive significantly with new releases this fall, while Windows will need to survive yet another series of delays. As noted in previous postings on the subject, books that cover applications for both Mac and Windows are categorized as "Common Desktop.)

Operating System Treemap, Q206

Systems and Programming Category View

Returning to the category by category view, let's take a closer look at the top level systems and programming category:

Systems and Programming Treemap, Q206

Here you can see some of the changes in the software engineering areas. Agile programming continues to be a hot topic, as does software project management. The fact that patterns books are off 10% is an artifact of a single book, Head First Design Patterns, which first came out last year and drove the category to new heights. The book is still selling extremely well, but is not in the first flush of its youth.

Other categories that are worthy of note are data warehousing, up 44 %, and data analysis, up 174%. We believe that data is the Intel Inside of the next generation of computer applications, and that as more people realize this, advanced data management and visualization categories will continue to become more important.

Finally, we note the continued growth of interest in books on Linux distributions other than Red Hat, and the dog that continues to surprise us by not barking in the night. Despite all the obvious need for better security practices, security books remain in the doldrums.

Web Design and Development

Here's a closer look at the top level categories in the Web Design and Development area:

Web Applications Treemap, Q206

Besides the continued strength of ASP.Net, which was noted yesterday, what's striking here is that there are a number of categories that had been written off by publishers after early efforts failed, but are now making a comeback, namely web services, blogging, and podcasting. I'll also note that JBoss books are starting to make a mark. Finally, I'll note that the 0% showing for AJAX is an artifact. There were no AJAX books a year ago, so there's nothing to generate a rate of change. It is not zero, but immeasurably large.

Digital Media Applications

Next, let's take a look at Digital Media Applications:

Digital Media Applications Treemap, Q206

Here, the most noteworthy changes are the huge upsurge in books on the iPod, which has turned out to be a winning category, with huge numbers of low-priced books sold. It's also worth noting that an increasing number of books cover the Adobe CS suite rather than just Photoshop, although the number is still very small by comparison. We also note the surge in books on animation, and in general books on digital music (that's the bright green vertical bar on the lower right edge, up 497%.) Finally, we note the success of the new Premiere Elements, a lightweight version of Adobe Premiere.

Tomorrow: How Publishers Fared.

tags:   | comments: 10   | Sphere It

Previous  |  Next

0 TrackBacks

TrackBack URL for this entry:

Comments: 10

  Thomas Lord [07.26.06 01:49 AM]

Hey, Mr. O!

Can you, if it isn't too trade-secrety, tell us a bit about how you use this data? and also how you manage inventory? Also, when retailers put your book on their shelves, have they paid wholesale already or is it on spec? If they've paid, what are their rights about returning stuff?

Related: what's your catalog development strategy?

Related: Um... I'm sorry if what I'm about to say seems indelicate. It's an honest question and I bet you have a great answer but I do have to ask, ok?

The view from over here in the peanut gallery can be fairly charicatured by saying "Tim decides, one way or another, that technology X is the next big thing (at least in the open source world). Articles about X appear on Tim's on-line properties. Tim's death-march with cocktails friends echo interest in X (and/or Tim is echoing them). Titles about X trickle in. Articles about X pop up on OSTG properties. Technically lame loudest voices in a lot of FLOSS forums start yammering about X. And, whaddaya know, X is the next big thing."

I don't mean to say that you're the keystone -- that this phenom starts or ends with you. But you are one of a small number of "citizens" that seem to drive the non-enfranchised hoi poloi in the FLOSS world. Now, I know, you talk to a particular circle of non-slouches. But I also know of circles you don't talk much to. I know of circles that are a lot smarter about, for example, what makes for a good programming language or a wise web framework.

And don't talk to me about running code, either. I've seen "not X" systems that pass all the hurdles of the "X" systems at inception, are well (better even) documented and explained -- but don't capture the attention of your circle. And, so, languish. The adoption curves that give you spike in book sales seem, well, worse than arbitrary and driven top-down in an unhealthy way.

It seems to me like you are, probably not intentionally, one of a small number of people who basically set coding standards and define standard practice for a heck of a lot of FLOSS coders. I think that's just a fact of life and you'd have trouble escaping that role at this point. So, I'm interested in the questions of how self-conscious you are about that and how you make the promotional decisions that you do.


  Tim O'Reilly [07.26.06 12:01 PM]

Tom --

We use this data in several ways:

1) Sales. We help retailers to optimize their selection. For example, we compared one regional retailers inventory to what was actually selling nationwide, and found that they were way-underrepresenting key categories that were less familiar to them, and overweighting others, such that more than 80% of their inventory was largely dead. For another example, we alerted retailers last Christmas about which categories spike over the holidays, and by so much, so they they could stock up appropriately.

2. Inventory. As you suggest, we also do use this information to help manage our inventory. Because we can see changes in the rate of actual sell through, that helps us to decide whether to print more books. There are times when we're out of stock at the warehouse, but there are thousands of copies out in the channel, many months of demand, and that may lead us to avoid a reprint that we might otherwise have made, because we can predict that we'll be seeing returns before long. (Bookstores don't buy on consignment -- they are billed on shipment -- but they have the right to return books for credit, potentially for years. So they aren't really "sold" till they walk out the door in a customer's hands. So understanding the difference between sell-in to bookstores and sell-through to customers is critical for helping to manage how many copies we print.)

3. Editorial. During the worst of the downturn, as we were diversifying into new categories that we knew less well than our core categories (e.g. Photoshop), our tools helped us understand how large the categories were, what types of books were selling, and so on. Watching the history of book sales is slightly dangerous, since it's driving while looking in the rear-view mirror. Getting an indicator of demand by knowing people and what tools they are using is way more important -- but being able to see the size and growth trend of a category can help to shape a program.

In addition, tools like the treemap let us spot sharp upticks in small categories that we might not otherwise notice. For example, we recently had to decide whether or not to put an update of our book on PostgreSQL on our editorial calendar. This was a tough call: we only publish about 150 books a year, and we have to decide which books will get the slots. The first edition hadn't done so well that it would have made the cut for an update right now -- but we noticed that its sales, while small, had shown a sharp uptick. And that led us to do a bit more homework, discover that Postgres is popping up in conversation with more and more people, and that tipped the scales so we'd add another Postgres book to our plans.

4. Trendspotting and media activism. I organized the 1997 Perl conference and then the 1998 "open source summit" after I realized that all my bestsellers were about technologies below the radar of mainstream media. We learned long ago that it's a lot easier to tell a newsworthy story about technology and issues than books. Being able to use this data to tell technology trend stories helps us to shape public perception.

And that leads me to the second part of your question. While we certainly do play a significant role in technology marketing, and the endorsement of an O'Reilly book or treatment on the O'Reilly Radar or at an O'Reilly conference can make a big difference to the visibility of a technology, I think you overstate our ability to shape the success or failure of a technology.

And when we report on book sales, or job growth, or tag volume, or Yahoo! search volume (all indicators that we track), we're tracking the result of millions of individual purchase decisions -- after the fact. Our marketing may sometimes help people to try some new technology that they might otherwise have overlooked, but we really aren't picking winners and losers. (Or that is, we're picking the winners that we see in the trend data, and rushing to try to get products to match, rather than starting with products that we're trying to push.)

What's more, we work very hard to tell the truth, even when it makes us uncomfortable. Take Ruby -- we're actually late to the market, with the leading books published by The Pragmatic Programmers. But that doesn't stop us from pointing out how well Ruby books are doing. (Admittedly, we get some benefit from the success of the Prags, since we distribute their books to retail. But if you don't think our editors are kicking themselves for not picking up earlier on Ruby on Rails, you're kidding yourself.) Or when we say that ASP.Net is on a roll (check out that post from last year), it doesn't matter to us that we're a distant third in publishing for that space. We try to say it as we see it.

I'd be interested in specifically what technologies you believe are superior but overlooked because of our marketing.

  Scott [07.26.06 12:37 PM]

Hi Tim,

Thanks for the awesome post -- this is a really fascinating cut at the data.

One question I had regarding book sales above is whether the heatmaps for sales reflect what is being purchased by bookstores vs. actually purchased by customers.

In other words, would a popular book coming out for a product launch lead to a temporary spike in your heatmap due to Barnes and Noble stocking thousands of copies across their stores (with potentially some copies going unsold by customers -- and so overcounting the book). Or does your heatmap only count those books that customers left the stores paying for?

I'd also love to know whether you see signficiant differences in technology book purchases on vs. retail bookstores. has a nice service (free right now) for tracking sales data on Amazon in near real-time. I've always wondered how closely that maps to retail stores (for example: do open source developers buy more or less at Amazon vs. a Barnes and Noble store down the street).

  Lola Lee Beno [07.26.06 02:20 PM]

I'd like to know how you make decisions on future titles for languages such as ColdFusion. Right now, it's at 7.02, and Adobe is hard at work on deciding new features for CF8. Yet Programming ColdFusion MX is stuck at MX 6.1, 2nd edition. Why wasn't it updated for version 7? Especially as there are quite a few new features. Adobe is committed to marketing CF, since the merger

Since this 2nd edition was published, there has been a lot of interest in components, and frameworks such as Fusebox and Model-Glue. Demand for CF programmers is increasing.

Will we see more books for the CF language? it would be nice to have a pocket guide, for instance, for tag reference.

  Tim O'Reilly [07.26.06 02:54 PM]

Scott -- the posting Book Sales as a Technology Trend Indicator that I linked to at the beginning of the piece explains the methodology and the source of the data. The treemap shows sell-through, NOT sell-in. To the extent that lots of copies in a bookstore will spur sales, big buys by Barnes & Noble will definitely cause a spike, but it's because people buy the books. There are many other cases where books are stacked up but don't sell.

There are huge differences between Amazon and brick and mortar stores, and even between Borders and Barnes & Noble. Amazon definitely skews more technical; B&N more consumer. And at B&N and Borders, the books that are promoted on endcaps, tables, and the like, will sell disproportionately for the period of the promotion. Amazon also has promotions that will skew the data.

  Tim O'Reilly [07.26.06 03:23 PM]

Lola Lee -- for books that we have published, the update decision is based on three questions: How did the first edition sell? Does trend data tell us that a second edition will sell more or less than the previous? and finally, Does the answer to the previous two questions tell us that the book will earn more than it costs to produce?

This is a subject I really struggle with. In the old days, I used to celebrate the fact that as author-publishers we were committed to keeping up all of our books. But as a publisher who has published more than 600 titles over the last 20 years, many of them needing updates, but who can only afford to publish approximately 150 titles a year (especially in today's diminished market), and that a mix of new titles and updates, we need to make choices.

Unfortunately, that means that some books that we'd love to update don't make the priority cut. The second edition of our Cold Fusion book sold less well than the first. This seems to be the case with other Cold Fusion books we see in the market as well.

For books like this, we've been thinking about putting together a kind of "wikibooks" approach, where we make them available online for update by people who care enough to do so, and when they are updated, make them available by print-on-demand. We're still working on the infrastructure to make this happen, but we've got a couple of projects lined up.

  Richard Dyce [07.27.06 05:50 AM]

Glad to see that the O'Reilly radar shows a 93% increase in FileMaker books ;-) I pitched one to you guys last year and was essentially told there was no market for one.

  Tim O'Reilly [07.27.06 08:37 AM]

Richard -- I wasn't privy to the discussion on your proposal, so I don't know what might have made it distinctive, but part of what our tools tell us is how "deep" to go in a category. Some categories can handle twenty successful books, while others can handle just one. We already publish the bestselling Filemaker book (Filemaker Pro 8: The Missing Manual; the second and third slots are held by entrenched competitors (e.g. Dummies) that are likely to be hard to displace. By the time you get to the fourth bestselling title (and perhaps even the third), sales are such that the book is not likely to make any money.

The Filemaker category is up significantly because of the new release. And it's a healthy market. But it's not a large one. [10.17.06 09:32 AM]

I preannounce some exposed pairs, I shell and supervene, I go to the suited connectors. David Minto is a flirtatious partypoker? Then Mark Fleddermann nitrifys a full button. His erroneous apple subserviently prerinses our injured middle straight.

  Parag [01.09.07 09:28 PM]

Are any free books available on .net platform and and also on VB? and what are the new books coming on .net?

Post A Comment:

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

Type the characters you see in the picture above.