user-pic

Buddy Burden

  • About: 16 years in California, 27 years in Perl, 36 years in computers, 57 years in bare feet.
  • Posted Mystery Buglet #2 to Buddy Burden

    Now, once upon a time, I wrote a ="https://blogs.perl…

  • Commented on TIL about Literate Programming
    > Larry Wall is a linguist and has a degreee in Natural and Artificial Languages. Yep. It's one of the things that attracted me to Perl in the first place. :-)...
  • Posted TIL about Literate Programming to Buddy Burden

    As a programmer whose first job was in the mortgage software industry, “TIL” has always meant “Truth In Lending” to me: you know, that document that the bank is required to give you when you get a mortgage, that’s supposed to explain how much you’re

  • Posted To Hardcode, or Not to Hardcode: That Is the (Unit) Test-ion to Buddy Burden

    In my last blog post, there was a bit of a discussion in the comments about whether data in unit tests should be hardcoded or not.  Tom Metro scored the last point with this…

  • Commented on A Date with CPAN, Update #3: Golden Jubilee
    > We always coach developers to use hard coded test data to the extent practical. When writing tests you have to unlearn a lot of DRY principles. ... What you're suggesting can be good advice—I certainly agree that repeating yourself...
  • Commented on A Date with CPAN, Update #3: Golden Jubilee
    > A variant similar to what you added is coming to a future version of Time::Local. PR#15 It looks like it's there already! I'm looking forward to converting over to using these new functions: timegm_posix and timelocal_posix. Should make my...
  • Commented on A Date with CPAN, Update #3: Golden Jubilee
    > I would test multiplication like this: Well, sure. That's why it's a dumb example. :-) But imagine if multiplication worked differently on different computers ... due to the effects of timezones and DST, that's what I'm up against trying...
  • Posted A Date with CPAN, Update #3: Golden Jubilee to Buddy Burden

    [This is an addendum post to a series.  You may want to begin at the beginning.  The last update was

  • Posted Think globally, act <code>local</code>-ly to Buddy Burden

    Here’s a pattern which took me a while to figure out this past week, and therefore seemed worthy of sharing with you guys.

    First, let’s set the situation.  (These are certainly not the only conditions under which you could use this pattern, but it’ll probably be easi…

  • Posted I Got Six (YAPCs) to Buddy Burden

    [This is my sixth YAPC / TPC—technically, my first TPC.  If you like, you can read about my other YAPC experiences: YAPC 2011,

  • Commented on Why I recommend using the "++" system of Metacpan
    Well said. I've gone and ++'ed all the modules I regularly install on every new Perl installation I create. Thanks for the reminder....
  • Commented on Trials and troubles with changing @INC
    Hey, Ryan. How's it going? Just tried to look at my failures, but I hit two problems: * The author page says I have two failing modules, but the module page only lists one with my name on it. *...
  • Commented on Moose-iplicity
    > Thus there is no space (in this particular example) for Moose cleverness > like Moose::Meta::Attribute::Native::Trait::Hash, lazy, handles, ... Well, sure: if you don't need lazy attributes to solve your problem, then you don't need this pattern. But, also, if...
  • Commented on Moose-iplicity
    Thanx for the comment Wayan. I'm always glad to see folks jumping into the discussion. > Your "neat trick" leads to a very untidy design. You just created a single class which implements two very different, completely unrelated things: >...
  • Commented on Moose-iplicity
    Hi, JNap! Long time no speak; hope things are going well out your way. > You could more carefully separate it (and avoid tying yourself to Moose) but just having a factory method: Well, sometimes avoiding tying yourself to Moose...
  • Posted Moose-iplicity to Buddy Burden


  • Posted A Date with CPAN, Update #2: A Little Piece of Date::Piece to Buddy Burden

    [This is an addendum post to a series.  You may want to begin at the beginning.  The last update was

  • Posted Of Dates, and Sigs, and Shiny Things (and cabbages and kings) to Buddy Burden

    You know, I’ve been trying to analyze my working patterns lately, and I think I’ve hit on something.  Looking back over the past few years, it seems like I get obsessed with one particular project, work frantically on it and produce lots of great stuff, then I get distracted and…

  • Posted The Fifth Element (of YAPC) to Buddy Burden

    This year I attended my fifth YAPC and, as usual, I’ve decided to reflect a bit on the venue, the talks, and the general mood.  Since I just did a (roughly) half-post in my date module series, I figured I’d go ahead and do another (roughly) half-post this week instead of waiting…

  • Commented on A Date with CPAN, Part 10: Cleanliness Is Next to Timeliness
    I just noticed that I never answered Jakub's comment. I apologize for missing that. Why not mock time, localtime, etc? There are modules on CPAN for that. Yes, that's certainly a possibility. I may switch over to doing that in...
  • Posted A Date with CPAN, Part 11: Sweet Release to Buddy Burden

    [This is a post in my latest long-ass series.  You may want to begin at the beginning.  I do not promise that the next post in the series will be next week. …

  • Commented on Missing Smart Match
    > Fixing the bugs would fix things ... Would break things, I meant. I'm dyslexic today. :-)...
  • Commented on Missing Smart Match
    > The problem is "just fix the bugs" will break things that rely on the currently documented behaviour. Well, that is an entirely different point, granted. But I have two thoughts on that. This is why it's marked "experimental," right?...
  • Commented on Missing Smart Match
    > Numeric comparison is done not because "1welp" looks like a number (it doesn't), but because 1 *is* a number, ... So change that. Both sides have to look like a number in order for == to apply. But I...
  • Commented on Missing Smart Match
    I'm with you JT. Graham's example just looks like a bug to me. [cibola:~] cat >t.pl use 5.14.0; use Scalar::Util 'looks_like_number'; say looks_like_number "1welp" ? '==' : 'eq'; [cibola:~] perl t.pl eq Let's just fix the bugs. It's not like...
  • Posted A Date with CPAN, Part 10: Cleanliness Is Next to Timeliness to Buddy Burden

    [This is a post in my latest long-ass series.  You may want to begin at the beginning.  I do not promise that the next post in the series will be next week. …

  • Posted A Date with CPAN, Part 9: Composition Defeats Inheritance Yet Again to Buddy Burden

    [This is a post in my latest long-ass series.  You may want to begin at the beginning.  I do not promise that the next post in the series will be next week. …

  • Posted A Date with CPAN, Part 8: Curse You, Daylight Savings Time! to Buddy Burden

    [This is a post in my latest long-ass series.  You may want to begin at the beginning.  I do not promise that the next post in the series will be next week. …

  • Commented on A Date with CPAN: And Now, a Word from Our Sponsor
    I think preaction was referring to the tester analysis tool. Ah, my bad then. Will I put the cpan-testers script on CPAN? I suppose I might, although right now, since it's completely self-contained in a single file, having it...
  • Commented on A Date with CPAN: And Now, a Word from Our Sponsor
    This tool looks nice. Will you put it on CPAN? It actually already is on CPAN, although obviously I can't recommend you get the current version. I hope to have the corrected version up within the next few days or...
Subscribe to feed Recent Actions from Buddy Burden

  • Aaron Priven commented on Missing Smart Match

    $x in @m and $y ~> @n are analogous to and just as comprehensible as $x eq $m and $y == $n.

  • Wayan commented on Moose-iplicity

    k, no universally bad design.

    Most of my comment comes from the fact that I am very much dependency injection oriented.
    For me the foo, bar are the dependencies of $thing thus they should be passed to it
    - most naturally as simple and required arguments of constructor. Where the caller
    of Thing->new(..) gets them is another thing.

    When I accept this, there is no room for Thing to initialize the arguments and dereference them from the config bunch.
    Thus there is no space (in this particular example) for Moose cleverness
    like Moose::Meta::Attribut…

  • Wayan commented on Moose-iplicity

    Sorry for typo. "k, no universally bad design" should be "Ok, no universally bad design"

  • Grinnz commented on A Date with CPAN, Update #3: Golden Jubilee

    A variant similar to what you added is coming to a future version of Time::Local. PR#15 (links cause comments to be invisibly held for approval)

  • Tom Metro commented on A Date with CPAN, Update #3: Golden Jubilee

    >hardcoding test results has other problems

    We always coach developers to use hard coded test data to the extent practical. When writing tests you have to unlearn a lot of DRY principles. We tolerate a lot more repetition, and factor it out sparingly.

    There are two main reasons why you do this:
    1. Any bit of clever calculation in your test could could be wrong. Hard coded values are easy to hand verify.
    2. Your test should read like an example of how to use your API, and having lots of layers of indirection and data generators makes the code less readable.

Subscribe to feed Responses to Comments from Buddy Burden

About blogs.perl.org

blogs.perl.org is a common blogging platform for the Perl community. Written in Perl with a graphic design donated by Six Apart, Ltd.