HTML5 is no longer the new kid on the block. It’s been with us for a few years now, and although its potential is yet to be fully realised, it is increasingly becoming the web technology of choice and this upward trend can surely only continue. Moreover, when it comes to mobile app development, HTML5 continues to gain popularity. A survey of 5,000 developers revealed that when developing apps for multiple platforms, HTML was the technology of choice for the majority (41%); this compares with 36% the year before. 40% of developers also admitted that they started building a native app only to realise that HTML5 would meet their needs.
As a sign of the continued adoption and acceptance of HTML5, Amazon recently announced that developers would be now allowed to charge for HTML5 apps in its Appstore; this comes after it first started accepting HTML5 apps back in August.
It must be said that HTML5 has had its fair share of detractors. It hit the headlines in 2012 for the wrong reasons, when Facebook’s Mark Zuckerberg claimed that the company had relied too much on HTML5 for its mobile apps when native applications may have been a better choice. But the technology has come on since then and its position as a leading coding language is recognised by all.
Here are 5 reasons why I think HTML5 will continue to prove a major force in the mobile app development world:
1) Its capabilities are constantly improving
A criticism often levelled at HTML5 is that it lacks certain functionality that native applications can provide, and to some extent this is still true. But the HTML5 ecosystem is evolving, and fast. It would be no surprise if it can soon provide functionality on a par with native technologies. Gone are the days when a HTML5 app could only perform basic functions.
Another important point to note here is that many of HTML5’s so-called shortcomings are often due to a lack of support for the technology rather than any deficiencies with the technology itself. When HTML5 first launched in 2008, the only browser to support the technology was Firefox and, although all modern desktop and mobile browsers do now support HTML5, some may still not support certain elements of it.
When it comes to websites, HTML5 can do some brilliant things. It’s also being backed by some big players; for example, Adobe’s site The Expressive Web demonstrates some of the latest capabilities of the technology and Google’s Chrome Experiments shows some examples of experimental HTML5 web apps written by the coding community.
2) Cross-platform compatibility
Perhaps one of the most attractive features of HTML5 is its compatibility across a range of devices. The same HTML5 app will work on different mobile operating systems, whether that’s iOS, Android, Windows Phone or Blackberry; the upshot of this is that the cost of developing the app is much lower than creating native apps for each OS. Some have argued that it takes longer to create an HTML5 app than it does to create a single native app, but this overlooks the fact that in order to have the app on multiple platforms, multiple apps need to be developed while you only have to build it once using HTML5.
From a user perspective the device agnosticism of HTML5 is also a positive feature; consider a user who migrates from Android to iOS and subsequently discovers that their favourite app on Android isn’t available in Apple’s App Store (and vice versa). They’re not going to be particularly happy but this scenario is a real possibility with native apps. Browser-based HTML5 apps, on the other hand, are instantly available on any device that supports HTML5.
3) Remote updates
A great benefit of HTML5 web apps is the fact that updates happen automatically for users so there is no need for them to update manually. This is because, much like a website, everyone visiting it or using the app will only see its latest version. Although this is sometimes considered a contentious issue, in my opinion it is more often positive than not. It benefits all parties – for the app provider or developer, it means they don’t have to provide support for multiple versions of apps. For users, it means they don’t have to go through the, sometimes cumbersome, process of a manual update.
Additionally, consider this scenario – you’re out and about and want to update an app, but get a message saying the update is too large to download over 3G. So until you find a WiFi network you can connect to, you can’t update the app. Frustrating, isn’t it? This is an issue that you won’t encounter with HTML5 web apps.
4) It can be used to develop hybrid apps
Hybrid apps, which look and feel like native apps (and can indeed be published on app stores) are fairly popular nowadays and often offer a good trade-off between the ease of developing HTML5 apps and the performance of native apps.
Generally, hybrid apps are built using web technologies such as HTML, CSS and JavaScript and then ‘wrapped’ in a native container. The popular PhoneGap framework does this and has been used for a number of popular apps including BBC Olympics. The upshot of this is that the majority of the development work can be done once and then deployed across various platforms. The disadvantage here is that having the app published on application markets such as the App Store requires approval, something web-based HTML5 apps don’t need.
5) It’s more suited to emerging markets
One of the biggest growth areas for mobile devices is in emerging markets. Africa is one of these markets – the continent is now the world’s second most connected region by mobile subscriptions and is predicted to reach one billion subscriptions by 2015. However, in such markets there tends to be a more diverse range of devices so developing apps for them can become a bit of a nightmare. Moreover, devices like the iPhone are often not first choice due to their prohibitively high cost. As a result, the iOS ecosystem has not gained widespread adoption and HTML5 apps which can function on a range of devices have a better chance of being widely adopted.
In conclusion, then, I think the developer who shuns HTML5 completely is either brave or foolish. In doing so, they are ignoring a technology which is widely used and has become the standard for web development. In terms of app development, the cross-platform capabilities of HTML5 should make it an attractive prospect for those looking to reach a large number of users with a single app. And even if native apps are the preferred option, HTML5 could still be considered a starting point given that tools such as PhoneGap can be employed to help create native apps which are primarily built using HTML.
As a final note, it’s probably worth acknowledging that the choice between HTML5 and native for app development will often come down to circumstance. For some companies, and in some industries, native apps may still be the smart choice. But in certain industries the flexibility of HTML5 apps can prove invaluable; I recently wrote an article on why they suit the field service management industry. So if you’re considering having an app developed, take the time to weigh up the advantages and disadvantages provided by both HTML5 and native apps first. Don’t rush into a decision you may later regret.