Wednesday, August 24, 2011

My Perspective on HTML5

There’s no shortage of information (and misinformation!) about HTML5 out there, but as I’m going to be blogging a lot on the subject I thought I’d begin with my perspective on it and where The New Web is headed.

WHY ALL THE EXCITEMENT?

Let me begin by stating the obvious: the web is really important. Duh. That’s hardly a secret--the web was already of staggering importance over 10 years ago--but it’s remarkable to me that just when you think the web couldn’t possibly become any more important to us, it continues to do so: it’s the gift that keeps on giving. I remember well the first time I ever saw the web—it was 1995—and I’ve watched the progression from static web sites to expressive static web sites to dynamic web sites to e-commerce sites all the way up to the present areas of focus on devices and social networking. The ubiquity of the web and high-speed access to it are now taken for granted by hundreds of millions of people, from elementary school children to grandparents. As newer aspects of the web unfold and grow it adds more tentacles to strengthen the hold it already has on our lifestyles.

The driving force behind HTML5 is the captivating idea of a lingua franca for web applications that will work well on PCs, tablets, and phones, based on open standards only. It has unbelievable momentum and there’s no serious opposition to it at this point. Apple’s decision not to support Flash on the iPad and iPhone had a lot to do with that. More than standards or technology, HTML5 is a decision that has been made, a movement with strong industry and community backing, and a phenomenon that has been set in motion.

There’s an unbelievable amount of activity already even though the standards are still in progress, and the creativity that’s being demonstrated is really inspiring. Check out Canvas Mol and Angry Birds and The Wilderness Downtown and Lucid Chart for example. I’ll be sharing plenty many more examples in future posts. That’s why, without a doubt, the time is right to stop being a bystander and get in the game. If you have any doubts about this whatsoever, pay attention to next month’s BUILD conference (which you can attend virtually) and Windows 8.

Before going any further, I need to point out that “HTML5” is not the best term for what’s changing on the web. People use that term either out of ignorance—not realizing there are over 100 related standards besides HTML involved here—or as a convenient label that really means, “that umbrella of related standards whose most prominent member is HTML5.” The latter seems to have taken hold, so I will not try to fight that, but just keep in mind that there’s a lot more to The New Web than just HTML.

EVOLUTIONARY OR REVOLUTIONARY?

It’s my job to be on the watch for how technology is changing and ensure my consulting practice is making the right strategic and tactical investments. I’ll often consider whether an area of technology change on the horizon is sustaining (progressive) or disruptive (game-changing) or said another way, evolutionary vs. revolutionary. If a change is disruptive, technologists and consultants need to recognize that sufficiently early on and invest in learning and understanding it, knowing it won’t be polished and mature right away but will eventually take over the market. If we guess wrong, we either miss an opportunity and fall behind or we waste our time on a “pretender technology” wave that doesn’t last. You can get some insights into this subject by reading The Innovator’s Dilemma.

What’s interesting about HTML5 is you can make an argument that it is both sustaining and disruptive at the same time, and that is rare. The progressive aspect is that HTML5 and many of its related standards such as CSS3 are the next versions of things we’ve already had and are familiar with. The disruptive aspect is that many of us who have relied on technologies like Flash and Silverlight for sophisticated web work will now have to revise our skills so we can do so the same using HTML5. I’m definitely in that camp: I’ve spent the last 3 years investing in Silverlight. For us this will mean going back to those basic web technologies like HTML, CSS, and JavaScript and getting ourselves to the point where we can do equally sophisticated work with them. So there’s plenty of disruption going on, both at the industry level and the individual designer-developer level.

A WORK IN PROGRESS

HTML5 is a work in progress. The current standards may not finalize until 2014-2020, and realistically there will always be a mixture of accepted standards and on-the-horizon standards. This means in its larger sense HTML5 is not really going to “land” anytime soon. There will surely be a time in the future when enough of HTML5 is finalized and supported by the mainstream browsers that we consider it ubiquitous but that’s years away.

The consequence of HTML5 being a work-in-progress is most clearly seen when you look at and compare web browsers. The latest browsers don’t support all of HTML5 yet—which is natural since it’s a moving target. You can get a sense of this by visiting html5test.com with different browsers. As I point out cool HTML5 demos going forward (one of my favorites being The Wilderness Downtown) you’ll find that many of them don’t work across all browsers yet. For example, Wilderness only works properly in Chrome today. There’s a bigger browser war than ever going on, and its two big planks are who has the best HTML5 support and hardware acceleration to support immersive animated multimedia experiences.

There are development consequences to HTML5 being a work in progress. Our web applications have to be checking for feature availability and providing reasonable fallback behavior, strongly leveraging libraries like modernizr. Fallback activities can mean extra work implementing more than one way to do something. A larger portion of an application will be written in JavaScript than in the past, and for many developers this will mean a drop in velocity until they become as fluent in JavaScript as they are in a language like C#. Developers need to recognize that JavaScript now needs to be recognized as a programming language and not just “web glue” you use from time to time when necessary.

TRUTH, HYPE, AND DECEIT

While HTML5 may be a work in progress, enough of it is there today that many real businesses are using it right now for their online presences. Some good examples are the Associated Press Timeline Viewer, BMW’s Joy Defines the Future, and the Tron Legacy site.You’ll find the major technology providers have their own sites showcasing HTML5 implementations and demos, including Microsoft’s Beauty of the Web and Google’s HTML Rocks.

There is however a lot of hype and outright deceit about HTML5, which means you need to develop a good sense about separating truth from fiction. The hype comes from technology vendors as well as individuals who put their own spin on things. You’ll find differing opinions about who has the fastest browser or supports HTML5 the best. For just about every claim made you’ll find a site “outing” the claim with an alternative opinion. Some of the cool HTML5 online demos, it turns out, actually still rely on technologies like Flash in order to work well across the browser spectrum.

What to do then? If HTML5 is already too important to sit by and ignore, yet isn’t done or consistently supported by browsers yet, how should you think about it? For me the only answer is immersion. It’s time to go deep and start using it, building up my capabilities progressively. If you want to come with me on this journey, keep following this blog.

No comments: