user-pic

David Cantrell

  • Posted Small but hideously formed to David Cantrell

    For several years I've been using a shell script that runs once a day from a cron job, and automagically subscribes me to the RSS feeds that rt.cpan creates for my modules. That means that whenever I release a new module, within a day or two I'll be subscribed to its bug reports, and within…

  • Posted Learning from other industries, part 1 of n to David Cantrell

    My first job was as a bus conductor, and my second one was as a student trainee in an engineering company - proper engineering, with production lines, big machines, hot things, and "danger of death" notices on equipment. In both of these, safety was an important concern, and especially in the…

  • Commented on Three-value logic in Perl
    anyone who puts interns and volunteers into the list of empoyees should be fired too! if they're employees they get minimum wage and can't be got rid of on a whim....
  • Commented on Devel::Cover and meta-testing
    Forgot to add the footnote ... * the debugger fails horribly when you use anonymous subroutines which have :Attributes. This is a bug in perl itself, not in Devel::Cover....
  • Posted Devel::Cover and meta-testing to David Cantrell

    At work I recently set up a Jenkins instance to run all our tests whenever someone pushes changes to the master branch of our git repo. And, after changing some stuff in our code that made the perl debugger cry*, I added

  • Commented on CPANdeps DoS
    I was apologising for being lazy and not bothering to take the time to only list the offending machines. I could have done, because they were all in my logs, but I just couldn't be bothered with writing a very...
  • Posted CPANdeps DoS to David Cantrell

    Why anyone would want to spider CPANdeps is beyond me, but a load of idiots in the Ukraine do want to, and their bot, as well as ignoring robots.txt (just like all the other search engines in the entire world, it seems) sends requests as fast as it can. All the timeouts and the errors about…

  • Commented on CPANdeps now links to the right bug-tracker
    yay! wordpress (or whatever the hell this site uses) ate my link! google for "david cantrell cpan r2e"....
  • Commented on CPANdeps now links to the right bug-tracker
    If you use Github for your code then it's *really* convenient to also use Github for your bug reports, especially when those reports come with a "pull request" so you can merge a patch with just one click. I also...
  • Posted CPANdeps now links to the right bug-tracker to David Cantrell

    CPANdeps has for ages had links to each distribution's bug tracker. Trouble is, it always just linked to rt.cpan. Lots of people don't use that any more, preferring to, for example, use the one that github creates for each repository hosted there. META.yml (and…

  • Commented on CPANdeps now understands META.json files
    I updated it to continue to use YAML to read META.yml, but to also use JSON to read META.json. Anything else would be, frankly, crazy. And the code is horrible enough already without adding an extra dose of lunacy. As...
  • Posted CPANdeps now understands META.json files to David Cantrell

    Because YAML isn't hip and trendy enough, at some point recently the toolchain started using META.json files as well as META.yml. Some foolish module authors only use META.json. Because CPANdeps didn't know about this file, their dependency graphs weren't being generated. Well, now…

  • Posted I love Github to David Cantrell

    Github makes accepting patches from other people and applying them soooooo easy!

    Instead of having to extract the patch from an email onto my workstation and manually apply it, applying this contribution was a simple matt…

  • Posted CPANdeps is also moving to David Cantrell

    In fact, by the time you read this it will have moved to its new home. The move is for the same reasons as laid out in my recent post about cpXXXan - contention for disk access slowing things down, and not…

  • Posted cpXXXan is moving ... to David Cantrell

    ... although you probably won't notice.

    Executive summary: your disks hate you

    Until about 20 minutes ago, cpXXXan ran in a virtual machine on a box that I rent. That box also hosts VMs for CPANdep…

  • Posted Big Number::Phone update soon to David Cantrell

    There's lots of changes coming soon to Number::Phone - see github for a sneak preview.

    They're mostly as a result of me pulling in data from Google's libphonenumber and …

  • Posted CPANdeps re-design to David Cantrell

    Having prettified CPAN.org, perl.org and others, Leo Lapworth has now kindly had one of his designers apply their skills to CPANdeps. I think you'll all agree that it's a great improvement.

    I'…

  • Commented on Adventures in self-documenting code
    Thanks. I have unleashed The Crazy....
  • Posted Adventures in self-documenting code to David Cantrell

    Further to my recent work on Params::Validate::Dependencies, I wanted to make the code-refs returned by the magic any_of / all_of etc functions somewhat self-documenting. And I've

  • Posted Number::Phone::Country now knows about South Sudan to David Cantrell

    On 9 July 2011, southern Sudan gained its independence, and became the independent republic of South Sudan. It has been allocated ISO 3166 country code SS and

  • Commented on Params::Validate::Dependencies and Data::Domain::Dependencies
    Data::Domain::Dependencies will always depend on Params::Validate::Dependencies though, as it's nothing but a very thin wrapper around it - an interface converter, if you like. So I think it makes sense to bundle them together....
  • Commented on Params::Validate::Dependencies
    I've uploaded it to the CPAN. It already supports mutually exclusive parameters, via the one_of function. The four functions it makes available map to Boolean logical ops thus: none_of: NOT / NOR one_of: XOR any_of: OR all_of: AND...
  • Posted Params::Validate::Dependencies and Data::Domain::Dependencies to David Cantrell

    I've unleashed Params::Validate::Dependencies on an unsuspecting world, and, because it was easy, have also bundled a Data::Domain subclass with it too. I hope people find it useful!

    Having hacked on this stuff, I am now firmly convinced not only that all problems can be solved by introdu…

  • Posted Params::Validate::Dependencies to David Cantrell

    Params::Validate is a very useful module, which lets you easily enforce rules such as "the 'foo' parameter to the 'bar' subroutine should be an arrayref". It also has some very basic support for dependencies - eg, that the 'baz' parameter must always be used in conjunction with the 'bar'…

  • Commented on Ch-ch-ch-ch-changes
    LISP-stylee macros. Ability to have multiple versions of modules installed. A text/character encoding system that doesn't confuse the hell out of me....
  • Posted Moved to Github to David Cantrell

    I've moved all my code to Github, including cpXXXan and CPANdeps. I also split the monolithic repo that used to contain all my perl modules into 41 separate repos, one per distribution, using a recipe…

  • Posted cpXXXan update to David Cantrell

    Someone sent me a bug report for the CP5.8.8AN mirror, where his CPAN client was failing to resolve a module dependency, despite that module having passed its tests on perl 5.8.8.

    The culprit was the rather badly named "common::sense", which, if …

  • Posted The rate of CPAN churn to David Cantrell

    I have a minicpan on my laptop in my home directory. My home directory gets included in my backups. This means that by looking at my old backups, I can get a good idea of how much the CPAN changes ...

    snapshots $ du -sch */.../laptop-home-dir/minicpan 1.5G daily…
  • Commented on Perl101: finding words in words
    or if you care about the exit status of the perl script, exec perl and don't exit from the shell script...
  • Commented on Perl101: finding words in words
    I've come across at least one platform where /usr/bin/env didn't exist: on Unicos, env is somewhere else in the $PATH, but I forget exactly where. I've found this to be more portable, at the cost of being exceedingly ugly, and...
Subscribe to feed Recent Actions from David Cantrell

  • hugo-van-der-sanden.myopenid.com commented on Adventures in self-documenting code

    While I'd prefer to see more explanation in comments, I don't have a huge problem with the use of PadWalker.

    I dislike the MI though: particularly if it is just for one method, I'd much rather delegate (with some magic to inject the delegation to avoid code duplication, if needed); in my own code, I'd probably delegate even for many methods.

  • Steven Haryanto commented on CPANdeps now links to the right bug-tracker

    This site uses Movable Type (MT), http://www.movabletype.org/

  • Steven Haryanto commented on CPANdeps now links to the right bug-tracker
    The feeling is a kind of frustration: I already made the module, wrote the tests, wrote documentation, wrote manifest, released to cpan, blah, blah, blah, and now, having done all that, I also have to participate in this rt and forum and annotation and ratings?

    Think of it this way: since you decide to release something (in this case, a CPAN distribution) to the public, either one way or another the public will comment on it. CPAN just provides the tools. Authors are always allowed to ignore all comments, ratings, bug reports.

    BTW, I've never participated in…

  • Buddy Burden commented on Three-value logic in Perl

    I'm not sure I agree that "NULL" is a terrible name for unknown data. After all, as Hercynium writes:

    Generally, when I read the word "null" I think of it as referring to something specific, representing the absence of a value.

    Which is exactly right. We have a database full of data. How did the data get there? Someone entered it. If there is an absence of data, it's because no one entered it. If no one entered it, it's because no one knew what it was, or they haven't gotten around to entering it yet--either way, it's unknown.

    Furtherm…

  • MeirG commented on Three-value logic in Perl

    NULL might also mean "Not Applicable" such as the "State" address field for Israel. (Hardly big enough to place the country's name...)

    In fact, in my old Ordain Inc. days (a database machine start-up that never took-off) we listed up to SEVEN totally different meanings that were all have to share the poor SQL NULL concept! Forgot most of them.

Subscribe to feed Responses to Comments from David Cantrell

About blogs.perl.org

blogs.perl.org is a common blogging platform for the Perl community. Written in Perl and offering the modern features you’ve come to expect in blog platforms, the site is run by Dave Cross and Aaron Crane, with a design donated by Six Apart, Ltd.