Blogs

This Blog

News

Favorite Posts

Archives

ctodx

Discussions, news and rants from the CTO of DevExpress, Julian M Bucknall

Is HTML5 the UI platform to rule them all?

Right before the Christmas season at the end of last year, a little snippet of news flew by which you may have missed: the World Wide Web Consortium (W3C) announced that it had completed (and published) the full definition of both the HTML5 and Canvas 2D specifications. “Wait, what?” I hear you say, “but my phone already supports HTML5!”

HTML5 logoWell, strictly speaking your phone and my desktop and Joe’s tablet all support their own flavors of HTML5. The latest version of the markup language has been in development over a few years and browser manufacturers have been keeping up to a certain extent. But, before you start complaining that your browser of choice doesn’t support the full HTML5 spec, consider the moving target that the browser manufacturers have had to aspire to. To a certain extent, it makes sense that the browsers would lag behind the spec: after all, you don’t want to have to discard code when the spec changes (I’ll stop for a moment right there as every programmer who’s ever made a living at this job howls with cynical laughter at that scenario).

But now the spec is finalized, the browsers can catch up and everyone’s happy. Right?

I wish. The problem is that modern web apps like Single Page Apps (SPA) rely on a lot more than just HTML5. In fact, you might think of HTML5 as an overall moniker for a system that looks more like a triangle, with HTML5 relegated to just a single corner. The other two corners of this UI platform triangle are CSS3 and JavaScript (or some flavor of ECMAScript 5) – and if you think HTML5’s spec took some time and tracking to implement, just wait until you see the morass that is CSS3 support (vendor-specific prefixes anyone?) and ECMAScript 5 support. Nevertheless, the rigid steel triangle that is HTML5/CSS3/JS is well understood by pretty much everyone who uses it to provide app functionality: HTML5 is the content, CSS3 the presentation of that content, and JavaScript the code glue that binds the others to provide interactivity, richness, and a proper user experience.

And that is another cue for some laughter among my readers: “proper user experience”. The issue here is that no longer do we just look at a website in a 960px-wide window as in days of yore. My desktop is 1920px across, my iPad is 2048px or 1536px depending on whether I hold it portrait or landscape, my Kindle Fire HD is 1280px × 800px, and my iPhone 5 is…whatever it is. With just that little lot on my desk (let alone my Surface RT) how can we talk about “proper user experience”? I must admit to being a little biased perhaps, but I kind of expect my web apps to look like they are native iOS apps on my iOS devices and like native Android apps on my Fire. And it would be great if the website had a “responsive” design as well for my desktop browser. (A responsive design for a web app is a UI that can change its rendering depending on the size of the browser window. For a discussion on why this is becoming more and more important in 2013 and beyond, see this Mashable article.) In other words, a proper user experience no matter which device is being used.

That of course leads me to our just-released DXTREME product line. Part of the HTML side of the DXTREME subscription is a client-side library that understands devices. It will switch (that’s the JavaScript part) the presentation of the app (that would be the CSS part) according to the device you are running on. The markup of the content (that’s the HTML5 part) does not have to change to support these different devices. Now, agreed, this is all in the early stages – DXTREME does an excellent job for phone-sized devices – but that doesn’t translate brilliantly yet to tablet-sized devices with their extra screen real-estate, so you have to design your tablet interface separately for the best UX. But we have big plans for the next major release to support more devices and to support more widely-varying resolutions. Nevertheless, for creating a multi-platform single-page web app that looks native on whichever devices your users have, DXTREME today is the way to go.

So, in answer to my somewhat flippant question above: if you view HTML5 as the markup language, then, no, of course not. If however you view it as the overall name for the HTML5/CSS3/JS UX triangle, then it’s close, but gets even closer with DXTREME.

Published Jan 21 2013, 12:01 AM by
Filed under: ,
Bookmark and Share

Comments

No Comments

About Julian Bucknall (DevExpress)

Julian is the Chief Technology Officer at Developer Express. You can reach him directly at julianb@devexpress.com. You can also follow him on Twitter with the ID JMBucknall.
LIVE CHAT

Chat is one of the many ways you can contact members of the DevExpress Team.
We are available Monday-Friday between 7:30am and 4:30pm Pacific Time.

If you need additional product information, write to us at info@devexpress.com or call us at +1 (818) 844-3383

FOLLOW US

DevExpress engineers feature-complete Presentation Controls, IDE Productivity Tools, Business Application Frameworks, and Reporting Systems for Visual Studio, along with high-performance HTML JS Mobile Frameworks for developers targeting iOS, Android and Windows Phone. Whether using WPF, Silverlight, ASP.NET, WinForms, HTML5 or Windows 8, DevExpress tools help you build and deliver your best in the shortest time possible.

Copyright © 1998-2014 Developer Express Inc.
All trademarks or registered trademarks are property of their respective owners