Rating:  Summary: What's different about this book? Review: While there're a few boooks available on CGI/Perl, what's different in this book you'd ask. If we compare it with "CGI Programming 101" by Jaqueline, it's more advanced and excersices better programming style. Uses 'strict' pragma and -wT switches ALL THE TIME, which I liked a lot. The programs are also compatible in mod_perl enviroment, which prove the fluency of the authors in Perl and Web Programming. Unfortunately their those capabilities don't make them good writers. They don't spend enough time on some of the concepts they introduce. They sepend more time and space then requried on JavaScript(chapter 7), which is about 23 pages, and spend only 16 pages on Data Persistence (chapter 10). But in Data Persistence chapter they tried to cover Text files, all kinds of file lockings, temporary files, DB_File, MLDBM, SQL, DBI. Now you have a rough picture of how dEtAiLeD their topisc are. Here I'll try go over chapters with comments and will be suggesting alternatives for the topic wherever it's applicableChapter 1, 2 and 3 give some history of the WWW and CGI. Also provide a smaple CGI application for getting started. I think chapter 2, "Hypertext Transfer Protocol" was pretty informative, and I ejoyed it a lot. Chapter 4, "Forms and CGI" go over some form anatomy and elementary ways of encoding and decoding form input, which you might find usefull. Chapter 5 is entirely dedicated to CGI.pm and it's application. I still think CGI.pm's documentation available online (or with your Perl distribution) does way better job than this one chapter. Chapter 6, "HTML Templates" gives some nice examples of HTML::Template and Embperl usage. They spend good space on these, but only about 3 pages to cover Mason. Of course, the chapter can't take you too far without the original documentations of those mentioned libraries which are available online. Chapter 7, as I mentioned was dedicated to JavaScript and JS validation. I think they were not supposed to spend so much time on JavaScript. For this one, go get JavaScript Bible, 4th edition by Danny Goodman. Chapter 8, Security covers the security guidelines already available online as W3C's security FAQ by L. Stein and John Stewart. Chapter 9, "Sending Email" was probably my favorite. It covers 'sendmai', mailx and mail and procmail. Spends good 18 pages on the topic and shows an examile that uses Mail::Mailer Chapter 11, Maintaining State, was really poor. There's nothing much to learn in that chapter. For more profesional session management examples, I suggest you "MySQL and Perl for the Web" by Paul DeBois and Apache::Session manual available online. Chapter 12, "Searching the web" give some advanced examples of web searching. The example of Inverted Index Search using DB_File was my favorite. Chapter 13, "Creating Graphics on the fly" give some examples of dynamic graphic generation using GD, Image::Magick and GD::Graph. I could give this chapter hmmm... 3 stars :) Chapter 14, "Middleware and XML" was the one I just skipped over. The last 3 chapters of the book are dedicated to debugging, coding with style and eficiency with mod_perl and FastCGI. For debugging and style, I recommend "Programming perl 3rd edition". Overall, i benefitted from the book a lot as it implies from my review. But still wanna save my 5 stars for the 3rd edition :)
Rating:  Summary: What's different about this book? Review: While there're a few boooks available on CGI/Perl, what's different in this book you'd ask. If we compare it with "CGI Programming 101" by Jaqueline, it's more advanced and excersices better programming style. Uses 'strict' pragma and -wT switches ALL THE TIME, which I liked a lot. The programs are also compatible in mod_perl enviroment, which prove the fluency of the authors in Perl and Web Programming. Unfortunately their those capabilities don't make them good writers. They don't spend enough time on some of the concepts they introduce. They sepend more time and space then requried on JavaScript(chapter 7), which is about 23 pages, and spend only 16 pages on Data Persistence (chapter 10). But in Data Persistence chapter they tried to cover Text files, all kinds of file lockings, temporary files, DB_File, MLDBM, SQL, DBI. Now you have a rough picture of how dEtAiLeD their topisc are. Here I'll try go over chapters with comments and will be suggesting alternatives for the topic wherever it's applicable Chapter 1, 2 and 3 give some history of the WWW and CGI. Also provide a smaple CGI application for getting started. I think chapter 2, "Hypertext Transfer Protocol" was pretty informative, and I ejoyed it a lot. Chapter 4, "Forms and CGI" go over some form anatomy and elementary ways of encoding and decoding form input, which you might find usefull. Chapter 5 is entirely dedicated to CGI.pm and it's application. I still think CGI.pm's documentation available online (or with your Perl distribution) does way better job than this one chapter. Chapter 6, "HTML Templates" gives some nice examples of HTML::Template and Embperl usage. They spend good space on these, but only about 3 pages to cover Mason. Of course, the chapter can't take you too far without the original documentations of those mentioned libraries which are available online. Chapter 7, as I mentioned was dedicated to JavaScript and JS validation. I think they were not supposed to spend so much time on JavaScript. For this one, go get JavaScript Bible, 4th edition by Danny Goodman. Chapter 8, Security covers the security guidelines already available online as W3C's security FAQ by L. Stein and John Stewart. Chapter 9, "Sending Email" was probably my favorite. It covers 'sendmai', mailx and mail and procmail. Spends good 18 pages on the topic and shows an examile that uses Mail::Mailer Chapter 11, Maintaining State, was really poor. There's nothing much to learn in that chapter. For more profesional session management examples, I suggest you "MySQL and Perl for the Web" by Paul DeBois and Apache::Session manual available online. Chapter 12, "Searching the web" give some advanced examples of web searching. The example of Inverted Index Search using DB_File was my favorite. Chapter 13, "Creating Graphics on the fly" give some examples of dynamic graphic generation using GD, Image::Magick and GD::Graph. I could give this chapter hmmm... 3 stars :) Chapter 14, "Middleware and XML" was the one I just skipped over. The last 3 chapters of the book are dedicated to debugging, coding with style and eficiency with mod_perl and FastCGI. For debugging and style, I recommend "Programming perl 3rd edition". Overall, i benefitted from the book a lot as it implies from my review. But still wanna save my 5 stars for the 3rd edition :)
Rating:  Summary: NOT a "quick and dirty" CGI reference... Review: You must be careful when usign this book. I found myself wasting a lot of time typing (oreilly's ftp site was down, and has been down lately--what can I say?) and implementing the examples in the book only to get to the end of the chapters to find out that the authors were holding out on me for a better solution. For example: Parsing forms? Don't implement anything on Chapter 4, "Decoding Form Input." Wait until the next chapter about CGI.pm. Searching the web server (Chapter 12)? Wait until the end of the chapter before implementing anything, or waste alot of time. Don't get me wrong, this book has some decent information in it. And there is much learning to be done in reviewing how NOT to do certain things. However, I'm not sure how many people read CGI books from cover to cover. Bottom line: the authors should have been more mindful of their audience's time constraints and should have tailored the exposition of material accordingly.
|