"Your ignorance is amusing"... I like that one! I'll have to use it myself.

Sadly yes, those people are out there...too many if you ask me, and they are very rude and insulting.
My approach is this: A first rude comment gets a corrective response. In the case of what the old man said, I would tell him that's virtually impossible. If it was left at that, fine. If the person, or persons with them, continued the insults or rude comments, I would get a bit snippy with something like: 'I would get some proper education on snakes before saying something like that again.'
If I really wanted to get uppity, I would say 'Oh, are you a Biology major? I am.'

I like to keep things civil, even if those speaking are not. It does no good to sink their level, they'll just beat you with experience. Rather, you should try to raise them to yours.