Being purely no-tip is as bad as percentage tips.
A tipping community insentivises retail workers to work harder and better. Not tipping in such cases is expected, and not discouraged by the workers.
A no-tip community discourages good work, because you shouldn't expect a good service if nothing changes in the worker's pocket by doing it. There is a difference between what the system wants it to be and what it's going to be. It also encourages something like a percentage tip system to be used.
A percentage tip encourages customers to NOT tip, and retail workers to not work better.
That is why when you think the service is good, and you can afford to, give a tip.