12 Aug 2008 12:19
The days when web pages were static collections of text and graphics are long past.
However, as the web matures, there's 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: HTML, or HyperText Markup Language. Over the years, its abilities were augmented first with JavaScript, a basic programming language, and later with Ajax.
On the other side is Adobe's Flash, which began as a method for graphic animations. It's grown into a much more powerful programming foundation over the years and has been recently joined by a competitor: Microsoft's Silverlight.
All these technologies are advancing rapidly as internet start-ups and giants, such as Google, race to transform PC 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.
Consumers typically need not worry much about the programming plumbing beneath their online applications. However, 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 technology evangelist for rich internet applications.
People in the computer industry like to talk about competition, which, indeed, often does keep companies from growing complacent. However, it's also convenient when some foundational technology Windows, JPEG and USB for example 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 both good and bad.
Industry standards can attract broad adoption, but they're typically slow to arrive. And although 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, however, 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.
HTML also 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 email 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
However, big changes, which may rectify HTML's shortfalls, are on the way.
One idea that's established, but still has a way to go, is more sophisticated data storage that can let applications keep local copies of data or documents for a long time. One important use of this technology is letting people use their web applications even when offline.
Other big HTML changes include Canvas, to let browsers create customised graphical elements, such as charts, on the fly, based on programming instructions rather than just downloading pre-fabricated elements from a website; 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.
Further 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 involved, it could erode one of main advantages of Flash and Silverlight.
"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.
But just because Google is doing something doesn't mean it's the right way, 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 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, geo-location 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 website operators to support it.
Google's Gmail could be the service to trigger widespread Gears adoption.
"We expect Gears to be widely adopted in products like Gmail," said Sundar Pichai, vice president of product management at Google, and there are signs that Gears-enhanced Gmail might arrive soon.
Meanwhile, Yahoo has its own browser-extension technology: BrowserPlus. It's limited to a few Yahoo demo applications at the moment, such as a more elaborate web-based tool to upload images to the Flickr photo-sharing site.
Henrikson 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".
A thorny question, however, is whether Gears and BrowserPlus really are 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 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 Creative Suite 3, but both are impressive displays of serious editing abilities.
"Nothing really comes close to the kind of desktop experience we have in Picnik," said chief technical officer Darrin Massena, adding that the situation won't change for a long time, until HTML standards such Canvas or SVG arrive.
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 a high level of compatibility, where you can really rely on it without a huge productivity drain on developers", Massena said.
Improvements are not being made exclusively to HTML. Flash and Silverlight are moving targets too.
"With Adobe's revision 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 10, currently in beta version 2, include 3D graphics, special effects, and better video streaming, hardware-accelerated graphics and text control.
Although Silverlight isn't good enough for Picnik to "think about switching horses", the progress from version 1 to the current beta of Silverlight 2 has been impressive: "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 promised. "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. Since internet users update their Flash software to the latest version relatively swiftly, it's a much more stable and consistent programming foundation.
It is clear that no single technology will dominate in the near future at least each camp's advocates acknowledge their rivals' advantages. 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."
Story URL: http://news.zdnet.co.uk/software/0,1000000121,39460405,00.htmCopyright © 1995-2009 CBS Interactive Limited. All rights reserved
ZDNET is a registered service mark of CBS Interactive Limited. ZDNET Logo is a service mark of CBS Interactive Limited.