| I'm not a psychologist, but I notice some things that I look at differently. You mention "being an average programmer" and learning new things feeling like work because they make you feel "too dumb or stupid." So what is fun? Something you are good at? What are your expectations? You also mention "trying to find my passion" Cal Newport wrote some articles of how "following your passion" is dangerous advice because it doesn't work like that. Perhaps you are depressed and you just need to find some meaning behind what you are doing? Have you read Man's Search for Meaning? Because being good or bad at programming doesn't have to affect the enjoyment you get out of it. I know some grumpy rock-star programmers who seem to unconsciously be chasing this concept of being accepted or loved when they finally reach whatever level of perfection they have invented for themselves. Imagine how frustrating it must be for them, every flaw is preventing them from receiving what they desire. I worry that your line of thinking is: I'm not happy. -> OK maybe it is because "I'm not a good programmer." -> OK, let's try becoming better -> Progress with natural setbacks -> (Frustration because you aren't becoming happier) -> Maybe it is because I'm not a good programmer -> OK, maybe I need to do something else. Also, moving to a new country is hard for everyone, it sneaks up on you. |