The book itself proceeds in a very linear fashion, and evidently has been written in a course style--starting with the basics, and each chapter building on the last. In this, it works nicely. It starts off with simple HTML and table structures, and moves into the simplest of scripting languages (JavaScript, natch)--spending five chapters and various exercises to teach the reader the basics of programming and programming techniques. Variables, arrays, input methodologies, functions, and simple object-oriented concepts all are covered clearly and concisely in various small programs. After JavaScript has been explained thoroughly, the book moves on to the more global performance-enhancing suite of using "Dynamic HTML"; then, it covers multimedia, and ends up on the heavy-hitting topics of client-side scripting, databases, and e-commerce. When you finish, you'll have under your belt an industrial-strength overview and understanding of Web programming issues.
Every chapter has the same strength and weakness; each subtopic is covered meticulously with a brief, well-written exercise--but only one. If that particular exercise doesn't make it clear to you (because the book uses each chapter as a stepping stone to a more advanced topic), you could misunderstand large sections of the rest of the book--rather like missing a class in the middle of a calculus course. Thankfully, Deitel's eye for solid examples and good writing keeps the danger of this disaster to a minimum, but the singleton nature of the samples means that you might have to do a lot of outside exercises for maximum reinforcement and retention.
There are other subtle difficulties, too. For one thing, the book has in-depth coverage of Microsoft Visual InterDev in a chapter, but does not provide a trial copy of InterDev--mentioning, in an embarrassed side note, that InterDev only comes with the classroom edition. The end-of-chapter exercises are left without answers--obviously to be given later in the instructor's manual, and leaving you to research whether you were right or not. Above all, this book definitely is aimed at the programmer, and not the designer or global Web master. Scant coverage is given to such critical design-worthy topics as page size, differences between GIF and JPEG, differences in browser interpretation, and advanced use of tables to provide complex graphical interfaces. If you want extremely functional pages, this is the place to go--but you'll need another book to help you design beautiful and quick-loading pages.
The CD-ROM is somewhat disappointing; it's mostly an expanded version of the book, transported to HTML format. You'll find code samples, which are always helpful, but no examples of live Web pages that have the code already programmed in. The questions in the end-of-chapter live examinations are ridiculously easy ("Primary key fields may not contain duplicate values: T/F"). There's a lot of content here, and this CD-ROM would be ideal for business and mass-training purposes--where an easily portable and wide-ranging format is necessary--but it might be a bit of a disappointment for the individual user.
In short, this is a fine package for trainers, teachers, and individuals who like classroom learning. It presents the core topics well, will give you a deep understanding of the issues, and is as comprehensive a book as you could hope for--given that it covers such an incredibly wide range of topics. --William Steinmetz