21 New canvas extension kicks serious butt

Posted: Nov 28, 2005, under Software, Standards, DHTML. Add a comment!

The <canvas> is a new tag, part of the Web Applications 1.0 Working Draft by the WhatWG.org. It was invented by Apple and acts as a block element which implements a bitmap graphical canvas, accessable via JavaScript.

You can see a proof-of concept demo called Canvascape 3D Walker. You’re going to need Safari or Firefox 1.5, since those are the only browsers currently implementing enough of the canvas for the demo to work. Opera is part of the working comitee and will implement it as well starting with Opera v9, but for now the early test releases of v9 don’t have enough support for the demo to work. You can also go read the obligatory Slashdot discussion.

So, what does this mean? I’ll tell you as soon as you tell me when’s the last time you were annoyed by the hoops you have to jump through in order to get a Java applet going in your browser. You must have a JRE installed (there’s a nice long download and install time if you don’t); you must have support for the browser set up; you must activate Java in the browser; you have to wait for the applet to load (or for the JRE to initialize); and if you’re security-conscious and God-fearing like me, you also have to remember to temporarily enable Java in the browser.

Compare this with the 10 second load and no hassle that the Canvascape demo has given me. Also consider the relative merits of having graphics support already fully available in the browser, with absolutely no extra work for the user, compared to the things one may have to do to get an applet going.

Of course, there are bound to be drawbacks. Applets and Flash are mature technologies with years of development behind them and all kinds of features. All in all, yet, I’d say it’s pretty good for a proof-of-concept demo based on a working draft specification in a beta browser.

If this technology makes it, and it will, at least in the “alternative” browsers, I’m guessing it will seriously impact graphical add-ons like Flash and applets. The sheer advantage of availability is a very solid one. If we also consider XMLHTTPRequest, it seems DHTML is (finally) starting to become a powerful enough platform on its own.

I say “enough”, because that’s what the aim should be, at least for now: good enough so a browser can deliver the goodies without having to take on other plugins.