I'm a believer in a mix. Corporal punishment has its place, such as when a child tries to run out in the street, or tries to touch a strange dog, or some other situation where one slip up could get your child hurt or killed. You need to teach them to do the right thing, right away, and frankly, a little shock to the system would work best. Especially when children are younger, you can tap into the pain-pleasure relation so that children will relate the bad behavior with an unpleasant experience and learn not to repeat the behavior. Do it too much, however, and they'll get used to it and the effect will diminish and you'll find yourself using corporal punishment more and more for the same result. *That* is when you can run into problems of being too harsh. Use corporal punishment sparingly, not as your primary method.
Secondly, don't ever do it when you're pissed off, to take out your frustration with your kid. Emotions cloud judgment, and when you're frustrated, rely on another person to administer the punishment if possible. Also, as kids get older, corporal punishment decreases in benefit.
In cases where it's a less-severe lesson to learn, things like privilege deprivation, time-outs, and such can work. However, there are personality types that just don't jive with non-traditional discipline, so use them with caution. You don't want the child to feel like they can get away with things in the presence of one parent, but not the other.