... "I want to learn why I am this way." Then what? Will learning why you made those choices be what changes your choices? You're still eating junk food, aren't you? You're eating it while you're learning how bad it is.
"But... why am I this way?" That question is a narcissistic defense. It doesn't want an answer, it wants you to keep asking the question.
"I'm a good person, I just am making bad choices." Wrong. You're not a good person until you make good choices. Until then you are chaos.
Are you stuck with a legacy PHP application? You should buy my book because it gives you a step-by-step guide to improving your codebase, all while keeping it running the whole time.