So, as predicted, Google have announced online presentation software, and it's done using SVG and VML. You can see a sneak preview at http://ajaxian.com/archives/tonicpoint-ajax-powerpoint-with-svgvml
This makes the race for graphics plugins - Microsoft's Silverlight and Adobe's Apollo - hard to understand. If they're not needed for the highest profile web graphics application, then what are they for?
Well, they'll both play videos and audio. It makes sense to treat these as plug-ins, because they rarely have to interact much with the rest of the page.
Mixing Vector Graphics with HTML
But for vector graphics - circles, lines, shading, rotations - plug-ins are a red herring. You need the browser to handle vector graphics directly, because you need it to be seamlessly mixed in the same document as HTML. That way, you can:
- mix and match HTML elements (e.g. fonts, bulletpoints, linebreaks etc) with additional graphical elements (circles, lines, shading, coordinate transformations) to enabler richer web applications
- share the events model - to seamlessly respond to user events (e.g. an SVG slider controlling an HTML form)
- share CSS, to style your site consistently
No plugin could ever satisfy these demands, all of which are required to produce web presentation software.
The web graphics market
Funnily enough, I think management at Adobe accepts these arguments. It's just that they don't have a browser, so they have to rely on plug-ins (which are quickly become very similar to a browser) until they find something else - likely improved designer tools for creating SVG / VML websites.
Microsoft have tried the other route - of replacing SVG / VML and HTML with a new language, XAML. But even an all-powerful monopolist won't be able to fight against the internet.
It's a myth that vector graphics in the browser are weak. They're good enough to produce presentation software, and they're getting better - SVG support is getting even better in Firefox, Opera and mobile devices, and Safari is gaining SVG support in the next release.
SVG / VML is the future
If you're considering writing a web application that requires vector graphics, you shouldn't worry about Apollo, Silverlight, or Flash. Just mix some SVG and VML in with your HTML. The technology already exists, it works fine, it provides the best possible integration with websites, and it won't go away.