Posts by Yanick Champoux
It has come again. This magic time of the year when, in-between the hangovers of Christmas and the hangovers of the New Year bashes, one takes a longing look back at the ending year, and make mad plans, wistful wishes and grandiose resolutions for the new one. So, for a moment, let me indulge in this tradition and let my gaze wander at the distances that stretch forward and behind, while my mind drift back and forth betwixt what has been and what shall be. But gently. ‘Cause lemme tell you, that was damn good eggnog (so please be kind and don’t click so hard with the mouse, will you?).
What better way to start the year than to bring a fresh new breath to an old favorite? And thus, as you read this a new version of Git::CPAN::Patch should be making its way to CPAN. This new version is a massive refactoring of the module’s guts, which will affect both end-users and developers. For the best. Mostly. Or so I hope.
I’m ashamed to say, I’ve been slacking off in the blogging department. I believe, however, that I can plead attenuating circumstances considering that I’m busy doing terrible things to Dancer 2 and that I just dusted off the elf bonnet and began to churn out proposals for the Perl Advent Calendar.
But still, I felt like I should resurface for a few minutes, if only to give a token sign of life. So here goes.
Timezones can be darn confusing. So I thought, wouldn’t be nice to be able to switch the times back and forth on a webpage, such that you don’t have to juggle the time differences in your head, but rather just see the full thing first from your timezone perspective, then from the other guy’s?
The trick is simple: bundle all the files to be shared into a tarball called shared-files.tar.gz. As there is now only that one file, which name always remains the same, any new install is conveniently clobbering the old version.
To browse directories, I’m using the NERD Tree. But I also like to have a view where I can move files around in the listing, organize them in categories and hide a few of them. For that, there’s vim project. It’s cool, it’s nifty, it’s… almost what I want. Here’s the plan.
This experiment, I decided, would have the following goals: at its base it would have to be generic enough to be able to smoke any module, and provide the flexibility required to be easily extensible.
One of the items on the to-do list for Dancer 2 is to verify that most of the plugins already written for Dancer 1 will still work for Dancer 2. Well, I thought, that’s just like doing smoke testing for a small subset of Perl modules. How hard can it be? Lets get cracking…
Today, I had some bit of fun and created a micro-web service as a one-liner. But then I thought that using almost 70 characters for a web service was awfully long-winded. Surely there was a way to make our Dancer more efficient. But how? How about… by getting a MC involved?
I won’t try to bamboozle you: Diving into Moose’s metaclass system is not easy because playing with classes that beget classes is heady, confusing stuff. It often feels like trying to type by looking at the keyboard in a mirror. But once that dragon is tamed, it can do truly wonderful, terrible things…