I don't use CGI.pm any more. (Though I did recently write a CGI script. I used Plack for it. I ♥ Plack.)
As usual, Aristotle is right. Plack is an obvious improvement to deploying Perl web applications and a very powerful way to manage middleware concerns. I use it with multiple projects.
I keep toying with the idea of producing a little book on Plack. It can be a short introduction to what Plack is (and why Plack is), a guide to some of the deployment options (such as when to use the various backends), a set of examples of the best middleware which exists today, and a guide to writing your own middleware or server backend.
It should be short. It can be succinct. It doesn't have to be a three hundred page, $35 printed book. It could be a hundred pages long, electronic format, and available for less than $10.
Does this interest anyone besides me?
(Other books are coming too, oh yes, probably including an update to Modern Perl for Perl 5.14.)
I'd give you $10 for that book.
I'd put that on my shelf.
Given the state of Plack documentation, and especially the state of instructional deployment documentation for the various backends, I think a nice little book would be a wecome stop-gap solution.
Deployment, deployment, deployment. That's where the focus needs to be. Hand a plack application to a sysadmin, send them to plackperl.org, and see how long it takes them to get it up and running. Chances are your followup is going to be with a very frustrated and annoyed sysadmin.
Plack and PSGI are great, but my guesstimation is that precious few people outside of their inner circles have ventured in to try them, simply because the documentation is all written by psgi/plack experts who take for granted an understanding of the glue that ties the various components together.
To use the tired analogy: They can't see the forest through the bark fibers, moss, and dirt grains they're documenting.
mstratman:
Yes, deployment matters. I'm going to talk about this exact topic at YAPC::NA and OSCON (and conferences elsewhere if you want to invite me :)) http://www.oscon.com/oscon2011/public/schedule/detail/19262
The slides and videos will be available, and folding them into a book might be interesting too.
miyagawa:
I will definitely be there and look forward to it. :)
And by the way, on re-reading my comment I realize I might have sounded critical. I just want to clarify that comment was in *no way* a criticism of the great work, and wonderful documentation you and others have done.
Imo, the state of the documentation is the result of the natural progression of any new, large projects. Those details are critical early adopters. Once the projects begin to mature and see wider adoption, somebody comes along and fills that gap by writing some more "big picture," idiot-proof tutorials for the late adopters.
Since much of that already seems to be at the core of his ideas, I'm just trying to show some examples of how/why the book would do a good job filling a current need. :)
I've noticed what mstratman touched on; it seems like with a lot of the newer software I'm trying out these days, features and ability are running well ahead of the documentation. (I'm not criticizing either; I can't claim that I document my own work that well.) Often there's one short explanation of a function, maybe with a single example, and that's it. I find myself copying the examples without really understanding what's going on, and if I want to do something a little different, I'm down to trial and error. Not just in perl areas, but also in systems like jQuery, which I use quite a bit. The main documentation is thin but okay, while plugin docs are spotty to non-existent.
I guess all that is to say: I think the book is a great idea.
I bought Modern Perl and downloaded a copy. I'd by a good Moose book in a heartbeat and I'd buy the Plack book too, to have the complete set.
I know people I would be happy to be able to hand it to.
The Little Book of Plack sounds like a great idea! I'd buy one!
I'd buy this in a second! I bought and loved Modern Perl and recommend it as often as possible.
I can give the money right now, if you want :). The more quality Perl books there are the better.
Or you could start a http://www.kickstarter.com/ campaign for it.
Absolutely yes!
I think Plack Advent Calendar 2009 is quite good introduction to PSGI and Plack.
Just don't use a toothbrush for the cover! :)
That would be a great book. "The Little Moose Book" would be awesome too!
Yes, I'm interested.
Yes, I'm interested.
Yes. I use CGI.pm exclusively. I try and figure out why that isn't ok, and I never get an answer that helps me to understand why I should move away from that paradigm.
A little book would be very helpfull. The Plack advent calendar already helps, but if you begin with Plack it is very difficult to understand the differences between PSGI, Plack, Middleware, App and all these words. Some diagrams like the onion would be helpful.