Okay, folks, you asked for it! Waiters and bartenders expect a tip because that is how we get paid. We don't get a small paycheck, WE GET NO PAYCHECK. We get $2.08 an hour and after you claim your tips and pay taxes, there is NO PAYCHECK. How would you like to get no paycheck after being on your feet for an 8, 10 or 12 hour shift? You may not think it's a fair system to have to tip a server or bartender, but that is the way the system is set up. If you feel it is wrong, my advice to you is not to go to a restaurant or bar. If you don't believe in tipping a server, stay home and cook for yourself! Not tipping a server is like you going to work and not getting a paycheck!!!! Get it?
As far as poor service, let me say if the server is polite and trying, sometimes the mishaps are not their fault. Food cooked improperly is not the server's fault. It is the cook's fault. You should let management know. If the food takes too long, that again could be attributed to the kitchen getting slammed and backed up on the orders. There's really not much a server can do except keep checking back there for your food. Again a manager should be notified if the wait is excessive. I wouldn't blame the server for those kinds of situations and not tip.
However, for rude service or unattentive service, yes that is the server's fault and should be addressed. You could give a smaller tip and again let management know your displeasure with the rude service. However, make sure you know if the problem is really your server's fault or something in the kitchen beyond their control. A good server will keep checking on you and keep you posted on the delay. I myself usually call the manager over if the problem is out of my hands.
And lastly make sure you are polite if you expect politeness in return. I can't tell you how many people are rude and talk to me like I'm a dog. Just because I am serving you food or a drink doesn't mean I'm any less than you.
And yeah, if you don't tip, definitely don't go back to that restaurant again. That's a no brainer.