Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: Should I get my degree or not?
22 points by drRoflol on June 18, 2010 | hide | past | favorite | 49 comments
Hello hackers!

This is almost like a follow-up to this thread http://news.ycombinator.com/item?id=1438489, but my questions are not quite the same, neither are my goals.

I'm 21 years old and live in Norway. For all my life I've loved computers, and everything else with ICs in it. I learned BASIC programming at the age of 10 by editing games and finding out what happened if I did this or that.

The last years I've had two years off from school, working a crappy job and getting drunk, while reading tons of computer/programming/security/electronics/math-books.

Last fall I went back to school to get a bachelor in informatics. I get straight "A"s, as I already know ten times more about python, C, linked lists, self balancing trees and overflows than the rest of my class. The only thing I need to work with is maths. All while working 50%-110% to be able to afford all my projects, my appartment and steaks on weekends.

Five or six years ago I got a new dream; I want to move to Silicon Valley and work on startups, where my skill and creativity can be put to good use.

Had I not had a girlfriend, (two cats) and my loving parents I'd have been enjoying California's hot sun right now.

Lately I've become tired of working on boring (read: easy) assignments, that takes me a fifth of the time the rest of my class uses, and I still get the highest grades. Because I don't really need to work on things I sometimes forget that I have assignments to do, and that resulted in me only having one of the three exams I was supposed to this spring, because I missed two hand-ins.

There is not (at all) many IT-companies in my area, and for me to get a decent job, I'd have to move somewhere else. And that's what I want to do right now.

But then I'd have to quit my education. So I was wondering what you guys think about that? Money is not an issue, as long as I can get money for programming I don't care how much. Is it possible to later land a better job, without a degree? Will I be as attractive as the rest of my class in five years, if I work my ass off in crappy jobs, only to build a CV?

Really it's HN's fault that I got this idea, all the talk about how useless a degree in CS is didn't help my motivation to work on crap assignments.

And to get back to my dream, would moving to Silicon Valley make things easier? Plane-tickets are cheap, I'm ready, I can start looking for work right now.

But then again, will I be better off in five (or ten) years from now if I drop out of university and run off chasing the American Dream than if I stay in cold and snowy Norway?

(Did I mention that I live in the north of Norway?:/ )

All answers are greatly appreciated!




"Because I don't really need to work on things I sometimes forget that I have assignments to do, and that resulted in me only having one of the three exams I was supposed to this spring, because I missed two hand-ins."

Danger!

I got some great advice from a high school teacher once, when I was in a similar situation (questioning the usefulness of the curriculum): You only get to say it's substandard once you ace it. Any time before then, or forever if you drop out, your opinion means nothing. He was completely right.

My advice: Stop screwing around thinking all this is beneath you. If it really is, then you should be scoring ridiculously high grades, not missing entire exams. If you're understimulated, ask for higher-level work (masters level?). I think if you turn up in the USA (assuming they let you in) and say you quit because it wasn't any good, they'll assume you're a dilettante and/or lazy.

You don't realize it, but you're in an advantageous situation. You've got time, which is more valuable than most things. You can ace your degree while doing extra to demonstrate that you aren't just one of the crowd. What you choose to do in addition to the course is up to you: higher level schoolwork, freelancing, your own software, whatever. Then when you're done you'll have accomplishments to show, as well as the improved self-discipline that comes from doing something that doesn't fascinate you.

Put your ass in the chair and turn yourself into something outstanding.


I can't stress this point enough. I know a lot of people here on HN probably felt the same way while they were in college. In my experience, college is what you make of it. I didn't feel challenged, so I took graduate level classes. When that still wasn't cutting it, I started freelancing and helped a friend start a company.

Also, if you have such ample free time, do something cool with it. Make a start-up instead of working for one. Once you're out in the "real world", it will become much harder.


"I got some great advice from a high school teacher once, when I was in a similar situation (questioning the usefulness of the curriculum): You only get to say it's substandard once you ace it. Any time before then, or forever if you drop out, your opinion means nothing. He was completely right."

I agree to an extent. I've gotten the 2 following questions on exams of mine wrong. Tell me what you think of the fact that I call them substandard even though I'm not acing the tests.

