Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw

Re: Re: Re: Re: Re: Why CGI::Application?

by DrHyde (Prior)
on Jan 15, 2004 at 09:39 UTC ( #321507=note: print w/replies, xml ) Need Help??

in reply to Re: Re: Re: Re: Why CGI::Application?
in thread Why CGI::Application?

Your logic is horribly flawed. You just _added_ to the code that your maintainance crew will have to work with.

Don't be stupid. I had to write just as much code. Not more code.

Not only that but your code almost certainly doesnt work the way the other project coded in your firm that used similar rationale.

Yes, quite possibly, although this is the first large webby app we have and IME using the same techniques for titchy apps and large apps is not always a good thing anyway. Not that that is important. This uses an if statement rather than a not-particularly-mainstream perl module. If someone finds maintaining an if statement too complex for his poor little brane, then he shouldn't be maintaining code at all, and would certainly find a CGI::Application solution (which would of course use if statements elsewhere in it anyway) far too difficult.

If you had stuck to CGI::Application, your maintainence crew would have the support of thousands of programmers with considerable experience in using it

Yes, there's so many people using CGI::Application that I hadn't even heard of it until a couple of months ago.

they would have recourse to an external party with considerable skill (and from my experience a desire to help) to resolve ongoing issues in the code.

If they have trouble with if statements then they also have recourse to external parties with considerable skill (and from my experience a desire to help). Such as the perl-beginners mailing list, this august forum, their local perl mongers, and the Llama book.

Simply upgrading to the latest release would probably resolve all the maintainence issues associated with the handler. Not to mention other issues like security patches etc.

What CGI::Application does is so damned simple that having any security issues in it should be a shooting offence. It's just a glorified if statement. I am quite certain that I have not introduced any security bugs into my code through my use of an if statement. If I have, I promise to eat my hat and post a link to the video here.

Just to rub the point in, did you roll your own CGI as well?

Yes! I also decided that I didn't like Mr. Wall's implementation of perl, and so wrote my own in lovingly hand-crafted assembler! Next, I'll be replacing that nasty operating system thing! I think I'll write it in Postscript!

Replies are listed 'Best First'.
Re: Re: Re: Re: Re: Re: Why CGI::Application?
by dragonchild (Archbishop) on Jan 19, 2004 at 13:55 UTC
    While I have tended to agree with many things you've said, and I especially like your stick-to-it attitude, I'm going to take issue with one thing in your reply.

    Yes, there's so many people using CGI::Application that I hadn't even heard of it until a couple of months ago.

    There are literally hundreds of Perl modules that I've never heard of that have thousands of users, and I've been writing Perl for a living since 1995. For example, I learned how to use File::Spec 6 months ago. Same with File::Basename. In fact, I'd never heard of them (save as a quick mention in the Camel book) ... till I needed them. I had never needed to do file-level operations before (or since), so I never looked.

    To bring the point closer to home, I develop large-scale web applications for a living. I've been doing this for at least 2 years now. Two weeks ago was the first time I'd taken a close look at CGI::Application. Why? I could never have implemented it if I'd wanted to. The current app I'm on is the first time since 1995 that I'm implementing a new application from scratch. C::A is an infrastructure decision you can't make 4 years into a project.

    A lot of people are in a similar situation. You want to try this C::A thing, but you can't because the app you're working on already has an infrastructure. This doesn't mean you don't want to try it. This doesn't mean you don't think it's a good idea. I've been itching to try this module for about a year now, but never looked at it closely, because I couldn't play with it at work.

    We are the carpenters and bricklayers of the Information Age.

    Please remember that I'm crufty and crochety. All opinions are purely mine and all code is untested, unless otherwise specified.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://321507]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others chanting in the Monastery: (4)
As of 2017-02-22 05:08 GMT
Find Nodes?
    Voting Booth?
    Before electricity was invented, what was the Electric Eel called?

    Results (324 votes). Check out past polls.