How to become a real programmer
- Go back to school to learn the languages that nobody is using right now
For example, Haskell is not listed for most professional gigs right now. But either Haskell or a similar functional language (Erlang, ML, F#) will be in demand. This is where evolution is headed, and you'll either be working in those languages or you'll be working in languages that borrow so much from them that the concepts will be the same. This will continue indefinitely, long after functional languages are old-hat. One day you'll write programs by defining the desired outcome, and your compiler will be a genetic algorithm
- "Make some noise"
These are the exact words I gave to a girl who walked into the store and asked how she could get into the world of professional web design. I told her to do the same thing I did: make personal and hobby web sites that kick some ass, and people will pay attention and give you work. I ended up getting out of web design and into something I was better at, but the same trick worked again: I got my next full-time high-dollar job by doing work for free, and being noticed. Next time you get invited to Richard Stallman's birthday party, go
- Chill with the users
Remember that the users were gods in Tron. They're neither stupid, nor ignorant, they just specialize in different areas. If you are capable of recognizing that some chips do SIMD better than general-purpose, then know some humans sacrificed entire careers for nothing more than some security for their family. If you treat them with the respect they deserve, they will tell you what matters
- Do a startup. Fail
Either yours or somebody else's. You have to fail, even if you burst veins trying not to. No other conflict in your career will matter as much as the conflict between the pure electric bliss of compiled code and the painful rasp of friction with the real world. Either you'll try again, or you'll work for someone who's been there, but knowing what business is actually about is more important for the design of a program than what the spec sheet says
- Take a break
The fool on the hill sees the sun going down, and the eyes in his head see the world spinning round. You're driven, and you peak, and you're exhausted, and the next thing you know you never want to see a line of code as long as you live. But you'll recover. I don't know when. Maybe you'll have to change careers for a while. Maybe it's time to quit. Those are the breaks. If you come back then it's because you were meant to. When you come back nobody will be able to touch you. You'll have made it.
Keep your mind clean, make sure to have a wife and kids, and don't forget to get into the best WoW guild.
How to become a vocational programmer
- Go back to school to earn your MSCE
If your prospective employer doesn't know a function call from a punch in the nose, they'll be grading you by industry certifications rather than expertise. One day you'll write programs in Visio, and an army of south asians earning $15/day will code them for you
- Make some contacts
Your Rolodex will be more important than your resume. In fact, your ideal employer won't even bother to look at your resume
- Slum with the peons
You want to make a good impression on folks who might be in HR or may one-day earn a key to the executive washroom. Even if they're not, you'll have an easier time if they treat you as a familiar when you come by to install the latest service pack for dot-Net 3.whatever
- Do a startup. Get references
Startups come. Startups go. Pets.com and its idea of subsidizing the cost of shipping heavy dog food with sales of diamond studded collars is typical, even if not repeated literally. These firms are funded by venture capitalists who continue to invest in dumb ideas--even after Iceland's bankruptcy--simply because the market is made of animals that don't know what they want until somebody shows it to them. You'll pull a steady salary until the sugar daddy sees the writing on the wall. At which point you want to cash-out a few months early so the phone numbers are still answered by someone who knew you
- Take a sabbatical
And when you come back you will be the man. Yes you've been there. Yes you've handled all that jazz. And when it seemed like no challenge was great enough, you went away to think great thoughts. And when you came back you came back the prodigal son. In actuality you went to work as a data entry clerk, but you left that off your resume.
Keep your nose clean, make sure to mention your wife and kids at the interview, and don't forget to get listed at Dice.com.