If there is one thing that I have learned throughout my career, it is that I need to do what I do because I love it. I need to do what I do for me. There can be no other reason: not because someone else wants me to do it, nor because of recognition from another person or organization, nor for the money or the stature. Wherever direction I take in my career, it must be because of my passion for the craft and my drive to improve. Awards, money, and fame are all welcome side-effects that let me know that others like what I do and think I do it well—this recognition is still rewarding, and even more so, is an essential component to self-improvement—but that is all for naught if I don't like what I am doing or I don't think I am doing it well. Awards, money, and fame should purely serve as feedback, and not as motivation.
I first got into computers because I wanted to see how they worked. My mother bought the family's first computer while I was in high school, and I ran all of the little programs that inexperienced users are never supposed to run. I ran them simply because I wanted to see what they did, what purpose they served, and what would happen if they were run by a novice user like I was at the time. I didn't stay a novice for long, and I became quite adept at fixing broken systems, including everyone's favorite command: format c:. I had to; it was the family computer, and if I broke it, I had to fix it quickly or suffer the consequences.
Soon, the door to programming was opened to me, and an entirely new frontier was available for me to explore. With a shiny new copy of Visual Basic 3, I now had an opportunity to write my own programs to learn and manipulate that computer to an even greater degree. Now instead of black box programs doing bad things for unexplained reasons, I had the opportunity to create my own evil-doings. Whether it was creating sprite-based side-scrolling video games to blow up baddies or an investigation into "I wonder what this module does," the opportunities—and the imagination—were endless. Memory management and boot configurations for optimizing frame rates in Doom transformed into a passion for performance optimization of enterprise-level applications. Finding better ways to mail-bomb friends' AOL accounts without getting banned led to an obsession for managing resources outside of immediate control. And those awful GeoCities and Tripod sites filled with animated lava lamps and blinking text instilled both a drive for a better user experience and a need to expertly manipulate the search engines in my favor; I wanted users to find my little flag in the internet sand and to enjoy their stay once they arrived.
But somewhere along the path, I lost my way.
I don't know how it happened, but it did. I lost my focus on pursuing the craft for me, and was guided by external influences. I experienced burn out, an inability to engage, and a complete lack of drive for what I had grown up doing. My passion was gone. Blogging became more about keeping a schedule than it was about learning new things. Community involvement became more about the pursuit of recognition than it was about giving back to the community from which I had learned so much. Development became a chore rather than a thrill. Work became…well…work.
Last summer was my epiphany. I was one of the development leads for a client that I was working with, and my fellow leads and I were interviewing candidates for a development opening. Endless weeks of candidate after candidate left me feeling very uninspired. One night I came home and was discussing with my wife that I just wished one candidate—just one—was truly passionate about their craft; they would get my vote right away. I remember saying "I can teach them to code, but I can't teach them to want to code." And I remember that sinking feeling when I realized that I was describing myself, too. I was the uninspired developer.
I wouldn't hire me.
Since that time, I've been slowly re-energizing. I eased off of community involvement, my speaking engagements, my writing, and my pursuit of technology. I needed to assess my entire plate, and identify what I was doing for Me and what I was doing for Them. The items for Me were the only items that were kept. These Items For Me were the only items that could be kept, else it was a futile exercise and I would never reclaim my passion for my craft. It has taken a long time to process everything, to figure out what I loved and what I didn't, what was important and what wasn't, and above all how my passion stems from executing the plan with people and not for people.
Executing the plan with people, and not for people.
Early on in this process, I was working late at a client one night and a developer that I highly respect spoke simply over the cube wall, "it's good to have you back in the game, Jay." I had a long way to go on the new path, but at least I knew it was the right one. I wish that I could tell you how I did it, how I rediscovered my passion, but I think it would only dilute the message that it happened in the first place. You have your own thing, your own love, your own approach, and your own nuances. But you also already know each of those intimately, and you have either already found that passion, or are ignoring it in favor of what's easy, what's comfortable, what is expected of you, or worse, what has always been.
I challenge each of you to find your own passion. Pursue it. Realize it. Live it. Thirteen colonies proclaimed to the world that everyone has the right to pursue happiness, but do not confuse this with an entitlement to actually be happy; that part is entirely on you. Your right—your responsibility—is to go after it. Or as the Great Morpheus put it, "I can only show you the door. You're the one that has to walk through it."
Pursue your happiness. You already know what that thing is, and you already know how to do it. The only person not allowing you to be happy is you. So stop working against yourself, and walk through the door.
Knock, knock, Neo.
The opinions expressed herein are my own personal opinions and do not represent
my employer's view in any way.