There was a good intro to this post at one point in time, but thanks to a Safari caching bug when using Movable Type and comment spam, it’s long gone. Hopefully the rest of this will make sense without the introduction. Oh well.
Now, about forward compatibility. The recent flap about the XHTML 2.0 draft says a lot about this. Things are deprecated to the point that no site built using valid 1.0 will work if I switch doctypes? So what am I gaining by supporting 1.0 now?
Sites from 5 years ago still work in today’s browsers (aside from those that took advantage of browser–specific quirks back in the day) so why change coding practices? What works is what matters, isn’t it? It is, and it isn’t. It is because it is what we’re used to. We know the quirks, we can code around them — the path of least resistance. It isn’t, because by now we all now how much more elegant a good CSS–based layout can be.
CSS hacks are what’s killing the argument. The fact that the default font size for each browser is different and that box models are broken for a large percentage of users is why people used to the four horsemen of the body tag, marginwidth and so forth, don’t exactly see the grass as being greener. Can you blame them?
The bottom line is that people use what works. And right now, both work, with their own quirks. Some stay in the past, others are looking to the future. We’ve started seeing the shift from the one to the other, and this will continue, that’s not in question. So the question you have to ask yourself is if you’re going to be stuck behind, a relic of the dot–com boom, or if you’re going to evolve with the rest of us.
It’s been a slow transition. But it’s a transition, and we are moving forward.