HTML 5 is a major step forward for the web and the ability for developers to create the next generation of tools and applications for users. There’s been a lot of talk over the last couple of weeks with Adobe and Apple and I think there is a lot of confusion out there so I hope this assists in clarifying what it will mean to you.
HTML 5 is a open standard that is still in development but the major browsers FireFox, Safari, Chrome and Opera have jumped in to support it. While the standards are still being developed there are features that are common among them and over the next several months we’ll see improved support as updates come quick from the browsers. You’ll notice one browser is missing, did you catch it? Microsoft announced a beta version of Internet Explorer at the Mix conference earlier this year. You can download the latest rev at: http://www.ietestdrive.com/
Does HTML 5 replace Flash?
HTML 5 is not designed as a replacement for Flash but does provide new tags for directly dropping in audio and video without 3rd party plug-ins. This is a huge improvement and makes it easier for content developers to deliver their content to users. A great example of this is how YouTube can be currently viewed in HTML 5 or via Flash and HTML 4.
HTML 5 also supports animation, vector graphics and several new standards which overlap with Flash and would strongly be considered before using Flash because of their ease of integration and delivery within the browser. Flash will not go away but will continue to grow and be used as a language for delivering content and interactive experiences and applications.
This provides developers with additional tools to have users interact with content, information and improve web based applications.
HTML 5 brings 4 major improvements to the browser:
1. Graphics – improve graphics and animation support without additional codecs within the browser
2. Location – create an API for being able to show where you currently located or what is around you for mobile devices
3. Storage – ability to store offline locally within the browser data so that you do not have to have a constant connection to a site
4. Speed – improve browser speed in working with content, running scripts in the background and improving user experience
The HTML 5 committee wants to insure:
1. Support Existing Content so whatever was created in the past will still continue to work
2. Insure Interoperability between browsers and technologies so that it would be easier to create apps.
3. Support of Standards – these are still being developed but they are off to a great start, explained below. Hopefully the major browsers will see this the same way. For example, when you shop for a car, its standard for a car to come with wheels and brakes.
4. Improved Error Handling – when a browser encounters a error, instead of crashing the browser, a dialog box will appear asking you if want to continue or stop the action.
5, Evolve, not recreate what we already have – which translates to not just creating new standards for the sake of it, they want to focus on building and developing standards that will improve the language and improve developers as well as viewers experience with the web.
There are 5 major areas that you can start to play with and take advantage of the technology today.
1. Canvas & SVG
HTML 5 includes support for two new graphic formats:
Scalable Vector Graphics – SVG – this allows you to embed Illustrator graphics/content or EPS files in the SVG format and directly support it via the browser. Because of the vector format, these graphics are scalable, look great and appear to the user as a rendered JPEG. This means you can use one product or company logo and instead of saving in multiple files and sizes you are able to use one SVG graphic and resize via code without additional file size or graphics to maintain or load on the users browser.
Canvas API – provides a new way to deliver graphics and animation via the browser with interactivity. Examples:
First Person Gifter – in this example you walk around a maze using the arrow keys on your keyboard. Notice the alpha channel on the flowers as you move around. Excuse my collisions with the walls.
Canvas and SVG are currently supported in:
Currently when we think of video playback on the web we think of Flash as our major delivery technology. HTML 5 introduces a new tag for directly embedding video onto a page just like we include a graphic currently.
// HTML 5 makes <video> as easy as <img>
versus a Flash embed:
Currently there are two main codes competing, H264 supported by Apple and Chrome and OGG Theora supported by Chrome, FireFox and Opera. Interesting tidbit – OGG Theora codec was named after Theora Jones, Edison Carter’s Controller on the Max Headroom television program.OGG was released into the open source community by On2 Technologies which was acquired by Google late last year. Google is suppose to announce a newer version of the On2 codecs. Steve Jobs made a comment last week that the OGG codec has issues with licensing and patents just as the H264 has. Currently, from what I’ve read the H264 content is ok to use until 2015 when licensing could become a issue again.
H264 is supported by all major video technologies and what’s nice for video content developers is that the same compressed video can be supported via Flash and HTML 5 so you can have one video running in both environments and not have to compress multiple versions.
Another great feature HTML 5 video is going to support is the ability to click anywhere within a download stream, prior to it being cached which will provide a nice way for viewers to jump around in video content and cache from the point that they want to view.
Video tag currently supported in:
3. Geolocation API
The geolocation api brings browser based location to applications. This will allow you, while viewing browser content and a map to show your current location on it or while walking down the street you can search for a restaurant or based on your interest in eating lunch your phone or mobile devices shows you several stores or locations on a map.
Geolocation currently supported in:
(currently mobile safari only supported)
4. App Cache and local database storage provides a way for users that are viewing or working with content to continue while offline. This will allow developers to sync or move data to the local side, allow the user to edit and then automatically upload once an internet connection is available.
App cache and local database currently supported in:
Web workers defines an API for running background scripts.
Web workers currently supported in:
How do I get Started?
With the latest from Apple and Google building upon the webkit browser, the future looks great for developers and users to get the best in content delivery. Blackberry also announced last month that their OS 6 releasing this summer will be built on the Webkit browser as well so look for consistency there now as well.
Hope that helps you get started and gets you thinking about how to incorporate into your next project!