Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris
 
PerlMonks  

Re: Top Seven (Bad) Reasons Not To Use Modules

by DrHyde (Prior)
on Mar 13, 2009 at 11:41 UTC ( #750377=note: print w/ replies, xml ) Need Help??


in reply to Top Seven (Bad) Reasons Not To Use Modules

A legitimate reason to avoid modules is that for those not steeped in the perl way, installing stuff from the CPAN is difficult - "what are all these questions it's asking me? I'm confused!" - and that installing stuff from the CPAN locally in your own directory is Dark Magic for most people. You can disagree with that if you like - lots of perl people do disagree with it. That's fine. You're allowed to be wrong.

That's why rsnapshot (which I used to maintain, I've handed over to someone else now) requires no non-core modules at all, at the expense of lots of wheel-reinvention. In a lot of cases, rsnapshot will be the first time perl has been used on a machine (aside from anything that the OS itself uses it for) and so CPAN.pm won't be configured.

For stuff targetted more at a perly audience where familiarity with installing CPAN modules can be taken as given, I do of course use other peoples' modules. But even so, I don't bother if I only need a tiny trivial piece of functionality. use File::Slurp; ...read_file... is ridiculous overkill. I avoid pointless dependencies like that because I know that if I don't, my code will be made harder to install even for perl-heads. That's because if any of my pre-requisites fail, then CPAN.pm won't install them, and then it won't install my code because my code won't pass its tests without 'em.


Comment on Re: Top Seven (Bad) Reasons Not To Use Modules
Download Code

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://750377]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others chanting in the Monastery: (5)
As of 2015-07-04 19:23 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (60 votes), past polls