The clear movement in mobile development is toward HTML5 and web-based applications. With the recent announcement that Adobe Flash is moving to HTML5, Adobe joins Apple, Microsoft, and Google in supporting HTML5 as the new standard. There is growing excitement about the additional capabilities offered by HTML5 over previous versions, and the significance of Microsoft’s participation in the creation of HTML5 standards cannot be ignored.
This support for HTML5, from the makers of the major browsers and dynamic content distributors, comes at a time when businesses need to move to mobile to secure audiences.
User Adoption: The Ultimate Metric of Success
An application cannot accomplish anything until people willingly and enthusiastically embrace it and use it. Right now, most applications are not succeeding according to this metric. Sixty percent of all mobile applications are abandoned by users within the first thirty days of use. Of those that are abandoned, half are abandoned the very first day (Philbin).
With many users, there is only one bite at the apple. If they try to run an application that is painfully slow, renders badly, is difficult to navigate, or requires a different browser download (or a Codec or plug-in, new version of Flash, Silverlight, etc.), they will either live without that application or choose a competing application. With faster networks, smarter devices, and increased services, customer expectations for mobile device capabilities are rising at an accelerating rate. Keeping up with these expectations by enhancing the user experience and quickly hooking users now becomes the challenge of mobile development.
For example, one expectation is to integrate all mobile experience with social networking. Mediums like Facebook, Social Living, Meetup, and Foursquare enhance the user experience and build legitimate connections with content. Real-time access to customer interaction used to be inconceivable, but it’s now become a requirement. Businesses must capitalize on users who are actually seeking real-time engagement through social networking.
Not Just the UX: The Multi-Platform Experience
If customers purchase a product or a service that they must access online, the user experience becomes part of the product. It isn’t enough to have access, it has to be total access; anywhere, anytime, on any device. They want the multi-platform, real-time experience. Their loyalty to those products and services will be affected by these factors.
A study conducted by Alcatel-Lucent in 2010 found that 65 percent of young consumers would pay for multi-platform services and would remain loyal to companies that provided them. Conversely, consumers are not reserved about their annoyance when they are not able to access the content they paid for on every device that they use.
In 2010, Spencer Osborne penned an article on Sirius Buzz where he asked: “My laptop computer can stream [Howard] Stern, but my iPod touch or cell phone can not [sic]. I wonder if an iPad qualifies as a mobile device? … Something tells me that this issue will become a hot button topic with consumer activists groups over the coming year. There may be a huge push for net neutrality, but now the devices are not neutral. When will this lunacy stop?” A commenter informed him that Sirius XM had released a free application that would allow him to stream Stern’s radio show on his iPod touch, iPod, and iPhone.
This is the sort of solution that users want and are willing to pay for. The demand is climbing for fast, convenient, seamless access to content and services available anywhere, anytime, and from any device.
As the consumption of video, audio, GPS, and other forms of information continues to expand and integrate with social networking and service applications, the demand for a high-quality, multi-platform experience will grow.
For evidence, look no further than a blog entry by Microsoft’s Windows Phone Evangelist, Ben Rudolph, expressing his enthusiasm for an application being developed that allows users to control the Xbox 360 gaming console from a Windows Phone.
“Watch that video closely and you’ll notice that around the 1 minute mark, the girl in the striped shirt pulls out a Windows Phone and starts to search for content that magically appears on her Xbox. What she’s using is the insanely awesome (but still not quite available) Xbox Companion App. The app, which will be completely free for Windows Phone users, is an amazing little tool that will let you Find, Learn more about, and Control content from Xbox LIVE Marketplace on your Xbox 360.” (Editor’s note: The Xbox Companion App has since been made available to the public)
The excitement around HTML5 centers on the ability to create web-based applications that can give customers this multi-platform experience. The idea is that they will be able to use the application on all of their devices, and even across devices.
The problem that this has presented to businesses is: how can this experience be provided? Native applications require separate development efforts for each major platform; for different operating systems, different device capabilities, different tool sets. Different skill sets are required to produce the application for each device, and there is a lot of duplication of effort.
Today, the use of HTML5 to create applications that run on the web allows developers to leverage some code assets across platforms, but no such solution exists for native app development. At the same time, a rich, highly interactive experience is expensive and difficult to provide in a mobile web application.
The Changing Landscape of Mobile
The debate between native and mobile web, and HTML5 is not limited to technology concerns. Business concerns also play a role. Involved in each mobile device is the manufacturer, the operating system provider, and the content and application providers.
Consumers want to be able to buy their choice of all of these things. But when they choose a device, they are also choosing an operating system, as well as a specific subset of available applications and content. For instance, if a customer buys an iPad, Apple iOS also gains a customer, as does the Apple App Store, and everyone who develops apps for use on Apple products. Apple’s gain of that one customer is their competitors’ loss.
For this reason, the largest players in the marketplace attempt to create choke points in the market to boost the sales of the product that is central to their business model. Users that buy an iPad can’t run Flash or Silverlight, so content providers and application developers are driven away from those run-times if they want access to the reach of the iPad customer base.
Apple wants to sell devices. Google wants to sell advertising.Microsoft wants to sell Windows. These interests have had tremendous influence over their choices regarding what technologies to embrace and support.
A patchwork of proprietary technology – both hardware and software – has emerged over time, forcing customers to carefully choose their devices to ensure that they will be able to run the software and applications they want, and have access to the content that they want. Additionally, developers have had to find creative ways to avoid the expense and roadblocks of having to develop a native application several times over, once for each platform on which they want their application to run.
Developers are also interested in ways to bypass things like the App Store, so that they can deliver their product directly to the users and avoid paying for access to the customer.
While HTML5 has the potential to solve many of these problems, it does not yet have all of the tools and capabilities needed to be the ‘one technology solution.’ Certainly, the support and increasing participation that we are seeing from the major browser manufacturers, and now Adobe, is encouraging, but there is a long way to go before HTML5 is ready for prime time.
HTLM5 Now; and into the Future
With this understanding of the technology landscape, questions remain: what is the future of HTML5 and application development for mobile devices? And, what choices need to be made in order to ensure cost-effectiveness and user adoption?
Some experts have expressed the hope that HTML5 will be a panacea for cross-platform development, providing the best of both worlds. If this is to be true, it will take time and require HTML5 to overcome a series of existing business and technical challenges.
In the short term, a big challenge is that not all browsers and devices consistently support HTML5. Because of this, expected savings are decreased when a developer has to accommodate this inconsistent support as well as older browsers and devices. While HTML is frequently less expensive than developing native apps for each platform, it is hardly a silver bullet for the near future.
Another challenge is that on some devices, rich HTML5 web sites can feel sluggish because the devices are not powerful enough to run complex JavaScript code in a performant manner. This is the difficulty that prompted Facebook to create a native app for use on the iPad (Gannes).
This presents a difficult contrast between level of effort and user adoption. While these issues make widespread adoption difficult in the short-term, there is reason to believe that HTML5 will become paramount in the long-term because of its ease for the business and the developer. According to Rockford Lhotka, creator of the CSLA .NET framework, “There’s no technology today that gives you as much reach with as little effort as HTML, but vendors know that the future of HTML5 depends on solving the performance issues with JavaScript.”
Because of this, HTML5 is currently most cost effective in web applications that do not require a high level of interactivity or complexity. Two current examples of successful use of HTML5 web applications are The Financial Times Online, and Amazon Kindle. Both of these examples are primarily engaged in the delivery of content directly from the vendor to the customer.
For very rich, interactive experiences, native applications with platform-specific tools such as Objective C, Java, or Silverlight will provide better performance and higher user satisfaction.
This will also help avoid the difficulties currently presented by the fact that HTML5 is not yet able to consistently interact with the hardware of all devices, nor make full use of all device capabilities. Looking forward, there is every reason to expect that these standards will continue to evolve and gain acceptance, and HTML5 will be able to be a more unifying technology.
In the one-year time frame, Microsoft has announced that Windows 8 will support HTML5 for the creation of HTML5 native apps, in addition to today’s HTML5 web apps. Likewise, the next version of Google Chrome is reported to include a software development kit – Native Client (NaCl) – that will enable HTML5 developers to create native apps for Chrome.
In an article on Readwrite Cloud, Klint Finley writes: “Google has also promised to make NaCl available as a plugin for other browsers. What this means is that cloud-based applications may be able to execute code at a desktop level of sophistication, and that Google Chrome OS will soon be able to run these types of applications as well. It’s further blurring of the lines between Web/cloud and desktop applications.”
To HTML5 developers, this means that they will be able to leverage their current skills to develop native apps in Windows 8 and Chrome. These could pave the way for the much richer, more highly interactive, high quality user experiences that users crave.
In a parallel trend, as more browsers and devices support HTML5, and more users and businesses upgrade to HTML5 compliant browsers and devices, an increasing number of businesses will benefit from HTML5 web apps. It is reasonable to expect that the majority of web sites will incorporate richer HTML5 features in the medium time frame. This includes customer-facing sites, as well as more internally focused line of business web applications.
In the longer term, it is likely that most computer users will have devices that support touch interfaces in addition to the more traditional keyboard and mouse. The line between “mobile” and “desktop” will become so blurred as to be a meaningless distinction, and apps will be designed to seamlessly support several form factors.
Some applications may enable the user to interact simultaneously through their cell phone, tablet computer, gaming console, and other devices. For example, Apple and Microsoft have (or plan to release) apps for mobile phones that interact with apps running on control gaming consoles or televisions.
Even today, Net Flix allows users to use an HTML5 web site to browse through the catalog of available movies, and those movies are often played using a native app on a mobile phone, a gaming console, or a dedicated media device.
This blurring of the line between HTML5 web apps, native apps, mobile devices, media devices, and traditional computers will have a profound impact on the way users think about computing. The rich interactive and media capabilities of HTML5 are important features that will enable this future.