What do developers want to see for HTML5 in 2012? It is an evolving standard and while 2011 was a great year for HTML5 innovation, there are still many aspects that could be implemented or upgraded.
Leading HTML5 development studios Sencha and appMobi weigh in below on what each would like to see for HTML5 in 2012. The answers range from simple to complex, with better caching and media support to some of the more complex aspects of the standard. There is much that can still be done with the HTML5 spec, but what about growing an ecosystem for Web apps?
Sencha Talks Specs
Sencha's Michael Mullany wrote a blog post on the top 10 the company would like to see implemented to HTML5 in 2012. Here is a quick rundown of his list:
Note: This list is in reverse chronological order. In this version, No. 10 is the most desired on the wish list.
- HTML5 Media implementations: This comes down to more device access without having to use native wrappers for mobile applications. Camera access is a big feature missing from the mobile browser and one of the reasons that developers often go to native solutions for publishing apps.
- HTML5 audio quality: This is no secret, but audio in HTML5 is a mess. Layered sounds and interactive audio are nearly impossible to implement at this point without some extreme headaches from developers. If you are looking at one long form audio clip, that is fairly easy, but imagine a game with music running in the background that makes a sound every time you press the "jump" button and attain a coin? That is much hard to pull off and requires more robust HTML5 support.
- Web Intents: Standardization and support for Web Intents will be important for cross-platform proliferation. Web Intents is a frame for client-side service discovery and inter-application communication. Essentially, it attempts to tie many different APIs together for basic functionality to ease the burden on the developer. Web Intents standardization would go a long way towards that goal.
- WebGL everywhere: This is probably self-explanatory but Sencha would like to see more support for WebGL graphics rendering and make it ubiquitous across mobile broswers. For instance, Apple only supports WebGL for iAd, which more or less means that Apple hardly supports it at all.
- IndexedDB: So long WebSQL, hello IndexedDB. It is not that WebSQL is completely dead but it did itself no favors by having its website hacked last year and running afoul of Mozilla. IndexedDB is likely the future of cross-browser offline storage, Sencha would like to see it everywhere.
- Right-sizing images: This comes down to some aspects of "responsive" design in getting the right sized image to any mobile device. Sencha would like to see the CSS4 Images standard get some more attention this year and have it added to either HTML or CSS.
- Contacts API: Another self-explanatory item that falls into the device access category.
- Background services: For mobile developers, this has a lot to do with push notifications, something that appMobi (see next page) greatly agrees with. Mullany writes, "We'd also like to see more capabilities for managing multiple resources and handling background tasks. Chrome, once again, is leading on implementing these OS-y type services. Web notifications are in working draft and we wish they get broader implementation this year. We'd also like to see server-sent events get the wake-up behavior that's spec'd."
- Better mobile browser debugging: This actually has more to do with tools than the HTML5 spec itself. Better mobile debugging on more devices. Is it that hard people?
AppMobi Talks Ecosystem
Next to Sencha, appMobi is the other major development company working on HTML5 innovations. We awarded appMobi the "Most Promising Company" award heading into 2012 and generally are excited with everything the company is doing. AppMobi's CTO Sam Abadir is always willing to talk HTML5 innovation and the company has been focused on the ecosystem throughout much of the last couple of years. Below is a short transcript of a recent conversation with Abadir.
What would you like to see happen with HTML5 in 2012?
I think the rest of the world often obsesses about things that are in the spec. I think yesterday [Nokia CEO] Stephen Elop said it best in that the new world isn't about devices for him or for us, the spec, it is really the ecosystem. The thing we feel that HTML5 needs more than anything else is all the other things that make the ecosystem vibrant. Discovery, app stores, messaging like push messaging. In-app payments. The things that make money for developers. Great tools. Wonderful user experience and capabilities like scrolling lists and UI elements. Those are the types of things that we have focused on to distraction in the last year and we would like to see it more fully penetrate the community.
We would like to see browser developers start to incorporate quick messaging UIs, push messaging UIs, like we did with mobiUs, so that site and Web apps can do messaging like native apps do. We would like to see greater emphasis on the discovery and app stores concepts in HTML5. Some of those have a little bit to do with the spec but it really has more to do with the ecosystem in general.
We have invested heavily, for example, on the UI framework. It is still one of the things that differentiates the Apple user experience from Android today. Things just scroll a little faster on iOS native apps than they do on Android apps. We have put a tremendous amount of R&D into that capability to make sure HTML5 apps are not only better than native apps but iOS apps in particular.
What specifically about the spec?
We don't quibble with [Sencha's] list itself. Pretty much everybody is going to agree on hardware acceleration of CSS3 elements. There are minor things that I would add to their list. Better display control or handling orientation changes better. We agree on the issues of lack of multi-channel sound. We have worked on Direct Canvas a lot so Canvas rendering of games obviously is something that we consider important. All of those aspects in the spec move towards the ability to create faster and rich experiences for a variety of interfaces. I think right now the biggest thing in terms of the spec, there is more that can be leveraged than is generally done by developers because each developer has to rewrite UI elements from the ground-up themselves. So, even though the spec and the implementation today isn't so bad, it isn't as lacking as some might thing, it is still difficult for developers to access it. To unleash all the power of it for a variety of reasons whether it is the tooling or the amount of R&D research that a developer would need to invest for a single app project. For a company as ourselves, that is what we have focused on in making the UI better and more responsive.
We understand that we are not going to get there alone and the reason that our answer is a little bit different from Sencha's is that we think that is going to take a consortium and a group effort to make HTML5 better than native apps. So, you can point to the spec, push messaging for example has to be standardized by the consortium. Push messaging needs to be standardized. In terms of the spec, that is a minor effort. The bigger effort is actually getting the UI right by the browsers to they push the messages on behalf of the site and the apps in a reasonable way. That part doesn't have much to do with the spec but more the creation of tools and UI frameworks.
We would like to keep pushing on the community, generally. Because if developers cannot make money publishing HTML5 apps, they are just not going to do it.