Re: CGI.pm v/s roll-your-own [WAS:] Displaying Problems

2002-07-01 Thread Ovid

--- [EMAIL PROTECTED] wrote:
 Curtis,
 You make some good points.  I will be leaving in about 10 minutes for a 
vacation, and wont
be
 back until Monday, so if you wouldn't mind sending an email to the list Monday as a 
reminder, I
 will submit the code then.
 
 Thanks,
 David

David,

Just a reminder regarding posting your alternative to CGI.pm (and thanks to niko for 
reminding me
to remind you :)

Cheers,
Curtis Ovid Poe


=
Ovid on http://www.perlmonks.org/
Someone asked me how to count to 10 in Perl:
push@A,$_ for reverse q.e...q.n.;for(@A){$_=unpack(q|c|,$_);@a=split//;
shift@a;shift@a if $a[$[]eq$[;$_=join q||,@a};print $_,$/for reverse @A

__
Do You Yahoo!?
Yahoo! - Official partner of 2002 FIFA World Cup
http://fifaworldcup.yahoo.com

-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




Re: CGI.pm v/s roll-your-own [WAS:] Displaying Problems

2002-07-01 Thread perl-dvd

Curtis,
Thanks for the reminder, I'll get it up shortly after I get home from work.  About 
5:00pm
Mountain Time.

David

- Original Message -
From: Ovid [EMAIL PROTECTED]
To: [EMAIL PROTECTED]; [EMAIL PROTECTED]
Sent: Monday, July 01, 2002 11:39 AM
Subject: Re: CGI.pm v/s roll-your-own [WAS:] Displaying Problems


--- [EMAIL PROTECTED] wrote:
 Curtis,
 You make some good points.  I will be leaving in about 10 minutes for a 
vacation, and wont
be
 back until Monday, so if you wouldn't mind sending an email to the list Monday as a 
reminder, I
 will submit the code then.

 Thanks,
 David

David,

Just a reminder regarding posting your alternative to CGI.pm (and thanks to niko for 
reminding me
to remind you :)

Cheers,
Curtis Ovid Poe


=
Ovid on http://www.perlmonks.org/
Someone asked me how to count to 10 in Perl:
push@A,$_ for reverse q.e...q.n.;for(@A){$_=unpack(q|c|,$_);@a=split//;
shift@a;shift@a if $a[$[]eq$[;$_=join q||,@a};print $_,$/for reverse @A

__
Do You Yahoo!?
Yahoo! - Official partner of 2002 FIFA World Cup
http://fifaworldcup.yahoo.com



-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




RE: CGI.pm v/s roll-your-own [WAS:] Displaying Problems

2002-06-27 Thread Scot Robnett

Picky, picky. :)
You're right, my bad.

use CGI;
my $q = new CGI;
my %params = $q-Vars;


SR




-Original Message-
From: Felix Geerinckx [mailto:[EMAIL PROTECTED]]
Sent: Thursday, June 27, 2002 2:16 AM
To: [EMAIL PROTECTED]
Subject: RE: CGI.pm v/s roll-your-own [WAS:] Displaying Problems


on Thu, 27 Jun 2002 02:54:10 GMT, [EMAIL PROTECTED] (Scot Robnett) 
wrote:

 Its pretty hard to make it more simple than:
 use Form;
 my %input = Form();
 
  Let me try.
 
  
  use CGI;
  %params = $q-Vars;
  

Try again. Your code throws the following error:

Can't call method Vars on an undefined value ...

-- 
felix

-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

---
Incoming mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.372 / Virus Database: 207 - Release Date: 6/20/2002

---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.372 / Virus Database: 207 - Release Date: 6/20/2002


-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




Re: CGI.pm v/s roll-your-own [WAS:] Displaying Problems

2002-06-27 Thread perl-dvd

The difference is, the efficiency and data structure CGI.pm returns.  Mine came to 
I think 72
times faster when not uploading images, and 2.5 times faster when uploading images.  
I'm not saying
CGI.pm is written poorly or anything, I am saying that it is a little bit bloated and 
has a lot of
functionality that is not needed (especially if the only thing you are doing with it 
is receiving
input).

Well personally, I've always used
print Content-type:text/html\n\n;
but somebody told me this was not the spec, so I read through the spec and looked up 
how CGI.pm was
doing it and what I found was
${CRLF}${CRLF}
as the \n\n replacement.  I of coarse should have looked a little higher where they 
defined $CRLF,
or at least tested what I had read before posting it, but oh well.  From here on out, 
I'll stick
with what I've known to work instead.

Like I've said before, it doesn't make much sense to make a wrapper for CGI.pm so 
that I can
have things the way I want them, because this is doubling the work necessary.  I'm not 
making my lib
to prove superior, or to say anything like mine is better.  I have simply found a very 
positive
solution for me (quick and in a structure that works well for me).  If others like my 
solution, and
it works well for them too, more power to them.  I will post mine on CPAN, if nobody 
else in the
world feels it is a good solution for them, that's just fine with me.  If people like 
my solution,
but have a few suggestions of how to improve it, I welcome that.


One thing I am open to after posting my lib to CPAN is suggestions.  I'm not 
exactly close
minded here, I'm just the type of person who if I'm not perfectly happy with the way 
something works
(whether programming or in the real world), I determine whether I can fix it, if I can 
I do.
Because this lib puts the received values in a structure that I like to work with, in 
my mind it
fixes things.

David



- Original Message -
From: Todd Wade [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Sent: Wednesday, June 26, 2002 11:12 PM
Subject: CGI.pm v/s roll-your-own [WAS:] Displaying Problems



[EMAIL PROTECTED] wrote in message
008d01c21c73$aa978a30$d381f6cc@david">news:008d01c21c73$aa978a30$d381f6cc@david...

.. snip
 I'm sure I'll get lots of hate mail from CGI.pm die hard's, but my
other choice is to just not

Not trying to post hate mail, just reasoning on the subject.

 post this at all.  What I hope for is several people telling me how to
make it slightly more
 efficient or compatible with other OS's (you see I've only had opportunity
to test it on Linux and
 Win2000, though I've been testing it on Linux for about 2 1/2 years).

Lincoln Stein (the original author of CGI.pm) already has (lots of) people
doing this for him, and his module has been maintained for around 10 years.
Its been tested on scores of OS's. Ive read four of his books. There is a
book dedicated to CGI.pm. My point is his module has been rigorously
debugged and you are just now here asking people for help debugging yours.

 Its pretty hard to make it more simple than:
 use Form;
 my %input = Form();


But something else has already made it that easy.

Im not knocking your module. Im just explaining why people like us trust
people like Lincoln Stein's module over yours. For example, Ive seen alot of
hand rolled CGI parameter parsers, most of them have a line that says:

@pairs = split(//, $ENV{QUERY_STRING}); # WRONG!!

This works when the user agent uses an  as a delimeter, but some user
agents use ; (a semicolon) which is perfectly valid. program chokes. Then
people are in the newsgroups trying to get others to help track down a very,
VERY difficult-to-track bug. But at the end of the post they say, I dont
want to use CGI.pm! Floors me. Really floors me. And this is just one of
several examples I've seen.

So I know, when I say:

print $q-header();

Its going to get it right.

BTW, I find the source to CGI.pm very easy to read and makes alot of sence.
Ive seen suggestions from you in this thread that are either wrong or wont
even work. (What does this do- print Content-type:
text/html${CRLF}${CRLF};) Which tells us again Mr. Stein has a thorough
understanding of the HTTP protocol, while you stll have a little to learn.

Again, this is NOT a flame. I suggest accepting the constructive criticism
professionally.

Todd W.





--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




Re: CGI.pm v/s roll-your-own [WAS:] Displaying Problems

2002-06-27 Thread perl-dvd

my point stands :)

So out of curiosity, what kind of data structure do you get back with this?  If its as 
I would
imagine, then its very close to my own.

%hash = (
'a_name' = 'value',   # for single name value pairs
'b_name' = [multiple, values, for, this],   # for single name muli-value 
sets
'c_name' = {
 'original_name' = 'filename.jpg',
 'size' = '23554',
 'location' = 
'/tmp/fileupload/tmpfile-10028983-88.57.192.3-2783-298374-927837'
 } # for files
);

Of coarse I know the image information is not in there the same way.

David


- Original Message -
From: Scot Robnett [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Cc: Felix Geerinckx [EMAIL PROTECTED]
Sent: Thursday, June 27, 2002 8:29 AM
Subject: RE: CGI.pm v/s roll-your-own [WAS:] Displaying Problems


Picky, picky. :)
You're right, my bad.

use CGI;
my $q = new CGI;
my %params = $q-Vars;


SR




-Original Message-
From: Felix Geerinckx [mailto:[EMAIL PROTECTED]]
Sent: Thursday, June 27, 2002 2:16 AM
To: [EMAIL PROTECTED]
Subject: RE: CGI.pm v/s roll-your-own [WAS:] Displaying Problems


on Thu, 27 Jun 2002 02:54:10 GMT, [EMAIL PROTECTED] (Scot Robnett)
wrote:

 Its pretty hard to make it more simple than:
 use Form;
 my %input = Form();

  Let me try.

  
  use CGI;
  %params = $q-Vars;
  

Try again. Your code throws the following error:

Can't call method Vars on an undefined value ...

--
felix

--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

---
Incoming mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.372 / Virus Database: 207 - Release Date: 6/20/2002

---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.372 / Virus Database: 207 - Release Date: 6/20/2002


--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




RE: CGI.pm v/s roll-your-own [WAS:] Displaying Problems

2002-06-27 Thread Scot Robnett

I haven't seen the rest of your module, so I'm not so sure that the point
really stands. It might. But, adding one line to initialize the CGI object
is really not that big a deal considering the kind of power you have
associated with that object. How much extra work do I have to do to utilize
the keys and values in your hash vs. the CGI.pm hash?

The data structure you get back from CGI.pm is:

- Called in a scalar context, a tied hash reference.

- Called in a list context, a standard hash
  containing key/value pairs.

- Keys/params with multiple values are returned
  as a packed string separated by \0.


Scot R.
inSite



-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
Sent: Thursday, June 27, 2002 10:44 AM
To: Scot Robnett; [EMAIL PROTECTED]
Cc: Felix Geerinckx
Subject: Re: CGI.pm v/s roll-your-own [WAS:] Displaying Problems


my point stands :)

So out of curiosity, what kind of data structure do you get back with this?
If its as I would
imagine, then its very close to my own.

%hash = (
'a_name' = 'value',   # for single name value pairs
'b_name' = [multiple, values, for, this],   # for single name
muli-value sets
'c_name' = {
 'original_name' = 'filename.jpg',
 'size' = '23554',
 'location' =
'/tmp/fileupload/tmpfile-10028983-88.57.192.3-2783-298374-927837'
 } # for files
);

Of coarse I know the image information is not in there the same way.

David


- Original Message -
From: Scot Robnett [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Cc: Felix Geerinckx [EMAIL PROTECTED]
Sent: Thursday, June 27, 2002 8:29 AM
Subject: RE: CGI.pm v/s roll-your-own [WAS:] Displaying Problems


Picky, picky. :)
You're right, my bad.

use CGI;
my $q = new CGI;
my %params = $q-Vars;


SR




-Original Message-
From: Felix Geerinckx [mailto:[EMAIL PROTECTED]]
Sent: Thursday, June 27, 2002 2:16 AM
To: [EMAIL PROTECTED]
Subject: RE: CGI.pm v/s roll-your-own [WAS:] Displaying Problems


on Thu, 27 Jun 2002 02:54:10 GMT, [EMAIL PROTECTED] (Scot Robnett)
wrote:

 Its pretty hard to make it more simple than:
 use Form;
 my %input = Form();

  Let me try.

  
  use CGI;
  %params = $q-Vars;
  

Try again. Your code throws the following error:

Can't call method Vars on an undefined value ...

--
felix

--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

---
Incoming mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.372 / Virus Database: 207 - Release Date: 6/20/2002

---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.372 / Virus Database: 207 - Release Date: 6/20/2002


--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---
Incoming mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.372 / Virus Database: 207 - Release Date: 6/20/2002

---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.372 / Virus Database: 207 - Release Date: 6/20/2002


-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




Re: CGI.pm v/s roll-your-own [WAS:] Displaying Problems

2002-06-27 Thread perl-dvd

by the way, :) is a smiley, it means I'm joking with you. (reference the last email)

With mine, there is nothing beyond what I described.  The hash structure I gave you 
below, that's
it.  Form.pm takes the input, makes a hash with it, and if you understand how to use a 
hash and
array ref, your set.  Its just a hash, no objects, no functions, just a hash.

So you use:

use Form.pm
my %input = Form();

and your done.  All the data is sitting in the hash %input.  You can at that point do 
anything you
want to with it.

Like I say, simple and efficient.

If you decide you want to know what you are getting from the cgi input, simply do 
something to this
effect:
---
foreach $key(keys(%input)){  # loop through all of the hash elements

if (ref($input{$key}) eq ARRAY){  # if this is an array ref

local $ = ', ';  # change the array delimiter to ,  temporarily for 
display
print qq^\@{\$input{$key}} = (@{$input{$key}})\n^;
# print out the array's values
# (make it easy to see which name in the hash this array belongs to)

} else {  # if its not an array ref

print qq^\$input{$key} = $input{$key}\n^;  # print out the hash element

}

}
---

Anyway, you will be able to get a closer look at it within a months time if you so 
choose.

David


- Original Message -
From: Scot Robnett [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Sent: Thursday, June 27, 2002 10:03 AM
Subject: RE: CGI.pm v/s roll-your-own [WAS:] Displaying Problems


I haven't seen the rest of your module, so I'm not so sure that the point
really stands. It might. But, adding one line to initialize the CGI object
is really not that big a deal considering the kind of power you have
associated with that object. How much extra work do I have to do to utilize
the keys and values in your hash vs. the CGI.pm hash?

The data structure you get back from CGI.pm is:

- Called in a scalar context, a tied hash reference.

- Called in a list context, a standard hash
  containing key/value pairs.

- Keys/params with multiple values are returned
  as a packed string separated by \0.


Scot R.
inSite



-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
Sent: Thursday, June 27, 2002 10:44 AM
To: Scot Robnett; [EMAIL PROTECTED]
Cc: Felix Geerinckx
Subject: Re: CGI.pm v/s roll-your-own [WAS:] Displaying Problems


my point stands :)

So out of curiosity, what kind of data structure do you get back with this?
If its as I would
imagine, then its very close to my own.

%hash = (
'a_name' = 'value',   # for single name value pairs
'b_name' = [multiple, values, for, this],   # for single name
muli-value sets
'c_name' = {
 'original_name' = 'filename.jpg',
 'size' = '23554',
 'location' =
'/tmp/fileupload/tmpfile-10028983-88.57.192.3-2783-298374-927837'
 } # for files
);

Of coarse I know the image information is not in there the same way.

David


- Original Message -
From: Scot Robnett [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Cc: Felix Geerinckx [EMAIL PROTECTED]
Sent: Thursday, June 27, 2002 8:29 AM
Subject: RE: CGI.pm v/s roll-your-own [WAS:] Displaying Problems


Picky, picky. :)
You're right, my bad.

use CGI;
my $q = new CGI;
my %params = $q-Vars;


SR




-Original Message-
From: Felix Geerinckx [mailto:[EMAIL PROTECTED]]
Sent: Thursday, June 27, 2002 2:16 AM
To: [EMAIL PROTECTED]
Subject: RE: CGI.pm v/s roll-your-own [WAS:] Displaying Problems


on Thu, 27 Jun 2002 02:54:10 GMT, [EMAIL PROTECTED] (Scot Robnett)
wrote:

 Its pretty hard to make it more simple than:
 use Form;
 my %input = Form();

  Let me try.

  
  use CGI;
  %params = $q-Vars;
  

Try again. Your code throws the following error:

Can't call method Vars on an undefined value ...

--
felix

--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

---
Incoming mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.372 / Virus Database: 207 - Release Date: 6/20/2002

---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.372 / Virus Database: 207 - Release Date: 6/20/2002


--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---
Incoming mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.372 / Virus Database: 207 - Release Date: 6/20/2002

---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.372 / Virus Database: 207 - Release Date: 6/20/2002


--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED

Re: CGI.pm v/s roll-your-own [WAS:] Displaying Problems

2002-06-27 Thread John Brooking

After all, Hubris is one of St. Larry's Three Cardinal
Virtues! So this seems to me to be a properly Perl-ish
attitude.

- John

--- [EMAIL PROTECTED] wrote:
 ...
 minded here, I'm just the type of person who if I'm
 not perfectly happy with the way something works
 (whether programming or in the real world), I
 determine whether I can fix it, if I can I do.


=
Now it's over, I'm dead, and I haven't done anything that I want; or, I'm still 
alive, and there's nothing I want to do. - They Might Be Giants, http://www.tmbg.com

__
Do You Yahoo!?
Yahoo! - Official partner of 2002 FIFA World Cup
http://fifaworldcup.yahoo.com

-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




Re: CGI.pm v/s roll-your-own [WAS:] Displaying Problems

2002-06-27 Thread perl-dvd

That actually has nothing to do with it.  It has everything to do with the strong 
desire to improve
circumstances, be innovative, make the world a better place.  If you want to call me 
arrogant for
trying to improve my surroundings, go right ahead, but your tacking the wrong name on 
me.

David


- Original Message -
From: John Brooking [EMAIL PROTECTED]
To: [EMAIL PROTECTED]; Todd Wade [EMAIL PROTECTED]
Cc: [EMAIL PROTECTED]
Sent: Thursday, June 27, 2002 12:57 PM
Subject: Re: CGI.pm v/s roll-your-own [WAS:] Displaying Problems


After all, Hubris is one of St. Larry's Three Cardinal
Virtues! So this seems to me to be a properly Perl-ish
attitude.

- John

--- [EMAIL PROTECTED] wrote:
 ...
 minded here, I'm just the type of person who if I'm
 not perfectly happy with the way something works
 (whether programming or in the real world), I
 determine whether I can fix it, if I can I do.


=
Now it's over, I'm dead, and I haven't done anything that I want; or, I'm still 
alive, and there's
nothing I want to do. - They Might Be Giants, http://www.tmbg.com

__
Do You Yahoo!?
Yahoo! - Official partner of 2002 FIFA World Cup
http://fifaworldcup.yahoo.com



-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




RE: CGI.pm v/s roll-your-own [WAS:] Displaying Problems

2002-06-27 Thread Scot Robnett

True. Whew, my hand hurts from all that extra typing. ;)

Scot R.



-Original Message-
From: John Brooking [mailto:[EMAIL PROTECTED]]
Sent: Thursday, June 27, 2002 1:50 PM
To: Scot Robnett; [EMAIL PROTECTED]
Cc: Felix Geerinckx
Subject: RE: CGI.pm v/s roll-your-own [WAS:] Displaying Problems


See?! Your version just expanded by 50% !!  ;-)

