Inside Apple's iPad: Adobe Flash
Since the iPhone debuted in 2007 without any support for Flash, Adobe has begun a revitalized campaign to breathe interest in Flash. This includes the announcement of a new series of Flash 10.1 runtimes for Windows Mobile, Nokia S60/Symbian, Palm WebOS, and Android phones (but not RIM's Blackberry). This suggests not having Flash will be a problem for the iPad.
Adobe has also staged a regular conversation amplified by analysts and pundits that essentially claims Apple is unfairly restricting choice in the market by not supporting Flash on its iPhone platform.
Additionally, while Adobe says it is supporting open standards for the web related to HTML5, it still maintains that Flash is "critical to the web" while it also works to cement as much new content as possible into the proprietary mold of its Flash platform and the related Flex and AIR initiatives.
Will being Flash-free hurt the iPad?
Adobe's arguments for Flash are difficult to support in the mobile realm. The iPhone has been wildly popular since its debut despite its lack of support for Flash. Apple's smartphone dramatically raised the bar for what customers expected in a mobile web browser. By doing this without Flash, Apple essentially redefined what the web should look like, at least on a mobile device.
While a few mobile devices can render Flash content designed for desktop PCs, Adobe's original strategy for Flash on mobile devices prior to the iPhone was Flash Lite. This subset of the Flash runtime is based upon Adobe's old Flash 7 (MX 2004) and ActionScript 2.0 bytecode, which uses an entirely different ActionScript virtual machine than Adobe's newer Flash 9/10 (which use ActionScript 3.0 bytecode).
On the desktop, Adobe simply included two engines for running both old legacy Flash and more modern content. That's not really possible or desirable in a mobile environment where the Flash runtime is supposed to respect the device's limited processor and memory resources.
Adobe basically delivered Flash Lite as a way to say Flash was playable on mobile devices without actually doing the work of bringing a real Flash runtime to each mobile platform. The company has had a difficult enough time just supporting Flash on Windows PCs and Mac OS X at the same time, let alone Linux, the PlayStation 3's NetFront brewer, the Wii's Opera browser, and the top several mobile platforms.
Adobe hopes to roll out Flash 11 with support for ActionScript 3.0 bytecode across all desktop and mobile platforms (apart from the Blackberry and iPhone, iPod touch and iPad) soon, but the fact that it will be missing on the fastest growing mobile platforms and two of the most popular smartphone platforms will definitely be a problem, as developers creating content simply can't reach the top mobile platforms using Adobe's technology.
The iPhone's lack of support for Flash does not appear to have had any impact on its popularity, but clearly has played a significant role in devaluing the importance of Flash in mobile devices, even if other platforms are enthusiastically embracing Flash. At the same time, if developers on other platforms use Flash to reach those mobile audiences, they'll being doing that instead of creating native software for Android, Symbian, Windows Mobile, and so on. That will also benefit Apple, because it will keep its iPhone App Store well ahead of rivals.
On page 2 of 3: Is Apple being unfair to Adobe?
A second issue being raised about the iPhone OS' intentional lack of support for Flash is whether platform vendors like Apple have the right to decide which software partners they want to support. Adobe's stance is that Apple should give its customers options, which means that the iPhone should include a Flash runtime just like nearly every other device that uses the web.
Interestingly, the history of Flash indicates that Apple isn't just persecuting it as a bully. If anything, Apple is just reclaiming its position in media delivery. After all, it was Apple that introduced video, animation, and multimedia on the desktop with QuickTime in 1991, back before Microsoft was even able to get reliable audio playback working across the spectrum of Windows PCs.
The Origins of Flash
Flash sprang from a tool called SmartSketch, originally conceived as a drawing app for handheld pen computing devices. It then moved to the Macintosh and PC to become a drawing tool competing against Adobe Illustrator and Aldus Freehand. In order to survive against those entrenched rivals, it morphed into an animation tool called FutureSplash Animator in 1996.
As the web started to emerge as a new platform of its own, FutureWave, the developers behind FutureSplash, first worked to create animations that could play on the web via Sun's Java, which was notoriously slow. When Netscape launched its own API for browser plugins, the company created its own native plugin for FutureSplash content. Apple had already delivered a similar plugin for Quicktime that enabled users to play videos and other content within web pages.
Microsoft's war on the open web
As the web gained in popularity, Microsoft began working hard to take over the medium to prevent it from competing for developer's attention in preference its own Windows platform. It worked to destroy Netscape via Internet Explorer, which tied the web to Windows; it partnered with Sun to sidetrack the company's Java and lace it with dependence on Windows; and it also attempted to clone Apple's QuickTime as a medium for delivering video.
Of its three primary foes related to the web, Microsoft was only unable to kill QuickTime. Part of the company's efforts to do so involved code theft from Apple related to the San Francisco Canyon scandal. This armed Apple with the legal leverage to aggressively bargain with Microsoft, and was a key element in getting Microsoft to reinitiate support for Office on the Mac after a long hiatus of focusing entirely on Windows apps.
At the same time, Microsoft also used its new power with Internet Explorer to invent compatibility issues with QuickTime and simply fail to load Apple's plugin when rendering web content designed for QuickTime. In 1996, Microsoft partnered with Disney, Macromedia and FutureWave to create animated content that replaced the open web with proprietary content. This resulted in Macromedia buying FutureWave and rolling the product into Flash.
Flash displaces QuickTime
Even as Apple's QuickTime was adopted as the container specification for the open MPEG-4 specification in 1998, Microsoft worked to use its monopoly position with Internet Explorer to widely distribute Flash as a proprietary way to deliver video and animations on the web.
Adobe, once a direct competitor to Macromedia and Flash and a key rival to the Microsoft-Macromedia alliance to oppose SVG as an open specification for web animation in preference to Flash, has since purchased Macromedia, primarily to obtain Flash.
After Flash became the dominant method for video playback, Microsoft started work on Silverlight, its own proprietary plugging for replacing open web standards with binaries dependent upon a web plugin. Apple, Google, and other companies supporting open web standards have worked to push HTML5 as an enhancement to the web to allow it to deliver multimedia without a plugin, with the browser itself rendering video via the MPEG-4 open specification.
In view of all this, Apple's opposition to Adobe's Flash isn't an attack on a popular plugin to limit choice, but really an effort to restore the use of open standards on the web, which creates a real marketplace for consumer choice. If Adobe were really interested in supporting open standards rather than being a gatekeeper wielding proprietary control over multimedia playback on the web, it could have opened up Flash just as it once did with PDF.
Instead, while making comments supporting HTML5 in general terms, Adobe CEO Shantanu Narayen has answered the question of how his company plans to deal with HTML5 by saying, "I think the challenge for HTLM 5 will continue to be how do you get a consistent display of HTML 5 across browsers. And when you think about when the rollout plans that are currently being talked about, they feel like it might be a decade before HTML 5 sees standardization across the number of browsers that are going to be out there."
On page 3 of 3: Is Flash critical to the web?
Adobe would like to pretend that HTML5 is "a decade" away because this offers some window of opportunity for Flash to remain relevant. Apple has proven over the last three years that the iPhone and iPod touch could be wildly successful without Flash. That indicates no real problem for the iPad lacking support for Flash either.
Again, while Adobe claims vast licensing agreements and developer support for Flash, the only relevant content related to Flash is targeted to desktop users. Flash Lite doesn't even play that modern content. One side effect to Flash's desktop focus is that most Flash animations are not at all designed to scale down to mobile devices. Flash content is largely targeted toward a interface that assumes the use of a mouse pointer rather than a multitouch display, and the runtime is optimized for desktop-class computing resources, not the limited capacity of mobile devices that must remain idle as much as possible to preserve battery life.
Anyone who knows how to run Activity Monitor can observe that even the most trivial use of Flash within in a webpage eats up extraordinary resources. If Greenpeace were a legitimate environmental watchdog, it would target Flash as a bigger threat than PVC and BFRs combined, just by the composite amount of energy it consumes to do absolutely nothing of value.
Flash on the wane in video delivery
Flash is also losing its primary uses on the web. Most web videos used to be delivered encoded via On2 proprietary codecs within an FLV file (the proprietary native media container of Flash). Most future development is moving toward the open H.264 codec specification inside the MPEG-4 container (based on Apple's QuickTime container format).
Even Adobe has moved Flash to support H.264 video within its version of an MPEG-4 container, which it calls F4V. With that transition in progress, there's very little reason for anyone to need Flash just to deliver video, as Google is proving in its migration from Flash to H.264 in YouTube.
Flash and Rich Internet Applications
Adobe is also pushing Flash as a way to deliver interactive versions of traditional print content, the related Flex and AIR as a way to deliver Rich Internet Applications.
Google is also leading the development of rich web apps using HTML5, a strategy that is woven into its Chrome OS. Google employees have described Android's Java-like platform as a stop gap measure that will eventually be replaced by HTML5 web apps, rather than a long term platform in the sense that Apple describes its own Cocoa Touch iPhone OS platform.
Apple's preference for open over Adobe Flash
By not putting Flash on the iPhone, iPod touch and iPad, Apple is creating a significant installed base of affluent users who simply can't be reached via proprietary binaries like Flash and Silverlight. That has successfully shifted attention both to Apple's own App Store platform for mobile apps and to the open web, encouraging developers to embrace standards-based rich web apps and multimedia delivery based on open specifications.
In contrast, while Google is also staunchly supporting open standards on the web, it's also trying to support Flash playback as a feature of Android, something that can only make developing native Android apps less attractive. Microsoft is similarly trying to promote Flash and Silverlight while also supporting legacy Windows Mobile apps dependent upon a stylus. Nokia's Symbian and Linux platforms also embrace Flash at the expense of their own native development.
Apple appears to recognize that the more platforms its competitors support, the better it is positioned in its lead as the top App Store for mobile devices. All of which should leave users with zero hope for ever seeing a Flash runtime on the company's iPhone OS devices.