Making DateTime Faster and Slower

I recently released a new parameter validation module tentatively called Params::CheckCompiler (aka PCC, better name suggestions welcome) (Edit: Now renamed to Params::ValidationCompiler). Unlike Params::Validate (aka PV), this new module generates a highly optimized type checking subroutine for a given set of parameters. If you use a type system capable of generating inlined code, this can … (Read More)

Moose Training at YAPC 2016, It’s Not Too Late

It’s not too late to sign up for my Introduction to Moose class at YAPC::NA 2016. This year’s class will take place on Thursday, June 23. I’m excited to be doing this course again. It’s gotten great reviews from past students. Sign up today. There are lots of other great courses. For the first time … (Read More)

Introduction to Moose at YAPC::NA 2016

My Introduction to Moose class is back at YAPC::NA 2016. This year’s class will take place on Thursday, June 23. I’m excited to be doing this course again. It’s gotten great reviews from past students. Sign up today. And of course, there are tons of other great offerings this year too, including several from the … (Read More)

Tech Interviewer Theory

What sort of things can you learn when interviewing someone for a technical position? What questions are useful? This is a much-discussed and sometimes hotly debated topic in the tech world. I’ve done a fair bit of interviewing for my employer over the past few years. We’ve built an excellent technical team, either because or … (Read More)

Please Test the DateTime 1.22 Trial Release

The 1.22 trial release includes some small backwards incompatible changes in how DateTime->from_epoch handles floating point epoch values. Basically, these values are now rounded to the nearest microsecond (millionth of a second). This release also fixes a straight up bug with the handling of negative floating point epochs where such values were incremented by a … (Read More)

Hacking on Perl 6 (Rakudo and Roast)

I found a bug in Perl 6 recently. Really I independently discovered one that was already reported. Here’s how to trigger it:

Any numerator of 231 or greater causes that error. Note that Perl 6 is perfectly happy to represent rationals of that size or larger:

So the problem was clearly somewhere in … (Read More)

Minnesota Perl Mongers Meeting on January 26

I should’ve posted this earlier, but better late than never. We’re having the first MPM meeting in many years on Tuesday, January 26. Please see the meetup event for details. I’ll be speaking about Perl 6 and Arthur Goldstein will be giving a short intro-level presentation on Perl 5. … (Read More)

My Perl 5 Advent Calendar Article

My article on Stepford for the Perl 5 advent calendar is now live. Maybe I can write an article on Perl 4 or Perl 7 for the trifecta? Stepford is a tool we wrote at MaxMind, Inc. to help automate our database build process. It’s like make but in Perl, and instead of writing a … (Read More)

My Perl 6 Advent Calendar Article

I wrote an article for the Perl 6 advent calendar, Perl 6 Pod, that just went live earlier this evening. I’ll also have a Perl 5 advent calendar article coming up soon on December 16. Am I the only person to write an article for both the Perl 5 and Perl 6 advent calendars this … (Read More)