I agree that it takes time to shop at local shops, and I fully understand that a lot of people don't have that luxury. But as for money, I've found that I'm spending a bit less on food now that I'm staying out of supermarkets. It's definitely cost-effective to shop in the small local shops!
As for Waitrose, well, all the big chains are harmful to some extent. Tesco just gets singled out because it's the biggest and possibly has the worst reputation in terms of dealing with farmers. Though Asda is just as bad. But Tesco, Asda, Waitrose, Sainsburys, Somerfield ... it's really a question of picking your poison.
As I've said, though, a lot of people don't have time to shop with the little guys, so I'm not indicting people who shop at the big supermarkets for that reason. But, seriously, if you do have the time ... there's no excuse.