209 lines
9.6 KiB
HTML
209 lines
9.6 KiB
HTML
|
<!--startcut ==========================================================-->
|
||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
|
||
|
<HTML>
|
||
|
<HEAD>
|
||
|
<title>Book Review: Website Automation Toolkit LG #33</title>
|
||
|
</HEAD>
|
||
|
<BODY BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#A000A0"
|
||
|
ALINK="#FF0000">
|
||
|
<!--endcut ============================================================-->
|
||
|
|
||
|
<H4>
|
||
|
"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
||
|
</H4>
|
||
|
|
||
|
<P> <HR> <P>
|
||
|
<!--===================================================================-->
|
||
|
|
||
|
<center>
|
||
|
<h1><font color="maroon">Book Review: Website Automation Toolkit</font></h1>
|
||
|
<H4>By <a href="mailto:">Andrew Johnson</a></H4>
|
||
|
</center>
|
||
|
<P> <HR> <P>
|
||
|
<img align="left" src="./gx/johnson/2930f1.jpg">
|
||
|
<P>
|
||
|
<ul>
|
||
|
<li>Author: Paul Helinski
|
||
|
<li>Publisher: John Wiley
|
||
|
<li>E-mail: info@wiley.com
|
||
|
<li>URL: http://www.wiley.com/
|
||
|
<li>Price: $44.99 US
|
||
|
<li>ISBN: 0-471-19785-8
|
||
|
</ul>
|
||
|
<P>
|
||
|
<P> <HR> <P>
|
||
|
<i>Website Automation Toolkit</i> is a collection of tools, most created
|
||
|
by the author's company, which range from allowing simple configuration
|
||
|
control over the look and feel of your entire site to remote
|
||
|
creation of and updating pages on the site to shopping carts and
|
||
|
simple database facilities. It is not a book about running and configuring
|
||
|
web servers or teaching the Common Gateway Interface (CGI) protocol.
|
||
|
<p>
|
||
|
The introductory preface and first chapter address
|
||
|
the motivation behind the book and a few of the benefits of using
|
||
|
some form of automation in maintaining your web site. Next are
|
||
|
two chapters discussing some of the alternatives
|
||
|
(and alternative proprietary software) to the author's CGI-oriented
|
||
|
approach to automation.
|
||
|
<p>
|
||
|
The majority of the tools provided are, in fact, Perl CGI programs
|
||
|
created by the author's company. These tools are officially free.
|
||
|
While the license in the book states that you are
|
||
|
not allowed to redistribute them without permission, you are
|
||
|
allowed to use and install them as many times and for as many
|
||
|
clients as you wish. This seemed a bit contradictory, so I asked
|
||
|
the author for some clarification. He responded with the
|
||
|
following statement (used with permission):
|
||
|
<blockquote>
|
||
|
I don't do courts, but the intent of the license is to
|
||
|
prevent people from putting our utilities on shareware CD-ROMs
|
||
|
without the supporting text. It's more of a support issue
|
||
|
than an ownership one. I wrote the book because these things
|
||
|
were far too useful to keep to ourselves.
|
||
|
</blockquote>
|
||
|
Chapters 4 and 5 mark the transition into the main part of the
|
||
|
book by providing a short justification for why Perl is the
|
||
|
language of choice, and a brief introductory overview of Perl basics. This
|
||
|
overview is not intended as a guide to the
|
||
|
Perl programming language, but merely to acquaint the user with
|
||
|
some of the essentials so that later sections on configuring and
|
||
|
customizing Perl scripts will be less daunting to the
|
||
|
inexperienced.
|
||
|
<p>
|
||
|
The remaining chapters provide a tool-by-tool installation and
|
||
|
instruction manual. There are too many tools to cover them all with
|
||
|
any detail, so I will very quickly run through the remaining
|
||
|
chapters and follow with my general impressions.
|
||
|
<p>
|
||
|
Chapter 6 covers SiteWrapper, a package that wraps your site so
|
||
|
that all of your pages are served by a CGI program. Chapter 7
|
||
|
introduces Tickler, a program for soliciting e-mail addresses of
|
||
|
visitors and notifying them of content changes. Chapter 8 follows
|
||
|
with a discussion of the freely available
|
||
|
Majordomo mailing list software for creating and maintaining
|
||
|
mailing lists.
|
||
|
<p>
|
||
|
Chapter 9 addresses tracking visitors with discussions of the
|
||
|
Trakkit tool (requires SiteWrapper) and the freely available
|
||
|
Analogue program. Chapter 10 covers a Shopping Cart package
|
||
|
(a modified SiteWrapper program) along with some order processing utilities.
|
||
|
<p>
|
||
|
Chapter 11 covers WebPost, the utility which, according to the
|
||
|
author, sparked the book. This system allows you to create, edit,
|
||
|
delete or upload pages to your site and automatically generate
|
||
|
or update the cross links among pages.
|
||
|
<p>
|
||
|
Chapter 12 provides three search utilities for your site,
|
||
|
depending on whether you are using SiteWrapper, WebPost or neither.
|
||
|
Chapter 13 covers the AddaLink tool for creating and maintaining
|
||
|
a hot list of links. Chapter 14 covers QuickDB, a simple text-based
|
||
|
database engine with a browser interface for adding, editing and
|
||
|
deleting entries.
|
||
|
<p>
|
||
|
Chapter 15 presents a Bulletin Board utility, and also discusses
|
||
|
using FrontPage for a Discussion Board. Chapter 16 takes the next
|
||
|
step by covering a couple of freely available Chat programs.
|
||
|
<p>
|
||
|
Chapter 17 provides a couple of search engine agents, one to
|
||
|
submit a URL to a multitude of search engines and two more which
|
||
|
report your location on the search engines. The final chapter
|
||
|
presents BannerLog and ClickThru, tools which track and log
|
||
|
click-throughs and page views of banner ads on your site.
|
||
|
<p>
|
||
|
I set up a dummy site on my Linux box for installing and trying
|
||
|
out a few of the provided utilities. The installation instructions in each chapter are
|
||
|
divided into UNIX and NT sections and are relatively simple to
|
||
|
follow. However, some unfortunate problems arose.
|
||
|
<p>
|
||
|
There are .zip files for each package, and non-zipped directories
|
||
|
for each of the packages on the CD-ROM. A mild inconvenience is
|
||
|
that some of the .zip files were created with extraneous path
|
||
|
information included, and the individual files in the non-zipped
|
||
|
directories are riddled with ^M characters. The author has created
|
||
|
a web site where you can find problem reports and corrections, and
|
||
|
``cleaner'' versions of the source files for downloading. The
|
||
|
site is located at http://www.world-media.com/toolkit/.
|
||
|
<p>
|
||
|
Another inconvenience is that every Perl script must be checked
|
||
|
(and possibly edited) for the proper path to Perl on
|
||
|
your system, there is no script provided to automate this task,
|
||
|
although writing one would be trivial for any experienced Perl
|
||
|
programmer. Note that even if the first script you examine has the
|
||
|
proper path, others definitely will not--so you must check
|
||
|
and edit those with the incorrect path for your system.
|
||
|
<p>
|
||
|
More serious problems arise with the Perl code. None of
|
||
|
the <b>open</b> calls for reading and writing files are consistently
|
||
|
checked for success or failure. You'll first notice a problem
|
||
|
when you install the SiteWrapper package and try to change the
|
||
|
color scheme of your site with the included SiteColors program.
|
||
|
The installation guide omits mentioning that your server will
|
||
|
need write access to the tagfile.dat file where the color
|
||
|
scheme is stored. Since the program does not check the return
|
||
|
value of the open call, it will fail silently, your color
|
||
|
scheme will not be updated and no error will be present in your
|
||
|
server's logs. I'd seriously recommend locating all calls to the
|
||
|
open function in all .cgi scripts and adding at least a
|
||
|
<tt>||die "$!";</tt> statement to those that don't
|
||
|
have it.
|
||
|
<p>
|
||
|
Other deficiencies with the Perl scripts are that they are not <tt>-w</tt> clean (for warnings), won't compile with
|
||
|
the ``strict'' pragma, do not use <tt>-T</tt>
|
||
|
for taint checking and use the older cgi.pl library rather than the
|
||
|
CGI.pm module for Perl 5.
|
||
|
<p>
|
||
|
Even with the above comments and concerns, the packages are, for
|
||
|
the most part, easy to install and get working. Installation and
|
||
|
configuration of the basic SiteWrapper package took less than an
|
||
|
hour, including time spent checking and cleaning the source code
|
||
|
and creating simple header and footer files and a couple of dummy
|
||
|
pages. When using this system, every page is served from a CGI
|
||
|
program, even essentially static pages. This method allows for a great deal
|
||
|
of flexibility and a centralized configuration style of
|
||
|
management, but could become costly in terms of server load if
|
||
|
your site is large or heavily trafficked.
|
||
|
<p>
|
||
|
I had a little more trouble getting the WebPost system running
|
||
|
properly, mainly because I chose to set it up in a subdirectory
|
||
|
of the SiteWrapper directory and a few issues were involved
|
||
|
in getting the two packages to play nicely together. Once it was
|
||
|
set up, however, it worked as advertised. While I found parts
|
||
|
of the interface to be a bit clunky for creating web pages, it is
|
||
|
a functional way to create and edit pages remotely using
|
||
|
a browser.
|
||
|
<p>
|
||
|
Other tools were less problematic to install, Trakkit for example--I was
|
||
|
tracking and logging myself within a few minutes of unpacking the
|
||
|
package.
|
||
|
<p>
|
||
|
On the whole, if you are looking for instant ``shrink-wrap''
|
||
|
automation software with point-and-click setup and configuration,
|
||
|
you'll be disappointed. However, typical Linux users accustomed
|
||
|
to file-based configuration should have little trouble with
|
||
|
these tools, especially if they already have some experience with
|
||
|
Perl programming. The programs are not stellar
|
||
|
examples in their present incarnation, but they can provide an
|
||
|
inexpensive automation system for budding webmasters willing to get their hands dirty with a little Perl code.
|
||
|
Hopefully, many of the concerns mentioned above will be addressed in a
|
||
|
future edition.
|
||
|
|
||
|
<!--===================================================================-->
|
||
|
<P> <hr> <P>
|
||
|
<center><H5>Copyright © 1998, Andrew Johnson <BR>
|
||
|
Published in Issue 33 of <i>Linux Gazette</i>, October 1998</H5></center>
|
||
|
|
||
|
<!--===================================================================-->
|
||
|
<P> <hr> <P>
|
||
|
<A HREF="./index.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif"
|
||
|
ALT="[ TABLE OF CONTENTS ]"></A>
|
||
|
<A HREF="../index.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
|
||
|
ALT="[ FRONT PAGE ]"></A>
|
||
|
<A HREF="./kunkel.html"><IMG SRC="../gx/back2.gif"
|
||
|
ALT=" Back "></A>
|
||
|
<A HREF="./lg_backpage33.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
||
|
<P> <hr> <P>
|
||
|
<!--startcut ==========================================================-->
|
||
|
</BODY>
|
||
|
</HTML>
|
||
|
<!--endcut ============================================================-->
|