Slash Boxes
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

use Perl Log In

Log In

[ Create a new account ]

hex (3272)

  (email not shown publicly)

Perl, RDF and wiki hacker, London, UK. This is my former Perl blog; I now write at Earle's Notebook [].

Journal of hex (3272)

Friday April 03, 2009
07:38 AM

Ivor Williams

I have just learnt, via a post in the archive, of the untimely passing away of my friend, Ivor Williams, usually known online and in the Perl world as ivorw.

I think I first met Ivor around 2001, and started collaborating with him on the OpenGuides project shortly after, which was to prove the foundation of a firm friendship.

Ivor always dazzled me with his enthusiasm, and was not only a rich font of ideas but an excellent listener and sounding board for bouncing your thoughts off; we often had long conversations on the phone in which we would hatch new ideas. One of my fondest memories of YAPC::Europe in 2003 is the sunny afternoon I spent sitting with Ivor in a Paris bistro, drinking coffee and getting to know him better.

Rest in peace, Ivor. I'm going to miss you a lot.

Thursday December 11, 2008
11:24 AM

Retiring this journal

From now on, on the rare occasions that I actually blog something about Perl, it'll be at Earle's Notebook rather than here - although I'll still be reading and commenting on use.perl, of course. Ciao!
Friday November 21, 2008
01:35 AM

Perlsphere maintenance - downtime coming

If you're a Perlsphere reader, please note that there'll be a day or so of downtime coming up soon as I'm migrating hosting for all my websites.

Also - my apologies to several of you that have sent me mail over the last month or two requesting changes to their blog subscriptions there. Things have been hectic in various ways and I haven't had the chance to address your requests. I promise that I'll take care of all of them when we're up and running on the new machine.

Monday July 28, 2008
08:54 PM

The Faces of CPAN

I was pretty grumpy about Gravatars arriving on a while ago, but I have to take that back. Andy Armstrong's Faces of CPAN totally makes it worth it.
Thursday June 19, 2008
12:54 PM

Perlsphere is now at

Perlsphere now has its own domain. Please update your bookmarks! (Old URLs will be redirected, though.)
Friday June 13, 2008
10:05 PM

Announcing Perlsphere

In the spirit of TMTOWTDI I have set up a new aggregator for Perl blogs, Perlsphere. Its aim is to operate a bit differently from Planet Perl...
  • Openness - admission to Planet Perl is by selection of the site operators only. Perlsphere is open to any blog about Perl.
  • Being a little easier on the eye - those jaggies on the Planet Perl camel scare me.
  • Most importantly, running on Perl. Perlsphere runs on the remarkable Plagger. Planet Perl runs on Planet, a Python application... whose templating engine was a copy of Perl's own HTML::Template! Kind of embarrassing.

Please don't take this as a diss post for Planet Perl, though. I hope both sites can exist in a healthy state of competition.

If you'd like to be included, shoot me a line with your blog's feed URL. (Note: if your blog is multi-topic, I'd prefer just the feed for your Perl category/ies, thanks.)

09:29 AM

Better-looking results

The current appearance of search results on is a little old-fashioned-looking and doesn't use space effectively (notice the huge empty space on the right hand side). I had a play around and have come up with this mockup of how it could look. The little icons are direct download links.

What do you think? If people like it, I'll ask Graham if he'll consider implementing it.

01:30 AM

How to throw away good publicity

Tie your users' hands behind their backs with legalese.

Any individual, organization, or company may use the "Powered by Perl" or "Programming Republic of Perl" logos... The Perl logo, the Perl Foundation logo, and the bare onion logo are available for use by Perl Mongers, Perl Monks, and, which are part of TPF. .... This authorization to use the Perl logo is limited to uses by the organizations themselves, and doesn't extend to individual members. Representatives of the organizations should contact us at to obtain high-resolution versions of the Perl logo. ["Perl trademark"]

Two poky little PNGs of the slogan-tainted logos that you are allowed to use are proffered on the page. Contrast that with this:

Projects and companies that use Python are encouraged to incorporate the Python logo on their websites, brochures, packaging, and elsewhere to indicate suitability for use with Python or implementation in Python. ["The Python Logo"]

They give you everything from generic PNGs to two flavors of SVG and even Photoshop format. The extremely reasonable detailed trademark usage guidelines even give you permission to make derived logos.

Perl: there's more than one way to do it. Except if you're talking about using the logo.

Thursday May 08, 2008
03:56 PM

backpan considered dangerous

The recent discussion about potential version control for all CPAN reminded me of a thought I've had for a while about backpan - namely that it is dangerous and ill-thought-out in its current state.

As it stands, it's impossible to remove anything from backpan, for any reason. So in backpan we have a gigantic minefield of potentially dangerous bugs and possibly even licensing-related legal issues.

How dangerous? How about rm -rf / dangerous? (Sorry Adam.)

A mechanism to Delete Forever is needed before somebody does themselves or their data harm. In the meantime, a big red PERIGO MINAS sign ought to be put on the front page. Actually having a front page for backpan first would also help; the just-dump-the-user-in-a-directory-listing look went out of fashion well over a decade ago.

Posted to use.perl because I'm not sure where to suggest this. Meant in good faith. Thanks.

Thursday April 17, 2008
07:35 AM

A Perl Variable I'd Like

I often find myself doing things with arrays like this:

for (0 .. $#foo) {
  if ($foo[$_] =~ /corge/) {
    $bar{$_} = $foo[$_];

Simple enough. But consider that if you're reading through a filehandle, you can use $. (or $INPUT_LINE_NUMBER) to tell you how many lines you've read. It'd be very handy to have another special variable - let's call it because there are hardly any symbols left - that, if you're in a loop, gives you the number of times it has run. That way you could replace the code above with:

foreach (@foo) {
  if (/corge/) {
    $bar{$¬} = $_;

This immediately strikes me as Perlish.

Addendum: Well, it would, if use.perl's code formatter didn't buggily replace ¬ with ¬ in the code snippet above. I hope you can still see what I mean.