Bruce Lawson gave this talk at FOWA London 2009 (http://bit.ly/fowa-london-09).
The HTML 5 spec was originally called "Web Applications 1.0". Most of the attention has been on the new markup elements, but we'll look further at the applications side of the spec:
1. Dynamic images and graphs with canvas
2. Eliminating much forms validation with webforms 2.0
3. Local storage automagically saving your data
4. Geolocation
5. Building toolbars and menus.
7. Web Applications 1.0
“extending the language to better support Web
applications, since that is one of the directions the Web
is going in and is one of the areas least well served by
HTML so far.
This puts HTML in direct competition with other
technologies intended for applications deployed over the
Web, in particular Flash and Silverlight.”
8. Picture of 1 9 0 0 idea of
automated year 2 0 0 0 Ladies'
bedroom
9. Canvas
Immediate graphics mode without plugins
Demos:
● Twitter experiment/ eye-candy
● First person shooter
● First person gifter
Native support in Opera, Safari, Firefox and Chrome.
13. <canvas> = <img> - alt
● <canvas> is just about pixels manipulated by script
● No DOM
● No “alt text”: <canvas>Fallback content</canvas>
● Link to accessible version must be outside <canvas>
● Demo jQuery plugin to visualise data tables (filament)
14. <canvas> or SVG?
● Scalable Vector Graphics remains text
● SVG for content; canvas for bling/ supplementary
● SVG natively supported in Opera, Firefox, Safari, Chrome
● IE? Raphael js http://raphaeljs.com/, SVG Web (alpha)
15. HTML5 forms (“Web Forms 2”)
● Coding form validation is not much fun
● HTML5 forms add validation to the browser
● Live code demo
● Let's look at more
17. www.modernizr.com
● Or do your own capability checking
before falling back your current JS
validation.
Or just leave it to the server-side
validation
18. Geolocation
● http://html5demos.com/geo
● Modernizr can test support
19. Browser storage
Cookies are pretty clunky, especially large-scale storage.
● Local storage and session storage (Firefox, Chrome, Safari)
● Database in the browser! (Safari)
● Off line apps using manifest (Safari)
21. ... and if I had an hour or 3 ...
● Drag and drop
● Cross-window messaging
● Cross-domain messaging
● Web workers
● (demos: www.html5demos.com)
● Video (people.opera.com/brucel/demo/video-demos.html)