As the buzz around HTML5 keeps growing, we look at the technologies future and potential. Check out part one here.
One advantage of a true cross-platform technology like HTML5 is that developers no longer need to rely on native technologies to deploy their apps on specific hardware platforms. That means being able to potentially circumvent app stores that demand costly native development and take a portion of the profits. The downside is that often the support of these proprietary app stores can make the difference between sinking without a trace and being the featured app of the month and reaching an audience of millions.
For developers that perhaps have less need for the support that app stores can offer, HTML5 offers a significant advantage over native development, particularly when combined with native code whenever it makes sense.
“Many popular Web 2.0 services are using a technology like PhoneGap or a custom native wrapper that allows you to build the user interface for an application in HTML5 and use native code where necessary to deploy the same server-based user interface across mobile and desktop applications,” says Gail Frederick, product planning manager for Intel’s Open Source Technology Center. “And being able to update the UI without needing an app store update is a big advantage for them.” [Disclosure: Intel is the sponsor of this content.].
Selecting the parts that HTML5 can already do well and combining those with native technologies to do the things they want to do is proving to be an effective interim solution for many developers. “I think today that’s a very common programming model,” says Frederick.
“If we talk about Chrome being the bleeding edge and the idea that looking into the Chrome store is looking into the future, as we’re looking into that future, a lot of developers are going the hybrid route today as a hedge against the parts of HTML5 where the syntax might be settled but the performance needs work.”
Another serious concern with HTML5 for some developers (when compared to native programming) is the transparency of the source code for the application. Even the most basic computer user can easily display the code that powers the web pages being viewed, all of which can be instantly copied with a quick View Source and CTRL+C. Being essentially a web language that runs in browsers, HTML5 suffers from the same surfeit of accessibility, and hence, apps created using the platform are exposed.
Cloning is the widespread and illegal act of copying code and publishing a practically identical app, often only weeks or even as little as a few days after the original is released. The practice is a particular concern in gaming circles, where success increasingly depends on maximizing revenue through micro-transactions, and where certain large global markets suffer from the twin curses of inaccessibility and a somewhat loose application of copyright law.All is not lost however. “If you were to do a View Source on most of these jQuery mobile apps you’ll find that a lot of the proprietary business logic is in the cloud, and that’s how people deal with it,” says Mike Richmond, from Intel’s Open Source Technology Center.
The team at European social gaming startup oOki is very aware of the issues presented by the transparency of HTML5. “Theoretically, all the game code can be read or copied, which poses problems in terms of cheating, piracy and cloning,” says Stephane Caillet, head of game programming at oOki. “It’s always possible to make it less readable by obfuscating the code, but parts will always be readable to a programmer.”
The cloud-based solution observed by Richmond is also oOki’s preferred approach. “The most effective solution is to manage a large part of the code server side,” says Caillet. “That code will never be downloaded by the client. In our case, for example, the game rules are handled by the server to avoid any cheating. We also encrypt all the network communications.”
The Long Game
What’s clear is that HTML5 is here to stay and it will change the face of application development. Whether it reaches its full potential next month or two years from now, its evolution is continuing apace, bringing new capabilities and new kinds of developers into its sphere of influence. Intel continues to show a keen interest in optimizing the platform for its hardware, as both the power of available hardware and of the platform continue to grow.
“We’re seeing some very interesting stuff happen on the PC with HTML5,” says Richmond. “If you browse the Chrome store you can see what this programming platform can do when you actually have a powerful processor. It really points to the future, because Moore’s Law says that what you have on the high-end devices will become a commodity two or three years later.”
“The position we’re taking is that HTML5 is a long-term friend,” continues Richmond. “This isn’t an instant changeover, so don’t throw out your C programming book if you’re a C programmer. At the same time, the technology is ready today for doing a number of things that would really be a waste to do with native code.
“If you’re a professional developer and have a broader range of language skills you should just add this to your toolbox and use it because it will save time and money. And if you’re a content developer you should be trying your hand at developing apps, knowing that as you get more experienced the capabilities you need for doing more advanced things are going to improve all the time.”
“There’s always a technology hype cycle that happens, and HTML5 has probably gone past the peak hype stage and is now in the ‘is this really going to happen?’ phase,” says Richmond. “But it is happening. The economics are just too compelling.”