Webmonkey » html 5http://www.webmonkey.com
The Web Developer's ResourceMon, 06 May 2013 17:29:19 +0000en-UShourly1http://wordpress.org/?v=3.9.3How HTML 5 Is Already Changing the Webhttp://www.webmonkey.com/2008/09/the_long_road_to_html_5/
http://www.webmonkey.com/2008/09/the_long_road_to_html_5/#commentsFri, 12 Sep 2008 23:46:55 +0000Scott Loganbillhttp://www.webmonkey.com/blog/howhtml5isalreadychangingthewebHTML 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, […]

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.

A new, sensible tagging strategy. Instead of bundling all multimedia into object or embed tags, video goes in video tags. Audio goes in audio tags, 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 canvas element 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 canvas is 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.”

Although the popular and paraphrased quote from Sir Isaac Newton was specifically referring to physics, it applies to a wide range of other topics as well; politics, music, movies, browsers …browsers? Yes, the popularity of Chrome was much too untested, sparking an instant equal and opposite reaction in the form of critique.

Let’s run through some of it.

Where’s My Toolbar?

David Pogue of The New York Times wrote about some very topical features in his review. For instance, there is no way to e-mail a page, change the skin or install a toolbar.

When I asked the features question at Google’s Chrome presentation, the developers smiled and said the functionality was to come later — contributors to the open source project should feel free to start working in that direction. It was a stock answer.

In Google’s defense, there is only so much a browser should contain in its beta. This is especially the case when the initial direction of the browser was to empower web applications, not exactly add the next wave of cool social features. The technology in Chrome is intended solely to be the backbone and progenitor of upcoming web technology.

Still, people love those newfangled browser whiz-bangs. For instance, where’s my Firebug? Where’s Greasemonkey? Perhaps people won’t care how fast or how good under-the-covers Chrome is if it can’t do the things they’ve grown accustomed to in other browsers first.

Don’t Call it an OS

Ex-Googler and programmer Ted Dziuba makes a curmudgeonly complaint by nitpicking the tendency of journalists to compare Chrome to an operating system like Linux or Windows. For the record, it’s not an operating system. Putting it in the same league as other OSes patronizes the hoops Windows, Linux and Mac OS X have to jump through to run desktop applications with different hardware.

Although, it sure acts like one. Once installed, Chrome runs web applications and it runs them fast and it runs them in modularity. Is there an easier way to compare it to anything else as easily identifiable for neophytes without paring it down to a patronizingly elementary level? “Monkey pull lever, monkey get e-mail, but Chrome better than other levers”? Meh, OK. I’ll try harder next time.

Chrome Has Plenty of Bugs

JQuery creator John Resig has gone through a few of the most curious bugs in Chrome, the most troubling of which appears to be its seemingly discriminate ousting of an HTML 5 client-side storage API, already built into Webkit.

Gears, open-source but initiated by Google, does the same thing as the ousted feature. And Google definitely did Gears a favor in its ousting HTML 5′s similar component. Google promises it will return, but the question remains: why was it removed in the first place?

At least nobody is arguing that Chrome is the most stable, bug-free browser — least of all Google, which released Chrome’s first patches on Monday.

Chrome is Better Than Sliced Bread

Google has created a cult of personality. Drink the Kool-Aid and take your Soma, but beware of Skynet. Read Buzzpirate.com’s take on Chrome’s impending quest for world dominance.

According to Mozilla engineer Vladimir Vukicevic, Internet Explorer isn’t adapting to the next generation of web standards fast enough, so he’s going to have to do it himself.

Vukicevic has been working to introduce HTML 5 graphic canvas elements to Firefox. As we mentioned in our preview of Firefox 3.1, canvas elements introduce the ability to render two dimensional, and soon three dimensional, graphics directly through web pages without a download. The graphics are part of the next-generation HTML 5 standard, and it’s something Opera and Safari have already implemented.

The problem is the leading browser on the internet, Microsoft’s Internet Explorer, doesn’t support Canvas elements and have announced no plans to support it in the future. If you were a Mozilla developer behind a cool new feature and you knew people weren’t going to use it until the leading browser on the web implemented it, you might feel tempted to lend the other browser a hand.

Vukicevic did exactly that. His ActiveX component adds the ability to see Canvas elements in Internet Explorer exactly the same way Opera, Safari or Firefox 3.1 users will. According to Vukicevic’s blog post:

“Canvas is just one piece of the full modern web platform, but because it’s so self-contained, it lets us experiment with pushing the web platform forward even for browsers that have fallen behind (or that might not be interested in an open web).”

The code isn’t finished yet. There are still some graphic implementations needed to bring the feature up to standard. Even more daunting, there are installation issues with Vukicevic’s solution:

“Currently, the experience is pretty crappy… In theory, with the right signatures, the right security class implementations, some eye of newt, and a pinch of garlic, it’s possible to get things down to a one-time install which would make the component available everywhere.”

Still, this is great news for Internet Explorer fans. HTML 5 technology aims to bring multimedia elements, such as audio, video and graphics to your browser without depending on third-party media solutions. The standard, if implemented among all browsers, allows web developers the tools needed to ensure the same user experience no matter what browser you choose to use.

For the rest of us, it means a seamless and rich multimedia experiences in our favorite web pages — no more missing plug-ins or add-ons.

However, Internet Explorer hasn’t been very open to adapting to developing standards as Opera, Safari and Firefox has. In part, this is because it is pushing its own .NET based technology, including its Silverlight multimedia browser plug-in, to achieve the same goal. Pushing adoption of its technology instead of web standards such as HTML 5 (using the weight of Internet Explorer’s leading market share) means the company has more power to influence the future of emerging internet technology.

This is where Vukicevic’s add-on is so unique. In a way, it forces Internet Explorer to play along with the web standards community without its direct involvement. In turn, web developers will be more apt to use the technology. And if all browsers use the same standards, it means rich internet multimedia for all.