Maybe this is just a way I rationalize all the mistakes I've made, but I truly think there are certain lessons in life that you can't really learn from others, you just have to experience a hurdle yourself to understand how to avoid it in the future.
What are some lessons like this in programming/tech?