I carry bottled water in my car and will give a bottle to a homeless person. I've also offered to buy them meals. The ones who are really hurting gladly accept; the ones who are scammers don't.
I used to volunteer at a shelter that fed 3 meals a day to the homeless. What amazed me - how many families were homeless. This was right after the debacle of 2008, in which so many people lost money.
I felt really bad for children who ended up on the streets through no fault of their own, and also for the parents. They were dealing with guilt, etc.
Another thing that amazed me was how many truly intelligent people were homeless. I talked to one lady who was carrying a few paperback sci fi books in her knapsack. We talked about sci fi while she ate her dinner. She had been a computer programmer.
She had lost her job due to health problems and the medical bills took her savings. Just a really sad scenario.
Some of the homeless are that way due to mental health issues or substance abuse. While you can make the case that a substance abuser does it to themselves, at the same time, if they could get sober, they could be productive members of society. A lot of these people are actually very bright and have skills.
While there are plenty of scammers, sure, there are also people who are hurting who need help. I don't think society does enough to help keep people from becoming homeless, or enough to get them off the streets, at least the ones who want to get off. There will always be some people who choose that lifestyle, hard as it is to believe...