|
|
From Apprentice to Journeyman :
Dave Hoover : Home
|
Context: As an apprentice, you must develop your technical skills. Because of this you will find yourself in the trenches.
Problem: Programmers make less money than architects or managers.
Solution: Nurture Your Passion for software craftsmanship. Develop software because you love to, not for monetary rewards.
There will be days, weeks, and months that you love your job. You'll chuckle to yourself, in awe that you actually get paid to develop software. The software you write will flow effortlessly from your mind, through your fingertips, beautiful to behold in function and design. These are good and extraordinary days. In other words, they are not your ordinary days.
As Paul Graham so rightly says, the typical programming job will put you face-to-face with tedious, vaguely-defined, and needlessly complex problems. Nasty problems. What's more, you may eventually be faced with bureaucracy, difficult personalities, and spotty leadership. There will be days, weeks, and months that you hate your job. When you are confronted with these problems, it is critical that your motivation to program is grounded in something beyond simply making money. If you come to hate your programming job and you're motivated by money, you will find yourself focusing on climbing the hierarchy and you will eventaully wander off The Long Road.
There will be times when you will need to sacrifice the work you love in order to provide for yourself and the people who depend on you. There is a fuzzy line (and a slippery slope) between being motivated to provide for the needs of your household and being motivated to make as much money as possible. If you are motivated primarily by money, your aspirations to acheive mastery as a software craftsman will end in disappointment. You were meant to walk a different road.
Some programmers can become inadvertently trapped by money. Jerry Weinberg describes this phenomenon as "The Golden Lock" in his book More Secrets of Consulting: "I'd like to learn something new, but what I already know pays too well." Jerry goes on to make a key point, "The Golden Lock" is not necessarily about money, people can be locked in by power and fame as well. The flip side of this was pointed out by Joe Walnes, who recognizes that there are times that you don't feel the love. It's during times like these that you will need other motivators. Love is simply a means of staying on The Long Road, if other motivators can be used, take advantage.
Related: Programming For Love Not Money will help you Resist The Promotion and keep you on The Long Road.
Loved this one. But I think this whole thing would appeal to a larger audience (like myself) if you stripped the software developement aspect out, let the profession be ambiguous, and focus on the patterns of apprenticenship aprt from software.
But then there's the problem that by trying to be non-specific we start handing out vague advice instead of merely documenting the tacit knowledge of a particular community. Some of the patterns we've discovered so far are applicable in fields other than software development but some are specific to software. There may come a point when it turns out that most of our patterns aren't about software in particular in which case I think that following your advice would be an excellent idea.
I'm also reminded of the advice to new writers: write about what you know. I think that should taken into consideration as well.
Being able to live below your means is probably more a function of your attitude toward money (perhaps combined with discipline) than anything else. I forget where I found it, but someone said that there are basically two kinds of people in the world - savers and spenders, and marriages work well when both partners are one or the other. Living below your means probably only happens when you are a saver, and is undoubtably much easier when you have no children as your fixed expenses are much lower.
Home : Dave Hoover
: From Apprentice to Journeyman
| Copyright © 2001-2008 Red Squirrel Design, Inc. All Rights Reserved. |