Reviews by Jose Alves de Castro



Mac-Glue (1.30) *****

It's a wonderful module.

I can now control all my applications with Perl, using a very simple interface.

The only catch was that I didn't know I first had to create the "glue" for an application in order to control it (then again, I didn't read the documentation thoroughly), but I googled the error message and found the answer in "0.08 seconds".

Just in case somebody else needs it, here's what I had to do to start using this wonderful piece of technology:

sudo gluemac /Applications/

Just do that for every app you'll want to control later on.

Bottom line is, the module works great, and gives Perl users an amazing new degree of control over their Mac applications.

Smart-Comments (v1.0.3) *****

Not only is it useful for debugging, it's also wonderful for implementing scripts where you need a progress bar without going through any trouble.

Something simple like this:

for ( @my_items ) { ### Processing items ---> done

will give you a progress bar just like that.

Solr (0.03) ***

It's wonderful to search for Solr on CPAN and find this module, but there are a few drawbacks to it.

The biggest one is the inability to know whether an add operation was successful or not. This means you push items to Solr, but have no idea whether they made it in or not. Whether it's Solr that is down, the XML we're sending that is malformed, or a black hole that has just formed inside the hard drive of the machine hosting Solr, we have no idea whether our request was successful or not. This could be easily implemented by having parsing the response from Solr.

Lacking this simple feature, the module is rendered useless. It actually feels that it isn't finished yet.

I hope the module gets this fixed, so it can be used in production code.

Test-Deep (0.103) *****

Awesome. This is the (no longer) missing module for testing sets, subsets and the likes.

Want to make sure your sub is returning 3 elements out of 10 allowed ones, but don't know in which order it'll return it?

cmp_deeply( [ @three_elements ], subsetof( @ten_elements ) );

That simple!

XML-Feed (0.12) *****

I hereby declare my love for this module.

In a matter of minutes, the clean and precise documentation allowed me to parse Atom, RSS1 and RSS2 with just a few lines of code.

Way to go, Benjamin!

Weed (0.0084) *

No documentation (apart from the useless one), code after __END__, no apparent purpose, a warning to not use the distribution... What is this thing doing on CPAN, anyway? How would I even use it, if I wanted to? It just seems to be a personal project of someone who is trying some new things, which is OK, but I can't see a reason for it to be on CPAN, if we take into consideration that the lack of documentation makes it pretty hard for anyone to help the author.

Also, the distribution is lacking important things, like a README or a Changes file. And did I mention the (more then) daily releases with diffs that are just to huge to follow and that CPAN doesn't even manage to display?

And the thing that scares me the most? Probably the fact that the current development release includes a 20M mp3. Or maybe the fact that the small bit of documentation in the main module includes something like this:

=head1 EXPORTS

=head2 NO

Is not YES.

=head2 YES

Is not NO.

What the hell is that supposed to mean?

Also, I don't understand why the author seems to be Hon Weijun in one place and Holger Seelig in another...

And the saddest thing is that I could go on and on about this...

This is something I wouldn't even place in the Acme namespace...

Please, document it properly so people can understand it or remove it.

MIME-Explode (0.37) *****

It has the greatest thing a module can have: it works!

Documentation is easy to read, and the same goes for code samples.

EvilBoss (1.01) *

There's *no* documentation.

I have absolutely no idea what it does.

Unless it's something related to a website called EvilBoss (which I assume it isn't), no one looking for the functionality it provides (whatever it may be) will be able to find it.

The code looks clean and well structured, though, so it probably just needs some documentation and perhaps a name change.

Module-Starter (1.40) *****

It's a great way to create CPAN modules, has great documentation, works, and even supports pluggins!

Wonderful! :-)

Devel-Cover (0.55) *****

Devel::Cover actually makes you discover things about your code that you would never imagine.

It's a must.

Test-Pod-Coverage (1.06) *****

I now use this in all my modules. It's simple, well-documented, it actually works (which is always good), and, without any other action on your part, months later, it will catch a glitch in your documentation that you might never had realized otherwise.