I personally think that we waste way too much time, individually and as a society, at assigning blame and responsibility. At the opposite end and on both levels, we do not spend nearly enough time informing ourselves and trying to find the underlying causes and mechanisms of specific abherent behaviors. For such a technology advanced civilization, it's just shocking how little the average person understands about human behavior and cognition, compared to how quickly they fall into their innate -social fairness/responsibility- frame of mind and innate ingouping and outgrouping mechanism.
The impact of punishment, the example it leaves upon others, can only go so far. Assigning blame and responsibility has elevated us as a civilization, there's no doubt about it, but we're now at a point where we need to take responsibility as a society and understand how the fundamental problems of our major societal structures is a root cause for many troublesome behaviors.
Accute social stratification tends to reduce and even eliminate social mobility, social cohesion, mutuality and reciprocity.
We leave people behind and then wonder howcome their children become a problem.
Want to change the world and reduce abherent behavior? Start by making sure every child has proper nurturing. And when I say proper, I mean in every which form suitable to our own biological needs and social-moral values.