RE: [cgiapp] new competition: CGI::Prototype

2004-12-02 Thread Jason A. Crome
 In working on the PHP port, I've had a number of people 
 respond asking for more/better usage examples -- and I'm 
 really beginning to think that this may be the key to gaining 
 more 'street cred' among perl developers (though there's 
 certainly plenty already). . . (snip)
 In short, I think that CGI::Application is *so* flexible that 
 the documentation really doesn't do it justice

If you have any examples or code you'd like to contribute to the
documentation, I'm certain Mark would be happy to include them ;)

My smartassedness aside now, your bulletpoints would make for some great
examples.  If you have the time and ability to produce these, you'd be doing
the community a great service.  I personally find it helpful to have some
example code to digest after reading the POD of a module.  I can't be alone
out there in this.  And it's one gripe I have about CGI::Prototype.  I read
the module POD and description and thought, Gee, that's nice.  Show me some
code and show me why this is better.

Ok, I'm done now ;)

--
Jason A. Crome
Senior Software Engineer, DEVNET, Inc.
E-Mail: [EMAIL PROTECTED]
http://www.devnetinc.com
 

 -Original Message-
 From: Matthew Weier O'Phinney [mailto:[EMAIL PROTECTED] 
 Sent: Wednesday, December 01, 2004 9:45 PM
 To: [EMAIL PROTECTED]
 Subject: Re: [cgiapp] new competition: CGI::Prototype
 
 On Thu, 2 Dec 2004 11:19:27 +0900, Thilo Planz 
 [EMAIL PROTECTED] wrote:
  I just saw that Randal L. Schwartz published CGI::Prototype on CPAN 
  yesterday.
  
  
 http://search.cpan.org/~merlyn/CGI-Prototype-0.90/lib/CGI/Prototype.pm
  
  The more, the merrier I suppose...
 
 Merlyn's been talking about that for some time on PerlMonks, 
 and brought it up again this week in response to a 
 CGI::Application question. He claims to have gone into the 
 CGI::App source and deemed it too 'monolithic', which I found 
 surprising; he wouldn't elaborate, however.
 
 Something I've noticed about CGI::Application -- in part 
 because I did the same thing: people are initially turned off 
 by it as it seems either too complex or non-intuitive (I 
 don't thing these are the same, personally). I know when I 
 first encountered it, I said to myself, What the...? Looks 
 like a lot of work. Then, after developing a solution of my 
 own and looking for a namespace, I ran across it again... and 
 discovered it was doing everything I was, only in a more 
 flexible manner.
 
 In working on the PHP port, I've had a number of people 
 respond asking for more/better usage examples -- and I'm 
 really beginning to think that this may be the key to gaining 
 more 'street cred' among perl developers (though there's 
 certainly plenty already).
 
 Some criticism of the current usage examples in the documentation:
 
 1) They don't show how template integration really works. I think this
is one of the chief benefits of the system. You can swap 
 out template
engines easily (even more easily now with the Plugin architecture),
and this allows you to stop mucking about with HTML within your
script. (There's little worse I like doing than working in two more
languages within the same file.) By assigning content directly from
your DB or out of files to the template, the script code 
 becomes very
clean.
 
 2) They don't show good usage examples of form processing. ValidateRM
has achieved a large following (from what I see of traffic on the
list), and many of us have rolled our own form validation
libraries/techniques that, again, make scripting very clean and
simple, while retaining a lot of power.
 
 3) Show an example that has some database or content retrieval from
custom APIs. Again -- Class::DBI, etc. make retrieving, adding, and
updating content very easy in a CGI::Application - based system.
 
 4) An example of an instance script or CGI::Application-based module
being used as a mod_perl handler would be very useful for those
stumbling upon the module.
 
 5) A good usage example I can think of would show the creation of a
superclass, one or more classes inheriting from it, and explain how
the inheritance chain would work. For instance, throwing
authorization and a sitewide template into the superclass, and how
this would be passed on to the child classes.
 
 6) Show how a single application module can be rendered radically
differently based on the metadata passed from an instance script.
Again, this is, to my perception, a key strength of 
 CGI::Application
-- reusable, customizable web applications are incredibly simple to
plan and code.
 
 In short, I think that CGI::Application is *so* flexible that 
 the documentation really doesn't do it justice -- and so 
 people are quick to dismiss it and/or develop 'superior' 
 alternatives. And looking at the code -- well, there's so 
 little to it that it's hard to see the big picture -- namely, 
 that by itself

[cgiapp] new competition: CGI::Prototype

2004-12-01 Thread Thilo Planz
Hi all,
I just saw that Randal L. Schwartz published CGI::Prototype on CPAN 
yesterday.

http://search.cpan.org/~merlyn/CGI-Prototype-0.90/lib/CGI/Prototype.pm
The more, the merrier I suppose...
Thilo
-
Web Archive:  http://www.mail-archive.com/cgiapp@lists.erlbaum.net/
 http://marc.theaimsgroup.com/?l=cgiappr=1w=2
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [cgiapp] new competition: CGI::Prototype