Which of the following is a primary color? A) pink B) Yellow C) green D) brown # I don't really remember A and D.. but according to color theory both B and C are primary colors depending on the color wheel you're using. The answer wanted was C I said B. the teacher wouldn't give me credit although I could empirically prove that B was a primary color and was taught as such in grade school.

what will i be when the loop exits while ( i < 5 ) { i++; } A. 4 B. 5 C. 6 D. 7

the correct answer to this question is completely dependant on what i is initialized to which was not in the test. I think the question was a little different. I assumed it was initialized to 0. The tested wanted it to be initialized to 1. This teacher gave us credit.


A degree makes it easier to get a tech. job, at some point you will care about how much you earn and having a degree will affect that. Getting a degree later in life will be much harder, I know from friends who later decided they wanted one.

There is really no rush, you should realise you'll be working for the next 45ish years, so a year or two here or there doesn't make much of a difference.

Part of getting a degree is showing that you can learn the stuff that your not so good at, like the Math. Your career won't just be programming, in fact you may only spend 5-10 years doing that before moving into management or starting a company which are different skills altogether.

Mark Zuckerburg and Bill Gates quit their degrees because there was opportunity cost around the businesses they had created. If they had failed in their businesses they most like would have finished their degrees.


I second that. You can have a successful tech career without a degree, I have a close friend doing it now, but not having one will get you instantly excluded from many big organizations.

Also, even organizations that will happily hire programmers without a degree may balk at letting them become managers or even more senior level engineers. Even if you think right now you will never want to be a manager, it is probably a good thing to keep open. You may very well change your mind later.

If the problem with college is boredom, then perhaps I can suggest two answers which are not mutually exclusive so you can do both:

Work with your University to substitute something else for the classes you think won't teach you anything. I know it it is an institution by institution question, but my undergrad college was very accommodating at letting me substitute upper division classes for lower division ones when I balked at taking things like "intro to programming".

Take the extra time you have from finishing the homework so fast to work on other productive things. Technical certifications come to mind. I know many people mock them, but they really do open doors when you have to navigate HR departments or hiring managers that have MBAs and no technical skills. Open source software is nanother great one.


If your degree in CS is too easy and feels useless study something difficult.

If money up front is not an issue you want a university degree. Even if considered as nothing more than a meaningless credential, university degrees pay off over time. More now than ever.

But it needn't be a mere piece of paper. If your classes are teaching you things you already know take different classes.

When you've studied physics up to field theory, biology through physiology and genetics, know how to build an amplifier from a tableful of chips, understand enough statistics to meaningfully criticize a published article in sociology or epidemiology, know how to use Photoshop to duplicate your favorite fancy website from scratch, understand music theory, have a grasp of linguistics and know some basic accounting come back and ask us what to do next. :)


If your classes are teaching you things you already know take different classes.

I knew a guy who was an amazing programmer. Wrote his own operating system and did projects like real-time ray tracing and speech recognition while in high school. He decided to get his degree in physics specifically because he felt he already knew most of the CS stuff, but didn't know a lot about physics. His line of thought was why go to school to learn something you already know when there are so many things you don't know that they can teach you? That always struck me as a very clever way to look at things, and I've often wondered why more people who complain about how "easy" their CS courses are don't do the same.


In fact, Peteris from catonmat.net did just that, get a physics degree instead of CS.


I did the same. After 2 semesters of CS, I switched to Physics. I still work as a software engineer, but paying to not learn anything is a waste of time. Physics is much more interesting in academia.


I can't, my university won't let me take harder courses. I've taken the hardest courses I can. And I've talked with the councilors, and they tell me to just wait till next semester - "that's when the real fun starts" - but I don't think so.


I would start by trying to change majors and/or universities. Dropping out of university temporarily, and/or moving to another country (except to go to a nice foreign university!), should be a last resort.

I don't know your situation, but: When they say "they won't let me take harder courses" does this mean they will physically throw you out of a random lecture if you attend one? Is there a rule against self-study? Does the library only let you check out certain books? Is your internet filtered? Keep in mind that I'm advising you to learn stuff, not necessarily get official credit for it. Transcripts are not very relevant. Nobody will glance at yours five years from now unless you apply to grad school.

