For one client, I was told that our devs didn't have client access to a database with a problem, but they could connect via DBI. Thus, I whipped up the following to help them out.
It has command line history and mostly handles multi-line queries. It's not overly robust, but it's the sort of handy code you might just need in a pinch.
Haven't posted anything for a while, but I'm not dead, just busy. Here's a quick recap of things that I think people might find of interest.
Send In The Clones (click for larger version)
First and foremost, I'm going to be in Brussels, Belgium, next weekend for FOSDEM. If you can make it, check out the Perl track. I'll be speaking about why people are finding Perl 6 so exciting. In particular, ever since the Christmas release, there's been a fair amount of chatter about Perl 6 and I've been paying a lot of attention to people who are looking at it for the first time, without a lot of preconceived notions. The reactions often range from "wow, that's cool", to "oh my goodness, I want that!" What's even more interesting is that they're not focusing on a particular feature (which would be scary as it would pigeonhole Perl 6 as a "niche" language). Instead, plenty of people getting excited about different things which scratch their particular programming fetishes: grammars, gradual typing, concurrency, and so on. It's fun to watch.
But there's more ...
I'm doing heater runs in Taungoo Station when someone tells me about a problem in Nouveau Limoges, another station in the Sol System. I mosey on down to the port, hop in Serenity, my corvette class spaceship (with some "quiet" modifications), and launch. Serenity's an older ship and she higher maintenance than I would like, but she keeps flying and that's good enough for me.
A little over 7 segments later (a long, boring flight), I arrive at Nouveau Limoges. And that's when the trouble kicks in. You see, I'm a Consortium citizen, but Nouveau Limoges is a Gaul station and I forgot to renew my visa. Immigration computers notice my status and I get auto-deported back to the station I came from: except I am still on Serenity and she doesn't have enough anti-matter reserves to make the flight back. An HTTP redirect loop ensues and ...
I found that bug hilarious and it will be fun to resolve. Sadly, it probably won't be me who fixes it, even though I want to dig in.
You may recall me writing about DB::Color a few years ago. That module let you do this with the debugger:
It has some issues, including the fact that syntax highlighting Perl code is, um, not always perfect, but it does the job. The main drawback, however, is that it runs about as fast as a sloth with a spinal injury. It was so bad that even I stopped using it, and I love the damned thing. Today, I may have fixed that.
A couple of days ago, we posted a job on jobs.perl.org. We wrote:
Description: Want a remote Perl job working for a great company with colleagues from all around the world? We're considering both permanent and contract positions for a variety of Perl roles. Front-end skills are always welcome and experience with parallel programming comes in handy more than you would think.
We do set a high bar on who we employ, so if joining a bunch of Perl hackers who love the language sounds like fun, send us your CV and we'll send you our programming test. In return, because we value your time, Ovid will be evaluating the test and will send you feedback on how you did and areas for improvement, if any.
Desired skills: Perl. Strong Perl. You love the language. This is the only solid requirement.
Front-end skills (HTML, CSS, JS, not design) are often very useful.
Expertise with parallel processing, including event-driven programming, is needed.
Good communication skills.
Understanding databases is important.
The specifics of the job are vague because there's more than one position (and NDAs), but the requirements are reasonably clear. Note that as of this writing, we posted that two days ago, and that's when the fun began (and if I grade another Perl test, I'm going to scream, but boy, does that weed out candidates quickly).