I'm very glad to tell you that I received an answer that really satisfies the question of "how is the best way to help?".
I received that answer from a person trained for social services using the Yahoo Answers web site. Here the answer:
"Usually by the time a person hits the streets, there are multiple issues that they are facing: poverty, addiction, mental health, lack of education and/or skills etc.
Giving someone a smile and a coffee is nice in the moment, but to really help people, they have to want to be helped. Usually there are non-profit organizations that have the training and the staffing to address the multi-level challenges that accompany people who are living on the streets.
The best way you can help is to volunteer at these organizations, educate yourself on the issues, or if you don't have time for that, at least strive to support these charities through donations (money or otherwise)
Just my 2 cents."
This person's nickname is "chunkamunka" Thanks a lot for your great answer!