In "The 'Mac OS X Closed by Pirates' Myth," I took apart the idea that Apple was backpedaling on their open source efforts because of fears of piracy. The article prompted a fierce reaction from certain open source advocates, who ignored the point I was making in order to profess their devout, fundamentalist faith in the world conquering manifesto of the open source revolution. Part of that faith requires vilifying any who dare defend the release of any binary code without its accompanying source.
 
The opinion that Apple's binary-only kernel for Intel involves a huge coverup, or misleading advertising on Apple's part, or is otherwise a broken promise on the level of massive fraud, has been thoroughly beaten into the ground by certain political advocates, who scour the web like an army of GNU-bots, looking for venues to unleash their political screed on open source as a political philosophy. That's the clan Tom Yager was exploiting when he cranked up the sensationalism with 'no story is more timely, or more broadly relevant, than this one.'
 
There are far more interesting topics on the intersection between open source and commercial development than the binary-only kernel for Intel non-story. Tim Bray’s Time to Switch? and John Gruber's Why Apple Won’t Open Source Its Apps both discuss the potential risks and benefits Apple would face in open sourcing their consumer applications, such as the Finder, Mail, iChat and their iLife apps, to worldwide perusal.
 
Certainly, a far wider swath of developers would benefit from taking apart, say, Mail, to see how it works, than have any interest to poke around in the Darwin kernel. Bray wrote:
 
"it’s bothered me for years that the Apple apps aren’t Open Source; there are all these these irritating little misfeatures and shortcomings that I’d be willing and maybe able to fix, and there are lots more like me. Since the apps are joined at the hip to OS X, there’d be no real downside to Apple."
 
Gruber agreed, but wrote in response that Apple won't, and can't, release their applications as open source because it would cannibalize new retail sales of Mac OS X; essentially, that new versions of apps with new features are the reason why people pay to upgrade to the latest version of Mac OS X, and if those apps were open sourced, the community would back port them to work with old versions, killing Apple's Mac OS X retail sales. Gruber wrote:
 
"You can argue that this sucks, that it ought to be us, the users, whose interests matter most. And that you shouldn’t have to pay $130 to upgrade your entire OS if the only new features you’re interested in are in just one of the bundled applications. But that’s not how it works. Apple is a for-profit corporation, and Mac OS X is one of their most profitable and most successful products."
 
[...] "But there’s a flip side to this equation, which is that developing good software takes time and talent, and time and talent cost money. Some portion of the revenue from sales of Mac OS X goes back into funding development of future versions of Mac OS X."
 
There's two niggles I have with Gruber's comments however. First, Apple does not make fierce profits from $130 Mac OS X retail sales. Second, there isn't a conspiracy behind new apps not working on an old OS.
 
Apple does not make fierce profits from Mac OS X sales.
In reality, Apple spends such extraordinary resources developing their operating system and applications that they make little profit on software sales directly. They maintain a huge campus in Cupertino full of highly paid people to manage, develop and test their software.
 
The excessive costs related to rapid software development are the reason why nobody else in the PC hardware industry maintains their own desktop operating system. Look at the failures of IBM, NeXT, Be, Amiga and others who tried to maintain an OS. It's very expensive to simply maintain software; to sustain rapid development and consistently push the envelope is impossible. Yet Apple does it.
 
Mac users might think $130 every year and a half is a steep price to pay for a technology upgrade, but the alternatives aren't that great. It would be ideal to see the same Apple fit-and-finish jump from the open source community for free, but it simply isn't happening. After ten years of talking about taking over the desktop, Linux still isn't ready for anyone but the most determined of users, who are okay with spending a lot of time getting things to work. There is nothing in the open source arena that works like iLife as a package, nor will there ever be.
 
I'm not trying to run down users who prefer the freedom of a non commercial OS, or direct attention away from the great accomplishments and technologies that have sprung from open source projects. The real point is that a community effort isn't a functional model for creating highly integrated products that work without constant intervention by tech experts. Community efforts can make a great bake sale, but would deliver a lousy restaurant.
 
Now look at iLife's price: Apple sells it for shy of $80 (or from Amazon, iLife 06 is $69.99). That's five significant apps that are highly competitive with $350 of PC alternatives, but they're being sold by Apple for about $15 a piece. How can Apple be making vast sums of money on software that elsewhere commonly sells for much more? Apple sells iLife at shareware prices! Additionally, they give away millions of copies of iLife with new Macs.
 
For Apple, most of their software is a loss leader intended to sell hardware. Apple is obviously making more money on software than if they gave it away for free, but they are not making bank on software alone. So while Gruber is right in saying that Apple's software sales are subsidizing ongoing development, it is not ‘a portion of sales that go back into development,’ as he describes.
 
