Web-based alternatives to PowerPoint

Online tools can deliver presentations that are just as rich, but a little less evil

When Edward Tufte famously declared that PowerPoint is evil, I violently agreed. “If your words or images are not on point,” he wrote, “making them dance in color won’t make them relevant.”

PowerPoint isn’t the only villain. I feel the same way about Apple’s Keynote, OpenOffice.org’s Impress, and all the others. I’ve always felt that sharing a few well-chosen words and pictures with audiences, both during a presentation on a projection screen and afterward on the Web, should require nothing more than the tools and techniques the Web natively affords.

I don’t just preach this doctrine, I also practice it. Long ago I began using simple snippets of JavaScript to control simple HTML slideshows. Every time I gave a talk I wound up tweaking my script, but I was never really satisfied. Then, last week, I discovered HTML Slidy, the latest initiative by the prolific Dave Raggett, a W3C Fellow whose other notable contributions include the essential HTML Tidy.

Given my skills and inclinations, it’s no surprise that I’m an instant convert. To use it, you create a single XHTML file that pulls in CSS stylesheets and JavaScript code. Each slide’s content is wrapped in a DIV tag decorated with a class attribute of “slide.” Folks like me, who compose directly and easily in HTML, will love it.

Admittedly, folks like me are in the minority. But there are other ways to skin this cat. A WYSIWYG slide editor is in the works. Support for Wiki-style markup is another possibility. Basic implementations of either or both of these techniques can work standalone. Advanced versions can be delivered through the Web, a la Opera Software’s OperaShow, and my guess is that before the end of the year we’ll see more examples of this breed.

If you don’t need WYSIWYG training wheels, though, you can put Slidy to work right away. A few core HTML constructs -- paragraphs, lists, tables, images, links -- are all that you need. Slidy’s AJAXian effects include auto-numbering of slides, an auto-generated table of contents, auto-scaling of images and fonts, expanding lists, and keyboard and mouse navigation. My favorite feature is progressive display of a set of elements whose parent is decorated with a class attribute of “incremental.”

If you grok the DOM (Document Object Model), you can roll your own features pretty easily. I added a table of links, for example, by writing a JavaScript function that scans the document for external URLs and attaches a list of them to the last slide. That’s more than a tad geeky, I’ll admit, but I’m hardly the only user who can, and will, extend Slidy.

Nothing evolves in a vacuum, of course. Along with OperaShow, Dave Raggett acknowledges the influence of Eric Meyer’s S5. Using Web technology for presentations is hardly a novel idea. But now that the AJAX juggernaut is rolling, old projects are sparking new interest and spawning new offspring. According to Raggett, future plans for Slidy include a mechanism for remotely controlling distributed instances of a slideshow, using the browser’s XMLHttpRequest object to listen for navigation commands.

Bring it on! Presentation software has been stuck in neutral forever. Web applications, however, are firing on all cylinders. Some say Word and Excel are about to be Web 2.0 roadkill. Not me. The browser can’t yet substitute for those applications. But for PowerPoint? Any day now.