How and Why HTML5 is Conquering the Mobile
HTML5 is the latest revision of the Hypertext Markup Language (HTML) currently developed together by the World Wide Web Consortium (W3C) and the Web Hypertext Application Technology Working Group (WHATWG). Its design has been in the works since around 2007, and by now HTML5 has evolved to become a comprehensive platform for mobile web applications development. HTML5 allows web and mobile software developers to use an extremely wide range of development tools: CSS3, Offline Web Storage, Canvas Drawing, GeoLocation API, etc. In this article, we present a short review of current HTML5 prospects in conquering mobile apps.
Native apps development vs. HTML5
With the rise of mobile devices, the debates continue about the best way to create mobile apps: to develop native apps or create software with HTML5. The third option also exists — to develop hybrid apps which combine native and HTML5 features and which are basically web apps hosted inside an application container-native to the platform. The recent survey conducted by Kendo UI (mobile apps tools producer) demonstrates that the majority of software developers (94%) planned to use or were already using HTML5 for mobile development in 2013-2014.
Of course, using HTML5 has certain shortcomings: apps developed using this technology usually operate only where an active Internet connection is available, and tend to be more limited in functionality and slower in comparison with native ones. But with WiFi and LTE networks spreading over the entire country and devices becoming noticeably more powerful every quarter of the year, those limitations are becoming less and less of an obstacle on HTML5’s path to dominance on mobile devices.
Advantages of developing mobile apps with HTML5
- Remote app updates are available, no need to re-download a full application. It makes sense to develop HTML5 applications for mobile devices if the app requires constant updates, since users may soon become reluctant to re-download it to their smartphones. Experts note that around 30% of mobile users never download any mobile app to their devices, so HTML5 is a prime solution in this case: all you need to run an HTML5 app is a link to its webpage.
- Affordable and time-saving application development and cross-platform support. Developing a native application for every major mobile platform is quite expensive and time-consuming as it demands В coding one and the same app at least three times: a version for Android, iOS, and, for example, Windows Mobile. Cross-platform compile-to-native tools such as Xamarin, Titanium, or PhoneGap/Cordova, though very promising, have yet to reach the level at which the overall development process (and final apps) can compare to just using HTML5. Moreover, different licensing issues may arise during the app development, or you may find yourself too limited by app store policies and revenue sharing systems. Finally, native apps tend to crash more frequently in comparison with mobile browsers.
- A lot of developers are well familiar with HTML5. As a successor of good old HTML, this technology is very familiar to the absolute majority of web developers. There is no need to master, for example, Objective-C or other mobile-based technologies to build an HTML5 application, and, as a result, both training costs and development time are significantly reduced. According to the late 2013 poll by VentureBeat, there is a strong trend among app developers to move from building completely native to hybrid and pure HTML5/JS-based apps for all platforms.
- HTML5 applications work on multiple mobile platforms. You’ll often find that some native applications are not supported by your mobile device if you use, for instance, previous iOS versions, somewhat dated Android versions, or happen to have a Blackberry device. HTML5 web apps, though, will work on the majority of mobile devices regardless of the OS version and screen resolution, which is truly convenient for both users and developers.
Meanwhile, it is already becoming obvious that HTML5 is able to provide easy, rapid access to all kinds of applications for users of a very wide range of mobile devices and simultaneously facilitate the app development process.