DHTML Utopia (Book review)

No, this book is not from 1999, despite the DHTML in the title. It was released last year, and the JavaScript techniques it contains have very little in common with the really bad scripting that was the norm around the turn of the century. Well, the end result of some of the techniques is similar (drag and drop, form validation, animated menus), but this time the effects are achieved through modern DOM scripting.

Stuart Langridge’s DHTML Utopia: Modern Web Design Using JavaScript & DOM has many similarities to Jeremy Keith’s DOM Scripting (stay tuned for a review), but it is more suited for developers/programmers than designers. I really think you need to have quite a bit of JavaScript experience to make the most out of DHTML Utopia since the code examples do get a bit complicated. An alternative would be to read DOM Scripting first and then return to this book.

DHTML Utopia contains ten chapters which build on one another. I recommend reading the whole book instead of skipping chapters, as there are some concepts (like object literals) that are used in the rest of the book once they have been explained. If you miss reading the explanation you could have a hard time understanding the following chapters.

The first few chapters deal with the basic requirements of DOM scripting, and explain the essentials of HTML, CSS, and JavaScript, the DOM, DOM events, and feature sniffing. As the book’s title contains “Modern Web Design”, these chapters explain why valid and well-structured HTML and CSS are important and how you can hook your scripts to events instead of sprinkling inline scripts throughout your markup. Speaking of markup, the book uses HTML 4.01 Strict for all examples. The book’s introduction dedicates a couple of pages to explaining why this choice (which I agree with) was made.

After the basics have been explained, the next few chapters move on to animation, form validation, and my biggest complaint about this book: the multilevel animated dropdown menu. In my opinion it doesn’t matter how much modern, unobtrusive, gracefully degrading DOM scripting you use - a multilevel animated dropdown menu is still bad usability. I really would have liked to see an example more in line with modern web design.

The final chapters describe pretty advanced concepts such as remote scripting, AJAX, server communication, and XPath. This section is probably of most use to people who work on web applications rather than informational websites. The techniques - just like the techniques in the rest of the book - are explained in a step-by-step way that makes them understandable, so even if web applications are not your thing I recommend reading the entire book.

All in all I think DHTML Utopia is a very helpful book for anyone looking to improve their DOM scripting skills.

As with all SitePoint books, there are sample chapters you can download to find out if the book is right for you.

DHTML Utopia: Modern Web Design Using JavaScript & DOM
Author: Stuart Langridge
ISBN: 0957921896

Posted on August 18, 2006 in Reviews

Comments

  1. I’ve been umming and ahhing about whether I should buy this book for a whiel now. Thanks for taking the time to write this review Roger.

  2. It’s indeed a very good book even for the Javascript novice. I just finished reading Domscripting and am now working through this one. If you need more info you could always supplement this with a Javascript reference guide like the one from O’Reilly. I have found that being familiar with php helps a lot in understanding Javascript as well…

  3. Would you recommend this book versus ‘DOM Scripting’ by Jeremy Keith? I am looking for some good books related to unobtrusive javascript - one that shows good practices and examples. I have looked through the sample chapters of this book and it looks nice from what I have seen. Just wanted to get some more feedback on some more good books.

    Thanks!

  4. August 18, 2006 by Roger Johansson (Author comment)

    Nate: It’s hard to recommend one over the other. It depends a bit on what you are looking for. Get both if possible.

  5. Roger, I am looking for best techniques and practices on using unobtrusive javascript. I understand javascript and have used it in the past - but not in an accessible manner (this was years ago). Now I am looking for some good reading on the topic and slowly implementing certain techniques where it would be beneficial and degrade gracefully. I like all of my sites to validate strict, so I need to go with this approach, I just don’t have that much experience with it.

    Also, you have read my mind. I just went to amazon and am going to buy them bundled together. I read sample chapters from both books and they both look great!

    Thanks for the help and review…

  6. I think it is relevant to mention that this book by Stuart Langridge is probably the very first to teach “DOM-scripting” (“unobtrusive scripting”, “graceful degradation”, “W3C DOM”, etc). It was written before the phrase was coined, however, and before the phrase AJAX was coined as well, but it still covers XmlHttpRequest.

    @Nate K: Jeremy’s book is simpler and easier to read. Probably a better introduction to the subject. This one is more in-depth and requires that one already grasps some fundamentals of JavaScript.

  7. RE: Lars Thanks for the information! I went to Borders this weekend and picked both off the shelf to check them out. I am not new to JavaScript (I am a programmer at heart…) - I just never found a use for it where it wouldnt break other things - so I avoided it for a while. I read the first 4 chapters of DOM Scripting, and the first 3 of DHTML Utopia. I would have read them all but I had a pregnant wife ready to go home. hehe. So, when I got home I got on Amazon and bought them both. They should be here Wednesday so I can finish them. I am very impressed with both of them so far.

    Thanks for the tips guys…

  8. Roger: thanks for the review! It’s always nice to see I was doing something roughly right. Personally, I don’t agree that a multi-level menu is always and forever a bad usability choice, although I agree that I probably should have stressed more that there are other ways around the problem.

    Nate: obviously DHTML Utopia is a much better book, and its author is both cleverer and more handsome, so I’d personally recommend it. :-)

    Actually, Roger’s hit the nail on the head; the two books complement each other quite well (and not deliberately so; it just worked out that way). Jeremy’s book is a good introduction, where mine assumes that you’re a bit more of a programmer but goes further on. Buy them both, and Jeremy and I will share the beers!

  9. RE: Stuart I am glad to hear that you are more cleverer and more handsome. hehe. Those are definitely weighing factors in my decision.

    Tomorrow morning I will have the book in my hands, and I am very anxious to finish what I have already started! Thanks for the great resource.

  10. Hey. A few months a ago, I won this book, but I haven’t had the time yet to read it. There are many other books to read firts. So I sell my book at Amazon. The first one is mine.

Comments are disabled for this post (read why), but if you have spotted an error or have additional info that you think should be in this post, feel free to contact me.