Being a programmer in today's age, where things are evolving and changing every second of everyday can be both the best and worst part about the profession. There aren't many fields out there that possess this level of change, both in frequency and scale. It's far too easy to fall into the various traps laid by such a scenario, potentially leading to feelings of low self-worth, burn out and even depression. Usually in that order.
About two years ago, I fell all the way through that cycle. Luckily, I had an intrepid team of co-workers who helped me dig myself out of that hole. What's scary is that if it weren't for the random happening of Bell's Let's Talk Day, I may never even have shared these feelings in the first place. Thankfully I somehow developed the courage to speak up, and I'm forever grateful for the changes it imposed.
Since then, I've gotten better at noticing the patterns of this happening and have come up with ways to squelch the problem which work for me.
The first and most successful is of course, talking with others. That was one of my primary motivators in joining this community. I initially joined Twitter and began following some of my favourites, like @shanselman , which started out amazingly (btw if you don't know or follow Scott, do it right now, he's the best). Unfortunately, I found that the Twitter rabbit hole was making me feel like shit. Who are all of these twenty-something year old's working at the likes of Google, Microsoft, Facebook, GitHub?! Am I a huge failure because I am a thirty-something year old and I don't work at a place like that? So far, I'm happy to report that being part of this community has been by and large one of the most positive things I've done for my "programmer psyche".
My second tier support has always been time away from programming. Much like recovering from a workout, your brain needs time to rest. Our profession is all too accessible outside of the confines of "the office", after all you don't see doctor's going home and practicing on themselves or family members. Whenever I feel a tinge of this self-diminishing happening, I turn to some separation.
Thirdly, try learning something new. You'll probably strike out a few times, I know always do. But when you hit something that resonates with you, it'll reignite your love for the job and (hopefully) your happiness all over again.
I share all of this not to foster any kind of sympathy because I consider myself an extremely lucky and happy guy. But rather, for anyone who's ever felt the same way, I wanted you to know that you're not alone and that there are ways that you can begin feeling whole again.
It is a well-known fact that all human beings are different and unique in their ways. However, no matter how unique and different we are from one another, one thing which remains the same between all of us is our innate nature to commit mistakes.