Home | About Spam | About SpamBouncer | Downloads | Configuration | Reference | Resources
Overview | Activists | Blocklists | How-To Sites | Spam Filters | Spam Laws | Whitelists

Under Construction
Under Construction 
When this is complete, it will contain an list of web sites that provide useful information on avoiding spam, tracking spammers, and fighting back against them.
Any general programming language can be used to build a spam filter, of course. Certain programs are especially suited to the task, however.
Perl is a general-purpose scripting language that is also well suited to building spam filters on Unix. Perl is fairly well suited to building spam filters on Windows computers, as well, because there is an actively-maintained Windows port of the Perl program. Writing Perl-based spam filters on Macintosh computers running OSX is more difficult because Perl cannot deliver directly to Macintosh-style mailboxes, requring that you deliver to a local POP or IMAP server. To the best of my knowledge, there is no version of Perl for the Macintosh operating system prior to OSX.
A number of spam filters are written in Perl. By far the best known, and (in my opinion) best of them is SpamAssassin.
Procmail is uniquely suited to building ad-hoc spam filters on Unix. The Procmail program is included in every modern distribution of any flavor of Unix, and many Unix programs associated with email delivery are Procmail-friendly. Procmail is not as well suited to filtering email on the Macintosh or Windows. You can use Procmail on Macintosh OSX computers fairly easily, but it cannot deliver directly to Macintosh inboxes, requiring that it be used to preprocess email that is then delivered via a local POP or IMAP server setup. There is no version of Procmail for versions of the Macintosh prior to OSX. No Windows port of Procmail exists, requiring that a Windows user install the CygWin Unix emulation environment and run Procmail in that environment.
Unlike Perl, Procmail was designed specifically to filter email. It lacks the extra code required to perform general programming tasks, speeding the program and mail delivery. Its scripting, or recipe, language is arcane and its implementation of Unix regular expressions just different enough from the "standard" implementations in Grep or Awk that it presents a steep learning curve. Once learned, however, it is easy to use and almost infinitely flexible.
In addition to (of course) the SpamBouncer, the JunkFilter spam filter is based on Procmail. In addition, a few million mail administrators around the world write ad-hoc Procmail scripts to supplement their spam filters and other anti-spam measures.