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 ]

kane (2600)

  (email not shown publicly)

Journal of kane (2600)

Wednesday October 22, 2008
10:25 AM

Looking for a new job...

Exciting times are ahead; my wife just accepted a very interesting position with Wikia.

Our long term goal is to move to San Francisco, and Wikia will happily sponsor an L-1 visa. Unfortunately, she has to work for them for at least a year before we can apply.

In the meantime, we'll be moving to Poznan, Poland in just a few weeks time. It's just across the border from Berlin, and it is where Wikia has their European head quarters. This also means I'm resigning from my job at RIPE NCC, as they don't have offices in Poznan ;)

So, I'm out looking for a new job, ideally one that will sponsor a visa (I am eligible for an O-1 Visa) to move to the Bay Area. I'm open to telecommute and travel can be arranged as needed.

For interested parties, here is my CV. If you have any leads, I'd love to hear from you!

Monday April 21, 2008
05:37 AM

RIPE NCC is hiring

My team is looking for another perl hacker to join the ranks.
Below is the job ad and a link to the full text on the RIPE NCC webpages.

Drop us a line if you're interested!

Company:                RIPE NCC, Amsterdam
Position:               Software Engineer (on site)
Job Reference Number:   0508-001
Salary:                 The annual salary for this position is between
                        EUR 42,497 and EUR 53,128
Date of Posting:        21 April 2008

Specific Qualifications and Experience Required:
   * A strong and demonstrated knowledge of OO Perl in a UNIX environment
   * Strong knowledge of relational databases and SQL, particularly MySQL
   * Experience in software development, testing/QA and deployment processes
   * Some practical experience in C, networking and Linux environments
   * Undergraduate or higher degree in Computer Science or a similar
     discipline, or equivalent professional experience
   * Strong written and spoken English
   * Ability to learn quickly
   * Excellent team player

The following qualifications are desirable:
   * Experience in database performance tuning and clustering, particularly
   * Experience working in agile development environments (XP/Scrum)
   * Experience with source code control systems (SVN/SVK preferred)
   * Experience and understanding of designing and implementing clustered,
     high performance (server) systems
   * Affinity with the Open Source community, preferably through demonstrated
   * Affinity with the ISP environment and RIPE community
   * Experience with MVC frameworks such as Catalyst, database abstraction
     layers such as DBIx::Class and templating systems such as Template
     Toolkit. Contributions to the CPAN will also be considered a plus.
Thursday August 09, 2007
02:53 AM

Looking for a new challenge? RIPE NCC is hiring

To give this ad just a little bit more exposure, I thought I'd mention that my department is hiring perl programmers with MySQL & C skills.

Be sure to also check out the full lists of benefits that come with this job, which include a relocation package for expats, help with finding somewhere to live, 30 days vacation plus public holidays and a generous training allowance.

For you early commenters; this ad has of course been posted on as well, but hasn't appeared yet on the front page ;)

Friday June 23, 2006
11:43 AM

CPANPLUS 0.072 released

I've just uploaded CPANPLUS 0.072 to pause.

The biggest change for this release was to make
configuring CPANPLUS a lot easier. Basically, you
dont have to do it any more :) Furthermore, RAM
usage and startup times have been lowered by
moving some of those operations to runtime.
Overall, performance should increase quite a
bit from this.

These were two of the major gripes reported to me
and I hope this release will make life easier for
those people.

Anyway, it should be available shortly at:

Below are the changes for this release.

Changes for 0.072 Fri Jun 23 18:17:00 CEST 2006

* This is a major release of CPANPLUS. It includes
        all the changes from release 0.070_01, including
        the following changes made after the beta was
* The POD text of has been revamped to
        be more of a guide than a technical reference.
* $module->status is now lazily initialized, lowering
        overall RAM usage and startup time at the cost of
        a runtime penalty. Overall, this improves performance
* Address #20005: CPANPLUS does not check size of
        downloaded module this adds code that checks if
        the downloaded size is equal to the size specified
        by the checksums file
