The app development debate about whether to go native, use HTML5 or employ a hybrid approach rages on, with HTML5 gaining the backing of heavy hitters such as Facebook and Amazon. But while the latter builds a strong case for success, it isn't as simple as that.
Work began on the HTML5 in 2004 and its development was closely watched by Web developers for several years. However, a public letter by Steve Jobs published in 2010 titled "Thoughts on Flash" pushed it into the limelight and to the top of the media's agenda.
The idea of "write once, run anywhere" has been the goal of the majority of the software industry since the mid-1990s, ever since the arrival of Java. Following this, several standards, companies and initiatives have come forward and failed in realizing this ideal. So, is the time right for the mass adoption and application of a "new" open standard?
HTML5 does tick most of the developer boxes. With a plethora of OS contenders, growing unease around the iOS walled garden, and public outcry surrounding the fragmentation of Android (an open standard in itself), the market conditions and mindset is ready for an alternative.
This is particularly true when you consider the impact, as well as associated challenges, that the consumerisation of IT has brought on enterprise mobility initiatives. Organisations are putting their IT departments under pressure to innovate, but the question remains, where to start?
Within any organisation, most likely, there are multiple devices that need to be supported - each with a unique hardware and software configuration, and each requiring a dedicated native application to be built from scratch to ensure it fits the end-user requirements. It also needs to provide a compelling user experience that is comparable with mainstream externally developed applications, and meet with the relevant app store approval criteria.
HTML5 clearly offers significant cost, time and headache-saving benefits to the IT department. A HTML5 application can be run on Android, iPhone or BlackBerry devices and CSS3 features can be leveraged to automatically adjust the application page layout.
The fact that HTML5 apps are delivered as mobile Web applications can bypass the stringent and lengthy app store approval processes, quickly and easily providing new functionality and bug fixes onto the application server with immediate effect.
Web skills are also much more likely to already exist within an organisation and the ability to reuse existing code brings other advantages when looking to lower barriers for widespread adoption of mobility at every level of the organisation.
HTML5 and the enterprise user
While HTML5 clearly offers benefits, specifically when it comes to the development and deployment of mobile applications, does it mean that it's the right solution?
One of the additional "side effects" of the consumerisation of IT has meant that employees (who are also mainstream consumers, lest we forget) have higher expectations. Angry Birds, Shazam and Facebook mobile are all built around the user. Unfortunately, HTML5 cannot compete on the same level of native applications, which offer a high-end experience tailored for that specific handset.
The other issue is that while the "connected world" is a popular phrase, we still don't have ubiquitous access to the Internet and specifically high-speed access. The ability to access and save data on the device is clearly a comforting feeling for many executives who want to "own" the data and HTML5 offers an inferior tool for this.
To HTML5 or not to HTML5?
Clearly, HTML5 is gaining ground for a variety of reasons, however, the idea of "write once, run anywhere" cannot be switched with that of "one-size-fits-all" for the time being. What we are much more likely to see, is a myriad of apps coming to market that leverage HTML5 to varying degrees in the form of native, pure play and hybrid applications.
Hybrid applications, like that deployed by LinkedIn for example, which is a native app but provides an embedded Web view, provides the bulk of the user interface. You get access to the handset features, but are also able to break the mould when it comes to the UI (this has both positive and negative connotations in my experience).
Making a hybrid app is clearly an option, but it's not ideal. It adds complexity and applies only to Web apps wrapped as native apps, rather than traditional website apps that can be accessed from pretty much any mobile browser. Web standards are catching up however, with the latest iOS browser supporting WebSocket for example, providing two-way streaming as well as device orientation detection.
The debate between native, hybrid and pure play HTML5 applications is not likely to be resolved in the near future. As a result, individual developers need to consider what approach meets their application and end-user requirements in the best way -perhaps experimenting with a myriad of options rather than adopting a single approach.
Thousands of companies have been left with legacy applications in the past where the platform is no longer proving to be as innovative as its rivals, with some out of the race completely, and so IT managers should approach the debate with caution. We shouldn't have to adopt a single standard or solution to mobility, our employees never have, and our preferences, requirements and resources will evolve over time just like theirs.