Cover V08, I11


Books: A User's Report

Elizabeth Zinkann

This seems to be the Open Source era, and this month's reviews certainly reflect it. I have included a reference card for shell programming, an Apache book, a guide to MySQL and mSQL (although not strictly Open Source products), and a collection of Perl resources. I reviewed The BASH Reference Card by Arnold Robbins (Specialized Systems Consultants, Inc. (SSC)); the Apache Server Administrator's Handbook by Mohammed J. Kabir (IDG Books); MySQL & mSQL by Randy Jay Yarger, George Reese, and Tim King (O'Reilly & Associates, Inc.); and The Perl CD Bookshelf: 6 Bestselling Books on CD-ROM (O'Reilly & Associates, Inc.). Note: Since I first reviewed MySQL & mSQL, MySQL has officially become Open Source. Version 3.20.32a was released as GPL (Gnu General Public License) -- The author, with thanks to Linux Today.

The BASH Reference Card
By Arnold Robbins
Specialized Systems Consultants, Inc. (SSC)
ISBN 1-57831-010-5
26 Sides $4.50

The experienced UNIX/Linux programmer can utilize the shell language in several ways; as a prototyping tool, a quick way to complete repetitive tasks, and a programming language. BASH, the Bourne Again SHell, possesses a versatility that has made it popular with both UNIX and Linux users. BASH can be implemented on any UNIX system and remains the preferred shell on Linux systems. As with any programming language, syntax and spelling are easily forgotten,or misused, especially if the user works with multiple systems and shells. To clarify BASH's applications and command format, author and programmer Arnold Robbins has compiled and organized the essential BASH commands and their accompanying descriptions in an easily referenced and portable quick reference card. In a compact (although not compressed) format, Robbins illustrates topics from Aliasing to Variable Substitution. He describes arrays, conditional expressions, execution order, functions, and history substitution. The author also includes an overview of the Readline library, its directives, Key bindings, and variables, explores the built-in commands, details restricted BASH, and includes many other BASH features.

Robbins and SSC have provided the BASH user with an excellent utility and resource. The BASH reference card provides brief descriptions and explanations, syntax, and exceptions in a well-organized and clearly written format. The author's extensive knowledge of shell programming makes the BASH Reference card an ideal complement to any favorite shell programming book and an invaluable aid for every BASH user, programmer, and administrator.

Apache Server Administrator's Handbook
By Mohammed J. Kabir
IDG Books
ISBN 0-7645-3306-1
547 Pages

The Apache Web server continues to thrive as the most commonly utilized Web server software, particularly for UNIX and Linux systems. As Apache systems administrators will attest, every problem is urgent and should have been solved ten minutes ago, at the very least. In this all too frequent scenario, an administrator does not have the luxury of reading eloquent descriptions or introductions. He or she needs to review the salient facts and procedures quickly. For any Webmaster or administrator who has ever wished for a book designed specifically for troubleshooting situations, Kabir has written the Apache Server Administrator's Handbook, the first selection in IDG Books' The Ultimate Shop Manual series. Kabir organized the topics into three primary sections: Part I: Installation and Configuration, Part ll: Server Side Commands and Scripts, and Part lll: Common Administration tasks. The first part details New Server Installation, Getting Apache Up and Running, The Core Directives, Apache Modules, and Hosting Virtual Sites. The author illustrates how to accomplish the installation, which utilities and options the administrator may encounter, and their impact upon the installation.

Part II contains Server Side Includes, CGI Configuration, FastCGI, and Embedding Perl in Apache. Throughout these chapters, Kabir concentrates on the configurations and mechanics of the subjects rather than on Web site design and content. In the final section, Common Administration Tasks, the author examines WWW Authentication Server Status and Logging, Web Security, Secured Socket Layer for Apache, Rewriting Your URLs, and Proxy in Apache. These chapters address the tasks that a systems administrator or a Webmaster may have to perform on a regular basis. The Appendices contain: A) HTTP/1.1 Status Codes, B) Basics of Regular Expression, C) Internet Resources for Apache, and D) an Apache Quick Reference.

The Apache Server Administrator's Handbook provides an outstanding resource for anyone who has to delve into the installation, configuration, and maintenance of a server utilizing Apache. Kabir provides the necessary information, explains it well, and has organized the material so that related topics are adjacent. He has also duplicated some procedures, which can be included with one or more subjects, so that it may appear in the text twice, but the reader/user doesn't have to flip back and forth to find the singular reference to a process. The size of the book is smaller than most books (a petite 5" by 8"), which enables the user to handily transport it. Anyone and everyone responsible for running Apache needs this book. It will soon become an indispensable reference and tool.

By Randy Jay Yarger, George Reese,
and Tim King
O'Reilly & Associates, Inc.
ISBN 1-56592-434-7
487 Pages

