Let’s face it: HTML5 is no app dev panacea

Don’t believe the hype: building serious applications still takes more than mere Web markup

Nothing frustrates a professional developer more than hearing someone describe themselves as “an HTML programmer.” Coding Web pages with markup has about as much to do with real programming as writing a menu has to do with cooking a meal. But you wouldn’t think so to hear platform vendors tell it. Lately, HTML has been made out to be a preferred development tool for everything from smartphone and tablet apps to full-blown desktop applications.

 

Best Microsoft MCTS Training, Microsoft MCITP Training at certkingdom.com

Palm launched its WebOS platform claiming developers needed nothing more than Web standards to build apps for it. Microsoft did the same with Windows Phone 7. Google’s Chrome browser has a “Web store” that lets you shop for desktop Web applications. But my jaw finally dropped when a recent demo showed how developers will be able to use HTML5 to write apps for Windows 8, leading panicked Windows developers to speculate that Microsoft was planning to drop support for Silverlight and even .Net itself.

[ Get your websites up to speed with HTML5 today using the techniques in InfoWorld’s HTML5 Deep Dive PDF how-to report. | Also on InfoWorld: “HTML5 in the browser: Canvas, video, audio, and graphics” | “HTML5 in the browser: Local data storage | “HTML5 in the browser: HTML5 data communications.” ]
HTML5 Deep Dive

Holy cow. Are we really so blinded by the HTML5 hype wagon that we’d believe Microsoft is ready to scupper core Windows APIs in favor of Web standards? It makes no sense. HTML5 is a fine tool and it will do great things for the Web, but lately it’s been pushed to such lofty heights that it’s plain ridiculous. As welcome as HTML5 is, there are plenty of reasons why nobody should consider it the universal development tool of choice. Here are some caveats to consider.

1. Good luck building anything with HTML alone
Anyone who suggests you can build apps in HTML is pulling your leg. What they really mean is you can build apps using HTML and JavaScript, but even this doesn’t give you the whole picture. The minimum for any real Web application is HTML, JavaScript, and CSS — three separate languages, all at once. The W3C’s HTML5 effort has added still more APIs to the mix of Web standards, enabling such capabilities as multithreading and local storage. This is assuming your app won’t communicate with any kind of server-side component — for heavy computation or storage, perhaps — and all the additional languages, APIs, and standards you’d need to confront then.

When anyone suggests that building apps is “as easy as building Web apps,” what are they really saying? Web development has evolved into a complex, multitiered, multilanguage discipline. Often it’s no picnic. Is that really the model we want to foist off on the next generation of developers?