Software development is barely paying for itself; some of Apple's software products are clearly money pits. Yet the system as a whole generates enough revenue to support the development of software that wouldn't work as individual software retail products. Think about Photo Both, Disk Utility, Mail, iChat AV, or even Safari: these are all welfare products supported by Mac OS X sales. There are third party alternatives, but if these didn’t get bundled in free, the Mac platform wouldn't be as inviting or useful.
 
If Apple lost their retail revenues for iLife and Mac OS X, they would lose profitability and have to scale back on research and development, making their overall package less compelling, which would sap new hardware sales. If Apple lost hardware sales, their ability to develop new software and drive innovation would stall, and their software would lose its market.
 
I'm not idly speculating. That is exactly what happened throughout the 90's. Apple lost hardware sales in the Sculley - Spindler era by over-pricing their hardware, which killed sales, hurt profits, and stalled innovation. System 7 languished, the Mac market stalled, and Apple's platform fell into decline. Even after buying a software savior in NeXT, they still faced a long uphill climb to rebuild a healthy ecosystem where people wanted to buy their hardware because of compelling software that worked so well on it.
 
As Apple moves into the PC industry and sheds its unique hardware, they increasingly need software features that will differentiate them in the market and allow them to retain their users and find new ones. The more hardware they sell, the more money they can make, and the more they can invest in developing new software that will sell more Macs. If they can recoup some of that investment by selling software at retail, even better, but according to their earnings reports, software isn't what pays Apple's bills.
 
There isn't a conspiracy behind new apps not working on an old OS
Tiger shipped with a new version of iChat AV, which Apple also sold as a standalone app to Panther users. The pricing was obviously set to make upgrading to Tiger the obvious option. Why pay 20% of the cost of the upgrade for a very small part of the new OS? This is the basic point I think Gruber was pointing out: Apple does package new applications in major new versions of Mac OS X to make the upgrade more compelling.
 
Users want bug fixes and better performance, but they really want to pay for more tangible things: flashy new applications. In Tiger, Apple bundled the new Automator, Dashboard, and Spotlight, and those new apps made up the majority of the marketing push.
 
But that's only because the more significant features Apple worked on are hard to express as sexy bullet points. How exciting would an ad campaign based on metadata, file system.. launchd... yawn.
 
The developers of Path Finder 4 explained why a they chose to tie their application to the latest version of Mac OS X. Conspiracy? No, software tied to a specific version of an OS can be simpler, easier to maintain, and take better advantage of the latest features. The same applies to Apple's software.
 
Interestingly, the reverse issue is one of the main problems plaguing both Linux and Windows. Linux' users have to struggle with a myriad different versions of libraries, window managers, drivers and other components that are difficult to integrate because they are built by different groups.
 
Microsoft struggles to herd 95% of the world's PC users onto the latest version of Windows, and has to support legacy users across a wide range of different versions of their platform. That's really hard to maintain.
 
Certainly, there are some features that Apple artificially ties to a new OS release (or, like Front Row, to new hardware). In most cases however, if software only works in the latest version of the OS, it's because it would be much more difficult to make it run properly across several versions. In those cases, open source wouldn't be able to deliver a solution better than Apple could.
 
In fact, the main reason that software would fail on older versions of Mac OS X is because it relies on new frameworks and APIs.  Anything built against Core Data, for example, has to be Tiger only. Apple could try to figure out how to make Core Data work with earlier versions of the OS, but that would seriously impede their progress, with no upside.
 
Stated differently, it would reward users who don't upgrade with a non-optimal software hack, while delaying the gratification of users who want to pay for new technology. Who should Apple worry about most: their best customers, or people who want them to hack, for free, at solutions to fixing obsolete old crap they've already rewritten?
 
That idea also highlights the difference between commercial software development and community open source development. Apple participates in open source, but is not an "open source developer." Their business, their motivations, their organization, their marketing, their product management, their development cycles, and their pricing does not work like an open source project.
 
So why is Apple dabbling in open source? Because there's a big difference between Open Source as a revolutionary manifesto and open source as tool for commercial developers. Stay tuned!
 
Next Article:
 
This Series
 
What do you think? I really like to hear from readers. Leave a comment or email me with your ideas.
 
 
| | Comment Preview

Send | Subscribe | Del.icio.us | Digg | Furl | Reddit | Technorati

Read more about:
Click one of the links above to display related articles on this page.
 
 
 
Apple & Open Source... Strange Buffaloes?
Tuesday, June 20, 2006

Apple iTunes

Apple iTunes

Apple iTunes

 
Apple iTunes

Urban | Moto | Tech | Journal | Podcast