Today a friend of mine asked me if I had any advice for a cousin of his. My friend’s cousin is about to graduate high school and wants to get into programming work.

Here are my thoughts on how to think about the college/no college decision.

Right Choice vs. Wrong Choice Mentality

Most people seem to view the college-or-not question as a matter of what’s the “right” choice. I think right vs. wrong choice might be a false dichotomy. Neither one is right or wrong, it’s just a matter of what kind of experience you want to have. You can reach your ultimate destination—a programming job—via either path.

Let’s examine the pros and cons of the college route and no-college route.

Pros and Cons of Going to College

I went to college on and off from 2002 to 2007. For me the biggest benefit was unquestionably the social experience.

The best thing about college is being surrounded with a bunch of people who are all at the same stage of the same journey, and being in that situation without “adult supervision” for the first time.

Meeting people at work is usually not nearly the same as meeting people in college. As I’ve gotten older my social circle has shrunk. My free time for socialization has shrunk. My opportunities for meeting like-minded new people have diminished down to almost nothing. College is an opportunity to meet people who will become the closest friends you’ll ever meet. After college, for most people, that opportunity goes away.

One big con of going to college is of course the cost. If you’re not lucky enough to have outside help you’ll be paying student loan bills for a long time after you graduate.

A pro of going to college is that it can of course open up career opportunities. The quality and quantity of these opportunities depends on certain things like how good of a school you go to and how well you network during college.

There are a large number of programming jobs that are equally available to degreeholders and non-degreeholders given enough work experience. I would say most programming jobs. Certain types of companies are more picky about degrees. Big companies and government organizations tend to want degrees.

I wish I had given more thought to where I went to college. My options were limited because my grades in high school were bad. I never cared about grades because I didn’t think about why they mattered.

I’ve learned over the years that going to a prestigious school like MIT or Harvard can have some really serious benefits later on. It’s not just that it impresses prospective employers when you tell them you went to a place like Harvard. It seems like the main benefit of going to a really good school is the network you develop there. You’re more likely to meet someone at an Ivy League school whose dad can give you a sweet job, for example, than if you go to some community college.

Pros and Cons of Being Self-Taught

I don’t know what it’s like to go down the path of a 100% self-taught programmer because although I didn’t complete my degree I did go to school for Computer Science for some years.

I would strongly suspect that you can start your career younger if you skip college. If you start trying really hard to get a programming job right after you graduate high school, it probably won’t take you a full four years to get your first programming job.

On the other hand you might always have a nagging feeling in the back of your mind that you should have gotten your degree. There’s a genuine social stigma around not having a degree. You might always wonder how things might have turned out differently, especially if your career turns out not to be anything that grand. I have personally experienced this sense of lack although it has gone away over time. At this point I’m 100% at peace with the fact that I don’t have a degree.

What Matters More Than a Degree

In college I had two friends who both majored in Political Science. When they graduated, one moved to Washington, D.C. for a job in government. The other got a job at a pizza place.

I know developers who have had boring, undistinguished careers at no-name companies. I know other developers who have written books, get interviewed on podcasts, and get paid to travel the world working for household names. What matters much more than a degree is the level of resourcefulness and ambition you apply to your career. It’s what you do during your programming career, not before it, that determines the arc of your career.

My Advice

What would I say if a high school senior asked me if I recommended going to college? I would say go. The social experience is worth it.

And if you’re going to go, might as well make the most of it. If I could go back in time and talk to my 12 year-old self I’d say this: You don’t want to be stuck in a crappy career your whole adult life. Study how to get into the best colleges so you open up as many career opportunities as you can. Try to get good grades. If you have to do all this stuff anyway you might as well get as much out of it as possible.