Of course, argumentum ad hominem is the logical fallacy of attempting to undermine a speaker's argument by attacking the speaker (or the source of the speaker's material) instead of addressing the argument. A couple of cans of grits whizzing by the noggin' is certainly one way to do it. ("You ducked, you wimp, therefore your argument sux!")
While ad hominem attacks are some of the most common within an argument on the Net, other than perhaps "Hitler", the term itself is one of the most overused terms on the Internet. Too many people confuse ad hominem with sarcasm or outright insult, thinking they are the same, or when sarcasm or insult is present, it turns the argument into a de facto ad hominem. As soon as the suspicion of an insult appears within an argument, they summon the holy angels of ad hominem to smite down their foes, before ascending to argument heaven in a blaze of sanctimonious glory. They may not have much up top between the ears, but by God, they don't need it when they've got ad hominem on their side. It's the secret weapon that delivers them from any argument unscathed.
The reality is, the mere presence of a personal attack does not necessarily indicate ad hominem - the attack must be used for the purpose of undermining the argument, otherwise the logical fallacy just isn't there. It is not a logical fallacy to attack someone, in and of itself, the fallacy comes from assuming that a personal attack is also necessarily an attack on that person's arguments. Sometimes it is, especially when the insult or sarcasm is a part of the counter argument itself, and in that case the logical fallacy is there. Other times someone just doesn't have anything of substance to respond with, so they reduce themselves to a blatant personal attack, irrespective of the attack having any effect of the speaker's arguments - they just want to undermine the character of the opponent. It's an attack for the sake of attack, because you've got nothing of substance to say. It's the same as sticking out your tongue at someone. So there.
But if you can't demonstrate that your opponent is trying to counter your argument by attacking you, then you can't demonstrate that he is resorting to ad hominem. If your opponent's sarcasm is not an attempt to counter your argument, but merely an attempt to insult you (or amuse the bystanders), then it is not part of an ad hominem argument.
Ironically, the logical fallacy of ad hominem is most often committed by those who accuse their opponents of ad hominem, as a way of getting out of having to properly present their argument, by trying to dismiss the opposition not by engaging with their arguments, but by claiming that they have resorted to personal attacks and thus the debate is over.
Those who are quick to squeal "ad hominem" are often guilty of several other logical fallacies, as well, including my favorite: the fallacious belief that introducing a really kewl and impressive-sounding Latin term somehow gives one the decisive edge in an argument. Quiquid latine dictum sit altum viditur (Whatever is said in Latin sounds profound)
Braccae tuae aperiuntur *
The fact is, you can make your points in an argument, and call someone names within the same argument, without ad hominem being present. The key is that you still have to make your points.
The straw man argument falls within the ad hominem argument, too. It's where a superficially similar position is created or substituted for the actual position, like hypotheticals or other unrelated situations, and then the similar position (the straw man) is attacked, and by virtue of refuting the newly created position, the attacker tried to gives the illusion that the original position has been refuted. This is done in many ways, including oversimplifying an opponent's position and then attacking the oversimplified version, quoting someone out of context, and changing the position with the introduction of some new qualifier or concept and then refuting the newly modified position.
* Your fly is open