Although some of the newness has worn off HTML5, it still fun to do things with. Google Labs has created a site that shows just how more you can do with it. The basic idea of fractals is well known to most programmers but this doesn't mean that it isn't still a challenge to create a fractal plotting app that looks good and produces results in realtime.
Julia Map uses HTML5 to plot a range of Julia sets corresponding to different equations that the user can select from a drop down list. The user can also select the color scheme. The display is achieved using the HTML5 canvas object which is an obvious enough application but Google say that not only have they used the Canvas model but the Google Maps API to provide the zoom and pan facilities.
If you play with the example it quickly becomes apparent that it has the same feel as Google maps - the difference is, of course that every pixel is being computed live in the browser. This is speeded up by the use of web workers, another really handy HTML5-ish feature. This brings threading to web pages and spreads the workload across any cores that might be available. If you monitor the CPU load while using the page you might be surprised at just how much the load goes up when you zoom or pan to a new location. There also a flop counter in the top left that gives you an idea of how many floating point operations are being performed. Overall the performance is impressive.
If you want to explore an alternative fractal zoomer click here for one implemented in Silverlight.
Silverlight Mandelbrot Zoomer
Mandelbrot Zoomer in WPF
Fractal Image Compression