Why developers are beginning to embrace HTML5

While developers continue to embrace iOS and Android platforms for mobile applications, HTML5 and innovations in browser-based technologies are catching up quickly.

Opera Software, which develops Mini web browser applications for iOS and Android devices, is actively encouraging international and independent developers alike to create applications for the open web.

In the third and final part of our series covering Opera’s Up North Web conference held earlier this month, we check in with Opera’s Head of Developer Relations, Andreas Bovens.

Bovens discusses how features associated with native mobile applications like geolocation and offline access are now available via browsers, the most popular areas of HTML5 development, and the future of video chatting on the open web.

Appolicious: What are the three biggest features of HTML5 that are most attractive to developers right now?

Andreas Bovens: It’s hard to choose, but my favorites are:

Video: native video support allows the user to play video without relying on plugins, and it allows developers to do all kind of interesting things, such as mixing video with canvas, and other stuff that is not immediately possible with plugin-based video.

AppCache: this allows the content author to store different parts of the web application on the client side, which results in faster load times on subsequent visits, and the possibility to create completely offline web apps and games.

HTML5 parser: not a shiny feature at first sight, but a very important piece in the HTML5 puzzle. The HTML5 parser brings standardized error handling to browsers, which is great for developing cross-browser applications. The same markup will produce the same DOM across all conforming browsers.

In the words of my colleague Bruce Lawson, this will have the following effects:

  • JavaScripters will sport cheerful grins and bouffant hair.
  • Consumers can expect fewer interoperability problems.

APPO: Why should developers currently focused on mobile platforms like iOS and Android invest time and resources creating HTML5 versions of their titles?

AB: Mobile browsers have evolved a lot, and most of the HTML5, CSS3 and other enhancements that have landed on desktop are now also available on mobile. Even more, a lot of the features that used to be only available to native apps (geolocation, offline access, transition effects, etc.) are now also available to mobile browsers.

Creating apps with web standards brings you a step closer to the “create once, run everywhere” mantra, resulting in a lot of time saved in the long run as you only have to maintain a single code base. In fact, even in the short run, there are advantages. You can deploy very fast on any platform, as long as there is a web browser – no need to learn to work with different SDKs and get used to the specificities and quirks of each environment.

That said, there are still a few scenarios in which your only choice is to build a native app for the time being: hardware accelerated 3D games, apps relying on special device APIs, or… mobile web browsers.

APPO: Describe the biggest commercial benefits and advantages to developing for HTML5.

AB: I think the previous answer already answers this question to a certain extent.

In short:

  • You only need to maintain a single code base.
  • Fast deployment on any platform (as long as there is a browser).
  • Possible to use a wide range of existing libraries and tools: web is the largest developer ecosystem ever.
  • You only need to hire one team of web developers, rather than multiple teams (iOS, Android, etc.).
  • You are ready for a future with multiple screens, multiple OSes, multiple devices accessing the web (incuding your application).

APPO: What are the biggest shortcomings of HTML5 today relative to the mobile operating systems?

AB: Not sure if there are any “shortcomings”. In the periphery of HTML5 there are a lot of other specifications (e.g. Geolocation, CSS Device Adaptation, WebGL, etc.) that define new sets of technologies complementary to HTML5 to deal with device APIs, screen sizes, 3D graphics, etc. These specs haven’t been finalized, but there is work underway at a fast pace, including the first implementations, and I expect there to be big strides forward over the next couple of years, so developers will have a stable stack to build on.

APPO: Game developers are only a small minority of the HTML5 ecosystem today. Why do you think that is?

AB: All these new technologies have been added to browsers over the last few years and months. Two years ago, the current capabilities and JS performance, needed to do interesting games, was simply not yet available. That has changed, and game developers are definitely taking note. From my experience visiting the OnGameStart conference in Poland last month, there surely is increased interest in HTML5 gaming, and a lot of cool libraries and experiments are being built as we speak.

APPO: What are the most popular categories for HTML5 development today?

AB: This one is hard to answer. We see newspapers making the leap to building HTML5 apps for mobile, but also other services start doing this: Wunderlist is a good example for instance, SlideShare is another one. On desktop, HTML5 is all over the place, with many new services being built all the time.

APPO: How do you see the landscape evolving over the next year?

AB: I think we’ll see standards support on mobile devices further improving (e.g. device APIs), and performance will go up as well (faster JavaScript, GPU-powered painting, better hardware). More developers will take note, and we’ll see more and more apps being developed using open web technologies.

APPO: In terms of mobile media and HTML5, what are the three biggest things in the space currently keeping you up at night?

AB: Here are my three.

Inline video support. Opera Mobile on Android tablet devices now has inline video support (WebM), which is interesting for video sites targeting mobile users.

The getUserMedia API is cool. It allows you to access your webcam from within the browser, and use it for example to create a photo booth app inside the browser.

WebRTC is on the horizon and hasn’t landed in browsers yet, but it’s an API that will enable web browsers with Real-Time Communications (RTC) capabilities via simple Javascript APIs. Once this lands in mobile browsers, it will be possible to create a fully functional video chat app using web standards, and much more.

Previous articles in this series include a Q&A with Opera CTO Hakon Wium Lie and reasons why enhancements in browser technology will impact mobile application development.

Latest from NewsReports