Hacker News new | past | comments | ask | show | jobs | submit login
Ask YC: The Value of a Degree.
6 points by izak30 on Oct 11, 2007 | hide | past | favorite | 19 comments
I'm currently an Electrical Computer Engineering. I've worked in the Dilbert environment and I won't do it again, I do freelance web development on the side, and I was wondering if it was still beneficial to get a degree if I don't ever plan on working for 'the man' again. I keep hearing that I'll shut out opportunities, but to me it seems that they are opportunities that I wouldn't want anyway. Thoughts?



I have no degree. I have worked for tiny startups, small businesses, Yahoo, the IRS Modernization Project, Big Co Consulting companies, with degree-heavy dev teams and with multi-talented cowboy hackers. I never planned on taking the man's money either. But I go where there is interesting work. There is a pay discount wherever you go and are not a founder. I have ten years' experience but usually not the same pay as someone with 10 + bachelor's, or even 5 + master's.

Often, I have lacked the theory, the mathematics and the discipline of creating and analyzing algorithms. It is a big hole that takes years to become aware of.

Another hard-to-see hole is what you take for granted in college or a tech-heavy city: where else are you going to meet other people with the same interests, work on problems with them, have late-night bull sessions, etc?

So now that I live a few train stops from Berkeley I am taking some of the harder courses that people have said are worthwhile.

Take the good stuff. Meet people. Stay loose. Follow the interesting problems. But take neither the pros or cons of college too seriously. You are choosing the general heading of a ship, not choosing a single set of tracks.


A question for you from a graduating college senior who's trying to decide between grad school and work: Do programming work get boring in a business-setting?

I am trying to decide whether I should go to grad school or to work. My experiences at the so-called "tech-heavy" cities and companies is that the "smart people and high-tech" is all hype. Maybe my experiences are just too biased, but do people at the Valley really push the envelope, or do they just do the same Java/PHP/Ruby stuff that high school students could do, and put a Web 2.0 stamp on it.


Business work is usually boring compared to self-directed work. The reason is simple: established companies want predictable returns on investment. There is little chance you and two friends will stop working on that internal reporting app and go into VOIP, to loud applause from your boss. That is not your job.

The same applies to grad school, btw -- you are a paid research assistant, not a freebird. But the problems can sometimes be cooler.

But it's a continuum and part of being happy is being humble and learning where you fit. I know many happy people at Yahoo who do cool new things. Others are chair-warmers. A large number are genuinely interested the thankless task of supporting hundreds of millions of users and petabytes of data, every damned day. Those people are the salt of the earth, and I salute them.

As for the second part: There is a sampling problem when you say things such as "all hype" or "people in the Valley do/are X".

If you poke your nose into 20 companies, Valley or no, you will find overwhelming crap. 90% of everything is crap. But you do not experience the world as an average. The trick is to find the 10% that are not crap, and the 1% within those who are really good, and see if you can hang with them.

In every field there are people who are so awful they don't know it. There are the elites. There is a large field of the mediocre who ape the elite without deep understanding. Then way out in left field are the crazies who scandalize, confuse --and somtimes inspire-- everybody. Find them all, learn to tell the difference, and find your niche.


Thanks. Your advice have been very helpful. What I am gonna take away from this, is that it's not environment that makes the man, because the environment tends to smooth out to the averages, even if the environment is the "high-tech" startup's. One has to make one's own mark and not get too comfortable.


No problem, and good luck.


> Do programming work get boring in a business-setting?

Yes. One of the things you aren't going to hear too much on a site that promotes the start-up lifestyle is that 80% of the work you are going to be doing is not intellectually interesting in any way. It is somewhat interesting from a "holy shit I can't believe life is really like this" perspective, but if you are into ideas that aren't just superfically interesting it can be a real drain.

On the other hand, I did a year of grad school after working for four years and I couldn't believe how much it was like "The Office." Most people just surfed the internet, played fantasy sports games online, went to every journal-club/data-sharing/journal-data-sharing club event, and did the bare minimum of work to get by.

I'm not sure what to tell you. If I had to do it all again, I would have gone to grad school straight out of college, finished version 1.0 of my product during the first year of graduate school, then dropped out and turned it into a business.


Here's the kicker though:

