2 out of 5 ... ouch!

autarch on 2002-11-27T20:25:19

There's just one review of the Mason book at Amazon, and we got 2 out of 5 stars.

Pretty painful. I think most of the reviewer's comments are off-base. The first criticism is that the book is aimed at people who already know mod_perl and Mason. I can't speak to the latter, since I can't read the book as someone who doesn't know Mason, but I can say there is not much particularly mod_perl specific code that couldn't be done almost identically with CGI.pm, and there just isn't that much mod_perl stuff in general. I don't think you need to know Mason already to find the book useful. At least, it goes through everything the docs that come with Mason cover, in more detail. If the existing docs were sufficient for Mason's current (large) user base, I'd assume that the book can only be an improvement for new users.

The review also says that the book doesn't have enough practical examples until chapter 8. I think there's some truth to this, and we do say in the preface that readers may want to read chapter 8 after the intro. OTOH, I'm not sure that we could have put a lot of "practical" examples in the earlier chapters, since many practical examples require you to understand more than just the basics. But that doesn't mean the examples couldn't be better, and some of them may be too contrived. I think many books which aim to introduce a topic suffer from this problem, and I'm not sure that it's actually solvable.

I do think it's funny that the reviewer called those earlier chapters "academic" and "theoretical". I'm not sure how learning the basics needed to build real appliations could be considered academic or theoretical.

Yet another complaint is that in Chapter 8 the example site uses Alzabo for all the database bits. The reviewer thought that this module is "not very well known". True, but the only well-known module for talking to a database is DBI, and there's no way in hell I was going to stick raw DBI and SQL into the components. Mason is about presentation, not logic. Combining the two is just bad design, and most of chapter 9 talks about exactly this concern. Plus jamming all the logic in the the components would make them even bigger than they already are.

In other words, logic belongs in modules. So even if I didn't use Alzabo, I'd just have to write custom modules to wrap the SQL, and any custom modules would have an even less well-known API. That would hardly be an improvement.

Finally, the reviewer says there aren't enough graphics or screenshots. There are certainly very few. I'm not a very visual person (I prefer reading text) so that may explain why I only thought of one place to put a graphic in the chapters I wrote. I can't speak for Ken. Suggestions for additional graphics in future editions would of course be welcome, but I can't think of any places crying out for a graphic in the current edition.

Anyway, I just had to get this off my chest, because I think these criticisms are at least partially bogus.

If anyone reading this _liked_ the book, I'd be thrilled if you'd post a review. If you didn't like it, you can post one too, of course ;)


one review, coming up

gizmo_mathboy on 2002-11-27T21:29:30

I'm currently reading it now. I guess I can whip up a review and post it somewhere.

I went straight to chapter 8 after the first chapter or two (whatever was recommended). I like to have an example to look through to understand the basics and then I can dive into the depths of the API as needed.

Would it have been better to move chapter 8 up and have that be what the reader is exposed to first? I guess I'll have to finish reading it and make my thoughts known.

Moving chapter 8

autarch on 2002-11-27T22:20:52

I thought that it made sense to have it _after_ the chapters that cover the various things used in the chapter. Of course, the chapters before that cover lots of other things which aren't used in the site as well, so maybe it would still work to have chapter 8 earlier (like maybe after chapter 3).

But in the end, there's nothing that _forces_ people to read straight through from start to finish. I for one don't actually like reading big example apps and I prefer the parts that are just explanations of features. But that's just me.

One possibility for a future edition would be to build up the example site from scratch throughout the book. The problem with this is that I think that tends to lead to a more artificial example, because you need one that can be built up bit by bit. But with a real app, there's often a threshold of required knowledge needed before you can reasonably start.

Anyway, I figure one bad review is nothing to get too upset about. We've gotten good feedback from other readers. I'm just hoping that people will post good reviews on Amazon so that potential buyers don't get turned off by seeing one review that's bad.

Log-rolling

TorgoX on 2002-11-28T11:42:55

Bug everyone you know to post a Amazon review. And reassure people that an Amazon review doesn't have be a grand exegesis like a Slashdot review -- it can just be a few sentences.

And BTW, yes, maybe convince someone to write a Slashdot review. Michel's Slashdot review of my book seemed to definitely get people's attention.

I'm down with that

autarch on 2002-11-28T19:27:43

Shameless self-promotion is good. I did talk to some people at the Mpls PM meeting last night who liked the book, and I asked them right up a review on Amazon. Maybe I should send something to the Mason users list too.

I think Andy (last name?) (petdance) is planning to write a review for The Perl Review, and that's a good thing. If anyone reading this wants to write a review for Slashdot, I'm sure ORA will send you a copy of the book (hell, _I'll_ send you one!).

The entire book is online

bart on 2003-01-22T12:26:24

Just for the other people out there, who don't have a paper copy of the book: the entire book is available online as HTML, at its site: TOC

So far, I've only read chapter 1, comparing Mason to the other template Perl modules out there, and to PHP, and I must say: I like it. It gives me enough incentive to, one day, try out mod_perl+Mason. Without it, the threshold would just be too high.

And, of course, one day I'll read (most of) the rest of the book. Maybe even buy it. But I'll have to be hooked on Mason before that happens. ;-)