Posts by Yanick Champoux
At work, we have a need for a little job daemon that would poll jobs and process them. But there is more than one type of job, so the solution that we need will have to be a little more complex. To get to my goal, I decided that I would have a generic Poller class. For each type of job to monitor and run, I will create a different object with parameters to tell it how often to poll, how to poll, and what to do with the stuff it polls. Sounds good? Perfect, then let’s go.
These days, I go with Email::Simple to craft basic emails. For the more heavy stuff with attachments and what-not, I reach out to Email::MIME. Together, they make a pretty awesome duo. But… (Come on, admit it. You knew there was going to be a ‘but’.)
Anybody with a sensible bone in their body would have written a small script to turn a snippets file into an html file and be done with it. But I saw an opportunity to work a little more on my Template::Caribou pet project. Bottom-line: There is now the files snipmate_cheatsheet.pl and snipmate_index.pl in Template::Caribou’s repo. They can be used straight from the repo checkout as follows…
A new trial version of DBD::Oracle is on CPAN. The meat of this release is the awesome work Martin Evans did in the murky core of the beast. He explains it better, but basically his magic results is a much faster DBD::Oracle on thread-enabled perls. This being said, the changes he did are significant (2.3K lines changed according to Git), and we would be very grateful for anybody finding the time to try and install that trial version before it goes live (which, unless something wrong is found, should be in 2 weeks).
By now, I have a few Dist::Zilla plugins interacting with the distribution’s changelog. Each time I get the changelog, I parse it into a CPAN::Changes object, do something to it, and save it again. It’s actually not even as hard as it sounds. Have a look.
Today I got an email reminder that the Metacpan logos are all in and that the voting booths are open, and will be so until Friday the 30th of March 2012, 23:00:00 UTC.
The pièce de résistance is Dist::Zilla::Plugin::NextVersion::Semantic which I had promised to Mike Doherty a long time ago. In a nutshell, the plugin examines the changes of the upcoming release and increases the version according to the rules of semantic versioning.
I’m in the throes of a major redesign of the site of my comic book, Académie des Chasseurs de Primes. Like any of those redesign, it involves a lot of CSS whack-a-mole. Fine-tuning one page throws a second one slightly off another, and fixing that second one causes unforseen effects on a third one. And so on, and so bloody forth. Generally, to discover those oopsies, I have to navigate the whole site. Bah, humbug. Wouldn’t it be much efficient to have a single document showing all of the site’s page? Something like a contact sheet for the website, if you will. Well, let’s see how hard that would be.
I have a Person class, and I want to know if they can pass the butter. So far, it’s hardly a problem,But here’s the rub. If $georges can’t pass the butter, I want to know why. Is it because he’s too far away, because there is no butter on the table, because he doesn’t like me, or any other reason? What is the most elegant way of knowing the if and the why?
The extension system is good for anything written in C. So, in theory, I could — probably shouldn’t — but I could write a thin wrapper for a Perl interpreter. At that point, I had no choice. The idea was so preposterous, I had to try it.