Grad school is by definition, professional training for academia, if you were more a hacker-type, would you be eventually forced into "publish or perish" thinking instead of building real world applications. And If you were to immerse yourself eventually in the hallow halls of the ivory tower, would you (meaning an average person) be able muster the courage (and I'm serious) to have enough faith in your ideas to become a grad school drop-out?


>Grad school is by definition, professional training for academia

PhD programs are but a lot of master's programs are very expensive, high-end vocational training, like Master's in Software Engineering and other engineerings. It's a good way to pick up an engineering skillset when you had an undergraduate degree in something other than engineering.


I'm a "non-degreed" guy that (IMO) has done ok so far in life.

Unless you're getting a degree in a highly specialized area, I personally think their value diminished over time. Right after graduation a degree is a valuable tool, in theory, that an employer can use to assess your value. When you're 45, your work experience and career accomplishments will/should outweigh any degree(s) you might hold. Of course, this is as related to tech-type jobs.

I sort of see this "slider" concept for measuring the value of a degree, as it related to most of the things relevant to what we discuss here. The more entrepreneurial and hard-working you are, the less value a degree holds vs. real-time hands-on work experience. The more you want to rely on a steady paycheck in a cube-farm, the more you should thing about getting that diploma.

Some of the top wealth-holders in business and technology have no college degree (Slim, Gates, Ellison, Allen, Dell). Not to mention many more "mid-level" types who have done better than their peers, on-average, by virtue of hard-work and logical thinking.

In your specific case, I would politely say that I question the potential for "freelance web development" to yield an ongoing income stream of appreciable value. My guess though is that you plan to augment or enhance those skills and continue moving forward. In which case it makes sense to start devoting as much of your time as possible to that venture.


"In your specific case, I would politely say that I question the potential for "freelance web development" to yield an ongoing income stream of appreciable value. " --Certainly, I am currently working on developing two internet based products and building my skills in other areas as well; working for other people on a salaried basis won't appreciate too well either (such is my understanding)


I have a fairly new (2 years) computer science degree, from what I feel is a very good program. Even in this program, some courses were definitely more valuable than others.

Not long past the point where it was too late to change majors, something astounded me. I discovered a pattern to the valuable courses. It was as follows:

The most valuable high-level courses were the theoretical computer science courses (the foundations of CS series, AI stuff, the sort of thing where you're asked, "How would you solve this problem?"). The most valuable low-level courses were the concrete courses in things other than computer science (mostly math and physics; to a lesser extent, various engineering disciplines). If you think about it, this actually makes sense: the courses about solving problems, following the courses that give you the tools to do that.

If you think about it, there's a good reason for this: Low level courses exist to provide a foundation for more advanced courses. This means that they are not designed for people who already intuitively understand their subject matter. If you already know C, Java, and two or three other languages like Pascal, you can learn Perl, Prolog, and Scheme on your own -- you don't need a professor to teach them to you (though it might help to have someone get you to use macros). You just need to understand that language's "thing" (punctuation, assertions/derivations, first-class functions/closures/continuations) and then it will almost learn itself. If you already know how to build a pointer-based binary tree, you don't need a course to tell you how to build a radix tree, or a red-black tree, or a trie.

On the other hand, the low level courses in other disciplines are designed for people who don't already intuitively understand that area. That makes them perfect for you.

Unfortunately, most universities do try to curtail the obvious solution by enforcing prerequisite courses. This makes little sense from a teaching perspective, but it makes perfect sense from a "raising the average GPA of their students" perspective.

Almost anywhere you go, you'll find the ability to game the system somehow -- be it alternate prerequisites, testing out of things, or taking a minor in CS instead of a major. You need to be able to game the system to an extent. Yet, that's a valuable skill in itself. Just optimize what you're trying to learn, not the best way to get that piece of paper.


I tried to tutor Computer Science while I was an undergraduate. My clients were always people who would call me around finals time and ask me to help them cram. There were seniors who simply could not write computer programs--some might have a vague notion of what a loop is, but not enough to actually write a (trivial) program using one. I often had to stop the tutoring sessions, because I simply could not help them without just doing the homework myself.

I watched many of those people graduate with B.S. degrees in Computer Science from my university. If I ever need to hire a developer, I will actively avoid anybody that graduated from my own university. Once I realized that, I quit.

Having said that, some places have rules that won't allow them to hire you without a degree. If you want to work for these kinds of places, you need the degree. However, I think that a degree requirement is a good indicator of a bad place to work.


What are you doing now? What (if any) problems have you run into? I certainly realize your frustration.


I used my tuition money to live overseas for a year, and I just got back. I haven't really run into any problems yet.


If you love what you do you will rarely find someone that can compete with you. That being said I am a non-degreed programmer of 14 years experience. Having researched this topic many times I believe Michael Spence has cornered why and how a degree is useful: http://en.wikipedia.org/wiki/Michael_Spence

To summarize a degree or certification is a signal of private information from an agent to a principal. Nothing more, nothing less. If you can replace that signal with another kind of signal (ie experience/references/monument made in your name) you don't need it.


I would add something to why a degree is useful: A degree forces you to learn things that you would otherwise not learn. I hate stats, but I had to learn stats. It has surprisingly proved useful in my work from time to time. The same follows with about 100 other things I was forced to learn, and that have popped up. Usually they are relatively obscure topics you have no interest in and avoid, but occasionally they are whole subjects that you just dislike.


I consider my CS degree quite valuable to myself, and it has opened a lot of doors for me. Now obviously, not everyone needs a degree; and not everyone with a degree is good. But from personal experience, it was well worth the time, money and effort to get a degree. I went to a school that is heavy on the math and algorithm side of CS, which was quite useful.

If you have already started a degree, I would consider that another motivating factor to continue, you are already pot committed (if you know poker terms).


If you are not based in the USA and want to work in the USA, having a degree solves a number of visa issues. The same goes for people in the USA who would like to work overseas at some point. I've spent time working in Australia and Japan and don't think I could have legally done so without having a degree.

That said, I left university as a junior to work on my first startup and after four years of working went back for a year to finish up my degree(s).


Take some courses about hard things you want/need to learn and don't worry about the degree.




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

Search: