[Catalyst] "Catalyst - The Definitive Guide" and the "Catalyst Cookbook"

David K Storrs dstorrs at dstorrs.com
Fri Dec 23 22:49:38 CET 2005


On Dec 23, 2005, at 12:53 PM, Charlton Wilbur wrote:

>
> On Dec 23, 2005, at 10:44 AM, David K Storrs wrote:
>
>> You know...that phrase "toy examples" is starting to become one of  
>> my personal pet peeves.  The kind of examples I'm thinking of  
>> would leave you with a fully functional ecommerce site (well,  
>> right up to the edge of the merchant gateway, anyway) with an up- 
>> and-running database, scripts to load data in from CSV, the  
>> ability to support user login, and an attractive interface that  
>> was cross-browser/cross-platform, and a clean and straightforward  
>> way to reskin the site as you wish.  How exactly is that a "toy  
>> example"?
>
> Having *built* a fully-functional e-commerce site:

As have I.  More than one, in fact.  In the process of wrapping up  
the latest in fact (hmmm...more accurately--I'm PMing this latest  
one).  So, now that we've both established our bona fides, let's move  
on.


> You're missing tax calculations, any sort of integration with  
> shipping, any kind of weird pricing the merchant wants to apply  
> (Buy these two items and take 10% off the total price!  Buy these  
> things the week after Christmas and get them for 50% off!  Spend  
> more than $100 on things from this list, and everything in your  
> order that isn't already discounted will get 15% off!), any sort of  
> integration with the merchant's inventory management, any sort of  
> age verification for selling age-restricted items.

Note the "fully functional ecommerce site (well, right up to the edge  
of the merchant gateway, anyway)" in the paragraph you quoted.  True,  
I didn't explicitly list all of these elements because they fall into  
one of two categories:

	1) Things that an ecommerce site is essentially non-functional  
without (e.g. taxes, shipping)

	2) Things that are business logic--that is, some sites will want  
them and some wont (e.g. time-based discounts, age verification,  
"order over $100...")

I was assuming that "fully functional" would cover everything in  
category 1, and I had already said that the point of these examples  
was to get you 80% of the way there--which means to do all the crap  
that every site needs, and leave you to do just the business logic  
part.  Perhaps I should have stated it more explicitly, as it  
obviously didn't come through clearly for you.  Sorry there was  
confusion.


> It's a toy example in the way that AI has toy problems: they're  
> interesting, they demonstrate a principle well, and thinking about  
> them often winds up producing results that are transferable to a  
> broader problem domain, but they're insufficient to apply to actual  
> real-world problems in themselves because they handwave over things  
> to prove the principle ("right up to the edge of the merchant  
> gateway, anyway").
>
> "Toy" is not meant as an insult; it's meant as a comment on scope  
> and assumptions.  That ecommerce example *will* save people time,  
> because they can jump right to tax calculations and integrating  
> with shipping and inventory management and such instead of dinking  
> around with HTML forms and CGI.pm.  But it's a toy because it  
> really won't work as it stands in the real world, and as soon as  
> you extend the spec to the point where it will, you're talking a  
> development time on the order of magnitude of days or weeks rather  
> than hours.
>
> Charlton

Charlton, I think we're generally on the same page here, but are  
having slightly different conversations.  The point of the examples  
that I'm talking about is to save people time by giving them an  
essentially functional site where all they need to do is bolt in the  
parts that are essential to that particular client.  I think you  
could get more mileage out of them than I feel you are giving them  
credit for, but that's a personal viewpoint that we can hash out over  
a beer (or tea, or soda, or...) sometime if we ever meet in atom-space.

The conversation that I'm having is about the fact that I personally  
dislike the term "toy" because I hear overtones of contempt.

--Dks



More information about the Catalyst mailing list