HTML 5 Web Apps
Date: 6-Dec-2011
By Aaron Pedersen, Digital Director
A little while back we posted about the emergence of HTML5, and the implications for web design and development. We recently built a prototype of our digital publishing product, edop, in HTML5. Here we share some of our learnings and thinking that has come out of that experience. Certainly some food for thought for anyone intending to develop mobile apps.
Generally when people refer to 'mobile apps' they are referring to native mobile applications. That is, applications that have been specifically developed to run on a phone operating system and machine firmware. Native apps are generally specific to an operating system and have to be coded in the language supported by the operating system.
A web app, on the other hand, is a mobile application which runs in the web browser installed on the mobile phone and generally uses a combination of HTML and JavsScript.
What has now made the possibility of developing mobile apps as 'web apps' rather than 'native apps' a reality is that the primary web browsers for mobile phones, being iOS and Android based phones, now support HTML5. The support of HTML5 on the web browsers for smartphones means that the gap between web apps and native apps is narrowing.
- Web apps can support a similar user experience to native apps. Users can swipe to go to the next page, and pinch to zoom. Using the 'add to homescreen' function, the user can add an icon to their homescreen which looks just like the icon for a native app. Then, when the user launches the web app from this icon it loads the browser in full screen mode (ie. no browser bar) which makes it look and feel like a web app. You can also add a fullscreen loading page.
- Provided the functionality for the web app is delivered through front end JavaScript, the web app (being the HTML, CSS, JavaScript and all the content) can be downloaded to the mobile phone and used offline. The initial size of the available cache is limited, but users are automatically prompted to 'increase the size of storage' allocated to the app.
The primary advantages for a publisher of a web app over a native app are:
- Easier for the user to access. The user is not required to sign into an apps store to download and use the app. Signing into the apps store is a barrier to usage. Removing this barrier will increase the uptake of certain types of applications. This makes a web app more appropriate for a one off type experience such as viewing a product catalogue, property brochure, annual report, cost calculator, etc.
- Quicker deployment and greater control over the format and content of the web app. A web app is effectively a website. Anyone can publish a web app to the internet. Anyone with a browser can visit it. The publisher doesn't have to comply with apps store terms and conditions or submit to approval processes to get their app live.
- Lower cost to deploy across mutliple mobile platforms. Each phone operating system is different. You can't run the same native app on the iPhone as you can on the Samsung Nexus. While you might be able to reuse some of the design elements of your iOS app, you still have to build a new app in a different language to run on an Android phone. Because web apps are accesses through a web browser, and the web browsers support a common technology set (HTML5 & JavaScript) the same web app can run on both iOS and Android based phones. You may still need to adjust the user interface for the different handset form factors, but the core app is the same.
- No revenue share. Web apps are not sold through app stores, and so publishers are free to retain 100% of the revenue. On the other hand it means the publisher won't benefit from the advantages of the app store environment either. This stand alone option would suit publisher's not seeking to charge for their app or who have an established business model and simply wish to extend the product to the mobile platform.
- Native apps can still deliver superior user experiences. Native apps are closely integrated with the phone operating system and firmware, which means there are functions available to native apps that are not available to web apps. Web apps are limited in the data they can access from the phone or the extent they can integrate with other functions of the phone.
- Native apps can support more sophisticated functionality. The scope of a web app is limited by what can be achieved with JavaScript. While there is a huge amount that can be achieved with JavaScript, there are limitations. And at some point it will be quicker and more cost effective to develop in one of the more sophisticated programming languages used for developing native apps.
- Native apps can be marketed and sold through app stores. The fundamental beauty of the app stores are that they lower the barrier to purchase. Users have already registered their credit cards and have been acclimatised to the idea of paying small amounts to download apps. A user who will pay $2.99 to download an app through an apps store will hesitate to put their credit card online to by an app from a stand alone publisher.
Stay in the loop
Regular info on ways to use digital to help your business. Sign up below.

