Cover V05, I07


Books: A User's Report

Elizabeth Zinkann

This month has been a challenging and busy one, with new UNIX books and Java, CGI, and HTML books. I reviewed the HTML Sourcebook: A Complete Guide to HTML 3.0 Second Edition by Ian S. Graham (John Wiley & Sons, Inc.), Integrating UNIX and PC Network Operating Systems by William Lund (Prentice Hall), CGI Programming on the World Wide Web by Shishir Gundavaram (O'Reilly & Associates, Inc.), The Simple Book: An Introduction to Networking Management, Revised Second Edition by Marshall T. Rose (Prentice Hall), HTML: The Definitive Guide by Chuck Musciano and Bill Kennedy (OíReilly & Associates, Inc.), Practical DCE Programming by Charles Knouse (Hewlett-Packard Professional Books, Prentice Hall), UNIX System V Release 4: An Introduction, Second Edition by Kenneth H. Rosen, Richard R. Rosinski, James M. Farber, and Douglas A. Host (Osborne McGraw-Hill), and Hooked on Java Creating Hot Web Sites with Java Applets by Arthur van Hoff, Sami Shaio, and Orca Starbuck (Addison-Wesley). I hope that you enjoy the reviews and hope they assist you.

Correction: In the May issue, I reviewed Actually Useful Internet Security Techniques by Larry J. Hughes, Jr. (New Riders, ISBN 1-56205-508-9 $32.00) I incorrectly renamed it Actually Useful Internet Security Measures. I apologize to Mr. Hughes and New Riders Press.

The HTML Sourcebook: A Complete Guide to HTML 3.0
Second Edition
by Ian S. Graham
John Wiley & Sons, Inc.
ISBN 0-471-14242-5

Since its creation, the World Wide Web (WWW) has provided users with information and entertainment. For some users, Web surfing itself has become a hobby. Professional Webmasters design, create, and maintain sites, and if a user wants a private home page, there are services, utilities, and documentation at his or her disposal. HTML (HyperText Markup Language) determines the appearance of the text on the WWW page. The first edition of The HTML Sourcebook included an introduction to HTML with examples: HTML In Detail, Uniform Resource Locators (URLs), HTTP and the Common Gateway Interface, HTML and CGI Tools, HTML Editors and Document Translations, Web Browsers and Helper Applications, HTTP Servers and Server Utilities, and Real World Examples.

In the second edition, Graham expanded and reorganized the material significantly. The Common Gateway Interface (CGI) and the HTTP (HyperText Transfer Protocol) both merit individual chapters, and more examples are featured throughout the book. The new version contains: Introduction to HTML and Document Design, The Design of HTML Document Collections, HTML in Detail, The Next Generation HTML 3, Stylesheets and Applets, URLs, HTTP, Communication with the Common Gateway Interface, CGI Programs and Tools, HTML and Web Utilities and Tools, Web Developer Resources, and Real-World Examples. Graham discusses the design of both single pages and Web collections, details HTML syntax, and illustrates how to add images, movies, and sound elements. He demonstrates how to convert existing text from other formats into an HTML document.

The HTML Sourcebook: A Guide to HTML 3.0 provides an excellent reference. It should appeal to both beginning and experienced Web developers because it presents the language syntax, corresponding explanation examples, and recommended uses for each element. Graham also indicates current trends and future developments, noting which features are currently universally accepted. The references listing Web sites at the end of most of the chapters are extremely helpful, and the second edition's improved format makes it easier to read. The second edition of The HTML Sourcebook is an excellent reference and guide for both casual and professional Web developers.

Integrating UNIX and PC Network Operating Systems
by William Lund
Prentice Hall
ISBN 0-13-207374-9

The UNIX system administrator often supports more than one type of operating system. Combining them into a single network often leads to disappointment and frustration if the administrator is not aware of potential interfacing difficulties. Lund presents an overview of three UNIX-based systems: Pacer Share, Netware for UNIXWare, and LAN Manager for UNIX. He begins with a brief examination of UNIX and how an additional operating system works with UNIX. The author then investigates each of the three network operating systems, their respective installations, configuration, and features. Lund illustrates how the network operating systems share files and other resources, identifies some differences between Ethernet and IEEE 802.3, and concludes with some aspects to consider when planning a similar implementation.

Lund addresses these concepts from the systems analystís viewpoint. Integrating UNIX and PC Network Operating Systems illustrates topics that should be considered before purchasing software. Lund assumes that the system administrator possesses all of the manuals for each system and does not repeat that information. The book's major strength appears in its many figures and diagrams. It is a good reference source for management prior to any installation or purchase, highlights potential advantages and drawbacks to each setup, and furnishes a good general research source, and basic introduction to the design of these implementations. However, this book does not provide enough details for a system administratorís use.

CGI Programming on the World Wide Web
by Shishir Gundavaram
O'Reilly & Associates, Inc.
ISBN 1-56592-168-2

Part of the fascination of Web sites involves the ability to present dynamic data immediately. This information can be simple (i.e., a counter, date, or an average) or complex (i.e., a cartoon, selected painting, or a greeting card.) The CGI enables Web developers to implement all these features. A user accesses a Web site and either provides or requests information. The WWW browser forwards either the responses or the queries to the server, which calls the CGI. In turn, the CGI runs the appropriate program and returns the requested information to the server, which releases it to the user. The WWW gateways are essentially programs or scripts (in this case, the terms are interchangeable) written in one of several languages. Gundavaram primarily uses Perl and occasionally Tcl. However, he notes the other possibilities (Applescript, C/C++, C shell, and Visual Basic) and presents their respective advantages and disadvantages. For the non-Perl reader, he describes the examples thoroughly, to prevent difficulty understanding the functions of the programs.

Gundavaram begins CGI Programming on the World Wide Web with chapters about input to and output from the CGI interface. He continues with Forms and CGI; Server Side Includes; Hypermedia Documents; Advanced Form Applications; Multiple Form Interaction; Gateways, Databases, and Search/Index Utilities; Gateways to Internet Information Servers; Advanced and Creative CGI Applications; and Debugging and Testing CGI Applications. The Appendices include: Perl CGI Programming FAQ, Summary of Regular Expressions, CGI Modules for Perl 5, CGI Lite, and Applications, Modules, Utilities, and Documentation. The author presents basic CGI concepts and demonstrates some elementary procedures. Gundavaram then describes more complex applications, including counters, Server Side Includes, CGI Includes, animation, and how to implement multiple forms using magic cookies. He often describes several different ways to achieve the same result, emphasizing the advantages (and the disadvantages) of the various methods.

CGI Programming on the World Wide Web is a superb book. Gundavaram presents the concepts of CGI programming clearly and precisely. He demonstrates a technique, builds upon that for more complex tasks, provides different solutions to a single problem, and emphasizes common errors to avoid. CGI Programming on the World Wide Web is a valuable reference for anyone interested in the WWW; no Web developer should be without it.

The Simple Book An Introduction to Networking Management
Revised Second Edition
by Marshall T. Rose
Prentice Hall
ISBN 0-13-451659-1
CD-ROM included

This latest edition of The Simple Book features the Simple Network Management Protocol (SNMP) and the latest modifications to SNMPv2. The previous second edition was published in 1994. When SNMPv2 was released, some elements did not perform as expected. In the preface to this revised second edition, Rose states:

"In particular, the approach taken to add security features to SNMP had proven unworkable in the field; and as a result, adoption of SNMPv2 in the marketplace was virtually nonexistent." [page xxii]

Therefore, the security features were removed from SNMPv2, necessitating a revised second edition. This new edition contains the following chapters: Introduction, Concepts, Information Model, Administrative Model, Operational Model, and the Future. The last chapter includes the Appendices: Internet Standards and Documents, Other Resources, and Network Management is Simple.

Rose has streamlined the text, but has retained his clarity, wit, and style, resulting in an excellent resource. The newly revised second edition provides a current description of SNMPv2 and its features.

HTML: The Definitive Guide
by Chuck Musciano and Bill Kennedy
OíReilly & Associates, Inc.
ISBN 1-56592-175-5

The combination of browsers and the HTML source determines the appearance of Web pages: text, graphics, and hypertext links. HTML specifies the design of the text, the fonts, the layout, and which other sites can be immediately contacted. How a specific Web browser interprets the HTML document controls how the page ultimately looks. The same HTML document, formatted by different browsers, may produce contrasting results. HTML: The Definitive Guide addresses the issues that can cause these conflicts for the user.

Musciano and Kennedy begin with the HTML 2.0 language standard, reminding the reader that although HTML 3.0 does exist, it has not been approved. (HTML 3.0 is currently a draft. However, many of the new features in 3.0 can be utilized as extensions. The authors designate which versions of the various browsers support individual extensions.) they demonstrate how to learn HTML, including: HTML and the World Wide Web; HTML Quick Start; Anatomy of an HTML Document; Text Basics; Rules, Images, and Multimedia; Links and Webs; Formatted Lists; Forms; Tables; Frames; Netscape Dynamic Documents; and Tips, Tricks and Hacks. The Appendices feature: the HTML Grammar, an HTML Tag Quick Reference, The HTML DTD (Document Type Definition), Character Entities, and Color Names and Values. An HTML Quick Reference Card is also provided. Through description, diagrams and examples, the authors illustrate how to add images, sound, and animation to an HTML document. They explain the concepts of dynamic information, utilizing Server Push and Client Pull, and the effective design of forms.

HTML: The Definitive Guide discusses every topic connected with Web page creation: dynamic information, Java applets, adding multimedia, hyperlinks, effective design principles, and specific browser preferences. Musciano and Kennedy emphasize HTML's functions, its primary features, and secondary capabilities. The Web's popularity is rapidly expanding; it has become an entertainment, information, and marketing resource. As more users become actively involved in the makeup of the Web, an understandable reference is needed. HTML: The Definitive Guide is a superior book, written in an easily readable style for any level of user. The serious developer will find its HTML grammar, tag reference, design techniques, and browser specifics valuable; the casual author will appreciate the book's clarity, organization, and abundant examples. Every Web surfer will enjoy this outstanding book!

Practical DCE Programming
by Charles Knouse
Hewlett-Packard Professional Books
Prentice Hall
ISBN 0-13-324419-9
Disk included

The Distributed Computing Environment (DCE) from the Open Software Foundation (OSF) is currently being utilized in client-server application development. DCE can solve many of the problems associated with clientñserver applications. However, because these features are already in place, the programmer must maintain or connect DCE calls. This book addresses the elements in the Distributed Computing Environment (both DCE 1.0 and DCE 1.1) that clientñserver programming employs, utilizing C code examples.

Knouse introduces the different clientñserver types, explains DCE components, and presents the basis of the Room Schedule example. Following this preamble, each chapter details various DCE features and builds upon the Room Schedule application. Other DCE subjects include: Remote Procedure Calls, Interface Definition, Basic Client and Server Setup, Client and Server Setup Using CDS (Cell Directory Service), Security, Server Management in DCE 1.1, Objects and Managers, Access Control, and Threads. The Appendices contain Hints for Debugging DCE Applications and the Room Schedule Application. The accompanying diskette has the source files for the sample applications in MS-DOS format, which have been saved in UNIX tar format.

This book provides an excellent guide for programmers implementing clientñserver applications in the OSF/DCE 1.0 or 1.1 environment. It is well written, assumes that the reader knows C programming and is also familiar with the general concepts of remote procedure calls, clientñserver implementation, and security. Knouse demonstrates the benefits of using OSF/DCE and clientñserver applications together and discusses the various techniques. Practical DCE Programming is an excellent resource for a specialized field, and is an excellent choice for any programmer's library.

UNIX System V Release 4: An Introduction
Second Edition
by Kenneth H. Rosen, Richard R. Rosinski, James M. Farber, and Douglas A. Host
Osborne McGraw-Hill
ISBN 0-07-882130-4

This new edition presents an introductory UNIX book that is not limited to the novice. In the past 5 years, many new systems, languages, and utilities have developed. Although some of the products are older than 5 years, the affordability of hardware, particularly large hard drives and CD-ROM drives, now make them more available to the general public. Rosen, Rosinski, Farber, and Host divided this second edition into nine sections: Basics, Text Editing and Processing, Networking, Tools, System Administration, User Environments, Development, UNIX Variants, and the Appendices. The Internet is now covered (in the networking section), new tools include the Perl, TCI, and C++ languages, and UNIX Variants discuss Linux, UNIXWare, Solaris, HP-UX, and IRIX. The appendices encompass How to Find out more, Compatibility Packages, a Glossary, Major Contributors to the UNIX System, and Command Summaries.

UNIX System V Release 4 : An Introduction (Second Edition) is an outstanding book. The authors explain the concepts in a logical, readable style, and use examples well and often. They demonstrate how to accomplish a task and show how one way is preferable to another. Rosen, Rosinski, Farber, and Host have produced a superb text for the beginner or the experienced user. I highly recommend it.

Hooked on Java Creating Hot Web Sites with Java Applets
by Arthur Van Hoff, Sami Shaio, and Orca Starbuck
Sun Microsystems, Inc.
Addison-Wesley Publishing Company
ISBN 0-201-48837-X
CD-ROM included

This informal excursion into the Java side of the World Wide Web features ways to use Java applets, explains a little about its beginnings, and simply describes the language. Written by three members of the Sun Java Programming Development Team, Hooked on Java simply tells what Java is, how it can be used, and how to use it without programming it. The volume of information available about Java can be overwhelming; there are now Java columns, Java magazines, Java books, and Java software. The authors of Hooked on Java don't assume that readers know anything about Java, but they do presume that they would like to know something. Hooked on Java includes six chapters (Introducing Java and Java Applets, Java and the Internet, Applets Explained, Cool Applets, Java in Depth, and Building an Applet) and seven appendices (an Applet Guide, Places to Go, Source Code, javac, java, Appletviewer, and Applet Tag Definition.)

Because Java is relatively new, van Hoff, Shaio, and Starbuck explain how Java began and introduce Duke, the Java mascot. The authors provide a brief introduction to Java, noting the important definitions in the margins, and also present the history (enter Duke). They briefly address the Java language and demonstrate how to use an applet with or without programming it. They show how to include an applet on a Web page and provide some "cool applets" to use. The concluding chapters discuss the language in more depth and illustrate how to build your own applet. The Applet Guide is a quick reference to the furnished applets. There are also Web addresses (for further information) supplied throughout the book, the source code for applets introduced in the concluding chapter, the man pages for the Java interpreter, compiler, and Appletviewer, and the document type definition for the Java applet tag. The CD-ROM contains Java applets, HTML pages with Java, Java source code, the final release of the Java Developer's Kit for Windows 95, Windows NT, Solaris 2.x, and online documentation.

Hooked on Java is a fun book. The authors present a low-key introduction to Java, with an emphasis on the less serious Java applications. This is an outstanding book for anyone interested in the Internet, animation, or object-oriented programming. Shiao, van Hoff, and Starbuck demonstrate how Java can be used, how to use it without programming it, and how to program it. It is a gentle introduction and a superb book.

About the Author

Elizabeth Zinkann has been involved in the UNIX and C environment for the past 11 years. She is currently a UNIX and C consultant, and one of her specialties is UNIX education. In addition to her computer science background, she also has a degree in English. Elizabeth can be reached via America Online (