The Virtual Bookcase Reviews of 'Internet & World Wide Web How to Program (1st Edition)':
Reviewer amazon.com wrote:A solid jack-of-all-trades reference, this book-and-browser package comes straight from the school of college textbooks--and your outlook will determine whether it's for you. If you find helpful the terse writing, heavy reliance on spot illustrations, and strict end-of-chapter exercises that characterize textbooks, this package will be invaluable to you--it provides a lot of content, and is a perfect set for the corporate trainer or teacher. But, if you're looking for a chatty style, in-depth coverage on specific topics, or lots of asides on how things work in the real world, you might want to look elsewhere. 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 --This text refers to the Paperback edition.
Reviewer Rob Slade wrote:
Deitel and Deitel have made a name for themselves, and obtained a
commanding presence in the programming textbook market. Their books
are generally well structured, in terms of advancing through the
material in such a way that the student is able to progressively add
to his or her arsenal of skills. Unfortunately, the books are not
always as careful about the specific contents of the text.
This material is rather heavily dependent upon Microsoft products.
The book comes with Internet Explorer and FrontPage Express on the
CD-ROM, and examples use the Microsoft versions. This is acceptable
in a work which is, after all, intended to take students through a
course of study and wants to minimize the variations in environment.
However, while there is mention of the fact that browsers, and even
versions of the scripting languages, may vary, this does not appear to
be pointed out in practice through the book.
Chapters one and two are very simplistic introductions first to
computers in general, and then to the Internet and World Wide Web.
The presentation of HTML (HyperText Markup Language) that is given in
chapters three and four is clear enough for the basic operations, but
emphasizes stylistic elements over functional ones. Complications are
brushed aside, as when forms are proposed with a not-yet-covered Perl
script, rather than the more accessible mailto function that students
could use right away. Three commercial products are promoted in
chapters five to seven.
Chapter eight begins instruction in JavaScript programming.
Unfortunately, some important points are mentioned tersely, or not at
all. Having seen a number of examples of HTML in the previous
material, we are suddenly confronted with a DOCTYPE statement, and no
idea of why or how it may be needed. There is a brief reference to
the fact that these initial scripts are being created in document
headers and a promise that inline scripts will be covered later, but
no explanation or specifics. Server side programming is not reported.
Again, formatting of material is presented earlier, and in more
detail, than more substantive commands like window.prompt and
parseInt. The material is definitely presented in a field independent
manner, which makes it easy to get started producing programs, but
quite difficult to understand what is actually going on. For example,
although the terms are used correctly, there is no discussion of the
differences between keywords, object, methods, and functions.
Therefore, novice readers may misunderstand, for example, the
assertion that keywords never have capital letters since built in
functions quite clearly do. Still, the text does not assume any prior
familiarity with programming, and touches on, albeit lightly, a number
of basic and important concepts. Chapters nine and ten deal with
control structures. (Occasionally the book disregards its own advice:
while earlier material stressed the importance of aligning indentation
for nested statements, the sample code for labeled breaks is very
confusing.) Functions are illustrated in chapter eleven. Once again
a limitation in prior material presents a problem: the ability of a
form to call a script as action is passed over too briefly. (There is
also a typo in the one reference to help in chapter fourteen: it's in
sixteen.) Chapter twelve takes a fairly standard look at arrays. The
talk of objects in chapter thirteen may be misleading: it is only
specific JavaScript object methods (commands or operations) that are
discussed, and not object-oriented programming as such. It should
also be noted that, despite the number of topics covered, this section
overall is really only an introduction to JavaScript. Variations
between JavaScript 1.0, 1.1, 1.2, ECMAscript, and Microsoft's JScript
get such scant mention that one might as well say that they are not
covered at all. Internals of the language, and inconsistencies in
behaviour of variables and operators, are not presented either.
Readers will be able to start generating simple "active" content on
Web pages, but only at a level that could be duplicated by other
methods.
Dynamic HTML (aka DHTML) starts with Cascading Style Sheets (CSS) in
chapter fourteen. The notion of the Object Model, in fifteen, may be
confusing. It begins with a reference to changing a P element, and is
the first mention of a paragraph element having any attributes.
(Understanding of the point is not assisted by the very terse
introduction of the P element back in chapter three, and the
inconsistent use of the closing tag.) There is also no discussion of
the use of more basic technologies to accomplish, for example, timed
changing of pages. Chapter sixteen's promised Event Model really only
lists the events that can be used to trigger an action. Filters
likewise are a list of graphic effects in chapter seventeen. Chapters
eighteen to twenty describe some ActiveX controls for data, graphics,
and animation. A variety of multimedia (and other) programs are
suggested in chapter twenty one.
Chapter twenty two introduces VBScript very briefly, starting with the
differences between JavaScript and VBScript, looking at some string
functions, and then wandering into a confusing look at
object-orientation. Electronic commerce and security is covered
mostly in terms of press releases in chapter twenty three. Details
are few: the discussion of shopping carts doesn't mention cookies, the
secion on auctions doesn't mention fraud, and Authenticode is stated
to be reliable. Chapter twenty four gives detailed instructions on
two Microsoft Web servers, along with a brief mention of those others
that have the majority of the market. Database access is discussed in
chapter twenty five. The material on Active Server Pages (ASP), in
chapter twenty six, concentrates on example scripts, and does not
explain either the basic concepts or the security weaknesses of the
system. There is a rather slapdash introduction to Perl, and a brief
mention of CGI (Common Gateway Interface) in chapter twenty seven.
Chapter twenty eight looks at XML (Extensible Markup Language) but
even if you know SGML it doesn't explain much. Some samples of Java
servlets and cookies are included in chapter twenty nine.
The primary target audience for this book is college courses or self-
study for programmers. The questions, both self-review and other
exercises) are therefore fairly important to the work. Unfortunately,
the practice sessions are weak. The questions are, for the most part,
simplistic and serve primarily to determine whether the student has
read the material, not whether it has been understood at any depth.
Still, these may be useful as review, as are the collections of tips
and common errors at the end of each chapter.
It is also disappointing to find that the book has no command
reference for the programming sections, although there are summary
lists in various sections.
This book does touch on a number of Web programming topics, although
touch seems to be the operative word. Instructors would be well
advised to go through the material for themselves, first, and be
certain they have identified the traps and errors.
copyright Robert M. Slade, 2001
Add my review for Internet & World Wide Web How to Program (1st Edition)