Page

Chapter 12. Nurture Your Passion

PublicCategorized as 2. The Long Road.

Not yet tagged

chat.gif Discuss this Chapter!

Chapter 12. Nurture Your Passion

To only a fraction of the human race does God give the privilege of earning one's bread doing what one would have gladly pursued free, for passion. I am very thankful.

Frederick Brooks Jr., The Mythical Man Month

Context: You have been hired as a software developer.

Problem: You work in an environment that stifles your passion for the craft.

Solution: Take steps to protect and grow your passion for software craftsmanship.

To become a journeyman you will need to have a passion for software craftsmanship. Unfortunately, your daily activities often work to diminish this passion. You might be faced with demoralizing corporate hierarchies, project death marches, abusive managers, or cynical colleagues. While it's doubtful that your passion will grow when exposed to such hostile conditions, there are some basic actions you can take to sustain it.

Work on what you like. Find something at work -- anything -- that interests you. Even if it is only a small fraction of your time, identify it as something you enjoy and pour yourself into it. If you can't spare enough time during the workday for this activity, consider putting in some extra time. If this isn't feasible, dedicate some time outside of work to build some Chapter 22, Breakable Toys.

In a presentation at O'Reilly's Open Source Convention (OSCON) 2004 entitled Great Hackers, Paul Graham said, "The key to being a great hacker may be to work on what you like. ... To do something well you have to love it. So to the extent that you can preserve hacking as something you love, you're likely to do it well."

Seek out Kindred Spirits. Join a local user group that focuses on something you want to learn more about. Start a weblog and read blogs that interest you. Participate in online forums and mailing lists and Chapter 28, Share What You Learn. Start a study group using the Knowledge Hydrant pattern language from Joshua Kerievsky.

Study The Classics. Immersing yourself in some of the great literature of our field can carry you through the rough spots when your passion is in jeopardy. These timeless books can open your eyes to a different world, a world where things can be better.

Chapter 13, Draw Your Own Map. There are times when your needs, goals, and aspirations contradict the career paths your employer provides. Moving into an organization that offers career paths congruent with your own can protect your passion.

Project death marches are probably the most damaging of the hostile conditions. It's hard to imagine how you could protect your passion, let alone grow it, in the face of a death march. It saps your time and your energy, preventing you from taking any significant actions to protect your passion as more important issues like personal health and strained relations at home demand your attention. Death marches play into the hero mentality that is prevelant in many software development organizations. The people on Chapter 9, The Long Road are not the heros who sprint for a few years and burn out, they are the people walking at a sustainable pace for decades.

To grow your passion, set clear boundaries that define the sort of working environment you are willing to work in. This might mean you leave work while the rest of the team stays late, that you walk out of a meeting that has become abusive, that you steer a cynical conversation toward constructive topics, that you refuse to distribute code that doesn't meet your minimum standards. The result could be you get passed over for pay raises, promotions, kudos, or popularity. But these boundaries are necessary if you are going to break free of the hostile conditions and keep your passion strong.

Later in his OSCON presentation, Paul Graham went on to say, "Try to keep the sense of wonder about programming that you had at age 14. If you're worried that your current job is rotting your brain, it probably is."


Copyright O'Reilly Media

Powered by Near-TimeTerms of Services | Privacy Policy | Security Policy |