Tipping is stupid, and it now exists (in the US) solely to offset shitty wages.
When I waited tables in college, I treated it as compensation for my work above and beyond the status quo. Now it's simply an expectation, regardless of the quality of work or experience.