On Perl and Priorities

A confession. My swiss army hacking tool is still Perl.

The other day I was on a refactoring tear and needed something to find unused SASS variables and mixins. A quick search for this has-to-be-a-solved-problem showed a thousand links to the same Bash one liner. Which is great if your Windows system at the office has Bash installed…

So I hacked something up in Perl.

Then I thought I should really start getting out there and put something onto my long ignored GitHub account. Maybe somebody else could use this? Which is when I got this odd feeling I might be doing the equivalent of airing my dirty laundry in public. Which is when I got to wondering why I felt that way.

It is no great secret that Perl is no longer the scripting language of the upscale professional. If it ever really was. Perl always reveled in a duct tape vibe 1 which is what drew me in the first place. Duct tape is frick’n awesome. But I lost touch with the community after it started wandering through the Perl 6 desert lo those many years ago.

The thing is, Perl 5 just keeps solving the problems I need solved. I’ve got a decade of muscle memory typing $, @ and %, CPAN hasn’t crumbled into the ocean, Strawberry is pretty nice, ActivePerl is still weird and useful for our corporate type customers and stuff still needs to get taped together in the real world. Duct tape is still handy stuff.

Yes, Python and Ruby are on my list of things to try. Trouble is, Python doesn’t appear to do anything Perl can’t do and I mostly want to learn Ruby for the Rails not the Ruby. And, since my current gig is a Microsoft house, Rails isn’t anywhere near the top of of the priority list. What time I do have for new scripting languages is mostly used to find my way through the PowerShell maze these days.

And since I’m airing dirty laundry anyway I’ll admit that programming languages for their own sake aren’t high up my personal list right this moment either.

We’re finally into our new (to us) house and starting to feel like we live here. With a new home comes new projects which get the nod after coming home from the office. I’m finding it hard to get excited about another six hours in front of the keyboard after the previous eight hours in front of the keyboard.

I’d rather get the basement wired so I can find a lathe and learn how to make threads in steel. My motorcycle needs more miles. The dogs need a walk in the park space down the road. I’ve owed my lovely wife a real vacation for years. There are new bourbons to try and food to make. There are those 15 pounds to loose. My AR and M&P should be getting fed much more often and finding a trainer to do that with would be good. Maybe some trap or skeet with friends. We haven’t been to the Boundary Waters Canoe Area in way too long. And on and on and on.

There’s lots to learn out there. So I’m going to keep leveraging the learning I’ve already done, keep hacking Perl and stop feeling bad about that.

If you’ve got a Node/Angular project you’d like some help on I might be interested though…

[1]: In retrospect I like the idea of duct tape holding things together more than the reality. Safety wire and a ClampTite will stay put forever and don’t get gray goo all over everything.