After much attention in the media recently about Apple's insistence on keeping Flash off the iPhone, iPod touch and now iPad, and the recent changes to its iPhone SDK licensing terms prohibiting the use of Flash-to-iPhone compiled apps, Steve Jobs has published his thoughts on the matter on Apple's website. His essay was concise, thorough, and — of course — sparked much controversy across the web.
His essay focused on the six following points:
Openness: Flash is proprietary and completely controlled by Adobe, while conversely HTML5, JS and CSS are maintained by a standards body. Adobe calls all the shots on Flash, while no single entity calls the shots on HTML5.
The Full Web: Adobe's claims iPhone OS users are missing out on a full web experience are largely inaccurate, as most of the web now offers its video in the H264 format supported by iPhone OS.
Reliability: Flash is the number one reason Mac apps crash. A full version of Flash has yet to be released for a mobile device, and the performance just isn't acceptable yet.
Battery life: iPhone OS devices offer hardware acceleration for playing H264 content thus dramatically increasing battery life for playback. Flash offers no such benefits.
Touch: Flash websites were designed for keyboard and mouse, and must be rethought for touch-screen devices (personally I find this kind of a weak argument as it can be said none of the HTML websites were originally designed with touch in mind, either). Jobs cites “mouse roll-overs” as an interface paradigm used frequently in Flash which has no real analogue for touch-screen interfaces.
The first five arguments were really just aimed at revealing the ugly truths of Flash while his final argument is the prestige: Apple does not want to allow a third-party toolkit to have any kind of leverage over Apple's platform.
The third party may not adopt enhancements from one platform unless they are available on all of their supported platforms. Hence developers only have access to the lowest common denominator set of features. Again, we cannot accept an outcome where developers are blocked from using our innovations and enhancements because they are not available on our competitor's platforms.
No matter how selfish Apple might sound for repeatedly blocking Flash from iPhone OS, it makes a great deal of sense. Apple is in an all-or-nothing battle to control the burgeoning mobile market and they aren't letting anything or anyone impede their growth. They iterate on the iPhone OS roughly once yearly, and cannot afford to have any delays out of their control. A widely-used Flash toolkit could very well pose such a threat.
As with anything Steve seems to say, there was an explosion of coverage on the web, everybody from gadget sites to CEOs to the Wall Street Journal offering their takes on what he had to say.
One major claim against Steve's essay was how hypocritical the whole thing was, given Apple's long history of proprietary software. Thom Holwerda of OSNews has this to say in reaction to the essay:
Jobs' letter is incredibly two-faced, hypocritical, and very misleading. It's clearly a marketing trick to pull the wool over the eyes of consumers, and while that's okay (they're in it to make money, after all), it's our job to remove that wool from our eyes. Just as we geeks immediately understand Microsoft's ulterior motive in licensing patents to Linux/Android vendors, we should not just accept Jobs' words either.
Holwerda's three main qualms are H264, Carbon, and iTunes on Windows.
H264 is no better than Flash. This video codec is proprietary and patented up the wazzoo, and therefore, wholly incompatible with the very concept of an open standard. To make matters much, much worse, the licensing body that oversees H264, the MPEG-LA, has stated in no uncertain terms that they will not hesitate to sue ordinary users for using the video codec.
H264 may very well be patented, but it is also overseen by working-groups (such as MPEG and VCEG), is an ISO standard. Jobs' point was not that H264 is more open than Flash (though arguably it is), but that it performs better than Flash, which is crucial for devices such as iPhone. Claims of openness in his essay were centred around HTML5 technologies, not the H264 codec itself.
Holwerda also calls hypocrisy when Jobs mentions Adobe's failure to quickly adopt the Mac OS X platform with Cocoa. Jobs:
For example, although Mac OS X has been shipping for almost 10 years now, Adobe just adopted it fully (Cocoa) two weeks ago when they shipped CS5. Adobe was the last major third party developer to fully adopt Mac OS X.
Many have been quick to point out until Snow Leopard, the Finder was written in Carbon, and to this day iTunes remains a Carbon app. While this is of course true, it's difficult to proclaim “Apple isn't fully behind Mac OS X and Cocoa” with a straight face.
That iTunes has not been upgraded to a Cocoa version is a vindication of another point made by Jobs:
We know from painful experience that letting a third party layer of software come between the platform and the developer ultimately results in sub-standard apps and hinders the enhancement and progress of the platform.
Carbon is not a third-party toolkit, but that is written largely in C makes it more keen to being used in cross-platform applications. As such, iTunes is written in Carbon to ease the process of maintaining Mac and Windows versions, much to the detriment of its user interface and stability. iTunes is a cross-platform application with arguably a lowest-common-denominator-subpar-experience on either platform. iTunes developers must work extra hard to ensure compatibility with both platforms, causing the app to miss out on many of the advanced features of the Mac OS.
Engadget seems to maintain a somewhat delusional stance on Flash. While noting its many faults, they also fault the iPhone OS devices for not playing Flash. They seem to confuse ubiquitous with high quality. Some priceless quotes:
The “full web.” Steve hits back at Adobe's claim of Apple devices missing out on “the full web,” with an age-old argument (YouTube) aided by the numerous new sources that have started providing video to the iPhone and iPad in HTML5 or app form like CBS, Netflix, and Facebook. Oh, and as for flash games? “50,000 games and entertainment titles on the App Store, and many of them are free.” If we were keeping score we'd still call this a point for Adobe.
Reliability, security and performance. Steve hits on the usual “Flash is the number one reason Macs crash,” but adds another great point on top of this: “We have routinely asked Adobe to show us Flash performing well on a mobile device, any mobile device, for a few years now. We have never seen it.” You've got us there, Steve, but surely your magical A4 chip could solve all this?
Sounds totally sincere, guys.
This was a bit of a shocker. Microsoft is behind H264 exclusively in Internet Explorer 9 for HTML5 video:
The future of the web is HTML5. Microsoft is deeply engaged in the HTML5 process with the W3C. HTML5 will be very important in advancing rich, interactive web applications and site design. The HTML5 specification describes video support without specifying a particular video format. We think H.264 is an excellent format. In its HTML5 support, IE9 will support playback of H.264 video only.
I'm elated to hear that, though it makes me wonder how Silverlight plays into the picture.
Perhaps least surprising of all, Adobe CEO Shantanu Narayen's reaction, in an interview with the Wall Street Journal, seemed to dodge most of the points Jobs made in his essay. Some key quotes:
Our vision is, and what we are hearing from customers is that they would like us to deliver a toolset and a delivery mechanism that allows us to help them amortize their investment across multiple devices.
He talks a lot about this vision many times in the interview, to the extent where it seems less of an answer and more of an advertisement.
On claims of Flash not delivering on mobile devices:
Flash Player 10.1 will deliver on this vision of delivering on multiple devices, and so June 17th it will be available, by June 17th it will be available for multiple devices and actually on the Android device at Google IO, we will be shipping. A public beta.
He snuck that last bit in rather nonchalantly.
If Flash are [sic] the number one reason that Macs crash, which I'm not aware of, it has as much to do with the Apple operating system.
He apparently has never loaded Flash in a browser. Ever.
When prompted on Flash's purported poor battery life on mobile devices:
That is patently false. When you have hardware acceleration given to Flash, which certain platforms have given us the ability to do, we have demonstrated that it takes less battery power than on the Mac. For every one of these allegations made, there is proprietary lock-in that prevents us from delivering the kind of innovation that customers want.
This is I think the most legitimate response he gave in the interview. Up until Mac OS X 10.6.3, which was released early this Spring, Flash had no access to hardware acceleration for its graphics, so when comparing its performance vs H264 on the Mac, it was at a bit of a handicap. He says, however, they are remedying that.
Apple just recently provided us with hardware acceleration [on the Mac], we have deployed a version of Flash Player beta, it's called Gala, that now takes advantage of that hardware acceleration, that refutes all of these [claims of performance and stability woes].
He returns to Adobe's “vision”.
Let me ask you [WSJ], as a creator of among the world's best content, would you like these multiple 'stovepipe' workflows?
It should be noted this video was transcribed from the video playing on my Flash-less iPad. So the WSJ seems to be just fine with 'stovepipe' workflows.
Finally, he ends with this gem, which will almost certainly come back to bite him:
Open systems have always triumphed. We've seen that over and over again.