Understand how lucky you are to be able to say "I have the option to get a degree... money is not a problem". Even if you are forced -- forced, I tell you -- to spend the next two years drinking beer, lounging around, and casually acing all your classes, do that rather than drop out at this point. IT jobs are not going anywhere. Silicon Valley is not going anywhere.


One trick I used at university was if there was a course I wanted to sit in on, I would just show up, sit in the back and listen.

Most classes are so big you can slip in there under the radar.

Dont wait or let some professor tell you can't take a course.

Get the reading material, do the assignments, and learn what you want.


You can also sometimes do follow up courses.

My degree was in Maths/Comp-Sci, and as a result, I didn't have some of the courses I wanted open to me on CS due to clashes with compulsory Maths modules for some lectures. Me and a friend ended up sitting at the back of the 50% we could attend (on Networking), and doing a bit of work. After an interview with the prof we were allowed onto the subsequent modules that required the course, despite having never sat the exam...in his words, "It's your degree if you fail it.."


One problem with my long replies is that other people sneak good advice into the thread while I am still typing. ;)

Study typing! Practice your high-speed essay-writing!


Can you test out of the lower level classes?


To be honest, I'm not even going to read this beyond the title. The answer to your question is yes. You are 21, and there is plenty of time. University isn't 100% about what you learn, but rather how you learn it and who you learn it with. Finishing a degree also teaches commitment and endurance -- two things which are critical to making a startup successful.

Successful startups are few and far between, and you may need a fall back plan. Getting a CS related job without a degree, at least here in the States, is very difficult. Do yourself a favor; finish what you started.

You mention being bored and tired of easy assignments. What's stopping you from building a startup while you're in school? You could probably kick out a minimum viable product with all that free time.


Enjoy Norway as much as you can to get a good degree paid by your oil. Really, you should definitely get a degree because it is opening way more doors than what you can imagine. If you are so good, it means you also have time on the side to develop your ideas/projects. Enjoy it. Also, the best companies can hire the best people, if you have to compete against someone as good as you but he/she has a PhD, sorry to tell you, they will not pick you. Google is mainly hiring PhDs for example.

You are lucky to be able to get an education, lucky to be able to get it while having time and money to develop things on the side, lucky to build yourself a good network at the same time, lucky to do have all the doors open in front of you. Enjoy it now.

I created a company while getting my Master degree, then got a PhD and created a company afterwards. The network I was able to build within an insane number of companies while getting my PhD is so good that I can work for a lot of money 2 months in a year and develop my products the next 10 months without the need to worry about being ramen profitable too fast. I can do the right thing and companies are now ready to pay even more.

A degree is way more than a piece of paper or a line in your CV if you use all what is given to you. It will be an asset worth way more than money when you will try to get a job or creating your company.

Note for US citizens, in Norway education is not only free but you are paid to study.


Having a degree can make it easier to get a visa to work in the US, to governments credentials count, not real ability.

Trying to do the degree you're doing is dangerous, as you've noted (although it does allow you to maintain your lifestyle and keep current in real software development). Is there any possibility that you can change to another major or school where you can get a real CS degree?


I'd have to move to get another option.

I haven't done any real research into the whole visa-business, but I really should do that soon;) Is it not true that it's easier to get a visa if you already have a company that has agreed to let you work with them?


Get a degree. I've been in this situation (from the US to Canada), and having a degree helps. It's easy to have a company say they want you to work for them. The thing is, visa's aren't just approved because a company says they need you. They also need to demonstrate why they need "you" in particular, and why someone local can't help them. Why can't they hire an American, or a Canadian? Why are they hiring a foreigner? These are questions that need to be addressed. Having a degree goes toward helping demonstrate that.

To put it another way, I've never seen education shut doors for me. It has, however, given my opportunities I wouldn't have had otherwise.


It will be incredibly hard for you to get a visa without a degree. Damn near impossible, even. You DEFINITELY need a degree, especially if you're a foreigner and want to come to the United States. Very few companies, let alone startups, are going to hire you as an employee if you don't have a degree.

