HTML5 is the fifth revision of the language that makes the web work, and this Wednesday we will be releasing a paper detailing some of the new attacks that are made possible by this technology. Over the next three days we’ll be looking at the Good, the Bad and the downright Ugly of what HTML5 adds to the web, and to the arsenal of cybercriminals.
First up – HTML5 (and its associated APIs) is not an upgrade like you may be familiar with when it comes to software – it’s actually a whole lot of individual features, each with differing browser support. There is a good Wikipedia article that shows which features are currently implemented. For me there are very many fantastic features in HTML5, but five of them really stand out – and I think these will really change how we interact with the web.
- New graphics libraries: HTML5 introduces the Canvas and WebGL libraries which allow for more feature-rich websites. There are some great demos up on this page . In particular, I think the WebGL library is a game changer – just look at how well the graphics work in this port of the famous Quake II game – now entirely coded in HTML5. For me, that opens up a whole new generation of how games will be played in the future.
- Easier multimedia content: If you have ever designed a site that included audio and video content you will know that it has always felt a bit clunky, and will normally require a bunch of <object> and tags along with some flash to get things to work. Not anymore however – HTML5 introduces the very easy to use <video> and <audio> tags, making it simpler than ever to include multimedia content on your site. Support is so good that YouTube is already in the process of moving over to using HTML5
- Geolocation: People are accessing the Internet less and less from desktop machines, and even laptops. Today, a lot of people surf the web from handheld mobile devices such as smart-phones and tablets. The mobile nature of today’s web browsing, combined with the new Geolocation feature in HTML5 opens up a wealth of new possibilities. Knowing exactly where someone is when they access your site can help you personalize content for them to match their local surroundings. Imagine a hiking program whose default homepage allows you to plan trips if it sees you are accessing it from a built up area, but defaults to the interactive maps page if you are out in the countryside.
- Drag & Drop: This one is really subtle, but very important – Drag & Drop allows you to drag content from your browser directly onto your computer and from your computer to the browser. Doesn’t sound like a game changer really, does it? Well, check out this demo and then think what this means for a site likeFacebook. Think about when you arrive back from your holidays and can simply select all of your holiday pics, drop them into the browser and instantly share them with your friends on the social network. Now that’s how I want to interact with the web!
- Web Notifications: Web Notifications are small pop-ups that appear outside of the browser windows itself, allowing users to interact with a site even if they are not currently looking at it. Currently these only work with the Google Chrome browser, and you can check out a demo of them. These notifications are perfect for mail alerts, social networks updates, Twitter, and a wide variety of other services. Along with Drag & Drop this feature really blurs the line between offline and online applications.
Those are just a taste of the fantastic new possibilities of HTML5, but there are many other demos out there on the web which are definitely worth a look. However just like powerful abilities in superhero movies, these features can be a double-edged sword.