W3C Says Don't Use HTML5 Yet
GMGruman writes "InfoWorld's Paul Krill reports that the W3C, the standards body behind the Web standards, is urging Web developers not to use the draft HTML5 standards on their websites. This flies in the face of HTML5 support and encouragement, especially for mobile devices, by Apple, Google, Microsoft, and others. The W3C says developers should avoid the draft HTML5 spec (the final version is not due for several years) because of interoperability issues across browsers."
I already had to test my websites across all the major browsers (especially IE8) before HTML5 to be sure that little differences weren't breaking everything. I would hardly expect HTML5 to magically change that anyway.
"The problem we're facing right now is there is already a lot of excitement for HTML5, but it's a little too early to deploy it because we're running into interoperability issues," including differences between video on devices ...
Well, I read an entire book on HTML5 and, as web developers have usually done, you just build in graceful fallbacks for unsupported browsers or devices. If APIs change, then they change but a lot of developers would probably rather opt for that than something a lot more proprietary and complicated. A whole chapter of the book I reviewed was devoted to extensively detailing how one would get video working in increasingly fallback ways depending on your preference of support. Why can't we keep up that mentality? The worst case is we just default back to the Flash/HTML4 route.
"HTML 5 is at various stages of implementation right now through the Web browsers. If you look at the various browsers, most of the aggressive implementations are in the beta versions,"
Another sage lesson from Mark Pilgrim's book: "Those who ship code win." You can sit there and tell everyone to 'hold on' all you want but if you don't give them a good reason to stop pushing forward with the implementation, they aren't going to wait for your consortium to debate for another five years. We're moving forward. There will be bumps. The time for discussing a completely perfect approach has passed and browsers will thrust what support they can into practice, warts and all. At some point this has to be done, it will never be truly perfect.
My work here is dung.
I don't really find this surprising in the least. I've been saying this for awhile now. Why would you possibly want to build a professional application on top of what is basically a mudslide? The maintainability alone is completely shot.
Not that I don't think HTML5 will have a huge impact in the future, it's just, I don't know why anyone would make a professional application in it *at the moment*. Better to stick with something that is mature and fully adopted.
Just my $0.02..
When the draft spec for a technology that moves so fast and has so much widespread adoption is still deemed several years off I don't know how anyone can take their recommendations seriously. We're already at a level of fairly good interoperability amongst the core browser engines for the base features we need. If developers and designers took any notice of this then we'd probably all be still building sites with tables.
jaymz
Like anyone has ever listened to the w3c about standards and coding practices before.
"I use a Mac because I'm just better than you are."
I don't understand why these things take so long? W3C and HTML5, IEEE and 802.11N... You think with this much "hype", these guys might get the HTML5 standard out the fucking door ASAP.
http://www.allometry.com
Now that's an awesome idea. Maybe we should be more like the Inquisition and burn all the books. Yup. Impeding progress. Now that's the way to go.
Not for not supporting HTML5, but for setting the precendent where a lot of developers made their site for the "de facto standard" of it. Implementing right now HTML5 is making the same kind of mistake, should not be future proof.
In the other hand, the main browser that have no clue on what HTML5 is is precisely IE, so now they are getting a bit of their own medicine.
It seems obvious to me that you wouldn't use a technology that would work in less than half of the intended audience (unless you make it degrade gracefully).
But the real question is why does it take so long to come up with these standards? HTML5 started by WHATWG back in 2004. CSS3 has been around since 2005. Just get them finalized already. Don't whinge about browsers not fully supporting the standards if you don't give them a fixed document to work towards.
My thoughts exactly. This reminds me of 'Pre-N' wireless, which took far too long to ratify a standard that was already in wide use. They sat on their asses so long, it became a joke in the industry. If the governing body takes this long to certify it and they are claiming 'years' more in the future before the standard is finalized, then something is broken. This smacks of Google's 'beta' status. Eventually you have to shit and get off the pot.
Essentially they just need to finalize it, and for those bits that aren't production ready, defer them to HTML6.
I had to read that part a couple times to make sure it was right. Several years? What are these guys smoking? They actually expect people to wait that long?
Adobe will love this. Apple will hate it since they dont want to support Flash
Finalized standards are the leading cause of cold chairs. W3C and IEEE are doing their part to combat this injustice.
If they can't write specs in less than several years, why not divide html 5 into its core components and concentrate the work on one piece at a time?
They could work on the final specs for the canva element first, then the video tag, client storage, and so on until everything is done.
There could be some kind of a transitionnal html5, falling back to html4 when something is not yet specified.
What we need is "a day in the life of a W3C draft" article to figure out why these standards and recommendations take so long to mature.
* chirp * chirp *
...when FireFox4 isn't beta anymore.
I won't wait "several years" for WebM. Fuck you w3c!
the final version is not due for several years
They can't ratify a new speck for YEARS? That's just not good enough. I know it's an important standard, but in 2 years they need to be finalizing HTML6. The web moves fast. If they want to take this long to move things forward, I'm all in favor of Google, Apple and Firefox working out the standards themselves. HTML should update twice yearly, just like Ubuntu.
the W3C doesn't like HTML... 5!
Do these guys live on some other planet? These are technologies that people need NOW. Browsers are already implementing them. By saying that it won't be ready for 5 years is ridiculous. By the time that the standard is published, it won't be the standard that people use. W3C needs to get off their ass and see what is happening on the web TODAY, and set the standard for TOMORROW.
Thank you. 802.11n vs. 'Draft-N' was exactly what came to mind. If we wait around for standards bodies to approve already functional and complete specs instead of moving on with our lives, technology will progress as slowly as an involuntary bureaucracy would have made it. It's the right thing to choose to move ahead with a complete and functional spec if the paper for it isn't being pushed fast enough.
I recently noticed job posting where the requirements included years of HTML5 experience. It's pretty odd reading that the W3C doesn't even want it used.
Guess I'll have to tell my client that we have to stop work on their snazzy HTML5/AJAX site and hold off on it for a few years.
Ohhh wait.... the W3C is a bunch of prudish pencil-necks who move at a snails pace and are generally clueless to how the real world works.
Hey W3C: Bite me, developers will develop no matter what you say.
It'll be the year 2525 or something....
When the draft spec for a technology that moves so fast and has so much widespread adoption is still deemed several years off I don't know how anyone can take their recommendations seriously. We're already at a level of fairly good interoperability amongst the core browser engines for the base features we need. If developers and designers took any notice of this then we'd probably all be still building sites with tables.
This is why the WHATWG – the body that originally developed HTML5, and which still develops a version in parallel to the W3C – abandoned the idea of rating the stability of the spec as a whole. The WHATWG spec version (which is edited by the same person as the W3C spec, contains everything the W3C spec does plus more, and has useful JavaScript annotations like a feedback form) is perpetually labeled "Draft Standard", and per-section annotations in the margins tell you the implementation status of each feature.
The W3C Process, on the other hand, requires everything to proceed through the Candidate Recommendation stage, where it gets feature-frozen, and therefore becomes rapidly obsolete. It's quite backwards, but doesn't seem likely to change soon. So for sanity's sake, you can just ignore the W3C and follow the WHATWG instead.
(I really doubt that Philippe Le Hegaret actually said anything like what he was quoted as saying in TFA, though. It doesn't match what I've heard from him or the W3C before – no one seriously thinks authors shouldn't use widely-implemented things like canvas or video with suitable fallback. It sounds more like an anti-HTML5 smear piece. Paul Krill has apparently written other anti-HTML5 articles.)
MediaWiki developer, Total War Center sysadmin
Maybe it's time they speed up their process a little?
Hopefully then they wont be passed by reality which develops at a much faster pace.
And then maybe they can avoid painful hiccups like XHTML 1, 1.5 and 2?
They started off great but more and more they are a waste of money and resources.
Don't use new technologies. Ignore HTML5.
[signature]
I tried to create a website that had to present some 480p videos. I encoded them to Ogg Theora, and figured I could forgo Internet explorer compatibility by encouraging visitors to use either Firefox or Chrome. Unfortunately, for all the noise Firefox makes about supporting open standard, their insistence on implementing their own video support rather than relying on Underlying os ability is completely messed up. Every platform I tested on exposed different bugs in Firefox that prevented the site from working. On Windows, some of the videos would freeze on first frame. On Ubuntu Karmic version of firefox, (3.5) the videos played well, but was unable to control position, (no forward or backwards seeking, even when buffering was full.). On Ubuntu Lucid, the videos would stutter and even while paused, made Firefox slow to respond to window scrolling. In the end, if I wanted to use HTML5 video, the only browser currently working well is Google Chrome. If I instead decided to use the de-facto x264 standard, I increase my browser compatibility across the board (except for Firefox.)... So yes, while I know video is only a small part of the changes, using the new specs is far premature.
If developers are encouraged to use HTML5 in its present form, which has inconsistencies across browsers, some websites will not work properly on some brand new, modern browsers -- not necessarily because the browsers are not standards compliant, but because the websites had to choose to be compliant with the unfinished standard implemented within a particular browser.
While most developers would normally choose the common factor and make their websites work on all browsers, other interests may prevent them from doing so. We've already seen Microsoft pay off certain popular websites to make their pages use HTML5 that only IE9 supports, as a marketing technique to make others look bad. While you could argue that all marketing is fair game (lies and subterfuge; smoke and mirrors), this sort of thing makes the job of the standards authority much more difficult, because some things may become defacto standards, thus undermining their efforts and ultimately making compatibility across browsers more difficult.
Remember the last time this sort of thing happened? Don't forget that Microsoft still has a good chunk of market share, and could invent new ways of making history repeat itself.
The IE9 beta has at least some support for HTML5. I've learned over the years that if Internet Explorer implements a feature, every other browser of note has implemented it as well at least a few months beforehand. If that holds true for HTML5, then I don't see why we can't start using it right now.
Not that W3C approval is really necessary. I mean, people are going to use it when browsers support it, whether it's "approved" or not.
I also have a message, for the W3C: FUCK YOU
If they cannot keep up with the real world (and they cannot, as proven time after time after time), then that's their problem.
Is there any reason they couldn't just implement version numbers as they gain better support and address functionality? HTML 4 was intended to reign browsers in that had gone in all directions, to a standard implementation. Now I'll be back to checking what the big 3 browsers have in common so I can start using new features. Congratulations to W3C in managing to marginalize their relevance, yet again.
Why the hell does it take *years* to "approve" this? Maybe we should have a new "standards body".
In a work placement year I did the major electronics company had a couple of staff on the board for a standard -- it involved lots of XML and internet stuff, so it's not far from the kind of thing W3C does.
What took so long was working out whether technology that required infringing on each company's software patents should be "required" or "optional". In the end, Sony, Philips, Panasonic etc decided to pool their patents (their stuff is "required"), the patent troll companies were excluded by the big company's votes (so the neat technology they'd patented was "optional" or left out entirely) and the couple of small businesses or individuals who'd already got products running using the draft spec were ignored.
no one seriously thinks authors shouldn't use widely-implemented things like canvas or video with suitable fallback
Um, I do.
First off, Canvas is fucking redundant and never should have been created in the first place. SVG has existed since 2001. Canvas is a crappy JavaScript-only version of Canvas with half the features stripped out. There's no reason to use canvas in the first place - just use SVG. Most browsers support it and even if they don't there's good plugin support. And it's an actual released standard.
HTML5 video is completely fucking useless, because:
1. You can't stream video. (No, not a file, I mean live video.)
2. You can't full screen HTML 5 video. (The spec forbids this as a security flaw.)
3. There is no standard format, leaving you to encode an unknown number of versions. Hell, even if you stick with just H.264, you still need to encode to multiple profiles if you want to support everything.
4. You can't seek in videos in anything remotely near a reliable manner. You know how you can link to a certain time in a Youtube video? Not possible in HTML5.
5. You can't switch to lower/higher-bandwidth versions while the video is playing. This makes HTML5 useless for mobile devices - to the point where Apple uses proprietary QuickTime features to enable web video on the iPhone.
The HTML5 spec as is stands today is useless. The features it does offer above HTML4 already exist and are handled better via existing specs or plugins. Pretty much anything that isn't canvas or video isn't implemented anywhere, making the features entirely useless instead of done better elsewhere.
So, yeah, I'd agree: wait for HTML5 to mature some. Right now it's useless.
Web developer here.
First off, HTML 4 has plenty of browser interoperability issues. Just try to develop something that works on IE and any other browser.
Secondly, for the love of God and all that is holy, HTML is primarily a visual medium that people look at on a computer screen! Separating content (html) from presentation (CSS) was an excellent idea. Failing to allow vertical centering without dumbass CSS and javascript hacks is not. Seriously, what the hell?
Third, why can't CSS styles inherit other styles or use constants? You were *finally* going to add that into CSS, and then some jackass decided not to include it because it would make it more *complicated*. Do you know what's complicated? Having to change 40 instances of a color in a CSS file because I can't define a damn constant. This is exactly the kind of shit CSS was supposed to *solve*. Safari implemented this briefly and removed it because *they were afraid people would like it too much and usage would become widespread before there was a standard*. Add it to the standard! Right now, we have to use ridiculous workarounds like CSS compilers, which don't fit very well into a lot of modern CMSs.
Fourth, stop deliberating and start releasing official standards, otherwise Microsoft will just run off and do its own thing and we'll all be boned *again*. You're doing way more damage than you're preventing.
Finally, your failure to support as standards things (like the aforementioned CSS vertical centering) that people need to do in the real world on a regular basis just leads web developers to use non-standard code and bullshit like Flash, which circumvents your standard altogether.
End rant.
I teach some courses on HTML/CSS, Flash, etc... I was looking through my materials just yesterday and thought "Hmm. All of these are about xHTML 1.1 and I only briefly mention HTML 5... Should I add more 'Oh, and this is how this thing will be done in HTML 5' stuff?". But with this announcement, I can just postpone that another year or so and they'll still be up to date when compared to latest W3C recommendations. ;)
Even better, I'd like to see the story of a W3C draft done to the tune of "I'm Just a Bill" from Schoolhouse Rock. Just don't let the W3C do it or they will debate the lyrics for years and not release a draft version until 2020.
I can't even use Youtube anymore. Even 360p videos don't play smoothly, and when they go fullscreen (Which isn't really fullscreen anymore) it turns into a slideshow. Forget HD.
AND THERE'S NO WAY TO DISABLE IT. Way to go, Google.
Friend: "The NIC is misconfigured..." Me: "No prob, I'll just telnet in and fix it." *Silence*
The usual games of trying to put facts on the ground first to "win" a standards battle....
HTML5 needs a LOT of work, especially in the realm of security.
This.
The W3C is a running joke at this point. They didn't even want HTML 5 in the first place. Now they're telling people to shy away from it for a few YEARS?
I don't know what Internet these guys are on, but it's not the same one that the rest of us inhabit.
-- "So they told me that using the download page to download something was not something they anticipated." - Bill Gates
Are they hoping to repeat the same experience as XHTML 2.0?
Why don't we scrap W3C and go with WHATWG instead? At least they can get the job done. If Apple, Google, Microsoft, Mozilla, and Opera are all in unison I don't see why we need to wait on W3C at all.
HTML5 will be great, but it is not there yet. I wanted to implement HTML5 for all the videos on my website, but unfortunately, I was unable to find any good HTML5 video player with all the bells and whistles that the Flash players can offer. On top of that, the HTML5 videos players I tested with Flash fallback, were showing the video preview picture without anything suggesting that it is a video, not a picture - for example play button on the center. For the time being I am away from HTML5, even if I like it. I hope they will release decent HTML5 video players soon, that I can easily replace with the Flash, but have the fallback modes for the people with old browsers or mobile devices.
...just a guy who happens to be part of the W3C stating his personal opinion. There is no official press release or publication on the W3C site itself--and, for that matter, not even any on this guy's personal web page or Twitter feed (when did he even say this?).
R.Mo
Hey, browser makers. this one's for you. do you correctly render the HTML5 tests? then you need to order now, within the next 5 minutes. you need Get A Clue (tm)! yes, the world is leaving you behind while you hold focus meetings and task offsites. Get A Clue (tm)! Get A Clue (tm) will motivate you to read the damn spec and get back in the market! you can't afford to miss this deal! operators are standing by, get your credit card out now! Get A Clue (tm)! order now!
if this is supposed to be a new economy, how come they still want my old fashioned money?
Use HTML 4.01 STRICT DTD. Strict fixes the IE6 box model problem, which is _huge_.
Use a CSS reset to make all browsers start with a consistent base style which you then define.
Use Clearfix so you can clear floats without having to insert extra HTML (a div clear class which I see people use all the time).
Either make up your own commonly-used CSS styles, or use something pre-made like 960.
Use DD_Roundies to give IE rounded corners and give IE6 alpha transparency for PNGs. (avoid absolute positioning with this until this bug is fixed.)
Use whichever js library you want so you only have to do one set of js for all browsers.
This gets you 99% of the way to where you want to be, generally.
As a professional web application developer, I agree with the W3C on this one. Apple is quick to push HTML5 because it has some odd fascination with hating flash. HTML5, however, does not do everything that flash can do. Furthermore, there are security implications within the draft spec.
Standards need to be approved for professional applications. Sensitive sites like banks, hospitals, heck sites that store and use any personal information need to be secure. By introducing hacks and branches either within code or within the browsers themselves can lead to security vulnerabilities that are unknown. In addition, if the spec changes and browsers have implemented something based on the draft that gets changed it can have a huge impact.
For example, let's say company A writes a web application based on IE9 that uses canvas in a certain way throughout the application. The canvas spec gets changed before the HTML 5 spec is ratified. The cost to update the code to work in the new IE 10 or 11 or whatever is out at the time is a couple of hundred thousand dollars. This company will now stick with IE 9 because it works. It will be like IE6 all over again and people will never get off of the older versions. The same scenario can happen with Firefox or Chrome.
In addition, professional site development will incur extra costs across the board. More QA, more development to make all the hacks work, more security testing, more load testing, etc. So companies will a) not do the extra work and the site will be insecure, not always work, etc or b) incur the cost and pass it to consumers in some way either more ads or higher costs.
Lastly, and this is my pure developer rant here, HTML and javascript needs to be thrown out in total. Updating these dated technologies and ideas doesn't really address what the web is today. For example, it would be nice to componentize HTML structures for reuse. The technologies (including IP, HTTP, FTP, etc) need to be rewritten to be more flexibile to change with the times as oppossed to holding everything back. Modern web apps would do well with more secure implementations of languages and sandboxing the web to a specific domain in order to make it more secure. Right now flash and active x and java applets can be hacked to gain full system control. But some apps would be better served with offline storage and the ability to work offline. However, the user needs to be able to remove the items in the storage area easily. HTML local storage is being exploited TODAY with tracking information that users can not remove easily. Delete all the cookies you want, it will not delete local storage. See the following links why it needs to be standardized first: http://www.scribd.com/doc/4012693/Abusing-HTML-5-Structured-Clientside-Storage and http://arstechnica.com/tech-policy/news/2010/09/lawsuit-targets-advertiser-over-sneaky-html5-pseudo-cookies.ars. But yeah, let's just move ahead and screw the consequences.
I'm really blaming Apple here for pushing this so hard. Now all my clients are aware of HTML 5 and think it is the best thing since sliced bread. Until I educate them that it is a draft spec with large consequences. Apple is certainly making my job more difficult. And what about developers who are unaware and implement HTML 5 as per a client without educating them? Who the heck is going to pay for all of the consequences of that? Is Apple going to set aside an HTML 5 rush to implement disaster fund?
I can't find anything on the tubes about this apart from the infoworld article (and its mirrors on apparently every site ending with -world.com). We don't know what he's actually said, and/or what his reasoning was.
If he was saying something like "Don't rely on HTML5 being fully implemented just yet, because various things are subject to change", that's just understandable. He may not be saying "don't use it" - just "don't rely on it", or "don't use in a production environment that has to work for the next 20 years unchanged".
Sensationalist article, no corroboration.
I thought that one of the big factors in adoption of html5 vs the superior xhtml2 spec was that html5 was here now?
That's different from HTML4 how, exactly?
Saying your "phone ran out of batteries" is like saying your "car ran out of gas tanks".
HTML5 was going at lightning pace (relative to any W3C work) until the W3C took it over, now it's stalled to a near-halt. Screw them, at this point they're more holding back progress than increasing interoperability.
Use HTML5, just be prepared to make changes to your app if needed.
Comment of the year
It sounds like he hasn't actually read the spec, or his comments are being taken out of context (sounds about right for InfoWorld). Different parts of it are at different levels of readiness, and this is indicated in the document itself. It also has a nice indicator of which browsers support which features.
You absolutely should not use HTML 5 now, nor expect it to be stable in the next couple of years. However, there is a large subset of HTML 5 that is stable, well supported, and ready for use now. Nothing is marked as stable in the HTML 5 spec until there are (at least) two independent implementations of it and people have had time to find problems with it. Using the stable bits is fine. Using the experimental bits is a recipe for disaster.
I am TheRaven on Soylent News
The W3C is not really running the HTML 5 standards process. The reason it is taking so long is that each part of the spec must first have a well-defined need that it addresses and must then have two independent implementations before it can move to final status. It takes a while for two browsers (usually WebKit and Gecko) to implement something new, to find problems (i.e. unimplementable bits) with the draft spec, then for people to start using it and test whether it really does address the defined need.
I am TheRaven on Soylent News
First off, Canvas is fucking redundant and never should have been created in the first place. SVG has existed since 2001
Canvas and SVG are very different. Canvas uses an imperative model, SVG uses a declarative model. Your comment is like saying we don't need OpenGL because we have VRML. Some things are much easier to implement with canvas, some are much easier to implement with SVG.
I am TheRaven on Soylent News
If everyone listened to what the W3C says, we would have never had bad browsers which don't follow standards and sub standard markup everywhere on the internet.
There is a heartfelt intention among certain members of standards bodies to want to produce something that is 'right' or 'robust' or 'logically consistent' or any number of other noble qualities that characterize enduring standards. In committee, these people carry a lot of weight with sound arguments and endless examples of lesser works. They often prevent huge holes or flawed assumptions from undermining these long and complex works. Of course, they slow things down, too. The problem comes down to continuing performance. In this world, whatever is approved now will probably be partially obsolete before it can become a big enough problem to matter. In this case, as with life, perfection means being to be able to adapt as quickly as things change.
._. The original plan of WhatWG was to stabilize in 2022 . Yes. 12 years from now. But the devil is in the details and I am not 100% up to date on the W3C details. I get the feeling that the W3C is trying to be the Debian of standardization organizations though. Slow and stable.
Standard bodies always fall behind. If you count on them nothing can be done.
For the same reason, let's not abuse the 'standard-compliance' weapon either. We criticized that IE wasn't standard compliant for a long time, and that was not all for a good reason.
This is crazy - the only good reason I can think of that the W3C would say to wait is if Adobe paid somebody off to say that. There's a NEED immediately for cross-platform media that HTML5 provides today. The only other solution to this immediate need is to use Adobe Flash, and it's already a complete fail in the mobile space (including Android, which is absolutely horrible at running Flash content that's not specifically designed for use on mobile devices). They need to accelerate the finalization of the media aspects of HTML5 immediately, and call everything else HTML5.1 or HTML6, then let THAT come out in 3 years. To wait until 3 MORE iPad and iPhone hardware releases have been shipped, not to mention who knows how many Android devices, not to mention Windows Phone 7 (well, ok, we can probably safely not mention Windows Phone 7 since it has Silverlight as its focus) there's just not 3 years to wait, guys.
Maybe if manufacturers didn't flood the market with incompatible pre-n and draft-n devices then there would have been more urgency in ratifying the standard.
Almost every web developer i know was expecting the cloud of hype around html5 to evaporate, but not many of them expected it to happen so quickly.
At the end of the day this isn't a day too soon - it will probably save us devs a lot of time.
html5 {
position: indifferent;
display: eventually;
overflow: 5yrs;
padding: 3yrs;
background: #eeeeek url('http://ishtml5readyyet.com/') repeat-daily;
}
And I quickly found one killer bug: if a password element doesn't meet its constraints, it outputs the currently-entered password to the screen in plaintext
Not a bug. Password masking itself is the bug.
"Pretty much anything that isn't canvas or video isn't implemented anywhere" That statement is pretty inaccurate, many of the features in HTML5 are already available and things like WebGL will be available by year end (Firefox 4, Chrome 7). In fact, I'm already building software with WebGL which has actual users.
I think this highlights the major differences between engineers (who often design, architect, and specify systems) to developers (who implement (sometimes architect-ed :P) designs and specifications...
W3C may want us to hold off because they're worried about varying compliance between vendors on their already variadic specification.
Developers don't care, developers want to get started, want to start implementing, and want to get said specification WORKING in the real world... dig into the compatibility differences between each other from day one, to help sort things out and identify issues in the specification & implementations.
I dare say W3C is just procrastinating like most engineers.
The real reason that HTML5 is not ready yet is the nature of HTML: it is a set of instructions that must be interpreted with 100% accuracy from all involved parties, which is something extremely difficult, if not outright impossible.
If HTML was an API, then its behavior would depend on the API's implementation, which is much easier to fix than a specification: an API is a testable specification, because it's code that can run and be tested; an on-paper specification cannot be executed until it is transformed to code.
The only realistic solution is to make HTML an API for a programming language that the browser understands. In this way, the meaning of each tag and of each attribute will be completely defined by code, and thus it will be much easier to change or throw away.
Compare the time it's taking to finalize HTML5 with some past engineering challenges:
Is HTML5 really so much more complicated?
Q: What does the "B." in Benoit B. Mandelbrot stand for? A: Benoit B. Mandelbrot
I totally agree. The W3C will surely lose relevance if they don't seriously wake up. It has already begun with WHATWG's work being the basis for HTML5. W3C only holds onto an strand of credibility by their decision to eventually back HTML5.
W3C has lost sight of the things that put them into the position of a governance body. I believe that they have failed to understand that their authority comes from the widespread support of their standards, not their control over the standards. When their standards no longer have widespread support, they cease to be the standards body, just as in the case of WHATWG with HTML5.
Something similar happened with Xfree86 and X.org, and it's looking to happen with W3C in the future, of course with differing catalysts.
Looking at W3C's work over the last few years, it appears as though there is too much theoretical and not enough practical in their recent specifications (before HTML5). The resultant works have been overly complex without any significant benefits, and I use the term resultant lightly, noting that works almost never reach completed stage, which is a joke in itself.
Too many cooks in the kitchen, perhaps, and not enough oversight by people with common sense.
A large part of the difficulty is political wrangling about who gets to push their features into HTML5.
We never did settle on a standard video codec because everyone was squabbling about who got to pick.
If the W3C says don't use HTML5 yet, they blew it. :p
"Sum Ergo Cogito"
Don't forget 802.11i too. What would happen if instead of having WPA, we had to wait for the final ratification of 802.11i to get anything better than WEP?
First off, Canvas is fucking redundant and never should have been created in the first place. SVG has existed since 2001. Canvas is a crappy JavaScript-only version of Canvas with half the features stripped out. There's no reason to use canvas in the first place - just use SVG. Most browsers support it and even if they don't there's good plugin support. And it's an actual released standard.
SVG is a declarative vector graphics format, while canvas is an immediate-mode 2D graphics API for JavaScript. Using SVG for a dynamic web application is kind of ridiculous – something as simple as ctx.fillRect(x, y, w, h) to draw a rectangle would require several lines of DOM methods.
HTML5 video is completely fucking useless, because:
1. You can't stream video. (No, not a file, I mean live video.)
You can stream live video just fine, if the format and browser supports it. I've heard reports of people getting this to work just fine with Ogg. This isn't the big use-case anyway, though.
2. You can't full screen HTML 5 video. (The spec forbids this as a security flaw.)
You can full-screen HTML5 video in Firefox 3.6 and later (IIRC) via the context menu. There's no standard JavaScript API to full-screen the video yet, because no one has worked out the security implications in enough detail yet: you'd have to design it carefully so that malicious scripts can't take over the screen (maybe just by copying what Flash does). WebKit has an experimental API in that regard. Plus, you can always just make the <video> tag fill the screen and let the user hit F11 if they want – YouTube does this, and it works pretty well (although it's not ideal).
3. There is no standard format, leaving you to encode an unknown number of versions. Hell, even if you stick with just H.264, you still need to encode to multiple profiles if you want to support everything.
HTML5 video is not yet usable as the only video format anyway, since you have to support IE
4. You can't seek in videos in anything remotely near a reliable manner. You know how you can link to a certain time in a Youtube video? Not possible in HTML5.
It's perfectly possible. YouTube has some JavaScript that will automatically seek the Flash video based on the fragment, and they could do exactly the same for HTML5 video. Seeking is as simple as setting video.currentTime. YouTube already uses this attribute to make its custom seek bar work.
5. You can't switch to lower/higher-bandwidth versions while the video is playing.
Of course you can. Just record currentTime, change the src, and then set the new currentTime. This is all trivial from JavaScript, much easier for a typical web developer than trying to communicate with Flash.
The HTML5 spec as is stands today is useless. The features it does offer above HTML4 already exist and are handled better via existing specs or plugins. Pretty much anything that isn't canvas or video isn't implemented anywhere, making the features entirely useless instead of done better elsewhere.
HTML5 is a vast spec that includes a huge number of improvements and refinements. The HTML5 parsing algorithm, for instance, will make a lot of weird websites work exactly the same across browsers when formerly they all behaved a bit differently – it's enabled by default in Firefox 4, and experimentally available for WebKit. This and many other clarifications are giving each new browser release more opportunity to be consistent with other browsers.
Canvas, video, and audio are not yet as reliable, widely available, or full-featured as their plugin-based equivalents, but they're suitable at least as fallbacks where the plugins aren't available (iOS, sometimes Linux). SVG and MathML embe
MediaWiki developer, Total War Center sysadmin
._. The original plan of WhatWG was to stabilize in 2022 . Yes. 12 years from now. But the devil is in the details and I am not 100% up to date on the W3C details. I get the feeling that the W3C is trying to be the Debian of standardization organizations though. Slow and stable.
The WHATWG never planned to stabilize in 2022. Ian Hickson, the editor of HTML5, predicted that it would take until 2022 to reach the equivalent of W3C Recommendation status: where every single feature has at least two independent implementations, plus a full test suite (which would require hundreds of thousands if not millions of tests for such a large spec). The spec becomes basically stable at the Candidate Recommendation stage, which Ian originally predicted to be 2012 (and that looks to be plausible so far). You can read more about this in the WHATWG FAQ.
MediaWiki developer, Total War Center sysadmin
In a work placement year I did the major electronics company had a couple of staff on the board for a standard -- it involved lots of XML and internet stuff, so it's not far from the kind of thing W3C does.
What took so long was working out whether technology that required infringing on each company's software patents should be "required" or "optional". In the end, Sony, Philips, Panasonic etc decided to pool their patents (their stuff is "required"), the patent troll companies were excluded by the big company's votes (so the neat technology they'd patented was "optional" or left out entirely) and the couple of small businesses or individuals who'd already got products running using the draft spec were ignored.
The W3C has a Patent Policy requiring that all its specifications be implementable royalty-free, so this is not an issue. No spec can be covered by any known patents at all unless those are irrevocably licensed royalty-free. I've heard this kind of bickering can suck up time at less enlightened standards organizations, though, which believe in unreasonable stuff like RAND (= let everyone on the standards committee rake in money by making sure some patent of theirs is required).
MediaWiki developer, Total War Center sysadmin
I wrote a blog entry on this subject for those who are interested: http://www.w3.org/QA/2010/10/html5_the_jewel_in_the_open_we.html -- Philippe Le Hegaret