The roots of the problem are twofold, IMHO.
1) We have a benefits system that allows people to attain a better standard of life on benefits than they would be able to achieve by working. Regardless of the reason for being on benefits, that hardly gives any incentive to try and improve their lot in life. Benefits are paid to able-bodied people to provide temporary assistance to allow them to survive while they do that. They should provide for accommodation, food, clothes, sanitation and heating. Not lottery tickets, cars, fags, booze, drugs, flat screen TVs, Sky subscriptions, etc.
2) The "anything goes" morality that we have these days that teaches us that any lifestyle, no matter how selfish, is to be respected, means that people don't have the decency to stand on their own feet when they can make a "lifestyle choice" to sponge off the rest of us.
Kevin