I just have to say that there has never been a true Socialist state. The USSR in the beginning was Leninist (despite Lenin marketing it as modified Marxism), under Stalin it became Stalinist (but one could argue Fascist). Cuba is/was a presidential dictatorship. North Korea is just plain old Fascist. Most "Socialist" states (except for the USSR during Lenin's reign) turn into a totalitarian or quasi-fascist state. The whole point of Socialism as I've found it is that it is a classless society, meaning no one is better/has more things than any other person, but if you look at all of these states, they have leaders who are "worshipped" (i.e. Kim Il Sung in North Korea) and that live a life of luxury whilst their people suffer the blight of production quotas and over industrialization, and if they fail to meet the expectations of the state, they are punished...severely.
I know most of this is just ramblings by a fairly capitalist person, but I mean if you look at it, the only true Socialist states must be small, not on a national level, but on a communal level. Look at Robert Owen, he successfully created a socialist community that was a representation of what Socialism was supposed to be, but after it grew beyond a certain point, people began wanting power, and more. It is human instinct to want more, to be comfortable. Those are things that Socialism doesn't allow, that's why "Socialist" nations don't last very long, they people get tired of not being able to succeed. It's why most modern powers are considered capitalist, because they allow their citizens to succeed in business.
While capitalism does allow for homelessness to be an issue, especially in socialist states, people were not getting what they need to survive. The fact of the matter is, capitalism has many flaws, but it works. Socialism in its true form will not ever be able to be utilized on a national scale, history proves that. In any case, I hope my quite historical view on the matter is a good contribution to this discussion.