My advice would be to get a 4.0, get a degree, and try to go to graduate school at CMU/Boston/San Francisco area.

It's not going to be as simple as hopping on a plane and getting hired. You have a whole host of visa issues to work out, and if you do it incorrectly, you could jeopardize your chances of staying here long term forever.


I think that's the only way to get a visa that legally allows you to work in the US (ignoring visas associated with going to schools), but being a US native I don't know; as you say, you need to research that.

One thing I do know is that the last time I checked this year's quota of H-1B visas is not even close to being used up. Normally they're all used up on the first day which is sometime in April.


Get the degree.

I dropped out because it was boring me, now I regret it.

1. I'm labelled a "dropout". That's a good thing if you manage to make a success of yourself, otherwise it might as well say "loser".

2. People consider me less serious than if I had a degree. I've actually been in conversations with people where, despite my 6 years of commercial experience and numerous successful projects, they've discounted my views over the newbie programmer, because he's just finished a computing degree (computing, not even CS). This is when dealing with people who have barely any computer skills - a degree makes sense to them, they never see the code I write or understand how long it takes me to write. (Note: I'm not very outspoken and not much of a leader).

3. I'd get more chances/earn more money. My friend, who is a less experienced coder than me, can get job interviews that I cannot and earns more money than me (even though we have the same job). His degree is in philosophy.


i wish i could upvote this a million times. People need a quick way of judging things and your degree is generally the first barrier. This is not optimal but it's how the world works.


Get your degree! - In the US, no masters degree means no job period. Unless of course you can demonstrate your capability with top level involvement in an impressive open source project, and massive presence in the social networking sphere etc, then your hopes of coming here and diving into a cool organization are unlikely.

The competition is tough, Not to mention the immigration laws.. The US is not making foreign visa holders very welcome right now.. Unemployment is very high!

Besides the american dream is getting old, and from a startups perspective can be a somewhat overrated experience, unless your aiming to get fat, acquire diabetes, high blood pressure etc with very expensive medical cover.

Besides your young, drink beer, write cool open source software, contribute to a linux distro, learn robotics and electronics, go to conferences and perhaps meet people who can be mentors and colleagues. Learn to write, and do public speaking! Hell the world is your oyster, the US is not the only place with great beaches - try Cape Town, South Africa, after the world cup. With your skills you can be a world citizen!

And btw - exercise like your life depended on it!


If you only want to be a programmer, drop out. Anyone can learn how to program.

The unfortunate thing is that so many people believe that. As a result there is a saturation of poor programmers and weeding through the mess of poor programmers vs good/smart/intelligent/imaginative programmers is a pain in the ass.

Most people (not all) who hire, will weed out programmers who apply without a CS degree.

I am not saying a CS degree is better than 10 years experience.

I am saying you will have to deal with humans just like yourself who have their own perceptions and their own beliefs about what is or is not required to be hired.

So when you apply for that job and you don't have a CS degree or 10 years experience what do you have?

You have nothing to prove that you are the genius that you are.

Join an open source project if you are that eager to get your hands dirty.


Mind that it is very hard to move to the US and start a company there if you are not a US citizen.


I know that, but I don't want to start a company, just get a job, any IT-related job.


If you are planning to look for a job rather than start a company, you really should get your degree.

If your classes are not stimulating you enough, perhaps you could try training for programming competitions (TopCoder, Google Code Jam, ACM ICPC). Doing well on those could be a good differentiator on a resume.


Or he could pick up short coding jobs online (eg vworker) and start to build a portfolio of successfully applying his coding skills - there's a lot more to being a good prospect for an employer than being a killer coder.


