cpantimes

OK, so I decided to hack in support for submitting CPAN testers reports into cpanminus. I’ve uploaded the result to CPAN in case anybody else wants to use it. After CPANPLUS and cpanminus, the logical name for it was cpantimes….

A Simple Plack/DBI Example

In A Simple Mojolicious/DBI Example Joel Berger demonstrates how to build a very simple CRUD web app (well, a CR one anyway) using Mojolicious and DBI. I was impressed at how concise it was, and wondered how my preferred technology…

Creating Your Own Perl

Perl modules are not like dynamically loaded libraries in other programming languages. Thanks to the import function, sub prototypes, symbol table hacking, parser hooks, magic like Devel-Declare, ties and other voodoo, Perl modules can shape and craft the flavour of…

Sugar for MooseX::Traits

Tomorrow morning I'll be needing to get up in the wee small hours of the morning to travel to the Moving to Moose Hackathon 2012. In the mean time, here's some sugar for the awesome MooseX::Traits… package traits; use MooseX::Role::Parameterized;…

Perils of Plugins

Plugin-based architectures can be a bad idea. Not always. In user-facing applications, where the list of installed and enabled plugins is clear, then plugins are often a good thing. This article is concerned not with end-user facing applications, but with…

Perils of Plugins

Plugin-based architectures can be a bad idea. Not always. In user-facing applications, where the list of installed and enabled plugins is clear, then plugins are often a good thing. This article is concerned not with end-user facing applications, but with libraries. Libraries that allow their functionality to be extended through plugins. In particular, libraries that … Continued

10 Out Of 10

How to File a Perfect Bug Report My criteria for a perfect bug report… The report is filed correctly. The issue identified affects the latest version of the software. The report includes a test script illustrating the problem … which…

10 Out Of 10

How to File a Perfect Bug Report My criteria for a perfect bug report… The report is filed correctly. The issue identified affects the latest version of the software. The report includes a test script illustrating the problem … which is self-contained … and is minimal … and conforms to the Test Anything Protocol. The … Continued

Be Your Own Big Brother

Many modern browsers (including recent versions of Firefox and Opera) support the W3C's geolocation API. This is a standardised mechanism for Javascript to ask your browser where it geographically is in the world. Typically the browser will then pop up…

Be Your Own Big Brother

Many modern browsers (including recent versions of Firefox and Opera) support the W3C’s geolocation API. This is a standardised mechanism for Javascript to ask your browser where it geographically is in the world. Typically the browser will then pop up a message asking you if you wish to reveal this information, giving you the opportunity … Continued

Cognition 0.1 Alpha 6

Tonight I've released another alpha version of Cognition, my semantic web parser. Changelog includes: Microformats: Add option (disabled by default) to require <head profile> for microformat support. Microformat profiles are treated as opaque strings! Supports the following profiles: http://purl.org/uF/2008/03/ http://www.w3.org/2006/03/hcard or http://purl.org/uF/hCard/1.0/ http://dannyayers.com/microformats/hcalendar-profile or http://purl.org/uF/hCalendar/1.0/ http://purl.org/uF/hAtom/0.1/ http://purl.org/uF/rel-tag/1.0/ http://purl.org/uF/rel-license/1.0/ No profiles required for rel-enclosure, adr or … Continued

Looking Ahead to Perl 6

One of the most important changes in Perl 6 over earlier versions is that it has started out as a written specification, which may end up with several different implementations. In previous versions of Perl, alternative versions had to implement all the quirks of the official Perl interpreter, as the definition of the Perl language … Continued