I don’t know if this is what you meant, but here goes:
This is less a single piece of advice from someone than an attitude I’ve tried to adopt from places like LessWrong and CollegeInfoGeek.
Everything in your life is optimizable.
Doing better is less a matter of changing yourself than it is of implementing systems to help yourself overcome your failings.
Addressing 1) “Learning when you’re wrong” (in a more general sense):
Absolutely a good thing to do, but the problem is that you’re still losing time making the mistakes. We’re rationalists; we can do better.
I can’t remember what book I read it in, but I read about a practice used in projects called a “pre-mortem.” In contrast to a post-mortem, in which the cause of death is found after the death, a pre-mortem assumes that the project/effort/whatever has already failed, and forces the people involved to think about why.
Taking it as a given that the project has failed forces people to be realistic about the possible causes of failures. I think.
In any case, this struck me as a really good idea.
Overwatch example: If you know the enemy team is running a Mcree, stay away from him to begin with. That flashbang is dangerous.
Real life example: Assume that you haven’t met your goal of writing x pages or amassing y wealth or reaching z people with your message. Why didn’t you?