| | | | |
RSS Email
 
 

Programming Language Book Sales to Predict Adoption and Retention

Posted by Naveen Bala at 06:28PM Dec 11, 2007

Comments[3]
AddThis Social Bookmark Button

Introductory programming language book sales indicate the amount of interest in adoption. Note that I have stressed the word interest. Comparing the introductory level books for Php, Perl, Python and Ruby will tell us how well the advocacy efforts of each language is doing to generate interest in that language.

Intermediate to Advanced level book sales indicates the retention of that interest. 

Tracking book sales as an indicator of the market, has been used by Mike Hendrickson of O'Reilly in State of the Computer Book Market.

My interest in comparing book sales is to compare the adoption and retention interest of each language. You can check Antonio's Comparison of programming languages for more languages and how they fare in terms of book sales.

 Unlike, O'Reilly, I do not have access to BookScan data, so I went with Amazon.com's sales rank. Amazon also has the feature to list books by programming language and by levels (Introductory, Intermediate-Advanced). Since Amazon.com's Sales Rank is not linear but a log scale, I used an estimator function to translate the sales rank to predict volumes sold. (This function holds well but at very low ranks, less than 10, this function over predicts. We wont have a problem as no programming language book will have a sales rank that high.)

 Predicted Sales Volume per Year = 10080 * EXP(-2.4629 * LOG10(Amazon Sales Rank))*365

NOTE TO READERS:  The Methodology I used to Predict is inherently flawed as I had captured the sales rank at one point of time and tried extrapolating it to annual sales. Authors like brian (Learning Perl) pointed out this flaw as they had the actual book sales data. So until I track sales ranks over a longer period of time and check to make sure that the predicted volume approximates actual sales, I am removing the  estimated book sales data and the sales rank. I am leaving behind the list of books that were the top 5 in Amazon in each category.

 Php Introductory Book Sales
 Perl Introductory Book Sales
 
 Name
 Beginning Php and Mysql5
 Php5/Mysql Programming
 
 Name
 Learning Perl 4ed
 Beginning Perl 2ed
Python Introductory Book Sales
Ruby Introductory Book Sales
 Name
 Python Programming: Intro to CS
 Python Programming for Absolute Beginner

 Name

 Ruby Programming for Absolute Beginner


I used the same methodology for Intermediate to Advanced level. Here, there was a better choice of books for all the languages.

 

 PHP Intermediate/Advanced Book Sales
 Perl Intermediate/Advanced Book Sales
 
 Name
Programming PHP
PHP and MySQL for Dynamic Web Sites:
PHP Solutions: Dynamic Web Design Made Easy
PHP 5 Objects, Patterns, and Practice
PHP Cookbook
 
 Name

 Learning Perl 4ed

 Programming Perl 3ed

 Perl Cookbook

 Python Intermediate/Advanced Book Sales
Ruby Intermediate/Advanced Book Sales
 
 Name

Learning Python

Python in a Nutshell

Programming Python

Python Cookbook
Core Python Programming
 
 Name
 Agile Web Development with Rails
 Programming Ruby: Pragmatic Programmmer Guide
 Railspace: Building a Social Network
 Ruby Cookbook
 Ajax on Rails


This is part of the "What Makes a Programming Language Popular" series where we compare Perl, PHP, Python and Ruby. See


 

Invite Your Comments
Comments:

Ruby guys use online material rather thank plonking good money on books.

Posted by Andy on December 12, 2007 at 04:36 PM CST #

The Amazon Sales Rank has little to do with actual sales. You can jump ahead in the Sales rank in a single day by selling a handful of books. Since it's time period is too short, it says nothing useful about yearly sales. It only measures sales for the hour you looked at it (and less frequently for the slow sellers), and the difference in rankings can be a single copy.

As one of the authors of Learning Perl, I have the real sales numbers, and 469 a year isn't even close.

Posted by brian d foy on December 14, 2007 at 11:25 AM CST #

brian,
I completely agree with you that it is not that accurate when you take one snapshot, which is what I did. I needed a rough number to compare relative sales and assuming the same error is built into all four (perl, python, ruby and php) then the relative positions in terms of saes will make sense.

I will however take the numbers on a weekly basis and at the end of say 6 months, I will re-publish the sales comparison.

Posted by Naveen Bala on December 20, 2007 at 05:32 PM CST #


Post a Comment:
Comments are closed for this entry.

RECENT STORIES

Cool Fact Of The Week

Oracle DBA Career - Financially Rewarding But You Got to Enjoy It

Cool Fact Of The Week

Executive Resume Writing: Get the Top-Level Job You Deserve

Something Cool- Got iphone Apps?

Cool Fact Of The Week

Writing Resumes for Federal Jobs

What We Learned About IT People From The Show 24

Cool Fact Of The Week

Suspect Your Job May Be In Jeopardy's? Launch A Passive Job Search.


Archives

Search Corporate/Career Sites
keywords:
location:
Customize This for Your Website

Can You Make More Than Your Brother-in-law?
SkillLocation
Customize This for Your Website