--- Scot Robnett [EMAIL PROTECTED] wrote:
 Picky, picky. :)
 You're right, my bad.

 use CGI;
 my $q = new CGI;
 my %params = $q-Vars;


=
Now it's over, I'm dead, and I haven't done anything that I want; or, I'm
still alive, and there's nothing I want to do. - They Might Be Giants,
http://www.tmbg.com

__
Do You Yahoo!?
Yahoo! - Official partner of 2002 FIFA World Cup
http://fifaworldcup.yahoo.com
---
Incoming mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.372 / Virus Database: 207 - Release Date: 6/20/2002

---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.372 / Virus Database: 207 - Release Date: 6/20/2002


-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




Re: CGI.pm v/s roll-your-own [WAS:] Displaying Problems

2002-06-27 Thread John Brooking

Oh, dear, I was afraid that that message might be
misinterpreted! I thought my humor was evident enough
by the informal language, but I guess I should have
put a smiley on it too.

I didn't mean hubris in a bad sense. The sense I get
from Larry's use of it (from reading the Camel book),
and the sense I meant here, was having enough
self-confidence to believe that you *can* do all the
things you mention, rather than just putting up with
what is handed to you because you're too humble to
think that little old you could do better. It might
tend towards arrogance in some cases, maybe,
especially when unwarranted by the actual talent
behind it, but true arrogance connotes more negative
personality traits, such as not being open to other
points of view or debate, and that's *not* what I
meant.