A database system remains an essential utility for any computer, whether it functions in a home, small business, or a large corporate environment. Individual databases add organization and structure to the information stored in the computer or network, simplifying data retrieval, input, and modification. Most users prefer searching a database over sifting through email messages and text files for a name, address, or phone number. (Although the latter method is a form of spring cleaning, it can also become rather frustrating and time-consuming.) MySQL and mSQL provide affordable and accessible database products for UNIX and Linux users and administrators. (Both products possess an Open Source-like availability without strictly following the Open Source guidelines.) In MySQL and mSQL, Yarger, Reese, and King present the qualities of each engine as well as guides to the tools necessary to implement your own applications in either product. The authors divided the book into three major sections: Getting Started with MySQL and mSQL, Database Programming, and Reference.

Because the authors cannot assume that the reader knows either relational database theory or SQL, they begin with an Introduction to Relational Databases followed by Database Design. The first chapter explores the concepts of database theory; the second chapter details those concepts, defines the vocabulary, and employs some practical examples. The successive chapter and topic, Installation, demonstrates the setup procedures for both MySQL and mSQL. Further information, including design, database administration, and specific utilities, are discussed in chapters four (MySQL) and five (mSQL). In the first section, the authors also discuss: SQL According to MySQL and mSQL, plus Other Mid-Range Database Engines. The second section, Database Programming, demonstrates database applications and how to implement them. Database Application Architectures provides an overview of how the applications are managed utilizing the client/server structure. The following chapters specify how to create applications exercising a variety of scripting and programming languages.

The authors address: CGI Programming, Perl, Python, PHP (Personal Home Page) and Other Support for Database-driven HTML, C and C++, and Java and JDBC. The Reference division of the book includes: an SQL Reference, MySQL and mSQL System Variables, MySQL and mSQL Programs and Utilities, a PHP and Lite Reference, a C Reference, a Python Reference, a Perl Reference, and a JDBC Reference. These are straightforward references for the languages covered in Part II and furnish the respective syntaxes and succinct descriptions of the commands and functions for each language.

MySQL and mSQL is a superb addition to the Linux and UNIX applications library. Yarger, Reese, and King present the necessary concepts and their accompanying practical tools for application implementations. They illustrate the principles and procedures from installation through applications programming in a logical order and well-written and readable style. The Reference section furnishes a bonus that will be valued by programmers. MySQL & mSQL is an excellent and portable guide to the essentials of database design, its functions, and processes that every administrator, programmer, and serious user should read and use.

The Perl CD Bookshelf:
6 Bestselling Books on CD-ROM
O'Reilly & Associates, Inc.
ISBN 1-56592-462-2
Book Included

Following the UNIX CD Bookshelf and the Networking CD Bookshelf, the Perl CD Bookshelf provides another excellent set of resources within a small package. It includes Perl In A Nutshell, A Desktop Quick Reference by Ellen Siever, Stephen Spainhour, & Nathan Patwardhan in both electronic and print versions. This was the most appropriate book to include with the CD-ROM, because this can serve as a reference to the material covered in the other five books. Those selections include Programming Perl, Second Edition; Learning Perl, Second Edition; Advanced Perl Programming; Learning Perl on Win32 Systems; and the Perl Cookbook. Programming Perl, Second Edition by Larry Wall, Tom Christiansen, and Randal L. Schwartz is often considered the primary source for learning the Perl language. Learning Perl, Second Edition, by Randal L. Schwartz and Tom Christiansen provides another approach to learning Perl, both in structured learning and independent learning environments. It also features a basic tutorial. Advanced Perl Programming by Sriram Srinivasan demonstrates the uses of Perl in a more complex environment and includes language integration, seamlessly using Perl and C together or Perl and the Tk Toolkit.

Learning Perl on Win32 Systems by Randal L. Schwartz, Erik Olson, and Tom Christiansen illustrates the use of Perl and concentrates on the version for PC and Windows NT users. The final selection, the Perl Cookbook by Tom Christiansen and Nathan Torkington, highlights tips, tricks, recipes, techniques, and solutions for the Perl programmer. The CD-ROM interface is well done and easy to use through browser software, and the topics are thoroughly indexed and cross-referenced.

The Perl CD Bookshelf is an outstanding compendium of techniques, procedures, facts, and basics for any level of Perl programmer and for both versions of Perl. This collection contains the CD-ROM and Perl in a Nutshell packaged in a slipcase that makes it easily transportable; the content makes it a valuable reference for anyone interested in Perl. This is an extraordinary collection. If you use Perl, you need the Perl CD Bookshelf.

About the Author

Elizabeth Zinkann has been involved in the UNIX and C environment for the past 13 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. Her writing has also appeared in Linux Magazine, Performance Computing, and Network Administrator. Elizabeth can be reached at: