Reviews by Michele Beltrame


Business-PayPal-NVP (1.08) ****

It's just a light wrapper on LPW, but then it's exacly what is needed to use Paypal: no loads of dependencies such as SOAP (it uses the NVP Paypal interface) and a very lightweight module which basically just avoids the need to write boilerplate code.

Everything is forwarded as-is to Paypal, so the Paypal developer documentation is the only thing you need.

Google-GeoCoder-Smart (1.16) ****

Very useful to find out coordinates of a street address. Works as expected!

Geo-Coordinates-DecimalDegrees (0.09) *****

Very useful in converting the coordinates from degrees/minutes/seconds to decimal values.

I needed to do that for usage in GoogleMaps API, and worked like a charm.

Astro-SolarParallax (0.04)


CSS-Inliner (3674) *****

This is a great little module which allows you to create an HTML email with CSS style and have it show correctly also if the receiver user Gmail webmail.

Works fine and it's very straightforward to use!

Catalyst-Plugin-StatusMessage (1.002000) ****

This Catalyst plugin does a good job of resolving the issue of passing status messages between pages.

It works well and the documentation is clear.

A possible improvement which comes to my mind is not lot limit it to 2 kind of messages (error_message and status_message) but to be able to configure an indefinite number of them. However I'll only understand as I use the plugin if it's actually an interesting feature or not.

HTML-Template (2.91) **

I used to use HTML::Template years ago, then I quickly discovered it's limit (and it also features a sometimes awkward syntax, actually).

It is still somewhat a choice for simple tasks, but there's no point in not using something better designed and more scalable, such as Template Toolkit.

Text-Password-Pronounceable (0.30) ****

This is a nice module to generate password users can remember more easily than truly random ones.

Not all generated passwords seems that pronounceable (at least in Italian ;-)), but most are and those which aren't are much better than truly random ones anyway.

HTML-Scrubber (0.09) ****

This is a great module for sanitizing HTML code. It supports the removal of tag and of attributes within tags, and it's very configurable.

The documentation could be improved, even though a look at the example is enough for most use cases.

Config-INI (0.019) *****

Writing INI files (which I use to integrate some web sites with Windows-based company management software) is straightforward, the interface is easy to use.

A great module.

Email-Sender (0.110001) ****

Email::Sender is a great module for sending emails: it aims to and it should become the standard for sending emails using Perl. There are way too many modules out there now, and not all of them work as they should.

Even though there is some useful documentation (Manual::QuickStart and the source code of course), it really needs comprehensive doc to be written.

Email-MIME (1.910) *****

Very nice module to create multipart emails. Used together with Email::Sender become a full-featured and also easy to use way to create and send e-mails, multipart or not, using a variety of transports.

Try-Tiny (0.02) *****

Very nice module: provides a lightweight exception handling - basically a safer, shorter, cleaner and more elegant way to use eval. Great work.

XUL-Image-PPT (0.03) ****

Very useful module: I use XUL (Takahashi) slides and almost all events where I speak want some PDF for their archival.

Even though I think something could be done reimplementing the Takahashi thing in Perl and then using PDF::API2, this solution through PPT works well. Only thing is that text in the final PPT is not text but an image, but it's likely a minor problem.

Cache-Cache (1.06) *****

This is a great module.

Although the documentation states it's been obsoleted by CHI, this is the only one good in non persistent-application environments (fex. CGI or even mod_perlite), as CHI is based on Moose and therefore (presently) slow to load.

Alien-SVN (

This module would benefit from an option to use the SVN libs already on the system. The bundled Subversion 1.4 (which is a bit old, actually) seems to be not installable on my Gentoo Linux (but I have 1.6.4 installed and working).

HTML-FormFu (0.05001) ****

HTML-FormFu is likely the best way to manage forms in Perl as of today. Handling form creation, validation and refill is a real pain, and this module helps its easing a lot.

The documentation, coming from HTML-Widget, needs some improving even though there's a nice cookbook.

DBIx-Simple (1.32) *****

DBIx::Simple is sugar spread on DBI (it should really have been named DBI::Sweet). It's usage will make you code far more readable, quicker to write, and with a lot less boilerplate code.

This is my #1 choice for database management, as using the DBI directly requires some tedious coding which is senseless to do by hand.

DBIx::Simple, even though it does provide optional query abstraction through SQL::Abstract, does not feature database abstraction. For that you should take a look at more advanced modules such as DBIx::Class and Rose::DB::Object. However, for the quick and simple case, DBIx::Simple just rocks.

Catalyst-View-TT (0.27) ****

The workhorse of Catalyst views.

ObjectivePerl (0.04) **

Nice thing to play with, but should not really be a choice or we would end up having modules developed with too many different class systems (which already happens, to a degree, even though Moose is trying to save us).