The older I get, the more I'm convinced the secrets of life come in contradictory tuples, and the application of all elements at appropriate time and in appropriate ways. Zen koans were onto something.
{"You are not your lines of code", "You should feel proud when your code is good and embarrassed when your code is bad"}
Both of these things are true.
To the matter at hand, how to take criticism constructively, the key for me is bifurcating my emotional response from my logical one.
Emotional response is noted, thought about, but routed inward. Logical one is routed outward.
E.g. "This is the dumbest application of a bad sorting algorithm I've ever seen."
Emotional/inward: "That hurts. Am I a bad programmer? How did I not know this? Will I ever be a person who does know things like this? I respect the person who's telling me this: do they still respect me?"
Logical/outward: "Fair. What algorithm would you have used in this application? If you have time, can you walk me through how you would have picked it?"
People usually screw things up when they don't hold space for their own emotional response and commingle it with the logical one (e.g. manufacturing a logical justification for what is really an emotional feeling).
> the secrets of life come in contradictory tuples
A great phrase for what I've been noticing about my life as well.
{"You should be okay with who you are", "You should always strive to be better"}, or {"Desire is the root of suffering", "Being passionate about a goal is the only way to fulfillment"}
Finding the nuances in these phrases and living in the bubbles where they are not actually contradictory has given me a lot of peace.
{"You are not your lines of code", "You should feel proud when your code is good and embarrassed when your code is bad"}
Both of these things are true.
To the matter at hand, how to take criticism constructively, the key for me is bifurcating my emotional response from my logical one.
Emotional response is noted, thought about, but routed inward. Logical one is routed outward.
E.g. "This is the dumbest application of a bad sorting algorithm I've ever seen."
Emotional/inward: "That hurts. Am I a bad programmer? How did I not know this? Will I ever be a person who does know things like this? I respect the person who's telling me this: do they still respect me?"
Logical/outward: "Fair. What algorithm would you have used in this application? If you have time, can you walk me through how you would have picked it?"
People usually screw things up when they don't hold space for their own emotional response and commingle it with the logical one (e.g. manufacturing a logical justification for what is really an emotional feeling).