23 Feb 2005
Retro Markup: Just Say No, Kids
If you’re involved in web development you’ll have seen some hype about XHTML and how it’s the coolest and best thing since frozen sliced bread. But there’s also been something of a backlash, starting a few years ago and steadily (g)rumbling onwards.
I think he’s right to be skeptical, but wrong to use HTML. There are some important things I rarely see mentioned when this kind of topic is discussed.
I’ve trained a few people in markup and advanced CSS, and teaching someone XHTML is easier and more productive. It’s consistent, both within itself and with XML. If someone already knows some XML they’ll have a head start with XHTML; if they don’t then learning XHTML will start them off with XML. Don’t waste your time or someone else’s by learning/teaching HTML 4.
Having clear and simple quality targets helps developers, and XHTML is a clearer target than HTML, which allows all sorts of tags to be omitted or left open. I know I find it harder to bother supporting any standard that seems vague and illogical.
True XHTML (with its own MIME type, different browser capabilities, and refusal to display invalid pages) can be hard work and can’t be embraced fully at present (due to lack of widespread browser support), but there’s always been a simple, pragmatic option in the form of XHTML 1.0 Transitional. This lets you use the XML syntax but still have access to some older tags and attributes while sticking with the safe HTML MIME type.
Many dismiss this as pointless or harmful, but it’s a valuable stepping stone for the majority of developers and still offers a clearer quality target. You can argue that XHTML 1.0 Transitional is no better than HTML 4.01, but you can only claim it’s worse by disregarding its reason for existing (to aid the transition).
Bad developers want money, respect, and a big monitor. Good developers want all that but also have a burning desire to produce good work and improve their skills. Using more modern techniques avoids stagnation.
I switched over to XHTML 1.0 Transitional in 2000, and encouraged my employers to make it standard practice shortly afterwards, purely for job satisfaction. There was absolutely no good technical reason to do so, and no short-term benefit to the business. It proved to be the right thing to do for developers, and later gave the business an important head start in producing sites to government standards and dealing with accessibility issues.
XHTML may be overhyped, but has already proved to be far from pointless. Don’t hold back your skills on the advice on purist skeptics.