12:25PM November 28 2011
It’s been getting an increasing amount of attention recently, being heralded as the platform of the future, and the reason?…
WTF does that mean? It means an HTML5 application will run on any platform and device that supports it, without proprietary plugins, without having to go through an app store and without sharing it’s revenue with someone else.
Essentially, if reach is important, the cost of development of an HTML5 app is the lowest per user.
Compared to what?
Other technologies being compared to HTML5 include native apps for Apple’s iOS and Google’s Android operating systems for mobile and tablet devices, as well as browser plugins and desktop runtimes like Adobe AIR, Flash and Microsoft Silverlight.
However, all these other technologies only work on some platforms, and some, require additional software, such as browser plugins, to run the application.
Schtop! It’s not ready yet?
There’s a lot of press saying that HTML5 isn’t there yet – “the standard won’t be complete until 2014” (it used to be 2020!) – however, the vast majority of devices and platforms are already supporting it to a greater or lesser extent, and it’s universally accepted that support will increase in the coming years. Anyway, HTML5 is already here. Over a third of the most popular sites on the Internet are using elements of it already.
But is it the future?
In a word, yes. But don’t take my word for it;
“New open standards created in the mobile era, such as HTML5, will win on mobile devices (and PCs too).” Steve Jobs, Apple (‘Thoughts on Flash’)
“HTML5 is now universally supported on major mobile devices, in some cases exclusively. This makes HTML5 the best solution for creating and deploying content in the browser across mobile platforms.” Adobe in a recent blog post.
“If you can build only one app, do HTML5.” Google (in the conclusion section of notes from the ‘HTML5 versus Android: Apps or Web for Mobile Development?’ debate at Google I/O 2011 Conference)
“HTML is the only true cross platform solution for everything, including (Apple’s) iOS platform” Microsoft (in an interview with Microsoft’s Server and Tools Business (STB) Unit President, on ‘Microsoft’s messaging (or lack thereof) about Silverlight at its premiere developer conference’).
Facebook, with their recently released HTML5 resource centre are encouraging (and depending) on developers to use HTML5 for Facebook apps, so they can run on all the platforms that people access Facebook on.
In addition to these established device and platform providers, in the future it’s expected that consumers will want to engage with applications on many more and different types of platforms and connected devices. Next year, we’re likely to see the launch of next-generation connected TV products from Apple and partnerships between Google and Sony, LG and Samsung, and developers of related applications are shifting their weight behind HTML5. The BBC redeveloped the iPlayer in HTML5 and Netflix chose HTML5 for the PS3 in anticipation of rolling it out across many more devices.
So what are these new technologies? And what can I do with them?
- Device APIs
Access the camera, microphone, GPS and touch screens of the device and know which way is up, what direction it’s pointing in, and how it’s being moved around, and use that to control or interact with your application.
- Canvas, SVG and WebGL
Draw 2D and 3D graphics that you can animate and interact with.
- Offline Storage
Store data on the device allowing applications to run faster and work when your train goes in a tunnel or your WiFi stops working.
- Web Sockets
Send and receive data to and from the server, quickly and efficiently, allowing real-time updates and communication with page refreshes.
Create beautiful layouts and typography and experience enhancing effects such as animations, transitions, transforms, gradients, shadows and that hallmark of web 2.0 – rounded corners. Yay!
Is it a silver bullet?
So can HTML5 deliver on your requirements? It depends on your requirements.
For example, if you want to make a complex game, with decent graphics, you’d probably still be better off using a native mobile format or Flash depending on your audience and their devices. And the truth is, there will always be specialist technologies that will be more suitable for specialist applications.
But if HTML5 can deliver on the requirements, neither iOS or Android native mobile apps, nor Adobe Flash or Microsoft Silverlight can match HTML5 for the potential reach of your application.
And in a world where users means dollars, the reach of your application is pretty damn important.