I did assume familiarity with Larry's philosophy of
Laziness, Impatience, and Hubris as The Basis of All
Good Software Design, and maybe I shouldn't have. I'd
quote some of this from the Camel book, but I don't
have it with me. I would summarize it as good
programmers don't like write the same thing over and
over, yet if they don't like something they got
elsewhere, they'll write something themselves that
they like better. I suspect he intentionally chose
provocative words to get people's attention, but his
claim that they lead to good software design implies
that far from being bad traits, he thinks that they
are actually good traits, properly applied.

I apologize that my message was taken negatively. I
meant it positively. I support the spirit of your
effort.

- John

--- [EMAIL PROTECTED] wrote:
 That actually has nothing to do with it.  It has
 everything to do with the strong desire to improve
 circumstances, be innovative, make the world a
 better place.  If you want to call me arrogant for
 trying to improve my surroundings, go right ahead,
 but your tacking the wrong name on me.
 
 David
 
 
 - Original Message -
 From: John Brooking [EMAIL PROTECTED]
 To: [EMAIL PROTECTED]; Todd Wade
 [EMAIL PROTECTED]
 Cc: [EMAIL PROTECTED]
 Sent: Thursday, June 27, 2002 12:57 PM
 Subject: Re: CGI.pm v/s roll-your-own [WAS:]
 Displaying Problems
 
 
 After all, Hubris is one of St. Larry's Three
 Cardinal
 Virtues! So this seems to me to be a properly
 Perl-ish
 attitude.
 
 - John


