Why do people hate these so-called homeless people ?
If you give them money, you are enabling their situation, and thus you obviously do not really care about them. You are only giving them money to make YOURSELF feel better.
If you really cared about them, you would not give them money which allows them to continue their alcohol or other drug habit. 
If all citizens would stop giving these people money, it would eventually force them to seek help from either churches, family or friends, or government assistance. This in turn would lead to helping the individual to give up their addictions, and put them on the road to 
recovery, and a productive citizen.
So please remember, the next time you give out handouts, you perpetuate the problem and you are part of the problem.