New MacBook Pros are here! Get the lowest prices anywhere: Apple Price Guides updated Sept 20th (exclusive coupons)
 


Sunday, July 26, 2009, 11:00 am PT (02:00 pm ET)

Book sales mark shift toward Mac, iPhone development

Retail book sales indicate the market for computer books has experienced a steady decline since the middle of 2008, with subjects related to Mac and iPhone development showing solid growth amid an otherwise morose outlook.

A report on the computer book market, published by O'Reilly's Mike Hendrickson and based on Nielsen Bookscan retail sales data, reflects the overall status of the computer industry itself and the economy in general. Hendrickson described the report as "lots of bad news peppered with small glimmers of hope."

Growth in Mac programming book sales
Within the top 121 categories of computer books, the report cited only 8 subject areas that could claim a year over year increase in sales during the first six months of 2009.

Within that short list of recession-defying growth was Mac programming, Objective C, online video, mobile programming, and open source topics, providing additional evidence of the significant shift in interest toward iPhone development. While none of those growth categories could claim a place within the top twenty in terms of units sold, the historically popular subjects all experienced major declines.

The data showed that books related to 'Windows consumer' experienced the greatest decline year over year. Sales of books on the Mac OS also fell significantly, although the market for Mac-releated books is and continues to be significantly greater than half as large as the market for Windows books, a sharp discrepancy from published market share figures of actual PC sales, where Macs account for less than ten percent of US sales.

Objective C takes off
At the same time, interest in Objective C, the language used to develop both iPhone apps and Mac programs, has grown dramatically from a "a small (low unit sales) language into a large (high units sales) language," Hendrickson wrote.

Apple's unique use of the Objective C language has tended to isolate Mac development in contrast with more mainstream computer languages such as Java or C++/C#, despite Objective C being a superset of C that many programmers claim is relatively easy to learn. Mac applications can also be written using more common languages such as Java or plain C, although some knowledge of Objective C is needed to make full use of the Mac's Cocoa frameworks.

On the iPhone however, Apple has made Objective C the required development language, and has taken steps to prevent third parties from installing alternative runtimes. This complicates efforts to simply port over existing Java apps, for example, requiring developers to get familiar with Apple's own Xcode environment and the standard but often less familiar Objective C language.

Without an installed base of millions of eager software buyers using the iPhone and iPod touch, Apple's Objective C iPhone development strategy would likely have dampened developer interest outside of core Mac developers already familiar with the language, the same way Apple's very novel development environment for the 1994 Newton Message Pad, which was not even familiar to Mac developers, appeared to stifle interest in writing apps for it, which in turn did nothing to induce additional device sales.

In contrast, the blockbuster sales of iPhone mobile apps through iTunes, protected from rampant piracy by DRM and accelerated by Apple's efforts to actively push software sales at low "impulse buy" prices, have resulted in launching book sales of Objective C in the first half of 2009 past sales of C/C++ and JavaScript, and nearly as high as the three leading languages in front of it in terms of book sales: C#, Java, and PHP.

Book sales of computer languages

Objective C is becoming a hot programming language. | Image credit: O'Reilly.


In creating a new generation of Objective C programmers with the iPhone, Apple is also widening the audience of developers qualified to write native Mac applications, which use identical development tools and very similar frameworks to those used to build iPhone apps.