in reply to Legacy Code

Ah yeah. Here's one of my own crimes. A quick&dirty way to allow for relative timestamps.

sub parseWebdate { my ($str) = @_; if($str =~ /^([+-])(\d+)(\w)/) { my %multipliers = ( s => 1, m => 60, h => 60*60, d => 60*60*24, W => 60*60*24*7, M => 60*60*24*30, y => 60*60*24*365, ); my ($direction, $amount, $multiplier) = ($1, $2, $3); if(!defined($multipliers{$multiplier})) { croak("Undefined delta time multiplier $multiplier"); } if($direction eq '-') { $amount = $amount * -1; } return time() + ($amount * $multipliers{$multiplier}); } # normal time string return str2time($str); }

When i wrote that, i told myself "It's only temporary, i'll clean it up next week". So far, it has been about 624 weeks on my Todo list and still going strong.

perl -e 'use Crypt::Digest::SHA256 qw[sha256_hex]; print substr(sha256_hex("the Answer To Life, The Universe And Everything"), 6, 2), "\n";'