Reviews by Nikolai


DBM-Deep (1.0014) ****

I fell in love with this module. It seamlessly creates a transparent, disc-based data structure from within Perl. A milestone.

However until it's XS coded or 100 gigahertz CPUs become commonplace, Deep too slow for most applications. Almost geologically slow, it would often seem: An immense gap between the ivory tower and the bazaar.

So for now I just use MLDBM qw(BerkeleyDB::Hash Storable) It's not everything DBM-Deep is, but it goes about 1000 times faster.

Graphics-GnuplotIF (1.5) ***

A problem in using this module is that it pipes plots to gnuplot. That in itself is fine, however gnuplot distributions >= 3.x and <= 4.2 have a broken piping bug wherein piped plots are non-interactive. A user can't zoom on the plot or interact usefully with it. Unfortunately that's a dealbreaker for any data miner.

Two workarounds: dump the plot to a file, then feed that to gnuplot manually. Alternately get the current gnuplot >= 4.3 from CVS source

This module seems to work fine with gnuplot 4.3. I would say the main constraint is formatting. Custom styles for particular abscissa/ordinate array pairs are not yet implemented. The solution is to override the pertinent subroutine, but which may give neubs reproach.

A neat, undocumented feature is the one-line real-time plot window. Keep the GnuplotIF object in global scope and call gnuplot_reset before every replot. You now have an instant, interactive plot to watch your data change on the fly.

A hint for those doing time series: lookup the gnuplot 'timefmt' directive. It makes gnuplot understand abscissa dates without resorting to labels.