BKLRNVBS.RVW 20000605 "Learning VBScript", Paul Lomax, 1997, 1-56592-247-6, U$39.95/C$56.95 %A Paul Lomax %C 103 Morris Street, Suite A, Sebastopol, CA 95472 %D 1997 %G 1-56592-247-6 %I O'Reilly & Associates, Inc. %O U$39.95/C$56.95 800-998-9938 fax: 707-829-0104 nuts@ora.com %P 616 p. + CD-ROM %T "Learning VBScript" The preface suggests that this book is aimed at all of 1) Web page creators with no programming background, 2) Visual Basic programmers, and 3) hobbyists. The author has, in spite of the diversity of those groups, done a pretty fair job. Chapter one is basically a promotional piece for VBScript, sticking to the Microsoft party line. It is slow in getting started, but does present some solid reasoning, and demonstrates some functions of the language. Chapter two, rather ironically, talks about "open" environments in terms of the very closed Windows system. These two sections provide a general introduction to VBScript, but in a random and limited fashion. Chapter three begins the real meat of the book with a good introduction to programming VBScript. (It occasionally stumbles, as in the section dealing with arrays versus arrays of variants.) The explanation of flow and control structures, in chapter four, suffers from an overdose of pseudocode and a lack of realistic examples. Most of the material on controlling the browser, in chapter five, lists the window object hierarchy. Again the examples could be better, and this lack of short, clear sample code turns out to be an overall shortcoming of the book. An instance of this poor exegesis is in the review of the use of the document.write method to write into an existing page, or replace it with a new one. Neither page 204, nor the later content in chapter thirteen, adequately explain the situation. The element object, dealing mostly with form elements, is discussed in chapter six. Chapter seven looks at the ActiveX Control Pad. Despite the name, the HTML Layout Control, in chapter eight, is also ActiveX, and it gets used in a brief example in chapter nine. Chapter ten reviews date and time functions. Another example application, in chapter eleven, uses mouse events for link context explanations. Creating simple image maps is covered in chapter twelve. Chapter thirteen is supposed to be about dynamic Web pages, but does not explain itself clearly. Validation of form input emphasizes string operations in chapter fourteen. Chapter fifteen has some good points on debugging, although it starts with an example from which the error has been removed. (The error is present in the sample code on the disk.) A shopping cart application (of course) is provided in chapter sixteen. Chapter seventeen reviews the determination of browsers, although there is not much on compatibility. Appendix A is a decent language reference and Appendix E looks briefly at server- side scripting. In spite of the shortcomings of the book, it provides a decent introduction to VBScript, even for those without a programming background. For those who do know Visual Basic, Lomax points out differences and limitations. Hobbyists will probably want more detail on some topics, but they can start from the material in the text and then experiment. copyright Robert M. Slade, 2000 BKLRNVBS.RVW 20000605