Yummy, Yummy Tag Soup
A while back, Evan Goer said of this blog that
Jacques Distler may well be the only person on the planet who understands the XHTML 1 specification and uses it properly.
While flattering, this is surely hyperbole. There are plenty who understand XHTML much better than I. And I don’t believe that people can’t do XHTML properly. Most people simply don’t need XHTML. So there’s no incentive for them to do it right.
If they use it anyway, it’s probably a matter of Geek-chic. Slapping an XHTML DOCTYPE on your weblog is like wearing sunglasses at night. It looks cool! But isn’t necessarily very functional.
Anyway, true to his scientific training, Evan decided to test the quality of the XHTML “in the wild”. He decided to focus on the weblogs of the “Alpha Geeks” — the programmers, web-designers, and web-standards advocates — who are, surely, the most hip, Standards-savvy, knowledgeable folks around. If anyone can do XHTML right, they can.
The results of his survey of 119 Alpha Geek XHTML websites was pretty dismal. Only one site passed his 3 tests (he decided not to apply his 4th, somewhat subjective, “Why Are You Doing This?” test) and a startling 74% didn’t even have a main-page which validated.
So, what should we conclude? Wearing sunglasses at night is not only useless, it can be downright dangerous.
Posted by distler at April 29, 2003 10:48 AM
TrackBack URL for this Entry: http://golem.ph.utexas.edu/cgi-bin/MT-3.0/dxy-tb.fcgi/150
jhttp is not an IANA-registered protocol
Did you spike the “survey” link with that j before the protocol for effect?
Why XHTML
I wonder how long it will be before those of us with comments enabled think twice about linking to a weblog post without comments, knowing that we will become the comment host for that entry, for our readers.
You are certainly the only person I know of with a evident need for XHTML. However, there are also uses for XHTML that aren’t apparent at first glance. I switched over because I neeeded to do some self-scraping, and doing it with an XML parser seemed saner than using a huge chain of regexes or writing my own SGML parser.
I’d also quibble with his third test: the spec doesn’t say MUST use application/xhtml+xml, it says SHOULD. The word the isn’t normative, SHOULD is. MUST means must, SHOULD means should know why not and what it will break. I don’t use application/xhtml+xml because the gains are minimal, and since I’m not using a real XHTML tool to produce my pages, there’s the risk of delivering Mozilla’s XML error page between the time that I save a screwed up entry, or someone leaves a comment that gets past Sanitize, and the time I see it and fix it. By delivering XHTML as text/html, I get the safety net of browser error handling while still getting the benefits of XML for myself. Hixie’s understandably focused on browsers and nothing but, but that’s not why I need or want XHTML.
Re: Yummy, Yummy Tag Soup
On “spiking the survey”: No, Jacques’s site was not included. :)
As for the “SHOULD” versus “MUST” – yup, I recognize that. And I understand the need to serve up pages as text/html to XHTML-unaware browsers. That’s why Test #3 simply checks whether you’re serving up the right MIME-type to a XHTML-aware agent, namely Mozilla. My feeling is that if you’re advanced enough to use XHTML, you’re advanced enough to add a couple of lines to your .htaccess file.
But okay, yes – I suppose one can quibble with test #3. There is a lot of confusion out there on this issue, and the unhappy state of browser compliance is not helping matters. Let’s say for the sake of argument that I completely drop test #3. In that case, what Jacques says still stands: A) even on pure validation, compliance is pretty miserable (about 10%, among the Alpha Geeks) and B) the point of my exercise is really to look ahead to XHTML2, where the “SHOULD” becomes a “MUST”. At least badly-formed, improperly MIME-typed XHTML1 can fall back into tag-soup HTML. XHTML2 is when it starts getting scary.
Read the post
In brief: bread machine edition
Weblog: dive into mark
Excerpt: I didn't know yeast ever expired. I thought it was like Twinkies, and fruitcake.
Tracked: May 15, 2003 5:06 PM
jhttp is not an IANA-registered protocol
Did you spike the “survey” link with that j before the protocol for effect?