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 ]

BooK (2612)

  {book} {at} {}
Yahoo! ID: philippe_bruhat (Add User, Send Message)

Obfuscation []. Pink []. HTTP::Proxy []. YEF []. Fishnet []. Kapow []. Cog's [] bitch []. Invitation []. White [] Camel []. Nuff' said.

Journal of BooK (2612)

Monday April 28, 2008
09:25 AM

Onward to the 100th Perl conference!

In order to produce this graph, I ended up gathering all the information I could find about Perl grassroots conferences (so this list doesn't contain any of the TPC/OSCON conferences, but on the other hand, it does contain several unconfirmed or canceled Perl conferences).

The raw YAML data will be hosted and maintained by the YAPC Europe Foundation, but you can email me directly with additions and updates.

Here are some statistics I computed from the list:

  • Total number of confirmed Perl conferences since German Perl Workshop (1999-02-17): 99

Conference types:

  • workshop: 52
  • yapc: 35
  • osdc: 7
  • hackathon: 5

Conferences per year (of which using Act):

  • 1999: 2
  • 2000: 3
  • 2001: 3
  • 2002: 4
  • 2003: 6 (1)
  • 2004: 12 (1)
  • 2005: 14 (6)
  • 2006: 15 (4)
  • 2007: 19 (9)
  • 2008: 21 (14)

Breakdown per continent/country:

  • Europe: 60
    • Germany: 11
    • United Kingdom: 7
    • Netherlands: 7
    • France: 6
    • Austria: 5
    • Italy: 4
    • Denmark: 4
    • Hungary: 3
    • Russia: 3
    • Sweden: 2
    • Norway: 2
    • Portugal: 2
    • Belarus: 1
    • Belgium: 1
    • Croatia: 1
    • Ukraine: 1
  • America: 23
    • United States: 13
    • Brazil: 6
    • Canada: 4
  • Asia: 12
    • Israel: 5
    • Taiwan: 3
    • Japan: 3
  • Oceania: 5
    • Australia: 5

Breakdown per continent/conference:

  • Europe: 60
    • German Perl Workshop: 10
    • YAPC Europe: 9
    • Dutch Perl Workshop: 5
    • Nordic Perl Workshop: 5
    • French Perl Workshop: 5
    • Italian Perl Workshop: 4
    • Austrian Perl Workshop: 4
    • London Perl Workshop: 4
    • Hungarian Perl Workshop: 3
    • Ukrainian Perl Workshop: 1
    • Scandinavian Perl Workshop: 1
    • Russian Perl Workshop: 1
    • Croatian Perl Workshop: 1
    • Oslo QA Hackathon: 1
    • Portuguese Perl Workshop: 1
    • YAPC Russia: 1
    • Belgian Perl Workshop: 1
    • Far East Perl Workshop: 1
    • European Perl Hackathon: 1
    • Belarusian Perl Workshop: 1
  • America: 23
    • YAPC North America: 10
    • YAPC Brazil: 3
    • YAPC South America: 3
    • Pittsburgh Perl Workshop: 2
    • Chicago Hackathon: 2
    • YAPC Canada: 1
    • Toronto Hackathon: 1
    • Frozen Perl: 1
  • Asia: 12
    • YAPC Israel: 3
    • YAPC Asia: 3
    • 2
    • Perl Workshop in Israel: 1
    • YAPC Taipei: 1
    • OSDC Israel: 1
  • Oceania: 5
    • 4
    • YAPC Australia: 1

Cancelled conferences:

Update: included the Toronto hackathon in the statistics.

Update: the Israeli pubcrawl/hackathon was cancelled.

Friday October 19, 2007
05:20 AM

Graphing module usage

This is a really quick hack. I wanted to see which modules used which in my debugging session. This is exactly what Devel::TraceUse does.

I wanted to be able to see those relationship and be able to doodle on a piece of paper and stuff. So, here goes, thanks to GraphViz:

#!/usr/bin/env perl
use strict;
use warnings;
use GraphViz;

my $png = shift || 'use.png';
my $g = GraphViz->new( rankdir => 1 );

my @stack;
while (<>) {
    # first node
    /^Modules used from (.*):/ && do {
        @stack = ($1);
    # all other nodes
    /^((?:  )+)(\S+),/ && do {
        my $idx = length($1) / 2;
        $stack[$idx] = $2;
        $g->add_edge( $stack[ $idx - 1 ] => $2 );

    # ignore all other lines


Wednesday June 13, 2007
03:47 AM

Alice Claire Rose Bruhat-Souche

On Tuesday, June 12, 2007 at 23:50, Alice Claire Rose Bruhat-Souche was born.
She weighs 3.2 kg and measures 49 cm(*).

The mother and baby were just fine when I left them this morning. :-)

I'm too busy spreading the word and reading the incoming emails to actually realize. I'll go back there soon anyway, I already miss both of them too much.

(*) I think that's about half a stone (or seven pounds?) and one foot seven inches. Hey guys, why don't you use the metric system, like most of the advanced civilisations?

Monday April 23, 2007
04:23 PM

Net::Proxy 0.08

I forgot to update the Changes file in the distribution, so here goes:

0.08 Mon Apr 23 19:08:30 CEST 2007
        - the hook callback now receives the socket on which the data
          was received, in addition to the connector
        - Net::Proxy::Connector::connect_ssl
          (combines Net::Proxy::Connector::connect and
          Net::Proxy::Connector::ssl in a single connector)
        - made tests more robust when connector prerequisites are missing
        - test Net::Proxy::Connector::ssl as an "in" connector
        - test the start_cleartext option of Net::Proxy::Connector::ssl

Basically, the connect_ssl connector lets one send anything through a web proxy (just like the connect connector), and properly encapsulate it in an SSL connection. Which means you'll need a decapsulating SSL proxy at the other, but Net::Proxy can do that for you too. :-)

Saturday March 03, 2007
03:22 PM

Hackathon war story

So, there I am, on Friday night, sitting next to Luis, trying to install Act on my laptop. Starting from scratch, by compiling my Perl, my mod_perl and Apache.

$ cd ~/src/perl-5.8.8
$ sh Configure -Dprefix=~/local -des
$ make && make test && make install
$ ls ~/local/

Nothing? Mmm...

$ cd ~/src/perl-5.8.8
$ ls \~
bin  lib  man

Oh. Stupid me, Configure didn't expand the ~ like I thought it would. Well, let's get rid of this.

$ rm -rf ~

"Are you sure you want to do this?" asks Luis... OH CRAP.

So every participant of the hackathon is making fun of me, now. Well, you can't always choose the reason why people will remember you. ;-)

Wednesday January 17, 2007
05:15 AM

Five things you didn't know about me

Ack! I've been hit as well by the game of the month... So, I therefore present to you:

Five things you did not know about me (or Georges Perec)

  1. I created the first web page ever about French author Georges Perec, back in 1993 or 1994.
  2. I met the girl who became my wife on the Internet in April 1995, thanks to my web page about Georges Perec. We created the first web site about Oulipo and the oulipo mailing-list together in October 1995, about 6 months before meeting each other in real life.
  3. I used to write poetry under constraints (in the Oulipo fashion, a group of which Georges Perec was a prominent member), but the only poems I wrote for her were written before we were together. They had her name concealed inside them because I was afraid to come out to her and lose my closest friend (some of those poems were published in a book a group of friends crafted for her on the occasion of her 30th birthday).
  4. At our wedding, I namely thanked Georges Perec in my speech, for being the cause of our encounter (although he was dead for more than 10 years when she wrote that first message in my guestbook).
  5. We're going to have our first child in June. If it's a boy we're not going to name him Georges (nor Zowie).

And now I'd like to tag David Landgren (grinder), Éric Cholet (echo), Rafael Garcia-Suarez (rgs), Elizabeth Mattijsen (Liz), and Abigail. (more Euro-Perl hackers)

Wow, it's been years since I haven't talked so much about Georges Perec...

Monday January 15, 2007
07:54 PM

All tests successful (6 subtests UNEXPECTEDLY SUCCEEDED)

In July 2004, I discovered a bug in my module Pod::POM::View::HTML::Filter: when processing a POM object through the View, elements of the POM object were deleted. And it only happened when processing a section with the filter based on Perl::Tidy... So I wrote some some tests to exercise the bug, marked the failing ones as TODO tests, and moved on, thinking it was an issue with Perl::Tidy.

Within the last few days, I spent some time cleaning up PPVHF, reorganising the test suite, working around the same old problem with Pod::POM, committing like crazy and enhancing the module itself.

One of these enhancements made me rewrite a small bunch of lines at the core of the module logic. It was a hell of a surprise when the test script told me 6/46 unexpectedly succeeded!

So the bug was probably mine, after all... I've removed the TODO marker from the tests, but they'll stay here, as I still don't understand what was wrong in that code, and I don't want the bug to creep back in.

Version 0.06 should hit a mirror near you within the next few hours.

Tuesday December 19, 2006
04:16 AM

New job in March

I resigned from $job yesterday. I was very secretive about actually looking for a job, so it came as a surprise to my peers and boss. I spent a good time there, both in Paris and Lyon, and learnt a lot, both from my peers and my clients; but after nine years in the same company (and four mergers), it was time to move on and try something completely different.

As from March 19, 2007, I'll be working with the fine folks at as a developer (improving QA will also be part of my job). I'll still be working from Lyon (with another monger, David Morel) and will travel to Amsterdam twice a month.

Tuesday November 28, 2006
08:23 AM

Quoting myself on 5.10

During the French Perl Workshop, David Landgren (the current p5p summarizer) made a long presentation about what's new in Perl 5.10. My reaction to it:

Perl 5 is the only programming language that inherits from the future!

Tuesday November 07, 2006
05:39 AM


Yesterday I pushed Acme-MetaSyntactic 0.99 on CPAN. Among its 99 themes, this distribution includes a theme proposed by Smylers. He bought the right to decide what the last theme before 1.00 would be at the last YAPC::Europe auction. Please check out his Acme::MetaSyntactic::summerwine theme, it's a nice conclusion to a long series of funny weeks.

He also unknowingly bought the dubious privilege to define what is going to be the last Acme::MetaSyntactic update in while: I had lots of plans for 1.00 (reduce the size of the distribution, distribute maintainership, etc.), but haven't found the time to organise the repository and distribution creation. So, contrary to what I thought 22 months ago, Acme::MetaSyntactic 1.00 will probably not be published next week.