A difference of opinion among developers has become a high-profile debate over the future of the Web: should programmers continue using Adobe Systems' Flash or embrace newer Web technology instead?
The debate has gone on for years, but last week's debut of Apple's iPad--which like the iPhone doesn't support Flash--turned up the heat. Before that, Adobe had been saying with some restraint that it's happy to bring Flash to the iPhone when Apple gives the go-ahead.
But Chief Technology Officer Kevin Lynch took the gloves off Tuesday with a blog post that said Apple's reluctance to include Flash on its "magical device" means iPad buyers will effectively see a crippled Web. And he played the Google Nexus One card, too.
"We are now on the verge of delivering Flash Player 10.1 for smartphones with all but one of the top manufacturers," Lynch said, specifically mentioning the Nexus One as one such device and adding that the software also works on tablets, Netbooks, and Net-enabled TVs. "Flash in the browser provides a competitive advantage to these devices because it will enable their customers to browse the whole Web...We are ready to enable Flash in the browser on these devices if and when Apple chooses to allow that for its users, but to date we have not had the required cooperation from Apple to make this happen."
Flash has indeed spread to near-ubiquity on computers, with better than 98 percent penetration, according to Adobe's statistics. Its roots lay with graphical animations, but its success was cemented by providing an easy streaming video mechanism to a Web that had been plagued with obstreperous and incompatible technology from Microsoft, Apple, and Real.
But a collection of new technologies--including a rejuvenated HTML (Hypertext Markup Language) standard used to write Web pages--are aiming to reproduce some of what Flash offers.
Bruce Lawson, Web standards evangelist for browser maker Opera Software, believes HTML and the other technologies inevitably will replace Flash and already collectively are "very close" to reproducing today's Flash abilities.
"The Web (including video, games, animation) is too vital a platform for business, communication, and society to be in the hands of any single vendor," Lawson said. "But it'll be a while; there is a huge body of existing content that uses Flash."
It's not just a matter of the installed base of Flash on the Web, though. Although HTML5 and its associated technologies are maturing rapidly, and because they evolve concurrently with browser support, they're arriving and relevant now even though incomplete. But many developers are likely to sit on the sidelines until things settle down in 2010 and perhaps beyond.
Open Web allies
After years of HTML standardization disarray, browser makers Apple, Opera, Mozilla, and most recently Google now are hammering out new directions for Web standards.
Perhaps the most visible HTML5 aspect is built-in support for audio and video, but there are other HTML abilities under way: storing data on a computer for use by an application, Web Sockets for periodically pushing updates to a browser, Web Workers for letting Web programs perform multiple tasks at once, and Canvas for better two-dimensional graphics.
Even Microsoft, despite sitting out much of the last decade's browser development activity and having a Flash rival called Silverlight to promote, is getting involved. It pledges interest in Web standards and in recent months engaged in HTML and SVG development. "The positive response has been overwhelming," said Patrick Dengler, a senior program manager on the IE team, in a blog post Monday about SVG Microsoft's SVG involvement.
In addition to some philosophical opposition to Adobe's proprietary Flash software, there's a practical complaint, too: crashes. It's a major reason Mozilla is rushing out a new "Lorentz" version of Firefox that isolates plug-ins into a separate computing process so problems don't bring down the whole browser.
But there are real-world sites, too, that forsake Flash. For example, the iPhone Google Voice application runs in the browser.
It's far from game-over for Flash, though.
The Open Web work is chaotic, fluid, and scattered, and browser support for its various elements is inconsistent when it exists at all. Flash is a single browser plug-in that provides consistency from one computer to the next. And unlike with browsers, where Microsoft's 2001-era Internet Explorer 6 has only recently been dethroned as the most-used browser, most people upgrade to new Flash versions relatively rapidly.
Formal standardization proceeds slowly. HTML5 editor and Google employee Ian Hickson opened the last call for HTML5 comments in October for WHATWG (Web Hypertext Application Technology Working Group), which has been working on HTML5 for years. But that group works jointly with the more straight-laced W3C (World Wide Web Consortium) to come up with the standard.
So today, if you're publishing The New York Times' graphical tour of the federal budget proposal, Flash is the obvious choice.
The difficulties of HTML5 video is a good illustration of difficulty of matching Flash. Flash video can use a variety of "codecs" for encoding an decoding video as it's sent from server to viewer. Viewers don't need to know anything beyond how to click a video's "play" button, a contrast to Net video's incompatibility-fraught early days.
But with HTML5, though, there are two prevailing codecs right now: H.264, supported by Apple's Safari and Google's Chrome, and Ogg Theora, supported by
Firefox, Chrome, and, according to plan, Opera. IE, the dominant browser, doesn't support any at HTML5 video at present.
What's a video streamer to do? If a Web site supports HTML5 video at all--YouTube just started experimenting with it--it's safest to include Flash as a fallback for the vast number of people whose browsers today can't use HTML5 yet.
Another thing: the Open Web allies may be close to reproducing what Flash has today--but not necessarily what it's getting tomorrow. Adobe's Lynch last year pledged to advance Flash, keeping it "a leading agent in terms of exploring what's possible in the Web."
Finally, programming tools aren't as mature for the hodgepodge of Open Web tools.
One reason for that immaturity is that HTML5 and related technologies aren't finalized yet, Lawson said. Another: "You're relying on browsers interoperating--which historically has never been the cleverest bet, although as the specs become final there's a better chance," he said.