Another technique that we have found useful is to make the form a two-page
form. On the first page, we ask for the submitter's email address and then,
on the second page, we ask for the rest of the information. This, of
course, adds a barrier to human submitters as well that may not be
acceptable in certain cases. However, we tend to use this technique in
situations where we can add value for the submitter by using the email
address to look up information to pre-populate certain fields (such as
demographic information) on the second page of the form so the submitter
doesn't have to type it in.
On single page forms, we've used the hidden text field technique described
by others. For the first six months or so that we used the hidden field
technique, I scanned all the submissions marked as spam by that technique
and never saw a false positive.