Ed Felten has a post on using challenge-response systems to counter spam.