Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid
 
PerlMonks  

Re: CPAN Module Evaluation Red-Flags

by Anonymous Monk
on Jul 28, 2003 at 05:43 UTC ( #278347=note: print w/replies, xml ) Need Help??


in reply to CPAN Module Evaluation Red-Flags

So what have I missed?

The fact that many core modules that you most likely use on a daily basis would set off plenty of red flags.

A few other points I think you should rethink:

  • it reinvents wheels, uses globals - sometimes an author doesn't want to depend on existing code (particularly if it's not a core module). Sometimes code is too slow (this matters, see perl if you disagree). There are good reasons for using globals! Strict rules of that sort rarely do anyone but the newest programmer any good.
  • or HTML::* - why? There are plenty of exceptionally good modules in that namespace (granted, I think they should almost all be in XHTML nowadays, but close enough).
  • The language is uncomfortable with perl terms: we pass in what is known as a "Hash Reference" - possibly a bad sign, but remember not all documentation is written for experts, explaining simple concepts probably doesn't belong in module docs (links would be better), but there's a lot of gray area here.

As for flags to add - how about tests? This is a major one I look for.

Most of all I'd advise you to check the source of modules you deem trustable, if it ends up being no good, take another look at the 'red flag' ones.

Replies are listed 'Best First'.
Re: Re: CPAN Module Evaluation Red-Flags
by bsb (Priest) on Jul 28, 2003 at 07:18 UTC
    Must ... not ... bite, ... being ... trolled ... nooo...

    A) Prejudices/Heuristics aren't 100%. 1 Red flag != bad. 10 red flags == probably bad.

    B) HTML::* and CGI::* just seem to acquire more flaky modules than B::*, Devel::* or IO::*. I can't imagine why that would be...

    C) This evaluation is simply on the docs or README. Testing or it's absence is rarely evident

      Must ... not ... bite, ... being ... trolled ... nooo...

      Criticizing a method of evaulation while offering constructive suggestions is hardly a troll. What did you expect: "Golly, gee bsb, you sure are smart with your module red-flags and what-not, great work. I hope someday I can be as smart as you." (now that's the beginning of a good troll, but I'll get to the point)

      HTML::* and CGI::* just seem to acquire more flaky modules than B::*, Devel::* or IO::*

      90% of everything is garbage. This applies to modules as well, and since I'd wager there are way more HTML::* modules out there, and there's only so many useful ones that can be written, you get a lot of crap. Very few people are going to write an B::* program as their first module. It's the same reason why there's so more much crud Perl code around than python or ruby. More people, more crappy code. Simple.

      Testing or it's absence is rarely evident

      Automated tests should be provided.

        Boy I really wish you werent anonymous. I'd follow your posts otherwise. Please consider using a nick for your posts. That way folk like myself can keep up with what you have to say.

        90% of everything is garbage

        This is one of my favorite lines. I first heard it in context of Science Fiction "90% of everything is crap, do you expect Sci-Fi to be any different". My only beef wold be that I bet CPAN has way better odds. My own estimate is that its more like 50% of CPAN is crap (including at least one module I've posted myself). Which in of itself is somewhat impressive.

        It's the same reason why there's so more much crud Perl code around than python or ruby.

        Is this really true on a percentage basis? I'd bet it isnt... (And hope to hell im right :-)

        Get yerself a nick buddy. Youll be just as anonymous as "some_snarky_perl_programmer" as you are as anonymonk. :-)
        ---
        demerphq

        <Elian> And I do take a kind of perverse pleasure in having an OO assembly language...

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others lurking in the Monastery: (6)
As of 2021-04-12 23:17 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found

    Notices?