Swimming in the River of CPAN

If you’ve browsed MetaCPAN lately, maybe you’ve noticed the new “river” indicator that’s next to distributions in listings and on individual distribution pages. See the image on the right for an example. The River of CPAN analogy was first described by Neil Bowers in 2015, though I believe it was created by a group of Perl folks at the 2015 QA Hackathon. The basic idea is that the more dependencies a distribution has, the farther upstream it is. The impact …

Read more

Caching and the travis-perl Helpers

The travis-perl helpers are great. If you haven’t heard about them before, what they do is let you test your Perl projects on Travis with a much wider range of Perls than Travis provides natively. They also run your tests from the perspective of end users. What that means is that if you’re using Dist::Zilla or another module builder tool, the helpers will build a distribution tarball, then unpack that and test it. This is a great way of ensuring …

Read more

“First release upon an unsuspecting world”

For as long as I can remember, I’ve been using the phrase “First release upon an unsuspecting world” as the Changes entry for the first release of all my CPAN modules. Thinking about this, I cannot remember where this came from. I don’t think that I invented it, but maybe I did. I do have an idea every once in a while. But I feel like I got the idea from someone or something else. A quick Google search didn’t up much …

Read more

A Technical Hiring Process

At The Perl Conference 2017, I gave a talk titled How to Make Your Technical Hiring Process Suck at Least 20% Less. A Bold goal, I know! Unfortunately, the video from that talk did not come out. The slides are available (hit “s” for my notes), but even with the speaker notes there’s a lot missing, since I mostly knew what I wanted to say without any notes. A few folks have asked me about this presentation or the hiring process …

Read more

Going Full Gmail

So I finally gave in and moved my email to Gmail. Specifically, I’ve moved the urth.org email handling to Gmail via G Suite with my own domain. The first email reader I used was Pine, which I used for ages. Later I got real modern and switched to Alpine. I would shell into urth.org and run alpine to read my mail. This worked fine except for all the ways it didn’t. I had scripts I could pipe to that would …

Read more

Want to Be the Boss of Me?

If you’ve ever wanted to tell me what to do in a situation where I had to actually listen to you, well, the opportunity has finally arrived! ActiveState is hiring a new VP of Engineering/CTO (I have no idea why we can’t pick a single title here). You’d be managing all of the development teams at the company, including my team, the Languages Team. The one catch is that you’d either have to live in Vancouver or be prepared to …

Read more

Intro to Moose at the Perl Conference

I’ll once again be offering my Introduction to Moose class at this year’s Perl Conference. The class takes places on Sunday, June 18, the day before the main conferences starts. This is a one day course that will teach you all the basic Moose features. It’s very hands-on and interactive, so you’ll be writing code for about half of the class time. That’s much more interesting than listening to me drone on endlessly! The course costs a mere $150? Why …

Read more

Web::Machine Maintainer Wanted

At my last job we used Web::Machine extensively. I ended up getting comaint of this distro and the accompanying HTTP::Headers::ActionPack distro as a result. To the best of my knowledge, no one else with current PAUSE permissions is really working on these distros either. I’m no longer at MaxMind, and I don’t see myself using Web::Machine at my new position. As such, both of these distros could use some attention from someone who is using them. If you’re interested please …

Read more

Funemployment Is Over

Being unemployed the last four weeks has been fun, except for the whole lack of income thing. But now it’s time to actually do something productive for a change. I’ll be joining ActiveState as the new Languages Team Lead, Senior Software Engineer (that’s a mouthful), managing the team that does language builds as we add a whole set of new languages to the fold. I’m looking forward to helping ActiveState grow and improve our language products in various interesting ways.

Read more