Rating: Summary: A 5,000 piece jigsaw puzzle for you to assemble yourself Review: A good tutorial starts out with something basic and gradually builds on it. This book starts out with three chapters of pure reference material. Granted some of this is a half-assed description of setting up Apache and compiling in mod_perl. I found the docs that come with the Apache and mod_perl source code to be far more useful (and accurate). Then you get this long list of Perl API classes, request object functions, Perl handlers, etc. All of which is wonderfully useful information ... presented at the wrong time ... we have yet to begin writing a useful module.When we do begin the writing of a module, it isn't a basic, stand-alone module, but a module to add footers to other content. So, the text digresses into a long and technical discussion of the various ways to configure Apache and associate MIME types so that this module will work with documents that we might or might not have on hand (It's just assumed that you have these laying around handy). During this discussion, we get bounced off of other Apache::xyz modules that apparently popped into the author's head in a moment of "As long as we're at it, why don't we throw this in too" inspiration. Wonderful information ... presented at the wrong time. To give an example: A logical place to start learning Oracle SQL (or any other SQL) would be with the SELECT statement. However, the authors of this book would begin with a detailed discussion of PL/SQL exception handling, a listing of most of the built-in PL/SQL exceptions, and a listing of a number of the built-in Oracle packages. (Recall we were just starting with SQL. But what the heck! PL/SQL is cool, so why not talk about it now? We're going to use it eventually anyway.) Then for your first select statement, you would write something that used a complex join, a correlated subquery, and a few built-in functions. Well, obviously, we can't just throw this extra stuff in there and not talk about it. So we go whirling off into a discussion of complex joins, correlated subqueries and any other tangents that happen to pop into our head. And when it is all said and done, we still don't know how to display the entire contents of the EMP table. This is a classic of case of making it difficult to see the forrest because of all the trees. The authors of this book have made no attempt to devise a progressive model for building knowledge. Instead, information is dumped on the reader apparently in the order it came to mind. Maybe this is a problem with having multiple authors. Perhaps the parts were written independently, then slung together. That's what it looks like. I suppose this book will get you to where you are going ... eventually. But I suspect you will spend considerable time flipping back and forth between chapters re-reading and re-re-reading sections in order to re-assemble the information in a somewhat logical pattern; hence the comparison to a 5,000 piece puzzle. For those who might be wondering: This book assumes you already know the Perl language. If you don't, the "Learning Perl" book is a good starting point (you do NOT want "Programming Perl" at this point). You will probably also want to get some knowledge of HTML and building web documents. And you will probably want to get at least a basic knowledge of custom configuring an Apache installation.
Rating: Summary: A 5,000 piece jigsaw puzzle for you to assemble yourself Review: A good tutorial starts out with something basic and gradually builds on it. This book starts out with three chapters of pure reference material. Granted some of this is a half-assed description of setting up Apache and compiling in mod_perl. I found the docs that come with the Apache and mod_perl source code to be far more useful (and accurate). Then you get this long list of Perl API classes, request object functions, Perl handlers, etc. All of which is wonderfully useful information ... presented at the wrong time ... we have yet to begin writing a useful module. When we do begin the writing of a module, it isn't a basic, stand-alone module, but a module to add footers to other content. So, the text digresses into a long and technical discussion of the various ways to configure Apache and associate MIME types so that this module will work with documents that we might or might not have on hand (It's just assumed that you have these laying around handy). During this discussion, we get bounced off of other Apache::xyz modules that apparently popped into the author's head in a moment of "As long as we're at it, why don't we throw this in too" inspiration. Wonderful information ... presented at the wrong time. To give an example: A logical place to start learning Oracle SQL (or any other SQL) would be with the SELECT statement. However, the authors of this book would begin with a detailed discussion of PL/SQL exception handling, a listing of most of the built-in PL/SQL exceptions, and a listing of a number of the built-in Oracle packages. (Recall we were just starting with SQL. But what the heck! PL/SQL is cool, so why not talk about it now? We're going to use it eventually anyway.) Then for your first select statement, you would write something that used a complex join, a correlated subquery, and a few built-in functions. Well, obviously, we can't just throw this extra stuff in there and not talk about it. So we go whirling off into a discussion of complex joins, correlated subqueries and any other tangents that happen to pop into our head. And when it is all said and done, we still don't know how to display the entire contents of the EMP table. This is a classic of case of making it difficult to see the forrest because of all the trees. The authors of this book have made no attempt to devise a progressive model for building knowledge. Instead, information is dumped on the reader apparently in the order it came to mind. Maybe this is a problem with having multiple authors. Perhaps the parts were written independently, then slung together. That's what it looks like. I suppose this book will get you to where you are going ... eventually. But I suspect you will spend considerable time flipping back and forth between chapters re-reading and re-re-reading sections in order to re-assemble the information in a somewhat logical pattern; hence the comparison to a 5,000 piece puzzle. For those who might be wondering: This book assumes you already know the Perl language. If you don't, the "Learning Perl" book is a good starting point (you do NOT want "Programming Perl" at this point). You will probably also want to get some knowledge of HTML and building web documents. And you will probably want to get at least a basic knowledge of custom configuring an Apache installation.
Rating: Summary: Great book! Review: Anybody who is interested in writing apache modules, MUST buy this book... Its very straight forward, focuses only on things that are related to writing modules in both Perl and C, and has very useful functions index, you can look up a function or a constant, the book explains all methods and gives examples on how to use tricky ones... I mostly use it for my C modules, and found very easy example of parsing ARGs of query strings, which is to my surprise not in apache lib... I am impressed.
Rating: Summary: Excellent book Review: Doug and Lincoln's book is outstanding. I had no idea Apache could do so much. The book is also wonderful simply for the perl parts of the examples. The way the code is written is illuminating for many non modperl related programming issues.
Rating: Summary: Outstanding Review: I can't say enough good things about this book. I particularly appreciate the way in which it makes the mod_perl Apache module clearly and easily accessible despite its complexity.
Rating: Summary: A web programming marvel Review: I once read that you could not consider yourself a Unix Wizard until you had hand written a SendMail configure script once, and that no sane person ever did it twice. The first part of that truism can perhaps be said of Web Wizards and Apache modules. Fortunately Apache modules are a little easier to write than Sendmail configurations and this book makes it easier still. Let's not mince words. Perl scripts and other CGI software can quickly become performance bottlenecks on any server, no matter the size of your hardware. The most powerful way of fixing this is to fold a fair amount of that programming inside the server where the overhead of loading interpreters, libraries and code is already taken care of, not to mention you find yourself with much more power and control over the dialogue between server and browser. Unfortunately writing to an API as large and complex as that in Apache is not always easy. MacEachern and Stein go to a great deal of trouble and exert a fair degree of skill in breaking the learning down into manageable chunks and explaining it all with a large number of examples. This was the first book I read that really made me understand the process going on, both between the two pieces of software and inside Apache, when a page is requested. From there the book goes on to give you a marvellous understanding of how to write a module in Perl that fits into that process. Finally the last three chapters are excellent API reference guides, one on the Perl API and two on the C API, and an excellent index (which indexes every function in the API's as well as key concepts) make this a superb tool when you get down to writing. The book does not cover using C in any where near as much depth, but the vital conceptual understanding required and explained in the Perl chapters means that once you have written a module in Perl I don't believe you will find it a problem to do it in C. I have to say though, as a C programmer I am yet to do it, I get so much performance out of a module in Perl I've yet to find the need. I read this book before starting my first module and I have now written three. I would never have even contemplated the task before reading this volume. I would recommend this book to anyone who wants to get a full understanding of writing software for the web and anyone who wants a quantum leap in the performance of their web software. You will need some fair Perl skills and preferably written a few CGI scripts as this book does not cover the language skills required at all.
Rating: Summary: Excellent book Review: I'm very impressed by this book. It covers all of the information a person needs and includes lots of useful examples. My only quibble is with lack of explicit info on the return values from the handlers.
Rating: Summary: A must have! Review: If you do, or want to write Apache Modules using C or Perl, this book is a must have. Does a great job of explaining the how's and why's of Apache modules. Every beginner and expert alike should have a copy of this book.
Rating: Summary: If you want C don't bother with this book Review: It's all in Perl. The book says "Apache Modules with Perl and C" but really, it's all in Perl. The only mentions I've seen in C are the very very beginning, and the end that restates the Apache documentation. If you bought this book thinking it will have sample C code, you would be wrong. If you like Perl, then this is the book for you, but if you prefer C, as I do, then you will have wasted your money.
Rating: Summary: If you want C don't bother with this book Review: It's all in Perl. The book says "Apache Modules with Perl and C" but really, it's all in Perl. The only mentions I've seen in C are the very very beginning, and the end that restates the Apache documentation. If you bought this book thinking it will have sample C code, you would be wrong. If you like Perl, then this is the book for you, but if you prefer C, as I do, then you will have wasted your money.
|