I was recently for advice to give a college entrant. Following my game theory professors advice, I said “do something you really enjoy, which most other people don’t”. Best advice I ever got.
1. Something you enjoy: This aspect is entirely self regarding. How much would someone have to pay you to be miserable for 40 hours a week? Lots. Pick something you enjoy so that work isn’t work.
You will mind a 10 hour day less. You will read about developments in your spare time. You might work on weekends, because it isn’t really work. You will progress faster than someone who does it for the money only. And you’ll be happier for a significant portion of your life.
2. Which other people don’t: This is the economic argument. If you have a few areas you are indifferent between, which one is rare? In those you’ll be able to command a relative wage premium. I’m not saying the high paying areas – those will attract greedy people as well. But just the ones where it’s unusual for people to enjoy it. Your happiness per dollar will be higher.
Enter the NYTimes on the improved image of computer science:
“It’s become very glamorous to become the next Mark Zuckerberg, and everyone likes to think they have some great idea,” said Ms. Fong, a junior, who has since decided to major in Yale’s newly energized computer science program.
Never mind that Mr. Zuckerberg, like other tech titans, did not major in computer science — or even finish college. Enrollment in computer science programs, and degrees from them, are rising after a decade of decreases, … And educators and technologists say the inspiration is partly Hollywood’s portrayal of the tech world, as well as celebrity entrepreneurs like Steven P. Jobs of Apple and Mr. Zuckerberg who make products that students use every day. (emphasis mine)
While The Social Network does portray Mr. Zuckerberg as having social motivations for facebook, odds are he also actually enjoyed coding. Coding on a Saturday night with pizza and soda are classic hallmarks of the computer geek. Never mind social awkwardness – they are making something, and learning a skill at the same time.
People who get into CS because they think it is economically attractive or is glamorous will never be as good programmers as those who enjoy it. This is not to say they won’t do well financially. They may end up as better managers of programmers, or directors. Sometimes coders care more about the means than the ends.
But don’t pick a major because it’s fashionable. Pick it because you enjoy doing it on Saturday night.