I think "ad hominem" reasoning makes a great deal more sense when you're dealing with someone citing alleged facts not readily verified. It makes a lot less sense when you're dealing with moral arguments, steps of reasoning from facts already known, etc. Then you want to just say - "If my opponent is flawed, let me prove it by finding the specific flaws in the argument."
No, it's not like this in theory, but the practice makes a good deal of sense. I had to give someone this advice just recently. It's extremely important to folks like us who've learned a large catalog of flaws that other people can potentially have.
Stephen Bond writes the definitive word on ad hominem in "the ad hominem fallacy fallacy":
This is too beautiful, thorough, and precise to not post. HT to sfk on HN.