I will say mine:
I have been travelling for long with my camera and made loads of candid pictures around the world. I ALWAYS ask before taking a picture. I just approach, show the camera and say: "may I"?
BUT
it is ALWAYS better, if possible, to talk with the person you want to shoot...not only ask if you can make the photo, ask about the person...gaining experience I found out that the best solution in order to get a nice photo of a person is:
1 - keep your camera in your backpack
2 - start talking with the person, make questions, give answers, enjoy,
3 - when you feel the moment has come, ask, then take out your camera and shoot.
I understand that it is not always possible to do this, but for me it is the only way to get the picture I want.
Allow me to end this post with a story: a few years ago I was presenting a Voodoo ceremony in Benin, Africa. I got there with a local friend and he asked the priests if I could make photos during the event. The answer was straigh, no!
So I kept my camera on my backpack and spend time talking with the chief of the family responisble for the event, learning, asking about the ceremony etc. etc. I dind't raise the issue of photos again and kept talking with him about what was happening.
Half an hour before sunset he told me "better take your camera out now, soon it will be dark". I had the chance to take 3 pictures before sunset.
For me, more than anything else, a photographer is a person interested by its subjects. Photography is not only learning how to shoot, it is also learning about what you are shooting.
hey, just my 2 cents...
regards,
T.O.