Bloody Perl Journal ...It came last Friday, I read it while camping over the weekend, and as a result I'm now slightly dizzy, wired, and not sure where the past day's gone.
Thing is, for yars I've used a spam filtering widget called NAGS. NAGS is really badly structured, but I couldn't be arsed to write my own spam filter. So I customized it slightly until I was comfortable with its results.
Then two things happened. The NAGS author says he can't maintain or support it any more, and I read the TPJ article about Mail::Audit.
So I'm now about 20-30% of the way into writing a first cut at a replacement for NAGS. Goals are to read the same configuration files (if you want to keep them), be a hell of a lot more modular and maintainable, and add extra checks (RBL, for example). A secondary goal is to plug into an as-yet-unreleased SMTP server that the ObT (inventor of CLC Intercal is writing.
So far, it's still pretty crufty -- but at least the parser isn't mixed in promiscuously with the taint checking code. In fact, once I've cloned the NAGS functionality missing from Mail::Audit I can probably move it out into a set of subroutines then add a configuration parser that lets me ascribe priorities to taint tests (and costs associated with them). Maybe.
This one could run and run. But it's time for me to scratch that anti-spam itch properly. (Which is why right now I'm dizzy, looking at the clock and wondering where the daylight'sgone, and why the cat is yelling at me from in front of an empty food bowl. Oops.)
Then it'll be time to think about next month's Open Source articles -- so far I've got Linux Today and Computer Shopper on the list. (Anyone wanna buy a feature article and help support an open source author?)
PS: Anyone else going to YAPC::Europe?