CGI Programming with Perl
The appearance of the second edition ofCGI Programming with Perlheralds the beginning of the neoclassical era of Web service. CGI--or common  gateway interface--is the original back end for client-driven, dynamic Web-page  service and deserves consideration as the Romulus of the Internet Empire. But,  where first-edition author Gundavaram described the lonely Romulus laying the  brick foundation of dynamic Web-page service in 1996, second-edition  collaborators Guelich and Birznieks have pitched in to resurrect Romulus amid  the crowded streets of modern Rome. Why bother? Surely four years have brought  technological revolutions (Java, PHP, ASP, ColdFusion) that render CGI's  original brick-by-brick approach as obsolete as, say, Roman mythology--or bricks  and mortar.And yet not. It is an ambiguous blessing that the original CGI persists,  adhering to the underside of Web service by the duct tape that is Perl. This  point is not missed by Guelich, Gundavaram, and Birznieks, whose advocacy of CGI  is both bolstered by the growing applications module base of Perl and tempered  by their awareness of CGI's structural limitations. Both new and returning  readers ofCGI Programming with Perlshould browse the last chapter first  in order to appreciate the proposed solutions to CGI's greatest sin: its  impractical slowness in a world of a million-hits-per-day Web service. The  chapter describes CGI-compatible FastCGI and mod_perl technologies that  circumvent the process-spawning slowness of the simple CGI. Advanced users might  want to skip directly to O'Reilly's fine mod_perl tome,Writing Apache Modules with Perl and  C, by Lincoln Stein and Doug MacEachern.The authors' second pass at CGI pedagogy is a lucid, honest, and expanded  account that develops functionality of dynamic Web pages in a rational  progression--from HTML client-server and CGI syntax basics to general  input/output, forms, e-mail, graphics, and simple database applications,  including maintaining client state and data persistence under the otherwise  stateless HTTP protocol. The authors offer synopses of cookies, JavaScripting,  server security, and XML, all of which are described in detail in other  books.Whether or not neoclassical CGI is fast enough for your purposes--perhaps for  guarded intranets--bear in mind that CGI is the standard to which every other  Web server has had to respond. The second edition ofCGI Programming with  Perlis still the best introduction to the classics.--Peter Leopold