Personally, I keep the mindset at all times that others may want to use the code I'm writing, so I *never* consider what I'm writing as something I'll use only for myself. That 'halves' the problem right there.

The other feedback so far on this thread contains great advice, so I don't want to re-invent the wheel.

If I'm to use one tiny function/method from a distribution that depend on a hundred other distributions, I'll re-write my own, or even copy/paste the part I need (so long as the license blends with mine).

If it's a large dist I want (again requiring many others) where there's a few pieces I need/desire, I might completely rethink my design and work around that situation, if I can't find something smaller and more compact in another dist.

Already been said, but criteria is author, bug fix time, responsiveness of author and/or collaborators, revision history, participation within the Perl community as a whole, and one of the often overlooked things, how large is this distribution I'm publishing to the CPAN... is it small enough that if I avoid a single external distribution I can stick to core? Or is it so large it's going to take 20 minutes to compile and install anyway?

I've always tried my best to stick with core where possible, even if I have to do some extra work to do so. Heck, I still try to make my code work with perl-5.8.9 wherever possible.

ps. Great question.

pss. Oh yeah, nearly forgot: test coverage, and unit test suite quality are extremely high on my priority list when making such a decision.


In reply to Re: Criteria for when to use a cpan module by stevieb
in thread Criteria for when to use a cpan module by nysus

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.