Recently, I started to think about what it means to be the best at what I do (programming). We hear this saying quite often — we’re encouraged from an early age to strive to be the best. But is that really what we want? It took me many years of struggle to eventually learn the (surprising) answer:
No, I don’t want to be the best.
Being the “best” programmer typically means:
- You have a machine-like grasp of every programming language you work with.
- You constantly work on learning new APIs, languages and frameworks.
- You attend every conference you can, and watch every technical talk you find.
- You are always coding. All day. Every day.
I know many who follow this path. They are remarkable programmers, and can amaze their peers with their spectacular technical acumen and manual-like memory of any API. Let’s say, for a minute, that I wanted to follow the same path, and be like them. The benefits seem clear: I’d be better at what I do, faster at building products, and seen as an expert by my peers. But at what cost?
Aside from the incredible time investment and discipline to achieve all of the above, the bigger cost is that I would have to sacrifice many other interests to make time for it. This includes things like casual reading (i.e. non-technical books), writing (blog posts, newsletters), DJing, relaxing (family time, TV, etc.) and other activities that don’t specifically forward my technical skills. In some ways, even teaching could be seen as a waste of time for me — while teaching enhances your existing knowledge, I could learn more by spending time building apps. In this world of constant change, you can’t afford to waste time if you want to be the absolute best programmer out there.
As I thought about it more, I eventually reached the point of acceptance. I’m fine with being at the level I am, and I try (it’s an ongoing process) not to get overly intimidated or depressed when I meet others who are so far ahead. The only difference between us is our choice of priorities.
Take a minute and think about all the things you do besides your primary role. These are the things that make you who you are. Cherish them. Grow them. Be proud of them. Most importantly, don’t forget about them when you stack yourself against others — you’re just selling yourself short.