Giving money to kids on the streets encourages bad behavior. The ones who have parents will be forced to continue seeking money instead of doing something useful like going to school due to strangers generosity and terrible parents. Those who have no parents and are just street children use the money to do bad things like sniff glue. I always think that there are much better ways to help children if you wish to.
I made an exception for this boy who had two nubs for hands and was missing a leg. I can not imagine drawing a worse hand in life and yet the kid was trying to earn a buck by drawing pictures. It probably still isn't the right thing to do (giving money) but sometimes rules need to be broken.