Consider when children make a mistake or do something silly - often they are chastised or punished rather than educated and forgiven. Because of this we learn to lie about, hide, or pretend to misremember mistakes in a bid to mitigate the punishment we know we're about to receive. Later in life we're remembered by the things we've done in the past, and if you've done something bad enough (or even just silly or ignorant) it'll hang over you like a shadow for the rest of your life. Even if you personally feel like you've grown and moved on, there is always the risk that someone will dig up your past and throw it at you. In the end we live in fear of our past and feel controlled by it and that makes it harder to look into the future to become the person we might like to be. Those with sufficiently unfortunate pasts are increasingly rejected by society so they have no alternative but to continue adding to their unfortunate past because the communities that contributed to their past are the only ones that accept them.
Personally accepting that the mistakes you make don't define you as a person can go a long way to freeing yourself from some of the burden, but culturally it still lingers. Ultimately though there is a huge difference between shoplifting when you were a dumb kid, and becoming a serial killer. The threshold for redemption clearly varies with the severity of the crime, however it seems to me that in many cases we simply reject any chance of redemption outright and this probably hurts us more in the long run than it needs to.