Flash, HTML, Ajax: Which will win the Web app war?

Web applications are getting richer and more widespread, but it's unclear which of several competing technologies will power them.

The days when Web pages were static collections of text and graphics are long past. But as the Web matures, there's a fierce competition over which technology will propel it into a medium for rich, interactive applications.

On one side of the battle lines is the original Web page description technology called HTML, or Hypertext Markup Language. Over the years, its abilities were augmented first with JavaScript, a basic programming language, and later a JavaScript-on-steroids technology called Ajax.

On the other side is Adobe Systems' Flash, which got its start as a method for graphic animations. It's grown into a much more powerful programming foundation over the years and has been joined more recently by a competitor: Microsoft's Silverlight .

All these technologies are advancing rapidly as Internet start-ups and giants such as Google race to transform personal computer software into services available on the Internet. These so-called rich Internet applications rarely match the performance and features of PC-based applications, at least today, but online applications can benefit from sharing, reliability, and access from multiple devices.

Kevin Hoyt, an Adobe Systems technology evangelist, believes Flash, HTML, JavaScript will coexist--but change rapidly.
Kevin Hoyt, an Adobe Systems technology evangelist, believes Flash, HTML, JavaScript will coexist--but change rapidly. Adobe

Consumers typically need not worry much about the programming plumbing beneath their online applications. But suppose you're the person on the hook for your company's online expense reporting tool or a start-up planning to build an online music mixer for anyone on the Internet. You'll have to place a bet on which technology is best and which programmers to hire or train.

Few expect the competition to have a winner any time soon.

"You'll continue to see a high degree of flux for probably the next several years," said Kevin Hoyt, an Adobe Systems technology evangelist for rich Internet applications.

People in the computer industry love to talk about competition, which indeed often does keep companies from growing complacent. But it's also awfully convenient when some foundational technology--Windows, JPEG, and USB spring to mind--dominates to the point where most engineers need not worry much about the messy chaos of multiple choices.

The HTML camp
The HTML side of the battle has its roots in industry standards and in the task of displaying information. That's good and bad.

Industry standards can attract broad adoption, but they're typically slow to arrive. And though both JavaScript and HTML are standards, differences in how they're implemented in different browsers--and even different versions of the same browser--force programmers to accommodate all the possibilities.

Unlike during the browser wars of the 1990s, though, there's more convergence than divergence these days. Even the upcoming version 8 of the dominant browser, Microsoft's Internet Explorer, will ship in a standards-compliant mode by default.

And HTML can't be beat for pervasiveness, which is one reason why Kevin Henrikson, director of engineering at Zimbra, is a fan. Zimbra, which provides online e-mail and other applications , was an early Ajax adopter and in 2007 was acquired by Internet giant Yahoo.

"Even if I were starting from scratch today, I still think I'd bet on JavaScript and Ajax...It's going to be hard to stop the massive momentum we have," Henrikson said. "Flash is seeing a pretty aggressive growth cycle now, (but) I still think JavaScript is going to be (used in) 10 times the number of Flash apps that launch."

Microsoft sees things differently, believing that programmers are best off ditching HTML and JavaScript as soon as Web applications start getting rich.

"It's amazing what people have done with HTML, which was never intended to do rich Internet applications. And Flash was originally created for lightweight animation--literally for Mickey Mouse on the Web," said Brad Becker, who as group product manager for rich client platforms at Microsoft helps oversee Silverlight. "But these technologies were designed for something else, and people are really hacking them to do more."

Overhauling HTML and JavaScript
Today's HTML kludges might be tomorrow's standard features, though, because big changes are on the way.

One idea that's established but not yet fully settled down is more sophisticated data storage that can let applications keep local copies of data or documents for a long time. One very important use of this technology is letting people use their Web applications even when offline.

Other big change HTML changes include Canvas to let browsers create customized graphical elements such as charts on the fly based on programming instructions rather than just downloading pre-fabricated elements from a Web site; Web Workers to let browsers perform computationally intense background tasks without disturbing the browser interface; and Scalable Vector Graphics (SVG), an existing standard, which if adopted more widely could encroach on some Flash abilities.

Farther out on the horizon are audio and video tags for HTML that would let browsers play media with no extra plug-ins needed. If the industry manages to wade through the technological and intellectual-property difficulties of that area, it could erode one of today's main Flash and Silverlight advantages.

"If you put it all together, that lends itself to Ajax being a very powerful, capable rich Internet application technology," said Adobe's Hoyt.

The Google guns
Google is perhaps the biggest gun backing HTML, JavaScript, and Ajax. Its Gmail and Google Maps sites woke many up to the possibilities, and the company followed up with Google Docs for online word processing, spreadsheets, and presentations.

Just because Google is doing something doesn't mean it's the right way, though, Becker said. "If you look at Google Apps, they're doing great things, but how many shops out there have the Ajax chops that Google does?"