2004-12-01 Thread Matthew Weier O'Phinney
On Thu, 2 Dec 2004 11:19:27 +0900, Thilo Planz [EMAIL PROTECTED] wrote:
 I just saw that Randal L. Schwartz published CGI::Prototype on CPAN
 yesterday.
 
 http://search.cpan.org/~merlyn/CGI-Prototype-0.90/lib/CGI/Prototype.pm
 
 The more, the merrier I suppose...

Merlyn's been talking about that for some time on PerlMonks, and brought
it up again this week in response to a CGI::Application question. He
claims to have gone into the CGI::App source and deemed it too
'monolithic', which I found surprising; he wouldn't elaborate, however.

Something I've noticed about CGI::Application -- in part because I did
the same thing: people are initially turned off by it as it seems either
too complex or non-intuitive (I don't thing these are the same,
personally). I know when I first encountered it, I said to myself, What
the...? Looks like a lot of work. Then, after developing a solution of
my own and looking for a namespace, I ran across it again... and
discovered it was doing everything I was, only in a more flexible
manner.

In working on the PHP port, I've had a number of people respond asking
for more/better usage examples -- and I'm really beginning to think that
this may be the key to gaining more 'street cred' among perl developers
(though there's certainly plenty already).

Some criticism of the current usage examples in the documentation:

1) They don't show how template integration really works. I think this
   is one of the chief benefits of the system. You can swap out template
   engines easily (even more easily now with the Plugin architecture),
   and this allows you to stop mucking about with HTML within your
   script. (There's little worse I like doing than working in two more
   languages within the same file.) By assigning content directly from
   your DB or out of files to the template, the script code becomes very
   clean.

2) They don't show good usage examples of form processing. ValidateRM
   has achieved a large following (from what I see of traffic on the
   list), and many of us have rolled our own form validation
   libraries/techniques that, again, make scripting very clean and
   simple, while retaining a lot of power.

3) Show an example that has some database or content retrieval from
   custom APIs. Again -- Class::DBI, etc. make retrieving, adding, and
   updating content very easy in a CGI::Application - based system.

4) An example of an instance script or CGI::Application-based module
   being used as a mod_perl handler would be very useful for those
   stumbling upon the module.

5) A good usage example I can think of would show the creation of a
   superclass, one or more classes inheriting from it, and explain how
   the inheritance chain would work. For instance, throwing
   authorization and a sitewide template into the superclass, and how
   this would be passed on to the child classes.

6) Show how a single application module can be rendered radically
   differently based on the metadata passed from an instance script.
   Again, this is, to my perception, a key strength of CGI::Application
   -- reusable, customizable web applications are incredibly simple to
   plan and code.

In short, I think that CGI::Application is *so* flexible that the
documentation really doesn't do it justice -- and so people are quick to
dismiss it and/or develop 'superior' alternatives. And looking at the
code -- well, there's so little to it that it's hard to see the big
picture -- namely, that by itself, it does nothing; as a framework and
skeleton from which to inherit, there's little it can't do.

-- 
Matthew Weier O'Phinney
[EMAIL PROTECTED]
http://weierophinney.net/matthew/

-
Web Archive:  http://www.mail-archive.com/cgiapp@lists.erlbaum.net/
  http://marc.theaimsgroup.com/?l=cgiappr=1w=2
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [cgiapp] new competition: CGI::Prototype

2004-12-01 Thread Jason Purdy
Thilo Planz wrote:
I just saw that Randal L. Schwartz published CGI::Prototype on CPAN 
yesterday.

http://search.cpan.org/~merlyn/CGI-Prototype-0.90/lib/CGI/Prototype.pm
The more, the merrier I suppose...
I just posted a short review, pointing out that it seems redundant to 
cgiapp.  Gads, that was probably a knee-jerk reaction, but this kind of 
thing really ticks me off sometimes... hmm ... maybe this e-mail is a 
knee-jerk reaction, too.  So I hereby disclaim flamebait! ;)

Anyway, from my experience with Mark and the rest of the gang here at 
cgiapp, dfv, htmltmpl, and such, they are definitely open to patches and 
other contributions.  Why does Randal see the need to splinter off 
another framework?  Randal probably has some very valid points (though 
as Matthew points out, we lack any elaboration), but imo, that would be 
best served by improving cgiapp and not creating competition.

I also call Shenanigans on anyone who claims to love a clean MVC 
implementation and resorts to putting logic in templates, but that's my 
own axe to grind.

Ok, thanks for letting me vent ... peace out. :)
Jason
-
Web Archive:  http://www.mail-archive.com/cgiapp@lists.erlbaum.net/
 http://marc.theaimsgroup.com/?l=cgiappr=1w=2
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]