My friend Scott now works for the #2 search engine. He definitely earned the privilege to be called for the job.
Recently, he had the luxury of having Eric Meyer and Molly Holzschlag visit to give a little talk on CSS2. (Things that will probably never happen here, sadly.)
Anyway, Eric made a comment at the end that Scott took a strong liking to:
If you’re writing HTML like Tim Berners-Lee in 1993, you’re doing a good job.
I understand where that comment is coming from. Back in 1993, the current standard for HTML was 1.0 (2.0 was only an Internet Draft at the time). That meant that the HTML was exceedingly simple: nothing fancier than the structural elements we needed to build a page. (Tables weren’t spec’d until HTML 3.2.)
For the basis of the quote (at least as I understand it, not having actually spoken with Eric Meyer about this), I completely see the need. Keep your (X)HTML simple and don’t try to use elements for something they weren’t intended for.
That said, I have an issue with this quote: It’s using a standard that wasn’t strict on syntax. The official standard, HTML 1.0, allowed you to create HTML documents that had no closing tags. Though HTML 2.0 took it a step further and listed the closing tags in many cases, it was never really that clear. (I didn’t get into the habit until the mid-90s, myself.)
Why do I have a problem with that? Eric’s not suggesting that people should write malformed code — that much I know without having to talk to him. However, people might construe that malformed code is okay. It isn’t.
We’re dealing with a technology that has allowed us to move to strongly define the markup language. The standard I try to follow XHTML 1.0 (only because not all browsers support XHTML 1.1), and I’m waiting anxiously for XHTML 2.0) is strict, and blissfully so. Not following that standard leads to breakdown in layouts, and in large documents, more work finding the errors. W3C’s validator can only do so much.
Some find strictness hard, because it does require discipline. Once you’ve gotten into the habit, though, is the discipline that bad? If it makes your life easier, if you can code faster as a result (less debugging), and if support becomes less painful, shouldn’t that be a good thing?
Personally, I’d rather write XHTML like it’s 2005 (or 2006, depending on when XHTML 2.0 comes out).