* Fix file fetching testing issue on Win32 (#18702)

Changes for 0.070_01 Mon Jun 19 17:23:38 CEST 2006
* This is a major beta release of CPANPLUS, revamping
        the configuration mechanism. From now on, CPANPLUS
        no longer requires a setup to be run at installation
        time and should work 'out of the box' on most
        systems using a pre-built configuration file.
* CPANPLUS now supports stacked configuration files:
        * CPANPLUS::Config is the heuristic config file
                which will always be installed sytemwide.
        * CPANPLUS::Config::System is the systemwide
                config file which can be installed by an admin
                in your perl installation path. This file will
                be available for everyone and override settings
                from CPANPLUS::Config
        * CPANPLUS::Config::User is the per-user config
                which can be installed by any user in their
                $HOME/.cpanplus directory. This file will be
                available for the user only and override settings
                from CPANPLUS::Config and CPANPLUS::Config::System
        * $HOME/.cpanplus/lib gets added automatically to your
                config search path.
        * All configuration types can be created and saved
                via the interactive Setup. You can invoke it from
                the default shell as follows:

                CPAN Terminal> s conf user # per user config
                CPAN Terminal> s conf system # system wide config

                or during installation time like this:

                $ perl Makefile.PL --setup
* Makefile.PL has been stripped from all it's magic
* Setup is now menu based for a better user experience.
* make loading plugin configs work, with priority
        for system & user configs before the rest
* address #19438: Key 'file' is of invalid type
        Turns out it's a bug in Module::Build, reported as
        #19741, which creates a 'Build' file when running
        'perl Makefile.PL' on a M::B generated Makefile.PL
        Add a patch that detects this situation and informs
        the user
* Demand Test::Harness 2.62 to be installed due to
        bug #19505 in earlier versions
* IPC::Run is now required for Win32 & Cygwin
* use $Config{path_ext} instead of hardcoded ':' to
        seperate $PATH in cpanp-boxed
* Small test changes in 20.t to make sure no test output
        counter mismatches occur.
* remove all 'clever' code from CPANPLUS::inc, as the
        new config methodology makes it obsolete. Basic
        functionality is retained only for backwards compat.
* remove CPANPLUS config version checks back and forth
        -- should work without from now on
* make cpanp-boxed work from others dirs than just bin/..
* make use of package::constants
* Make sure Bundle-Foo.tgz also gets recognized as bundle
* Data::Dumper indenting style set to '1' in default shell
* make constants for libdir etc accept a list, not just
        a single param
* address #19738: bogus entry in @INC
* address: #18270: cpan2dist --archive breaks with
        relative path
* address #18121: invalid value for 'checksum_value'
        which showed that old .stored files can mess up CPANPLUS
        untill they are rebuilt. From now on, Makefile.PL will
        delete old .stored files when installing a new version
* mark all the versions of inc/ modules as -1, so we
        are always 'not uptodate' when asked to install them
* remove old api that lets you set values in configure
        object via backend->new or configure->new, which was
        impractical and unused.
* updated our bugreporting address to point at the queue.
* Clean up source tree from obsolete files
* Have 'make clean' clean up all the generated files

Tuesday November 29, 2005
05:30 AM

London Perl Workshop 2005

Last weekend was the LPW which I sadly only got to attend a part of.

We left Amsterdam on the friday morning, in the middle of the worst storm in a long time. Of course, taxis were impossible to get and we ended up being soaked to the bone before arriving to the airport, where our flight was delayed by quite a bit. But contrary to quite a few other travelers, we did manage to get to London that day, with nowhere nearly a bumpy ride as expected.

We met up with Greg and CLKao for dinner (cooked by cl himself!) and drinks, and the designated pub to meet some fellow LPW-goers later that evening. A good time was had by all.

Until the next morning, where shivers, soar throats, coughing and a hang-over got hold of me, together with the ever vigilant UK street workers, who will start construction with drills at 7:30 in the morning, right outside your hotel window :(
Yes, this was a saturday.

Luckily we were staying close to Kings Cross station, so a pharmacist was nearby for the much needed painkillers. After agreeing with Simon to reschedule my talk for the last slot of the day (rather than the one before lunch), and a snackfest of painkillers, I set out to get some sleep.

I made my way to the venue after lunch time, with a few more painkillers, some taurine and quite a few glasses of fruitjuice in the stomach. It's quite amazing how a few hours of rest and some Good Drugs can pick you up. At least for a while :)

There I found out that actually none of the afternoon-speakers where at the venue in the morning either, to take over my slot and poor Simon was stuck with Fixing It. He was of course too nice to just call me and tell me this, but Mark saved the day and gave some live demos instead. This of course means, I will owe him beer for quite some time. This also means I didn't get to give my "Barely Legal XXX Perl" talk, which is a shame as I was quite looking forward to it. I guess it will have to wait until the next conference.

But this did give me the chance to watch Leon and Leos presentation on mighTyV which was a lot of fun and a great example of JFDI. The last presentation was by MJD and even though I had seen it before, it was still very enjoyable. It also struck me that during presentations like these, there's always a Guy in the Second Row, even if in this case, he didn't actually sit in the second row.

At the end Fotango announced they sponsored the first part of the bar tab and everyone trotted off to a place called "The Peasant" across from the venue. We stayed there for about an hour, enjoying some nice non-alcoholic beverages, before several of us went of to a Japanese restaurant called Aki. The food looked good, but took a while to serve, and sadly, came by once or twice still frozen. The staff seemed to be too busy to cater to a fully packed restaurant, which was a shame. During dinner, the drugs wore off, and we were happy to head back to the hotel with MJD after food.

An early bed and a good nights sleep did some wonders and the sunday flight back wasn't nearly as bad as it could have been. However the physical discomforts stayed, and I'm now trying to get well with lots of tea and fruit juice and those evil lemon drinks that promise to make you feel better...

Monday October 31, 2005
09:24 AM



The newest addition to what CPANPLUS can do for you has been extended two-fold.

First off, we've added plugin support to the default shell, allowing you to extend it in anyway you see fit. Examples of this include being able to show a code diff between 2 releases, or to query open tickets from

Adding your own plugins is quite trivial, and explained in the HOWTO.

The second addition is to provide a mirror with prebuilt packages for debian. The idea is to build packages automatically, and package them as debs, so people can use their trusted package managers when fetching CPAN modules. The full details on how this works can be found here. Suffice to say that this is a pilot, and if it works out, we intend adding similar mirrors for ports, PPM, RPM, etc.

Right now, we're just building the modules listed in the Phalanx Top 100, but once we have sorted out more reliable large scale automatic builds, the CPAN is the limit!.

Both these features are present in the development release of CPANPLUS and CPANPLUS::Dist::Deb which you are much encouraged to try out. As soon as any last kinks that may exist have been dealt with, this will be released large scale.
Friday August 19, 2005
07:26 AM


I'm pleased to announce the 0.056_01 development release
of CPANPLUS. This release mainly entails the splitting out
of CPANPLUS::Dist::Build (the sub-module for dealing with
Module::Build based packages) into it's own CPAN-package.

Below is the changelog for this release.

You can get it from:

Or soon from a CPAN near you.

Any feedback on this developer release is appreciated,
especially if you encounter issues on less-widely spread
operating systems or configurations.

I'd like to thank again everyone who worked hard on this to
make this release possible; the developers, testers and idea-
fairies ;)

Changes for 0.056_01 Thu Aug 18 16:26:52 CEST 2005

* This is a development release testing the splitting
        off of CPANPLUS::Dist::Buid into it's own package,
        several bugfixes and a few small features.
* Make 'i URI' work from the default shell, enabling commands
        like 'i'. parse_module()
        understands this as well (for API users) -- #11479
* CPANPLUS::Dist::Deb got branched into it's own package
* Add test cases for lack of CPANPLUS::Dist::Deb
* Add new test tarballs that provide the simples possible
* Add prereq to CPANPLUS::Dist::Build if the user prefers
        to use Build.PL over Makefile.PL
* Add a depencendency on Win32::Process on Win32 (bundled
        with AS perl, needed by IPC::Run)
* Quell warnings about empty prerequisite lists (#13111)
* Quell warnings about beta-versions being non-numeric (#14106)
* Platform dependant modules were /always/ getting an NA grade
        regardless whether they failed or not (#13224)
* Config keys are now sorted when printed in the default shell
        (as requested by Tux)
* Extracted files now only get +w for the owner, not '755',
        as this interferes with some modules test suite (#13358)
* Some modules uses module_name_version.ext rather than the
        usual module-name-version.ext. CPANPLUS now parses both
        correctly (#13367)
* 's mirrors' in the default shell now lists your mirrors.
        To alter them you must still edit the config using 's edit'
* Buffers are now autoflushed while invoking 'perl Makefile.PL';
        Modules that asked questions during interactive install
        sometimes had their output held back in the buffer. Since not
        all modules do $|++ in their Makefile.PL, we do it for them
* The diagnostic reporting functions 'msg' and 'error' from
        CPANPLUS::Error got renamed to 'cp_msg' and 'cp_error'
        respectively, to avoid conflicts with Log::Message::Simple.
        (This only affects API developers).
* All bundled modules are updated to their most recent version.

Thursday February 10, 2005
12:35 PM

CPANPLUS 0.052 released


I'm pleased to announce we've just released CPANPLUS 0.052. Below is a
list of changes for this release. You can get it from

or soon from a CPAN near you.

Changes for 0.052 Wed Feb 9 18:44:13 CET 2005

* Make auto-installation work (with some guess work) if
        $ENV{PERL_MM_USE_DEFAULT} is set.
* Setup decent defaults for the callbacks, so scripts
        don't have to set them unless they want actual callback
        behaviour (This helps ExtUtils::AutoInstall greatly).
* chmod() extracted files to 755 so we do not get permission
        denied errors when trying to remove them or copy over them
        if they were not +w for the user.
* Don't use sudo, even if it's configured, if the user is
        root already.
* Default to 'prefer binary programs' if Compress::Zlib is
        not installed.
* Make 'parse_module' deal better with paths that have sub
        directories in them.
* Make 'parse_module' deal better with version numbers
        that have letters in them.
* Don't shell out to get the perl version if the perl we
        looking for is $^X;
* Improve finding a proper homedir for cpanplus on VMS
* Accept the perl version as an optional argument to
* Require Test::Reporter 1.27 for test reporting; it fixes
        many bugs.
* Only load Module::Build when we really needed it, not on
        any installation.
* Fix a bug that made 's reconfigure' not use the defaults
        from your current config.
* RedHat 9.0's stock perl has a few serious bugs in it
        (they applied custom patches) and will break CPANPLUS
        badly. Add a note to the that redhat users
        should upgrade their perl.
* CPANPLUS::inc was encountering 'use' calls that had windows
        paths rather than unix paths (???). Patch to compensate
        for this.
* Module::Load::Conditional cache is being flushed in standard
        flush runs now, allowing use of LWP (and similar) when it
        becomes available, even if it previously wasn't.
* Don't copy '' to '' during Makefile.PL
        stage -- if the user has a custom config and forgets to set
        the environment var, CPANPLUS' tests will use the wrong config.
* Some tarballs have '.' as directory, rather than project sub
        directory. Guess first for extraction dir and verify, only
        then try the actual extract path.
* Improve documentation in the Default shell
* Improve test reporting texts as supplied by Barbie
* Add a callback to munge test reports before they are sent
* Add versions of loaded dependencies to the test reports.
* Make limited tests on skipped configuration work properly.
* Don't use sudo to install into our own sandbox for
        Module::Build tests
* Skip module::build tests if we're under PERL_CORE and
        M::B is not available (not yet integrated)
* Skip install tests if run under PERL_CORE
* Adjust include paths and paths to perl when tests are
        run under PERL_CORE
* Update bundled IPC::Run to version 0.80
* Update bundled Module::Build to version 0.26081
* Improve tests

Sunday December 26, 2004
12:20 PM


We are pleased to announce what should be the last beta before
the grand 0.051 release of CPANPLUS.

You can obtain it from

Or a CPAN near you.

Below is a list of changes in this release;

Changes for 0.050_04 Sun Dec 26 16:54:46 CET 2004

* Add rsync support to CPANPLUS
* List rsync mirrors during setup
* Default to the email mentioned in during setup
* Add timeout support for fetching files from mirrors
* Config version has gone up because of new timeout version
        -- reconfiguration required
* Mention Bundle::CPANPLUS::Dependencies in the Makefile.PL
* Add license information to dslip output
* Send N/A Grade to cpantesters when your perl version is
        too low according to the Makefile.PL
* Drop dependancy on Mail::Send for test reporting, use a
        fixed version of Test::Reporter instead
* Alias $modobj->name to $modobj->module for more DWIMery
* cpan2dist now allows creation of distributions from local
        tarballs as well
* cpan2dist now uses the newly defined dist standard to find
        out where distributions were created
* cpan2dist (and CPANPLUS::Dist) plugin detection is now regex
* Specifying CPANPLUS object id's when creating fake module
        or author objects is now optional
* Small backward-compat hack to make sure old versions of
        ExtUtils::AutoInstall keep working with the new CPANPLUS
* Various documentation patches
* Update various bundled modules

Friday December 03, 2004
12:03 PM


After a prolonged period of merely bugfixes, this day marks the release of a
new feature release (and ground up rewrite) of CPANPLUS: 0.050_01

This feature release prepares us for the next line of plugins in CPANPLUS,
which should greatly improve the quality of code and use of CPAN and CPAN

Some of the features include:
        * Native Module::Build support
        * Native query/report
        * Native signature verification support
        * Multiple frontend shells
        * Scriptable shells
        * Improved configuration options
        * Improved Programmable API
        * Plugins to package managers
        * Support for a remote CPANPLUS::Daemon
        * and many more...

You can view the readme here:

And obtain the source from:
or soon on a CPAN near you...

This beta release has already had extensive testing from a dedicated group of
people on #perl-qa and #p5p, but the time has now come to offer this beta to
the wider public, before declaring it 'stable' and uploading it as such to the
Therefor I invite all of you who have an interest in CPAN modules, to try this
release out and report your findings back to us, whether they be feature
requests, or bug reports;

        Feature requests:
        Bug reports:

I have to again thank all the people who've so vigorously and selflessly spent
great amounts of energy on making this new release possible; I think you know
who you are :)