As I said way up thread, I have been in the service industry for years - as has my husband. Neither of us are particularly generous tippers in restaurants, and whilst we might offer a bartender a drink if we have enjoyed their company, neither of us usually tip for anything other than table service. The majority of our co-workers hold similar attitudes (to the best of my knowledge).
However, the comparisons that everyone is making with teachers, nurses, care workers etc. have forgotten one vital component.
It is unethical for a nurse to accept cash from a patient's family as that could lead to horrendous compromises in care in the long run; poor people, homeless people, those without a generous family, those without any family - would they see less of their nurse? THIS is why we don't tip nurses (and teachers, and anyone else doing these sorts of caring jobs).
It is not unethical for me, at work, to ignore the drunk, stingy bastards in favour of the lovely, generous ones, and adjust my service accordingly.
It is, however, unprofessional, so I don't do it. 
Oh, and for the pp who asked why we don't tip the chefs? We do - most restaurants have systems in place where the chefs, KPs, and bartenders take a percentage. Just don't get me started on salaried managers taking a cut when they receive bonuses as well.