At the individual level, one could donate time to help build lower
income housing or, volunteer at a shelter. This could, help free-up some of the time state sponsored counselors and other qualified personnel are spending serving food or doing construction. Not everyone has the time or money to donate to help reduce this rowing problem in our country. However, some individuals like myself, think the available programs should be enough. However, it is possible that the homeless that stand on corners and highway on-ramps begging for change so they can get more drugs or alcohol have jaded us.
After writing this, I do believe in order to reduce the amount of homeless in our country it will have to be as both a society, and the individual level.