Judging the quality of contributed Perl code
So you're going to download a module from Perl's CPAN. Good - you've learnt the first rule which is to re-use code that someone else has written, and NOT write your own. But then you have another conundrum - which of the dozens of modules that look as if they should be suitable should you download - which are reliable and of good quality, and which are, frankly, naff?
You can't measure "Quality". Can't put an objective number on it to rank modules. But you CAN monitor features that you'll find in well written and well maintained modules and measure those, and such a measure will be an INDICATION that a module is likely to be to a high standard. That's been christened Kwalitee
- sounds like quality, but not quite the same! You'll be interested in CPANTS - The Comprehensive Perl Archive Network Testing Service.
The CPANTS service at http://cpants.perl.org
is a testing service which uses automatic criteria to rank CPAN modules. The presence (or otherwise) or readme files, manifests, configuration files, etc is one of the criteria used. Then the presence of tests, a versioning system, POD documentation (for ALL the methods, please!) and POD that compile properly too is measures. A module is scored better if it has "use strict;", and it's also scored higher if it's a prerequisite of someone else's module.
If you're a CPAN contributor, you can of course write your code to get a high Kwalitee rating without it being high quality - that's rather like cheating the rankings for a search engine - and you can even use the Test::Kwalitee module that lets you check out your ranking before you submit. I probably shouldn't even tell you about the guy who has a CPAN module who will, at a price, declare your module as something that his depends on ... (written 2007-06-06, updated 2007-06-07)
Associated topics are indexed as below, or enter http://melksh.am/nnnn for individual articlesP219 - Perl - Libraries and Resources 
What do I mean when I add things in Perl? - (2011-08-02) 
The week before Christmas - (2010-12-23) 
Expect in Perl - a short explanation and a practical example - (2010-10-22) 
Syncronise - software, trains, and buses. Please! - (2010-08-22) 
Operator overloading - redefining addition and other Perl tricks - (2009-09-27) 
Loading external code into Perl from a nonstandard directory - (2009-06-12) 
Do not re-invent the wheel - use a Perl module - (2009-06-11) 
Debugging and Data::Dumper in Perl - (2008-11-02) 
About dieing and exiting in Perl - (2008-11-01) 
Using English can slow you right down! - (2007-11-25) 
Ordnance Survey Grid Reference to Latitude / Longitude - (2007-10-14) 
Outputting numbers as words - MySQL with Perl or PHP - (2007-06-17) 
Self help in Perl - (2006-06-14) 
Coloured text in a terminal from Perl - (2006-05-29) 
Why reinvent the wheel - (2006-05-06) 
Use standard Perl modules - (2005-06-25) 
Where do Perl modules load from - (2005-06-24) 
Avoid the wheel being re-invented by using Perl modules - (2004-11-08) 
Talk review - Idiomatic Perl, David Cross - (2004-10-12)
Some other Articles
Asda opening large new store in MelkshamPerl, the substitute operator sBathtubs and pecking birdsfor loop - how it works (Perl, PHP, Java, C, etc)Judging the quality of contributed Perl codeSunday afternoonWhat are factory and singleton classes?Five of the best - pictures from LondonAn update on Perl - where is it going?New Serieses for the summer on TV
4722 posts, page by page
Link to page ... 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95 at 50 posts per page
This is a page archived from The Horse's Mouth at
the diary and writings of Graham Ellis.
Every attempt was made to provide current information at the time the
page was written, but things do move forward in our business - new software
releases, price changes, new techniques. Please check back via
our main site for current courses,
prices, versions, etc - any mention of a price in "The Horse's Mouth"
cannot be taken as an offer to supply at that price.
Link to Ezine home page (for reading).
Link to Blogging home page (to add comments).