Google Docs are one of the highest-profile attempts to reproduce desktop applications on the Internet.
Google Docs are one of the highest-profile attempts to reproduce desktop applications on the Internet. Google

Google is trying to hard to give new ammunition to the HTML camp, in part by trying to advance the state of the art with an open-source project called Gears.

Gears' flagship feature is offline access to Web applications such as Google's Web-based word processor, but it's also used to improve search at MySpace and speed blog posting with WordPress . Gears features that Google is considering for the future include desktop notifications to make Web apps more interactive, geolocation processing to let Web apps take advantage of where a Web user is located, and support for Webcams and microphones.

Gears, which like Flash and Sliverlight must be manually installed, hasn't spread widely. But adoption by some big services could help encourage people to install it, which might in turn encourage Web site operators to support it.

Google's Gmail could be the service to trigger a Gears adoption cascade.

"We expect Gears to be widely adopted in products like Gmail," said Sundar Pichai, a vice president of product management at Google, and there are signs Gears-enhanced Gmail might arrive soon .

Meanwhile, Yahoo has its own browser extension technology called BrowserPlus . It's limited to a few Yahoo demo applications right now, such as a more elaborate Web-based tool to upload images to the Flickr photo-sharing site.

Henrickson is intrigued by BrowserPlus and said Zimbra has been experimenting with it. It "bridges the gap" between Web applications and the abilities of a local computer, he said, letting programmers "access the file system, make system calls into the computer, drag and drop, access the Webcam."

But here's a thorny question: are Gears and BrowserPlus really in the same camp as HTML and JavaScript? BrowserPlus, at least for now, is proprietary, and Gears is certainly no standard. Both must be downloaded and installed, just like Flash or Silverlight plug-ins.

Google, though, sees Gears as an HTML ally. "Gears can be ahead of the curve, trying out new ideas that eventually become a new standard," Gears engineer Aaron Boodman said. And when new standards duplicate Gears features, Google "will reimplement in Gears," Pichai said.

Flash and bang
Flash and its new rival Silverlight offer some compelling advantages such as audio- and video-streaming support that make them indispensable for some Web applications.

Photo editing shows off what Flash can do, for example. Start-up Picnik uses Flash to that end, and Adobe has an online rival called Photoshop Express. Neither come close to the full features of Photoshop CS3, but both are impressive displays of serious editing abilities.

Yahoo hopes its BrowserPlus software will help make Web applications more like desktop applications.
Yahoo hopes its BrowserPlus software will help make Web applications more like desktop applications. Yahoo

"Nothing really comes close to the kind of desktop experience we have in Picnik," said Chief Technology Officer Darrin Massena, and that won't change for a long time until HTML standards such Canvas or SVG arrive.

And even if those features do become HTML standards, "it'll take an incredibly long time to see it implemented across browsers and a long time to see high level of compatibility where you can really rely on it without a huge productivity drain on developers," he said.

Meanwhile, HTML isn't the only one improving. Flash and Silverlight are moving targets too.

"With Adobe's rev of Flash player, version 10, they've done a remarkable job of knocking out key things. We had a conversation a year and a half (ago) where we gave them a wish list. They have been really responsive," Massena said.

Features in Flash Player Version 10 currently in beta version 2, include 3D graphics, special effects, and better video streaming, hardware-accelerated graphics, and text control.

And though Silverlight isn't good enough for Picnik to "think about switching horses," the progress from version 1 to the current beta of Silverlight 2 is promising: "If they take a similar-sized leap in short order, say a year's time frame, they could be in the game," Massena said. "If they are the first to nail 3D, that could give developers a lot of reasons to use their technologies."

That's exactly what Becker promises. "We're going to be iterating pretty quickly, and each version is going to add new features and functionality," Becker said. The final version of Silverlight 2 will be released later this year, added Brian Goldfarb, group product manager for developer platforms at Microsoft.

A key part of Microsoft's Silverlight sales pitch is programmer productivity. It's based on the same C# and VB.net languages used in Microsoft's .Net programming technology, so a lot of coders already have a big head start, and Microsoft's highly regarded programming tools can be used.

Flash, too, has rich programming tools, not to mention some tight links with tools such as Photoshop and Illustrator that are useful for application design. And since Internet users relatively swiftly update their Flash software to the latest version, it's a much more stable and consistent programming foundation.

It's clear no single technology will dominate in the near future at least--each camp's advocates acknowledge their rivals' advantages. But some see the situation not as chaos but as innovation at its best.

"The Web platform is getting richer and richer," Boodman said. "I think we're living in one of the most active periods of Web development right now."

 

ARTICLE DISCUSSION

Conversation powered by Livefyre

Don't Miss
Hot Products
Trending on CNET

Hot on CNET

CNET's giving away a 3D printer

Enter for a chance to win* the MakerBot Replicator 3D Printer and all the supplies you need to get started.