What’s in a name?

Christian Heilmann has written a detailed article entitled From DHTML to DOM Scripting. It’s an in-depth explanation of why the term DHTML is being ditched in favour of the phrase DOM Scripting. It’s well worth reading.

My own take on DHTML is this: if your scripts use proprietary Document Object Models like document.all or document.layers then what you’ve got is DHTML. If you’re using the W3C DOM, then I’d call it DOM Scripting.

Now, whenever definitions and semantics are being discussed, there are inevitable disagreements. Mark Wubben is none too pleased with the lambasting that DHTML is receiving. As he points out, the real issue is code quality: there’s nothing to stop you writing good DHTML (or bad DOM Scripting, for that matter). He has a point, but it’s also true that the majority of old-school DHTML is pretty nasty. Sometimes it’s necessary to draw a line in the sand and declare that a term has too many negative connotations. This is especially true with a term as confusing as DHTML which sounds like another flavour of HTML.

So does it really matter what we call it when we’re writing scripts to manipulate web pages using JavaScript? In the greater scheme of things, of course not. In the short term, it really helps to have a short word or phrase to denote something larger. That’s why the term Ajax has proved enormously popular. It doesn’t describe anything new, but it encapsulates a concept that would otherwise require some verbose explanation.

I think the most important part of Christian’s treatise is in the accompanying blog post, wherein he states “Of course, you can disagree”.

Posted by Jeremy on Tuesday, April 4th, 2006 at 8:41pm


I’m in the process of updating "Teach Yourself JavaScript in 24 Hours" and I’m of two minds about this: First of all, I agree completely that DHTML started out meaning something horrid (two incompatible somethings horrid, to be precise) and that there are much better ways to do things now.

On the other hand, "DHTML" has been the term for "JavaScript that does something more dynamic than just playing with forms" for a while, and the 2002 edition of the book called that "DHTML" despite using the W3C DOM exclusively.

At the moment, we still have "DHTML" in the outline in a few places, although the chapters in question also talk about DOM Scripting (and about best practices and unobtrusiveness.)

Then again, a quick Google search for "DHTML" suggests that I should probably eliminate the term altogether. Search engines that are obsessed with old, "authoritative" sites are one very good reason for ditching the old terms. I’d much rather my readers went to the sites that come up when I search for "DOM Scripting"…

# Posted by Michael Moncur on Wednesday, April 5th, 2006 at 1:44am

Michael, that last point you make is a very important one. Google never seems to forget. You’re right: there are a lot of bad resources out there that are discoverable by googling for "DHTML". For that reason alone, it seems like a good idea to abandon the term and use something else for modern, standards-based scripting.

# Posted by Jeremy Keith on Wednesday, April 5th, 2006 at 9:18am

Yeah, I think Google talked me into it. I’m going to relegate "DHTML" to a sidebar when I edit those chapters…

# Posted by Michael Moncur on Wednesday, April 5th, 2006 at 10:14am

Sorry. Comments are closed.

April 2006

Recommended Reading

XML Subscribe

Grab the RSS feed for this blog.

JavaScript API

Grab the RSS feed of comments for this entry.