=
Now it's over, I'm dead, and I haven't done anything that I want; or, I'm still 
alive, and there's nothing I want to do. - They Might Be Giants, http://www.tmbg.com

__
Do You Yahoo!?
Yahoo! - Official partner of 2002 FIFA World Cup
http://fifaworldcup.yahoo.com

-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




Re: CGI.pm v/s roll-your-own [WAS:] Displaying Problems

2002-06-27 Thread perl-dvd

No offence taken, I have heard the word hubris before, but I wasn't certain of the 
meaning, so
naturally I looked it up (now that you mention it, I have heard that quote out of the 
Camel book
before).  At first I thought it was a compliment the way you said it and all, but 
after seeing
dictionary.com's definition, I wondered.  Well thank you for the compliment.

David


- Original Message -
From: John Brooking [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Cc: [EMAIL PROTECTED]
Sent: Thursday, June 27, 2002 3:39 PM
Subject: Re: CGI.pm v/s roll-your-own [WAS:] Displaying Problems


Oh, dear, I was afraid that that message might be
misinterpreted! I thought my humor was evident enough
by the informal language, but I guess I should have
put a smiley on it too.

I didn't mean hubris in a bad sense. The sense I get
from Larry's use of it (from reading the Camel book),
and the sense I meant here, was having enough
self-confidence to believe that you *can* do all the
things you mention, rather than just putting up with
what is handed to you because you're too humble to
think that little old you could do better. It might
tend towards arrogance in some cases, maybe,
especially when unwarranted by the actual talent
behind it, but true arrogance connotes more negative
personality traits, such as not being open to other
points of view or debate, and that's *not* what I
meant.

I did assume familiarity with Larry's philosophy of
Laziness, Impatience, and Hubris as The Basis of All
Good Software Design, and maybe I shouldn't have. I'd
quote some of this from the Camel book, but I don't
have it with me. I would summarize it as good
programmers don't like write the same thing over and
over, yet if they don't like something they got
elsewhere, they'll write something themselves that
they like better. I suspect he intentionally chose
provocative words to get people's attention, but his
claim that they lead to good software design implies
that far from being bad traits, he thinks that they
are actually good traits, properly applied.

I apologize that my message was taken negatively. I
meant it positively. I support the spirit of your
effort.

- John

--- [EMAIL PROTECTED] wrote:
 That actually has nothing to do with it.  It has
 everything to do with the strong desire to improve
 circumstances, be innovative, make the world a
 better place.  If you want to call me arrogant for
 trying to improve my surroundings, go right ahead,
 but your tacking the wrong name on me.

 David


 - Original Message -
 From: John Brooking [EMAIL PROTECTED]
 To: [EMAIL PROTECTED]; Todd Wade
 [EMAIL PROTECTED]
 Cc: [EMAIL PROTECTED]
 Sent: Thursday, June 27, 2002 12:57 PM
 Subject: Re: CGI.pm v/s roll-your-own [WAS:]
 Displaying Problems


 After all, Hubris is one of St. Larry's Three
 Cardinal
 Virtues! So this seems to me to be a properly
 Perl-ish
 attitude.

 - John


=
Now it's over, I'm dead, and I haven't done anything that I want; or, I'm still 
alive, and there's
nothing I want to do. - They Might Be Giants, http://www.tmbg.com

__
Do You Yahoo!?
Yahoo! - Official partner of 2002 FIFA World Cup
http://fifaworldcup.yahoo.com



-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




Re: CGI.pm v/s roll-your-own [WAS:] Displaying Problems

2002-06-27 Thread fliptop

On Thu, 27 Jun 2002, [EMAIL PROTECTED] opined:

:With mine, there is nothing beyond what I described.  The hash structure I gave you 
:below, that's
:it.  Form.pm takes the input, makes a hash with it, and if you understand how to use 
:a hash and
:array ref, your set.  Its just a hash, no objects, no functions, just a hash.
:
:So you use:
:
:use Form.pm
:my %input = Form();
:
:and your done.  All the data is sitting in the hash %input.  You can at that point do 
:anything you
:want to with it.
:
:Like I say, simple and efficient.

can you limit upload sizes?
can you disable uploads altogether?
how does it handle errors, especially during file uploads?
can you exclude undefined parameters from the parameter list?
does it have a debug mode?


-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]