Reviews by John Drago


Plack (0.9981) *****

Tatsuhiko Miyagawa has gifted Perl developers with a tool that simply works - and works beautifully.

I have been using Plack for a while now and can attest to the stability of the programs that take advantage of it.

If you haven't yet tried Plack and PSGI, do yourself a favor - you won't regret it.

Class-DBI (v3.0.17) ***

When I was first introduced to Class::DBI in 2004 it was a breath of fresh air. Suddenly all the boring SQL didn't have to be there and I could focus on the task at hand. Sure, it had some warts but those could be worked around.

After using Class::DBI on some large-ish projects with a mod_perl-based web interface it became clear that those warts were viewed as "features" and were simply not going to be fixed. The rest of the Camel herd ran off to DBIx::Class (and far, far, far away from "icky" SQL).

If you like the Class::DBI interface but want better performance, clean transactions and something that's not abandoned - check out Class::DBI::Lite. For most projects it's a drop-in replacement and for the rest the changes are minimal.

JSON-XS (2.29) *****

The ability to transmit and receive data structures as text between wildly different systems and architectures is a nut that folks have been trying to crack for *years*.

Serializing and marshaling data structures is more important now than ever, especially with the advances in browser tech using XMLHttpRequest objects. JSON::XS offers Perl a super-fast way to manage this data exchange - and does it completely object-oriented *or* function-based. Its strict adherence to the JSON documentation prevents constructs such as {foo: "Bar"} and instead requires {"foo": "Bar"} but otherwise does the job perfectly and quickly.

A big "thank you" to the author for making this available to us all!

Cache-Memcached (1.28) *****

The Cache::Memcached module works great - and the documentation is spot-on. It is easy to use and easy to mock-up (because of the simple interface). I've used Cache::Memcached on quick scripts, distributed shared memory apps, anti-leech/abuse filters and for http session management. It's never failed me.

Digest-MD5 (2.39) *****

I've used Digest::MD5 *For* *Ever* and have never been disappointed. It works perfectly on Windows, Linux and Mac.

Thank you!

AnyEvent-SMTP (0.06) *****

*Wonderful* module! Great documentation! Thin, simple interface! The AnyEvent:: style makes it a cinch to plug into almost any architecture.

*Thank You* for making such an easy to use, well-written module.

forks (0.33) *****

Wonderful module.

I converted a mass-emailer program that originally did its own fork()ing to use forks instead. The performance overhead was minimal and the code became smaller and more concise.

That was back in 2003. Since then, the emailer has successfully delivered many millions of (legitimate) emails on a Fedora linux machine. Uptime has reached 2 years or more, and the only interruptions we've had were because of moving the server from one data center to another.

Thanks for such a great module.