YAPC::NA day two

If you haven’t already, read about day one.

Postmodern Module Packaging

I began day two with “Postmodern Module Packaging” with Ingy döt Net. This was a great comparison of the current module packaging toolchains, and a good introduction to a philosophy Ingy calls “Acmeism.”

YAPC::NA days zero and one

I doubt my recounting will be anywhere near as colourful as Yanick’s, but I think it’s worthwhile to share my experiences at YAPC::NA 2011.

My YAPC::NA 2011 lightning talk

Well, YAPC::NA 2011 in Asheville, NC is over, and I had the opportunity (after getting bumped around more than a couple times) to give a lightning talk as part of the final session. I had previously done a blog post on the subject, but I wanted to share some of my thoughts with a wider audience.

Heading to YAPC::NA 2011

Last year, I stumbled across http://presentingperl.org and discovered Yet Another Perl Conference, and the other hackathons, meetups, and workshops that the Perl community organizes all over the world. I immediately wanted to attend, but I wasn’t able to arrange to go. This year, I’m lucky to be working at DRDC for the summer, and they’ve given me time off to attend YAPC::NA 2011 in Asheville, NC.

Introducing utf8::all

Perl programmers are probably all aware of the utf8 pragma, which turns on UTF-8 in your source code. This is actually a stumbling block for new programmers, who might think that utf8 makes your filehandles use UTF-8 by default, or automagically turns incoming data into UTF-8, and ensures outgoing data is all UTF-8 as well. Sadly, that’s not the case.

However, one of the great things about perl5i is that it turns on Unicode. All of it.

How do you watch CPAN modules of interest?

This post is really a request for advice. I’m sure there must be a solution out there, I just haven’t found it yet. Imagine you have a module that pulls in a bunch of prerequisites. You want to watch those prerequisites (and maybe all the way down the the dependency tree) for test failures. Maybe you also want to be notified of new releases. You might even want to try extracting the most recent section of the changelog.

Another word on namespaces

Kent Frederic’s recent post about Dist::Zilla minting profiles was a great overview of the subject, but because I try to follow best practices, I was struck by the section “A word on namespaces.”

Kent recommends that if you’re making an author pluginbundle, you should name it Dist::Zilla::PluginBundle::Author::$CPANID. This extra bit of namespacing makes life easier for many people in many ways. I was immediately convinced that he was right, and moved my author stuff into appropriate author namespaces.

Co-op at DRDC

I was late to join the job search process for my first co-op work term, but I was invited for several interviews. One of the most interesting jobs I applied for was a specific project with Defence Research and Development Canada. One of DRDC’s task groups is building a fake submarine for training purposes. The sub has mocked systems ranging from a sheet of paper saying “here are some buttons” up to a sophisticated computer simulation of real submarine systems.

Still no partial checkouts in Git

Update: Git 1.7.0 now supports “sparse” checkouts (quick overview).

Richard Fine has an excellent blog post discussing why it’s time to stop using Subversion. I was struck by the similarities between his reasons for leaving SVN in the dust and mine:

Human usability testers wanted

When I wrote 1App::perlhl1 a few weeks ago, I was mostly concerned with getting it working. I picked colours more-or-less at random, and I noted that I planned to tweak them to achieve better readability. I’d like to do some hallway usability testing – if you’re interested, please try cloning my git repository and playing with the branches. master has one colour scheme, and I created colour-2 and colour-3 to test two more schemes.

The death of tribal knowledge

Michael Schwern talks about Perl5’s shortcomings, and explains how perl5i can overcome many of them – it is a pragma to fix as much of Perl 5 as possible all at once. While I haven’t worked with perl5i much, I wanted to talk about something Schwern talked about that resonated with me, and that’s the concept of “tribal knowledge.”

CLI Perl syntax highlighter

Last night, someone posed a problem in #perl-help. They wanted to have syntax highlighting in their shell for Perl code. I immediately suggested that they use Pygments – I knew about it because I’d used it before, and I had experimented with the command line tool. But I was surprised there wasn’t already a Perl solution.

A Perl yardstick

chromatic identified some reasons why it is difficult to hire great Perl programmers, and then followed it up with some advice for hiring managers. They suggest a series of questions every good Perl programmer should be able to answer. I wanted to know how I stacked up.

Understanding load averages

Load averages are at once hugely simple and hideously complex. Understading what these numbers mean is important for correctly applying this simple indicator of system health. First, a load average is not CPU percentage. That is simply a snapshot of how often a process was found being executed on the CPU. The load average differs in that it includes all demand for CPU, not just what is currently running. A useful analogy A four-processor machine can be visualized as a four-lane freeway.

OMG, is that WordPress?!

I’m a Perl guy. I like the language a lot – how it looks, how it works… Even if it isn’t perfect, I like it a lot. But I also love things that work, and Wordpress works.

If Linux were popular

This essay was originally written in Portuguese, and subsequently translated to English. I rewrote the English version so it reads like an anglophone wrote it.


I understand that some people have problems switching from Windows to linux. Since all my friends keep telling me how great Windows is, I thought I’d try an experiment.