3
votes

Normally whenever a CAPTCHA might be needed I always present it to the user apriori but the StackOverflow approach is much better, it only shows me the CAPTCHA when it thinks I might be a bot.

I'm interesting in learning the requirements and how I could implement a similar system on my projects. What are the actions that make SO believe I'm a bot? Is there any time frame for doing such actions? Does such a system require any particular database design?

1
I believe it uses a sophisticated question parser that scans for offers of heavily discounted pharmaceuticals, bachelor degrees, and women of 'easy virtue'harto
Don't forget about 'extending your male member with nasal inhalant' :Palex

1 Answers

3
votes

I would log time between actions, and if under (for example) 10 seconds then require a CAPTCHA to continue.