It's so easy to get annoyed with yourself and blame the fucking world. I happen to know, from reading Psychology Today for over a year, that anything that goes wrong in your head is your own god damn fault. Blame is always the first answer and it has to do with the way that we all grew up I think.
While growing up I learned quickly that taking all the blame for any sort of shit I did in school was pointless. Generally you could bury someone else and when that didn't work you could always spread the blame over several parties to lessen the blow. Obviously the older you get the more people catch on to your bull shit. Your friends aren't as happy to accept your excuses of being tricked into telling on them or; "she already knew you were there when it happened, I tried to say you weren't though."
After you're done with school and into the real world you have tasks that are expected to be completed by you and you alone...tough to spread the blame on something that is 100% your own doing. And then there are new interpersonal relationships. When you get annoyed with a friend or a lover it's easy to lay the blame on them because they don't live their lives exactly as you live yours. When, as it turns out, you live your life like a wretched ass hole because you are, in fact, nothing more than a wretched ass hole.
It's a nice option to take a step back and think about why you hate a situation and how you are the blame. When you realize you're to blame you also realize that you're the one who has the remedy. I'm not saying I'm always to blame when shit goes wrong but realizing that I'm usually a majority of it has made my life seem easier.
When you fuck something up, you can hack a solution. You can hack anything.