That's naive of you. You can't just fly in the states and interview for a job. Without a green card, you can only stay in US with a tourist visa for 3 months max, or with a student visa if you enroll in some university over there and pay their thousands-dollar tuitions (but you can't get a job), they're very strict on immigration policies. Oddly enough, it might be easier to get a full permit if you start a company, but I guess you'd have to prove that you're investing (bringing in) a substantial amount of money.


If you're taking classes that you already have mastered, you're doing yourself a disservice. You're not getting educated, you're getting a degree. Perhaps you should be taking different classes. Math classes. CS classes that focus more on theory.


I am from a very cold northern area filled with Norwegians, in the USA. From a cultural and seasonal affective disorder point of view, I do think it is a good thing to get out of that sort of environment if you want to be a software entrepreneur.

If I were you I would try to figure out how to go to school in the USA. It's expensive but I think worth it. You would kill two birds with one stone. Plus, I think it's better to start out in school, rather than move to a new place and jump into a job. You meet a lot of friends, learn interesting things, and have fun. I have worked on a visa in a foreign country, and it is a lonely and kind of boring existence.


Make a cool hobby / startup website thingy in your free time. You'll get the degree, and Silicon Valley will still be there when you graduate, and you will be more employable (and immigratable) due to your qualifications and experience.


I would recommend switching your major to math. You will likely get a lot more out of it and it will be more or less of equal value to a CS degree, especially considering your current knowledge of programming.


You don't need to move to Silicon Valley to create a startup. You can bootstrap one right now!

You're in an ideal situation where your only obligation is to do a couple hours of school work (and still get top grades). If you do as PG suggests, and eat ramen instead of steak (or even move back in with your parents), you can forego work and focus on bootstrapping your startup.

With an incredibly low burn-rate, you'll have a very long run-way... all while getting your degree.

Should you get a degree? Absolutely... unfortunately that piece of paper can open doors for you in ways you can't foresee right now.


Don't forget that you can make great contacts during your c.s. degree. Also, the first year is usually they easiest one so maybe you will learn more things in the next years. Finally, reputation is really important and even thought you might seem to "lose 4 years" of your life, you will gain maturity and hopefully become more professional. Maybe, you could alter a little bit your schedule to add some management classes, marketing, communication, etc. Stuffs that might not excite you but that will strongly makes you a better employee or founder.


At a minimum, earning a degree shows that you are capable of setting a goal and finishing a large project.

That will only help you later in life, and not just in terms of impressing prospective employers.


You could try apply for a University Place in the US and study something more challenging, That way you could start working on the American Dream while studying.


Unlikely to be worth it, I'd say. His degree will be free in Norway, very expensive in the US.

Also OP if it makes you feel any better about the "hot California sun" thing it's cold and overcast out there today. Stick with your degree, kick all kinds of butt, and get hired by a big company, then you can transition to a startup (not many startups will hire candidates from overseas, it's too much trouble).


Best in class is relative. CS degrees are in decline with regards to quality. Take a look at curriculums from the past and compare to yours today. I've done that at one Norwegian university. Clearly devaluated. Use your talents to find out and study what's missing in the modern curriculum.

And by the way; don't get a degree; take it. Even if it's easy.


get your degree. university offers more than just learning. enjoy being young....go hang out with art students and talk late into the night with people who are striving to become the next generation of "responsible" adults....better yet take some credits in "arty" subjects - literature, music, fine art, basket weaving - whatever...it will broaden your horizons. if you are bored, bootstrap something in your spare time. heck - ask the students what things they would love to have on the internet and build it for them! universities are such rich environments full of interesting people.


Unfortunately, this isn't a question HN can answer. It's not uncommon to be smart and not be cut out for school. The thing is that only you can determine if you're cut out for it. How much longer do you have in school? Can you stand to be in school for that period of time?

If you can get a degree, absolutely get one. It won't get you any jobs, but it will get your foot in the door. On the other hand, there are other (arguably better) ways to get your foot in the door, such as having a set of side projects that show your passion.


Spend a 5th of your time doing your assignments the day you get them and then :shock: spend the other 4/5ths working on projects that you do find challenging.

Although I comprehend the dream you don't have to be in California to be working on a start-up.


My suggestion is to have a look at studying CS at Cambridge in the UK, it's one of Europe's tougher CS degrees plus there's a healthy startup community (both among students and is the local area).


Seems like you really want to escape the cold. Can't you get a degree in California if money isn't an issue?


Let me tell you a bit about how this works on the other side of the fence. I'm 26, and for the past three years I've worked as department manager in a well-known Norwegian software company, responsible for hiring in my group. I've evaluated a thousand different candidates and hired about a dozen full-time employees from all over the world.

