HTML 5 represents the biggest leap forward in web standards in almost a decade. Unlike the specifications that came before it, HTML 5 is not merely intended to present content to a web browser. Its goal is to bring the web into maturity as a full-fledged application platform — a level playing field where video, sound, images, animations, and full interactivity with your computer are all standardized. And it may be a long way off still, but elements of HTML 5 are already reshaping the way we use the web.
The last update to the Hypertext Markup Language — the lingua franca of the web — was the 4.01 specification completed in September, 1999.
Quite a bit has happened since. The original browser wars ended, Netscape dissolved. The winner, Microsoft Internet Explorer 5, begat IE6, which begat the current IE7. Mozilla Firefox rose from the ashes of Netscape to take over second position. Apple and Google have released their own web browsers. The minority shareholder Opera continues to play the gadfly while pushing standards and software design forward. We even have a real web experience on our phones and game consoles, thanks to Opera, the iPhone and Google’s soon-to-be-released Android.
But all that progress threw the web standards movement into disarray. Ideas for HTML 5 and other developing standards were more or less left on the cutting room floor. As a result, HTML 5 has been in draft form ever since.
Several interested parties have banded together to form the Web Hypertext Application Technology Working Group (simply referred to as the WHATWG), an entity charged with picking up HTML 5′s pieces. It operates separately from the Worldwide Web Consortium (W3C), which oversees web standards, and it includes representatives from Mozilla, the KHTML/WebKit project, Google, Apple, Opera and Microsoft. And although the draft may not be ratified for years, work on HTML 5 continues.
So what does HTML 5 offer? Here’s a rundown of the most exciting advancements in the HTML 5 draft specification today:
- A new, sensible tagging strategy. Instead of bundling all multimedia into
embedtags, video goes in
videotags. Audio goes in
audiotags, and so on.
- Localized databases. This feature, when implemented, automatically embeds a local SQL database websites can read and write to, speeding up interactive searching, cacheing and indexing functions, or for offline use of web apps that rely on data requests.
- Rich animations without plug-ins. The
canvaselement gives the browser the ability to draw vector graphics. This means configurable, automatic graphs and illustrations right in the browser without Flash or Silverlight. Some support for
canvasis already in all the latest browsers except for IE.
- Real apps in the browser. APIs for in-browser editing, drag and drop, back button “waypoints,” and other graphical user interface abilities.
- Content presentation tags will be phased out, and CSS will rule.
In theory, HTML 5 is a breeding ground for new ideas for web standards shared among interested developers and browser vendors. But it’s all still experimental.
“HTML 5 is kind of an overloaded term,” says Mozilla vice president of engineering Mike Shaver. “It’s both sort of an incubator (at WHATWG) and the standards-based track at the W3C.”
Mozilla’s interest, according to Shaver, is aligned with the experimentation at WHATWG. “We’re very active in the HTML 5 group, designing and doing early implementations on those specifications and the work graduates to the W3C.”
In the past year, Mozilla has released several forward-thinking projects aligned with the emerging standards, including Prism, a system for running web apps offline, and Weave, a data storage framework.
Shaver says the HTML 5 movement was born out of impatience. Many sensed activity around web standards was stagnating as the W3C started directing its attention away from HTML and to another emerging technology, XML.
“A lot of new architectures — XML based work — were designed to replace HTML in the web,” says Shaver. “We were really not convinced that was the way it should go forward. We don’t think people should be throwing (web technology) away to get (the web) to go forward.”
Experimentation is now going strong in Firefox and WebKit-powered browsers like Safari and Google’s new Chrome, but there are growing pains.
Chrome developer Darin Fisher says that while Chrome was under wraps, a few things had to go. Despite using the latest branch of WebKit (the same branch to be used in the next version of Safari), the local database features didn’t make it into Chrome’s first release. Unfortunately, the safety and performance factors of Chrome’s isolated sandbox system, which enables faster and more secure browsing by partitioning tabs in memory and CPU process, would break the built-in WebKit database functionality.
Because it was developing in secret, the Chrome team was unable to get too involved in WebKit development.
“We couldn’t be engaged in the WebKit community without being involved with keeping Chrome a secret,” Fisher laments. “We share one vision, and we’re really excited to help WebKit in some way. We have a lot of experienced web developers (at Google). It’s really interesting what kind of challenges people are facing. We can bridge that divide a little.”
With the launch of Chrome, Fisher says his team members occasionally have lunch with the WebKit team. Some are even personal friends. Fisher claims they are eager to work with the other WebKit developers to fix some of these offline functions.
Included in Chrome is the Google-born and now open-source Gears, a piece of technology used for the same purposes as HTML 5′s offline features.
“Gears has a lot of great value. It’s best thought of as an alternative API already out there,” says Fisher. “HTML 5 is great if you have a newer browser, but what about the vast majority of users that have an older browsers? Gears is a vehicle to make this API available to older browsers. We’re working to match HTML 5 versions of these APIs.”
Fisher stops short of labeling Gears a stop-gap to HTML 5. “Gears is very compatible and supportive of HTML 5. It is on a trajectory to become another implementation, another platform that is to put HTML 5 on people’s desktops.”
The majority of work thus far has been by companies like Apple (through WebKit), Mozilla, Opera, Google and Trolltech.
So, where’s Microsoft? Internet Explorer has been famously slow to adopt web standards, let along the experimentation of HTML 5. But the tide is shifting with the emergence of Internet Explorer 8.
“I’m really looking forward to the work we’re starting to do to ramp up building a test suite in the HTML Working Group,” says Microsoft Internet Explorer platform architect and WHAT WG co-chair Chris Wilson in an e-mail.
Wilson says the Internet Explorer team is still a little wary of some of the proposals in HTML 5.
“I think all the members of the Working Group, particularly the editor, would agree we still have a lot of work ahead of us to flesh out the specification,” wrote Wilson. “Parts of the specification, of course, are more polished that others.”
IE8, currently in beta, already includes several new features from HTML 5, he points out. It has a cross-document messaging system, the local data store for client-side storage, a way to insert back button “waypoints” into web history and some offline event features to detect network outages.
But some stuff isn’t on the drawing board. While Wilson says
canvas looks like a useful feature, it’s not in Microsoft’s plan for IE8.
Wilson believes there’s definitely a future in the specification.
“HTML 5 is huge, and is still under a lot of development as a specification. I think that the browser implementers, though, are working together to try to agree as quickly as possible; each browser chooses when to implement what, though, and will bring pieces online as they determine their user and developer base need it.”
Web developers and browser vendors alike can agree with Wilson on one thing: “This is certainly an exciting time, and we’re really pleased to see the renewed interest in the web as an application platform.”