I think when we are little children we learn that when our parents or other adults tell us we are good, we are good, and when they tell us we are bad, we are bad.
For the kinds of things that a child deals with, they were possibly or probably accurate most of the time (unless your parents were alcoholics or something---and one of mine was; then you get told or treated as "bad" all the time).
So your brain just learns to operate this way, until you retrain it.
And retrain it, you must. Because the kinds of things adults deal with are much more complicated, plus some adults take advantage of others, are dishonest, don't think things through thoroughly, make mistakes, etc. So if you don't retrain your brain in this regard, you will constantly get "punished" by other adults judging you negatively.
The question is, how to retrain it? In a nutshell, I think the answer is: it just happens automatically by consciously thinking about this issue every time it is relevant. e.g. when my adviser says something that threatens my self-esteem, I remember the principle that his judgement may not be correct, and that it should not affect my self-esteem, and then come up with my own honest, meticulous judgement, which should and does affect my self-esteem. (If you aren't "honest" and "meticulous", you won't really trust your own judgement, so it won't sink in and the whole technique won't work.)
Those are my thouhgts/strategies, hope it's helpful.
I appreciate your point about recommendations. My adviser's judgement does matter for that, just not for my self-esteem, and you have to separate the two, because they are different things. I think I'll probably be OK on the merit of eventually publishing the code I am working on (plus some more papers), which will mean more than anything my adviser could say for the kind of work I want to potentially do (though I might actually just totally change fields after I graduate [1]).
And don't worry, if you keep looking and refuse to give up, changes are very, very high that you will find something as fulfilling as programming could have been, had you actually enjoyed it more. I guess you've already figured this out though since you mentioned planning to study neurosci.
[1] Because the kind of programming I like doing is really cutitng edge and research-y. I like solving really challenging problems slowly and carefully and thoroughly. Not sure I'll find this in industry and not sure I could live with "just normal" programming.
For the kinds of things that a child deals with, they were possibly or probably accurate most of the time (unless your parents were alcoholics or something---and one of mine was; then you get told or treated as "bad" all the time).
So your brain just learns to operate this way, until you retrain it.
And retrain it, you must. Because the kinds of things adults deal with are much more complicated, plus some adults take advantage of others, are dishonest, don't think things through thoroughly, make mistakes, etc. So if you don't retrain your brain in this regard, you will constantly get "punished" by other adults judging you negatively.
The question is, how to retrain it? In a nutshell, I think the answer is: it just happens automatically by consciously thinking about this issue every time it is relevant. e.g. when my adviser says something that threatens my self-esteem, I remember the principle that his judgement may not be correct, and that it should not affect my self-esteem, and then come up with my own honest, meticulous judgement, which should and does affect my self-esteem. (If you aren't "honest" and "meticulous", you won't really trust your own judgement, so it won't sink in and the whole technique won't work.)
Those are my thouhgts/strategies, hope it's helpful.
I appreciate your point about recommendations. My adviser's judgement does matter for that, just not for my self-esteem, and you have to separate the two, because they are different things. I think I'll probably be OK on the merit of eventually publishing the code I am working on (plus some more papers), which will mean more than anything my adviser could say for the kind of work I want to potentially do (though I might actually just totally change fields after I graduate [1]).
And don't worry, if you keep looking and refuse to give up, changes are very, very high that you will find something as fulfilling as programming could have been, had you actually enjoyed it more. I guess you've already figured this out though since you mentioned planning to study neurosci.
[1] Because the kind of programming I like doing is really cutitng edge and research-y. I like solving really challenging problems slowly and carefully and thoroughly. Not sure I'll find this in industry and not sure I could live with "just normal" programming.