In the end, it doesn't matter who you are, where you're from or what education you have. The only things that matter are whether you're excellent at what you do, that you have proven that you're capable of getting stuff done and that you'd fit in with the rest of the team.

If you start your own business, none of this is relevant, of course. As long as you ship something a sufficient large number of people are willing to pay for, you're set.

But most people work for others, and you probably will too before you've gained a sufficient level of experience to do your own thing. To get a job in the industry, you'll have to prove all of the above, and sufficiently impress myself or my peers elsewhere in the industry to get your inside the door.

An education is a great asset to start with. That piece of paper proves that you have at least three years of experience working with relevant subjects. If you've spent your time well and got to know all the industrious people at your university, you might already know someone working where you're applying for a job. That often gets you to the interview.

But that piece of paper is far from enough. I need to see that you've done something with your life, that you've _created_ something. It doesn't matter if it's contributions to an open source project, running the servers of your student organization or building your own business on the side. Show me that you care, that you love what you're doing, that you're capable of getting stuff done. If the classes are easy, you'll have plenty of time to do other stuff I'm more impressed by.

But do not, under any circumstances, get crappy grades in subjects that are “too easy”. It is _not_ beneath you. You'll do boring and easy tasks even if you're a superstar, and that line of Cs on your transcript is a big, blinking warning sign I cannot ignore. If you don't care enough, you're better off without that piece of paper. Do your own thing, then, but you'll have to work twice as hard to prove yourself.

Not that it's impossible, of course. I have no education. Straight out of high school I applied for a five-week internship at my current company. I got good references from another employee, so I did get to the interview, and I did get the internship. And after eight days, I had a permanent job.

The pay was horrible, the work was - well, entry-level - but that was fine. As long as I could prove that I was great at what I was doing, I could advance. And so I did.

After two years I had the job I really wanted from the start. It was excellent. And after a few more months, I was promoted to be head of my department, despite being the youngest person on the team.

Three years later, my peers are finishing their degrees and applying for jobs. I'm very happy with my decisions so far in life, and think I've learned more this way than I would have done at a university. But I've had to work very hard to get here.


I am currently 31, living in upstate NY.

I started college fulltime at 18. I started in physics, switched to IT. This was 1997.

I was working in the field for the likes of IBM and Xerox by the time I was 19. School quickly became deprioritized. This was 1999.

9/11 hits. This is the same year, or year before, I would have graduated on-schedule. A month later, I get laid off of an extended contract I'd been working for a year. For the better part of the next eight months, I can't get an interview aside from one job in Montana. MONTANA! I scrape by on freelance work. I land a job paying 50% of my last salary. After six months I switch over to a job paying 70% of my last salary -- still very disappointing, but livable, barely.

End of 2005, I quit that job and go back to Xerox for a second contract. Almost returned to my pre-9/11 salary. I happen to wrap up my associate's (AAS) degree in IT at this time. Six months later, I relocated to be closer to family. That job, in 2006, finally put me substantially over my pre-9/11 salary, at about 80th-85th percentile for my role nationally, and about 95th percentile for my role locally.

My independent consulting work starts growing significantly around this time.

In late 2008, I finally crossed the six figure mark in fulltime salary. I also made a healthy five figures in indie consulting in 2008 and 2009.

It would have helped me, I think, to have a degree PLUS my experience after 9/11. I don't think a degree alone would have done much for me -- all my four-and-out classmates were out of work and/or getting paid less than I was myself.

Does my AAS help me now? Doubtful.

Would a bachelor's help? Not salary-wise ... but it would be a nice step on the way to that Master of Science or MBA that I've always wanted ...


I slogged through a 3-year Software Engineering degree in Canada (nearly as snowy & cold), but I don't think it was worth it. Getting a good job is more about timing and skill, all the best programmers dropped out of college. The goal of any educational institution is to make money, they don't really care whether you get a job when you're done or not. You can't work at Google (tm) without a Batchelors degree in Comp Sci or relavent experience, but TONS of Bay Area startups are eager to hire the best & brightest. If you can prove your coding skills, then you don't need the piece of paper to go to work for a startup.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: