Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: To go or not to go college?
36 points by hajrice on Sept 12, 2010 | hide | past | favorite | 103 comments
I'm currently a high school senior, I'm an aspiring and pretty badass dev and designer. I've built a few apps and I'm pretty sure that I'll be doing startups(most likely my own still) for the rest of my life.

I can't bear working for some big corporation(I've done it once, it's just not my thing) and thus really find no point of going to college.

I could get into a lot of good colleges, yet I really don't want to "waste" 4 years of my life doing a CS degree in college when I certainly won't learn much; I'd definitely learn 3x much being on my own. And if you say that college degrees make it easier, well...if I spent 4 years building awesome things, I'm pretty sure that I'd eventually build up much more credibility than some graduate from Carnegie Mellon.

I'd really appreciate your feedback on this, since it's a big dilemma that I think a lot of people from HN have experienced.

Any high school senior who self-describes as a "pretty badass dev and designer" desperately needs more education. College is not the only way to get that education, but it is probably the most fun. You have the rest of your life to work, make money, launch projects, etc.

Especially if somebody else is paying your way, college is a small window of time where you can be entirely devoted to learning and growing. Meet people like you and people who are not like you but you still respect. Maybe instead of a doing startups, you find a field of research that draws you in. Or maybe you discover that philosophy is actually what you want to study and you spend the next four years trying to understand what it means to truly live a meaningful life. You can still keep programming on your own time and leave college if a great startup opportunity comes along.

If you are very, very intelligent, my advice is to go to the best school you can afford, not for the education but for the relationships you will make. It is a wonderful, humbling experience to walk around the grounds of Stanford, MIT, etc., and realize there are thousands of people just as smart as you, just as competent, just as lost and searching.

Whatever direction you take, put a large X on your calendar one year from now. Reevaluate your decision. A year of working full-time or a year of college will give you much, much more perspective. I'm glad I went to a great college, but I would have appreciated it more if I had spent a year in the workforce beforehand.

This is exactly what I've discovered over the last month. I just started my Junior year in CpE, and finally understand how unique a university environment is. There will be plenty of time down the road to start a company, make some dough. But when else am I going to have free access to a top 500 HPC facility. When am I going to be surrounded by people who will build a remote controlled nerf gun just because it looks fun. Housing is cheap, Tuition is taken care of, and you've got state of the art facilities at your disposal. If you are really going to be a serial entrepreneur, getting a degree may be the best environment to learn that Blub (http://www.paulgraham.com/avg.html) is going to limit what you can and can't do. A degree isn't about learning things you don't know. It's about learning _what_ you don't know. It's where a Basic programmer learns about recursion, and a Java programmer learns about lambdas. It's about getting exposure to theory and new ideas so you can innovate and recognize better ways to solve problems.

Any high school senior who self-describes as a "pretty badass dev and designer" desperately needs more education.

And what if he is a pretty badass dev and designer?

It's absolutely critical that he a) realize that there are much, much more "badass" people out there, and b) learn from them. College is a good way to do that, but not the only way.

Possible, but very unlikely. More education is good advice either way.

I didn't go.

My decision was in some sense made for me, in that I didn't have the grades to go anywhere attractive to me.

Here's my scattershot take on this:

(a) 15 years later, I feel pretty lucky about this set of circumstances. The four years I would have lost to school were really good years to be in the industry.

(b) There are jobs that will care that you don't have a degree. But they are, by and large, jobs you don't want. This is especially true 5 years into your career, when most of the reasonable companies will open those roles up based on your experience.

(c) I coded when I was a teenager, but I had absolutely no appreciation for computer science. I was profoundly fortunate to have been drawn into a field that requires CS (software security); it forced me to pick up compiler theory, computer architecture, and distributed systems, and made me a systems programmer, which forced me to pick up data structures. My point here is, skipping school puts you at extreme risk of being a lifelong PHP or game dev, and you should be at pains to find roles that will keep that from happening.

(d) Almost everything I've managed to achieve has been a result of the people I've managed to work with. Words like "badass" and "awesome" are not conducive to learning from people who are smarter than you, which is basically the path you're choosing.

(e) You're not old enough to know that you'll want to be in startups your whole life. Realize that while you have a ~5-6 year window within which you can opt back in to college, you will hit a point in your late 20's where that becomes much harder. You will inevitably regret opting out. That doesn't mean you shouldn't do it, but if you can't foresee that regret, you should at least respect how little insight you have right now and factor that in.

PS: If you don't have the self-discipline to craft a tolerable role at a "big corporation", you're probably not ready to make decisions like this on your own. There's a lot of negative things to be said about BigCo work, but entrepreneurial work is harder. This is a genuinely terrible reason not to get an engineering degree.

You're leaving out the part where your parents were of sufficient means to provide you with the resources -- eg, a computer, a modem and phone line, not to mention food, clothing, and an expensive private school education -- that put you slightly ahead of the curve. I coded when I was a teenager, too, but my access was limited to a couple of hours a day in a public school computer lab for 9 months out of every year. My evenings, weekends and summers were spent bussing tables and slinging hash... to pay for college.

So yeah, you did have an unusually fortunate circumstances. Even being in Chicago versus rural Texas provided you with a greater pool of jobs that would consider you beyond your academic credentials. And a greater pool of badass, awesome people to work with. And internet access, which multiplied both of those pools by some huge amount. Not everyone has those kinds of resources, but universities with deep pockets attract them.

And last, entrepreneurial work is not harder, just more risky.

I agree with all of this but I also assume that someone who thinks they're a dev "badass" just out of high school is privileged enough to consider putting college off for 5 years to see if they can make it on their own.

If your circumstances are such that you'll be leaving home to support yourself on your own and never have the luxury of downtime or uncertainty (and there are many tens of millions of these people), yeah, I think, go to school.

Oh, hey, Hacker News readers, welcome to 5-7% of all of me and Erin's arguments. =) Erin's got a (technical) degree and had to clean up hotel rooms to pay for it. Our worldviews are uh different.

I think the point about entrepreneurial work being harder was mainly referring to the self discipline required to get a job done when it stops being fun, and the understanding that your livelihood depends on the success of your product rather than the number of hours you spend at a place. It's much higher risk, yes, and I imagine that risk is something most teenagers simply haven't had the experience to be able to understand properly.

I'll second pretty much all of this.

It's important to consider that not getting the degree removes backup plans. Backup plans are important to have if you're not independently wealthy, especially in the current economic climate.

It's unlikely that OP is so badass (s)he will be able to avoid years of learning software dev. University is a good place to do that and full of good people to work with. It's not like undergrad is even 10% as demanding as a startup (except the top top schools, perhaps) so why not go and work long hours and if you get traction then go full time on the startup.

This has been covered many many times. The consensus is almost always "yes, go to college."




There are many more but ycsearch and Google are failing me at the moment.

Short answer: a degree is an easy way to weed out candidates. Also, if you're going to college to learn C or iPhone development or other "trade" bullshit, you're doing it wrong. You should be studying computer science. Anecdotally, I've never met a good systems developer without a degree-equivalent. The people without CS degrees also seem to be universally weak on theory: discrete math, computational complexity, proof construction, relational and abstract algebra, graph theory, and (amazingly enough) calculus.

Edit: You don't have to major in computer science, I was simply stating that you shouldn't expect your university to teach you objective c. That's the kind of thing good hackers pickup in a weekend.

Edit2: Seems Ptacek is an example of a systems developer who didn't get a degree. Looks like he had to duplicate the effort of learning the systems stuff anyway so, meh.

I'm not sure how much stock to put in the consensus of a group of people who overwhelmingly attended universities. It's not a vote.

Also: a lot of the topics you've cited are only superficially implicated in systems programming. Discrete math is a great and obvious example, but (perhaps counterintuitively) so is complexity; once you understand 1, log n, n, n2, and 2n, you're ready to read papers and algorithms books critically. The number of times I've been called on to construct a proof of anything, let alone of the complexity of an algorith, is zero.

Graph theory is something you'll miss. Go audit a class and read Skiena; better yet, build a router or a program dag analyzer.

Finally, there's a hell of freight loaded onto that "meh"! You just "meh'd" a decade's worth of debt and four years outside of the industry. A "meh" answer here is pretty damning! Fortunately, I don't think it's at all "meh". There are plenty of good reasons to go.

As somebody who banged around in the "I'm not going to college! I'm going to take on the world on my own terms!" mindset for quite a few years after high school, there are certainly people (such as yourself) that can make a great go of it. But for every tptacek in the world, there are a thousand guys putting in year 10 behind the counter at Geek Squad.

Going to school is only 4 years, but you'll immediately come out of it most decidedly not at risk of being a Geek Squad "geek". At the very least you'll be able to get setup in a decently paying, full-time, salaried job that pays the bills and leads to a decent standard of living.

My friend from High School, who also did the "screw you conformist career path!" thing didn't end up in school and struggles far far more with his day-to-day than I do. Not because I learned some special secrets at uni, but because it simply stamps you as "mother approved" to most employers.

Discussions about how it's the person and not the meaningless sheep skin and how employers are really dicking themself over for using diplomas as a signal of quality are wonderful and all, but unless the question above is "I'd like to stick it to the man by not going to school, how can I game the system and get lucky and end up where I would have had I actually had a degree in the first place?" then it doesn't really matter. Most people can't navigate the world in that way. More power to people like you, but it's simply not a realistic picture for most people.

I didn't do "screw you conformist career path"; in fact, I think that if your mindset is "screw you I won't conform", you especially don't want to skip school, because you don't know what you're talking about.

By the way, if you can code, and you're working at Geek Squad, you have problems school wasn't going to solve for you.

Sadly, people who can code out of high school are a dime a dozen. I can go to any local high school and find half a dozen kids at each that can hack some code together.

I admire that you were able to autodidact your way into a successful career, most people aren't capable of that. I think it's ultimately unhelpful to advise people to follow in your footsteps unless they really truly are capable of following in your footsteps.

I really really wish I had had better opportunity in my youth to have gone to school right after high school, instead of burning through 4 years at uni, I burned through 6 years banging around in various tech jobs and trying to get past the notion society has that you really should go to school for jobs in the skilled labor fields. I watched many people who were not as good as I was absolutely leave me in the dust. Then I burned through another 6 years putting myself through school part-time while supporting me and my family.

Hell, I'd give anything to get 8 of those 12 years back.

>in fact, I think that if your mindset is "screw you I won't conform", you especially don't want to skip school, because you don't know what you're talking about.

Truer words were never spoken.

There are not 1000 guys putting in year 10 at the Geek Squad. There were only 50 guys working at the Geek Squad when they sold to Best Buy in 2002. Any 10 year veteran of the Geek Squad is now rich, so maybe not finishing college wasn't such a bad idea for them...

Well, come on now, you know how often this topic is posted. I'm leaving out a lot of the arguments and details etc, etc, but that may have something to do with this being the 1,000th "Ask HN: College? What of it?" post.

Also, I tend to think you get out of college what you put into it. If you focus solely on the courses you need to graduate: sure, you'll probably miss out on stuff. Discrete math and graph theory are usually required though (as well as continuous math if you're in an engineering program).

I'm in a similar bucket to the OP here. In my experience, everyone who went to college encourages me to go to college. However, everyone who didn't also encourages me to go to college: people who took an extra 4 or 10 years to finish their degrees encourage me to go to college; very successful college dropouts encourage their mentees to go to college.

I think what it boils down to is that college is a universally accepted "good idea", and if you are deciding not to go that route, it's something that you have to tackle on an individual level.

FWIW: My sons were (and still are) adamant they are not going to college. Their father and my sister and probably a few other people tried to talk them into going. I respected their decision and my position was "I dropped out and went back later and their dad didn't go until he was older, so it makes perfect sense to me for them to not go now. Like both of their parents, they can go later if they so desire."

Not everyone is a hypocrite. I just have first-hand experience with trying to decide a course of action based on all the things you don't like. It doesn't work very well. If someone has no idea what they want to do, there are worse ways to "waste" their time than pissing it away on college classes. And they are highly unlikely to be happier with that outcome. If you do know clearly what you want to do, that's different -- and I think that is part of what was different about people like Bill Gates and Madonna. They didn't drop out of college out of dislike of school. They dropped out because they were intently pursuing other goals and college was a hindrance to those goals.

The calculus one is a strange one.

I don't know what maths education is in US high schools but in Australia I learnt differential and integral calculus in high school. It wasn't required (it depended on what courses you chose) but most people who went into science and engineering did it (along with physics and chemistry).

There's two ways to look at this problem:

1. There are a significant number of college dropouts who founded massive companies (Bill Gates springs to mind). There are people who are so driven that college is a waste of time for them. A certain amount of luck is required too but luck rewards persistence; and

2. There is everybody else.

If you're asking "should I go to college?" you probably don't belong in (1). Those in (2) should go to college.

Remember too that for every success story in (1) there are a hundred stories of failure and a dozen success stories in (2).

It should serve as a cautionary tale that at the time something like Google could never have been created when it was without a solid theoretical foundation.

1. There are a significant number of college dropouts who founded massive companies (Bill Gates springs to mind). There are people who are so driven that college is a waste of time for them. A certain amount of luck is required too but luck rewards persistence; and

This example is usually posted and, once again, usually noted that people like Gates and Zuckerburg are really bad examples of people who "didn't go to college" (especially since they actually did, they just didn't complete it). The only lesson that you can really take from them is that if you are already proficient, have achieved an upper-middle/upper class education and gotten into Harvard, and formed a successful software company that benefits heavily from luck of positioning and timing, yes it may be a good idea to drop out of school.

I don't know what maths education is in US high schools but in Australia I learnt differential and integral calculus in high school

Confuses me too. I did multivariable differential/integral calculus in high school as well, but those with only calculus in high school seem to get in a bind whenever it comes to vector calculus or worse, calculus/differential equations with linear algebra.

Ease up on the smoke machine there, friend. You don't have to be Harvard material to "make it" without a degree, and you know it.

A good friend of mine with even less school than me (I have a summer semester at UIC) recently left his last job with a seven (7) figure pay-check to found and then sell (lucratively) his third startup. He could also kick both of our asses in a programming contest.

JWZ: another obvious counterexample.

There are people for whom school is extremely helpful, but if you're going to make your way through your career on raw technical aptitude, it's clearly not a requirement.

Ease up on the smoke machine there, friend. You don't have to be Harvard material to "make it" without a degree, and you know it

Absolutely. I agree with the op's point, I was just pointing out that Gates and Zuckerberg are poor examples, not that they are the only examples.

Try this link as well for my views on this topic:


And of course the attached discussion on HN:


Perfect. Thanks swombat, I knew I read your article and the discussion on HN a while ago but couldn't find it.

The people without CS degrees also seem to be universally weak on theory: discrete math, computational complexity, proof construction, relational and abstract algebra, graph theory, and (amazingly enough) calculus

I studied all that stuff in getting my BS in CS. I've not used any of it professionally, and now 20 years later I could not have an intelligent discussion on any of it much less apply it. My work has all been in business/enterprise computing, and strangely these are employers who are most likely to demand a degree as a basic qualification for employment, but are the least likely to actually require any of that knowledge.

Anecdotally I used discrete math, relational algebra and calculus all during my summer at Microsoft. Proving that a possible architecture was valid in SQL server was very helpful before spending months trying to implement it.

I think many people never use it and that's fine, but I also think it's a nice tool to have in your toolbox if you encounter a problem that could use it.

I don't think your links back up the assertion that there is a consensus on this subject.

To throw in my own experience: I have a BS in Physics, and I'm currently finishing an MS in Materials Science. I have friends who are working on startups while they do their CS PhDs. I hang out with electrical engineers, drink every Friday with a group of chemists and biologists, and play games with a selection of librarians, psychologists and English majors. And in a couple of months I'm starting an awesome HPC job which I found because of the people I met in school.

The advantage of a university is a high concentration of diverse, smart, and interesting people. You get to spend several years in an environment with a lot of people who know things you don't, a lot who don't know the things you do, and you are there specifically to talk to each other. Sometime's they're the same people, because humans don't overlap perfectly. Not everyone you'll encounter is worth it, but it's easy enough to find the ones who are. And you'll all have the time to hang out, which can be hard when you're dedicating yourself full-time to something else.

If you're really an excellent developer, and you're absolutely sure that this is the work you want to do for the foreseeable future? You can probably make it work without college. But that doesn't mean you should.

Key quote: "The advantage of a university is a high concentration of diverse, smart, and interesting people."

Ten years ago I had the same thought, and I couldn't have been more wrong. College is 100% about the material you learn in CS classes - more like 10%. It is about the people you'll meet there, the ideas you'll be exposed to, and the crazy opportunities that only exist in a CS dorm room at 2am.

You won't meet anyone in CS that doesn't learn better on their own - fortunately college isn't about the force-fed learning you've endured for the last 12 years.

I can't think of any "I'm sure glad I didn't go to college" stories I've ever heard from any successful coders/millionaires - just "I'm sure glad I dropped out of college" (but you have to get immersed in college and classmates before those opportunities will start knocking).

> It is about the people you'll meet there, the ideas you'll be exposed to, and the crazy opportunities that only exist in a CS dorm room at 2am.

Fair. Say you move to SF and spend 4 years. I'm pretty sure you'll meet more and probably experience a lot more things there than in college. Parties and stuff? Ah, that's great, I'm not worried about that.

You're hanging out on the wrong forum if you think anybody here is telling you to go to college for the parties...

As glorious as the SF scene (more specifically the Palo Alto crowd) is, beneath the surface they put more weight into your foundation than your skills ATM. And put this concept to the test, when you get a 5 day vacation - go out there. Meet as many people as you can, and ask the "will you hire me now/why not" questions that your alternative plan would have you ask in 10 months anyway.

Even in the land of SV-coders, people with degrees get paid a lot more than simple HS graduates. Having that degree opens doors, having mad skills gets short-term consultant work. You won't/can't/shouldn't believe that until you experience, so go test this "you'll meet more and probably experience a lot more things there than in college" theory. I'll happily provide 4-examples to the contrary to every 1 you find.

Also, apply now anyway (I kick myself frequently over thinking I'd save $40 and not send my app into the longshots). Better to have the "I was accepted but I don't want to go" dilemma than "I changed my mind, want to go, but didn't apply in time so now I'm going to a local tech college" situation.

Thanks for your feedback. It makes sense. I'll be applying to UF.

If you are asking this question, chances are you're not going to learn 3x much being on your own because you just demonstrate that inability.

People always pick Bill Gates, Mark Zuckerberg, and a handful (yes, a handful) others who made it big without finishing college as example to support their own excuse to skip college. This is a gross overgeneralization and not the complete story.

Do you currently have a better opportunity in front of your face than college? Cause Bill Gates and Mark Zuckerberg went to college and quit when that kind of opportunity (a huge one) appeared in front of them. They never ask online forums for life directions (they might ask their parents, something that seems not happening in your life).

It looks like you're a typical badass teenager who has problem with authority, discipline, and focus rather than a badass developer. We'll see if you can be successful without changing that mindset. I know a few of my friends who were like you in the past but had to succumb somehow. You don't live in your own world, there are other people around you.

So no, you're not going to learn 3x much since you don't even know what to learn and where to start? And no, you won't build much more credibility than "some graduate from Carnegie Mellon" because of your character. Chances are you're going to be a very awful leader and you might build something that might be popular in short term but won't sustain in the long term.

You are aspiring, I give you that. But badass? yeah, badass in a bad term, not in some sort of hacker-y awesome term. Please do yourself a favor and don't waste your precious potential. Go to college.

Now, here's the meat: go to college and take either Business, Economics, Commerce, or Accounting major. Technical skill itself won't do any good. If you can't work under anybody else, that means you have to lead. Take Leadership, Communication, Psychology courses.

And do the world a favor before you screw other people in the future in any shape or form or opportunity: find a good mentor cause you need some guidance.

Before Gates dropped out, he got a publication in a discrete math journal. If you can pull that off, feel free to drop out.


You will learn more than you think. I started programming at 7 and still learned a great deal in some of my CS classes. College will round you out as an individual. Sure, some classes will feel like a monumental waste of time, but just interpret that as part of the character building process.

A college degree is the basis of any career and really is the high school diploma of the 21st century. You will meet people, open up networks, and learn about things you never knew you were interested in.

I experienced a lot of frustration in college because I felt a lot of classes were remedial and unchallenging and many of my professors were terrible educators, but, as a whole, it was a very rewarding experience.

To my ear, you've already made up your mind against it. Moreover, you seem to have a very negative attitude towards college (waste of four years, learn three times more, build up more credibility than...).

If that is your mindset, I would say don't go to college simply because you're so set against it. I started college straight out of high school with no goals and little interest in it and quickly dropped out. Eventually, I went back (about two years later), graduated and then went on to get a PhD. But my first semester as a college student, I failed or did poorly at everything since my heart wasn't in it (and I skipped almost all my classes). If that's where you are, I think a year off is better than starting with a negative approach.

Having said all that, I wish every day I could go back to school and spend my days reading, writing, learning and shooting pool (how I spent most of my college/grad school days).

Edit: remove overly long thing about a typo that's now fixed.

Sounds exactly like me, except I haven't gone back yet. I went to a poorly chosen university, hated it, and left after a year with failing grades. Now I'm happily employed with a small company but I'm positive that I'll go back (to a better school) when I'm ready. I'm lucky to have landed a job the week before I graduated high school without even looking, which I went back to after dropping out.

Thanks for the advice and for noticing the typo.

Totally go.

>> learn 3x much being on my own

I doubt that. Part of it is the mindset of school. For 4 years of your life, you will have no other obligations than to focus and learn. It is "liberating" in the sense that you know you're there to improve your self and your talents.

You can buy textbooks, but you can't buy the experience of going to school and meeting a diverse set of interesting people your age.

For me, University was a formative stage of my life. I don't regret going at all. It also forces you to learn things that you may not have thought of learning, things that you learn to appreciate later.

You may not want to work at big corp now, but there may be a time when you have to sell-out, even for a short period of time out of pragmatism.

And even if you're restless (like I most certainly was), you can still work while you're in school for a company, the university you attend, or yourself. Best of both worlds, and it keeps loans down.

But the one big thing that college offers that lee references here is the learning things you may not have thought of learning. You'll have to take some "fluff" classes, or classes that aren't related to your major, but they expand your appreciation for other topics.

More importantly, at least for me, was the idea that college was a sandbox in which to learn about myself and leadership. I went the fraternity route (of the "Greek" variety, at that), and I learned more about leadership than I would have thought possible at my age. When I first got to school, I never would have dreamed of joining a "frat", let alone running one.

Working my way to President and leading 60 men/fratboys to a higher calling than getting drunk on weekends - a Sisyphean task if there ever was one! - built up my ability to lead without authority, and focus on such nuanced topics like recruitment for business and attention to detail.

Not everyone will have the same experience, that's for sure. I can definitely say I learned a ton outside of the classroom, and the ability to have those experiences when the generally worst case scenarios is a few angry drunk guys and not salaries or a business was very unique.

Yes go. I wish people would please stop posting this exact same question every 30 days on HN.

Unfortunately there were times where the media (and sometime even HN) made a big deal of prodigies and/or drop-outs. You'll hear more of these questions for a while.

Do both...college really isn't that tasking...especially the first couple of years. At most you'll be spending 20 hours a week in class(more like 15-18), and 4-5 hours a week on homework(more like 1-2). That leaves you a shitton of time to do startups.

Startups tend to be slow to get off the ground. The # of companies who go from 0 to millions within a year are few and far between(especially if you are bootstrapped).

So use the 4 years of college as your cushion to grow your business. It's the best time to do it, since you don't need a job to pay for your rent/food...everything can be paid for with loans that you won't need to start paying for 4 years...and when you do start paying, the amounts are tiny.

Who told you that you won't learn much in college? Don't kid yourself. Right now, you don't know what you don't know (as has been pointed out elsewhere.) Skipping college is hamstringing yourself for no good reason. Like it or not, having a degree is like building a personal brand. It says that you have some base knowledge and the ability to complete a long-term project. Unless you have something better lined up right now, I wouldn't skip it because it is difficult to go back in your late 20s when you realize you've made a mistake.

I don't see why it would be difficult to go back in your late 20s. In my case I think if I had done that I would have had more maturity and self discipline.

Of course if by that time you are married and have kids and a house, etc.... yeah it would be exceedingly difficult to be a full time student for four years.

EDIT: changed "have a wife" to "are married"

I went to silicon valley right out of high school to work in tech, I absolutely understand where you are coming from.

For what its worth, I also started 2 internet companies while in high school and have been a passionate entrepreneur since. After much deliberation and discouraging (not a typo) advice from those around me, I went back to college after 1.5 years in industry to get my degree, knew what I wanted to study, finished quickly and paid for a majority of it on my own. In a few cases, I even finished just as my friends who had gone straight through after HS. I had some real-world experience and knew what I wanted to study. I did serious research on degree programs and studied exactly what I wanted.

If you are up for it, college is a different kind of challenge that is hard to recreate. It requires a lot of "work" but its satisfying to move toward a long-term goal and finish; very similar to the satisfaction of building/launching an app from nothing. It requires discipline no matter who you are (entrepreneur or not) to get through college or school.

Quite simply: I wouldn't go if you expect to get professional experience or learn more about CS, I would go to learn and have fun but know that it will get harder for a lot of reasons to go back later (mostly because you won't have as much fun). ;)

Just like you I thought going away for a few years would make or break me professionally. I guarantee not much will change and you won't miss out on ("waste") as much as you think you will.

All the best.

I'm a college undergrad graduating pretty soon and I decided to study biology, not CS, for the same reason that you mentioned - that I felt like I probably "knew it all" already. I also ran into the problem that my school doesn't let anyone test out of the first year of "Intro to CS" which is basically writing for loops and understanding variable types in C++ - wasn't going to waste my time with that. But, having been allowed to sign into some upper level algorithm courses (like Bioinformatics, which I really enjoyed) I've learned that I definitely do not know as much as I thought I did, and there is plenty that they can still teach you. When you're completely self taught like I am, a good algorithm class will really help stretch your brain and make you think in new ways. There's a big difference between being a "badass dev" and having a real CS background. If you develop in a high level language, you're going to learn that the actual implementation of simple things you do all the time is non-trivial and may have impacts on your applications that you're unaware of.

If you make the most of your college experience you can get involved in research, get on or off campus jobs - basically, get to know interesting people, and get some exposure to real world problems and experience trying to solve them. I don't think you should throw away this great chance for growth.

You might consider doing a different major, i.e. math, science, engineering, if you're interested in anything else, and just taking the CS classes that interest you. If you have issues with prerequisites, get to know the professors personally - this is the college secret to being allowed to do just about whatever you want.

Going to college is not a binary decision. There are good ways and bad ways to go to college. If you go to college the good way, it can be definitely worth it. It's not required, as many people here can attest to, but that doesn't mean that it's not worth the time and effort.

First, go to a college, not a university. The ideal place is a teaching college that does not focus on research and does not have grad students. They exist, and they're awesome. Ones to check out include the Claremont Colleges (disclosure: I went to HMC), Occidental, and Reed. At a small undergraduate teaching college, you are the focus of the professors, rather than a duty to be discharged with the minimum of distraction from your main focus.

Second, take advantage of that focus. Don't just go to class, do the work, take the test. Talk to the professors. Ask questions. If you don't feel challenged, ask for more advanced work. They'll always take the time if you ask them, and they'll usually be able to work something out for you. And don't just get to the level where you can do the work, get to the level where you deeply understand ("grok") the material. You're not just going to college to get a rubber stamp on a piece of paper, you're going to learn. College is the best environment for that, but it takes effort, and usually going beyond the minimum requirements.

Similarly, talk to other students. Having peers is awesome. Making connections is useful. Having a community to support you will become necessary at one point or another in your life, and college is one of the best places to start building one. Plus, learning to interact with other people in a work-related environment is critical, and this is where you learn (high school is bad at this).

There is a shitload more to learn in college than just programming. That, in itself, is one of the best reasons to go. Maths, communication, writing, public speaking, business, economics, finance, and law are all available and are all valuable. Teamwork, leadership, and responsibility are also things you can learn, even though they're not taught as such, and they're critical to getting anywhere in life.

Now, there's two possibilities. One is that you're hot shit like you think you are. The other is that you're not, and you have no fucking clue. If the latter is true, you will find out very quickly, and be glad you did. If the former is true, then getting value out of college requires a somewhat different path, albeit one you may end up wanting to walk anyways.

If you are good at CS, and still want to get a CS degree, focus your studies on areas that you don't have much experience in. Math, logic, compilers, functional programming, and systems design are areas that autodidacts such as yourself are likely to be weak in. You may not end up using any of the specific skills, but they'll make you a better programmer. Get some practice working on teams as well.

Alternatively, don't get a CS degree (or double-major). Go do something else. You don't need a CS degree to program, and having a wider breadth of knowledge can be extremely useful. The ones most closely related to CS are math, physics, and engineering. Those disciplines are always in high demand, and always have high demand for programming skill. Engineering is a useful perspective to have when coding a large system, and math skills are never wasted (they're obviously not required, but if you have those skills you will always find ways to make use of them).

Alternatively, take something totally unrelated. Business and communications will help if you want to make a startup (if you take relevant classes, not requirements). If you don't major in them, still take a few classes, especially public speaking/presentation classes. You could even take up something like, say, basket weaving, and then you'll be one of the very few good programmers who understands basket-weaving, and your domain knowledge will give your basket-weaving-web-startup the ability to efficiently fill a need no one else even knew existed. I don't even know what a basket weaving startup would be, but that's sort of the point--you could be the first to figure that out.

Finally, college is a place where you can experiment, take risks, and make mistakes. Spend your summers in internships or work-placement programs in various verticals and types of companies, to see if that's what you want to do. Do some research, to find if it's interesting. Take a chemistry or a theater class, maybe you'll find a passion (most people I know, their favorite class was not in their major). Pull all-nighters (studying or Halo) just to find out if you can take it. Get shit-faced drunk. Get a girlfriend (or boyfriend).

And if you don't find it's worth it after two years, drop out and do something else.

  First, go to a college, not a university. The ideal place 
  is a teaching college that does not focus on research and 
  does not have grad students. They exist, and they're 
Or go to a top University. The Professors certainly care more about their research than you (it pays the bills and keeps them employed), but it's OK if you're smart. You don't need one-on-one attention. If you want to get super smart, join a research group and work on hard problems.

And if you go to the right university, you have instant credibility. Even if your goal is not to work for a megacorp (which, by the way, is trivially easy out of CMU), people will assume you know shit, which makes your path infinitely easier.

It's true that very smart people come out of all types of colleges with all kinds of backgrounds, and that there are a lot of idiots at places like MIT, Stanford, and CMU. But the intelligence density is still always going to be way higher at a top 5 school.

In short:

Stanford - Best overall for undergrads, in my limited experience. It's not that the smartest people I've met have been Stanford undergrads/alumni, but they're consistently bright (across a sample size of 10 or so).

CMU - Very good at programming. Most of the systems classes follow the "Write X from scratch" mantra, which is a great way to learn about malloc, distributed systems, kernels, etc.

MIT - Obviously a great school, and some of the smartest kids go there, but I've not been universally impressed (we're talking about rising seniors not knowing how malloc works). Still, my sample size is small.

Berkeley - I've heard that the professors there are trying to create more professors. I work with one Berkeley grad (now a PhD student at CMU) and he's pretty sharp, but doesn't have the programming background that I do.

I wish I could upvote this more.

Basically, life isn't black and white. Please take into consideration all of the points lmkg mentioned above, as they highlight the fact that college is not JUST an education, it's an EXPERIENCE (which could be good or bad depending on how you go about doing it).

As a graduating senior who also hates the "corporate world" and has always been too smart for the "facts" learned in school, I'm very happy to have attended my state university for the following reasons:

* You get to meet tons people of your age at a similar stage in life, and chances are, you'll find some people you like, or at least can learn from.

* You have a chance to do crazy shit like no other time in your life, and I'm a firm believer it's your experiences that are unique to you and define you, assuming you're smart enough to be reasonably educated.

* Having a degree > not having a degree. We still live in a world where that sheet of paper matters. we can argue all day about whether it SHOULD matter or not, but the fact is that it DOES matter, today.

As someone who attended a state university (disclaimer!), I would recommend it as far as an experience goes, for the following reasons:

* I paid cheap in-state tuition (relative to private colleges). This is pretty important to me, especially since I wasn't buying the knowledge, but the experience.

* The experience is closer to the "real world" than other choices -- assuming you choose a reasonably sized state university in a city environment -- important points to ensure the environment you're in is not too culturally segregated where your sense of reality becomes distorted (unless it's to your advantage where you know it will strengthen your weaknesses, i.e. force you to be more social, or more studious, etc. but be careful what you wish for)

Why avoid research? Probably better to go to a big school, and get involved in research. Actively participating in research gives you a much better education than just going to classes, IMO.

TL;DR: When in doubt, optimize for learning.

If you're ready to do your startup, then do it. Start building it today, have something to show in a couple of weeks, measure progress and success. If it doesn't work out and you need some time to regroup, go to school then. Educational institutions aren't going away, unlike that favourite startup you were considering working at before they get big and sell out.

Sometimes you're just not ready but you know you will be soon. In this case, go to a good school and equip your mind with things you'll mostly never use but still somehow benefit from in the long run. Learn computer science, meet amazing people, be inspired.

If you're not sure, do both. A top university can be rough, but it's amazing how much you can scale your effort while still getting reasonable grades and learning. If you're not worrying about a job with big corporations, grades don't matter much. Go to school, meet and recruit amazing people, work at it until you're ready to go full time.

Just don't waste all your time playing videogames while being indecisive.

So here is one data point. I was very interested in electronics as a kid, and got a ham radio license at a very young age. I studied everything about radio that I could get my hands on, Fourier analysis, circuit design, propagation. I ended up at Northwestern (by some mechanism that is still not clear to me) in the EE program and took the 5 year (with co-op) program. I had studied enough that it wasn't until Control System Theory that I learned something totally new to me.

Meanwhile, in my freshman year, I got into computer programming and haven't looked back and have been making a living programming for all the decades since. I did finish my engineering degree, but during my senior year I was working pretty much full-time in my first startup.

So what I would say worked for me is the studying that I did outside of my actual coursework. This has continued to be my habit after college as well. While I was officially studying EE, I was learning everything I could about computers. While I was writing real-time data acquisition and pattern analysis software for that startup, I was studying how to build compilers. Then, once I started building compilers for a living, I started doing consulting.

So I am not a good data point for a connection between what school was about and what the career is about. But then again, the career has had a number of shifts in which study of a new field was key.

So while you are considering this decision, consider 1) how well you do is more a function of you than which, if any, school you go to and 2) you will learn things in a university (and college) that will serve you well later on 3) you might be the kind of person who can do well without school.

And to this day I am a bit ambivalent about CS degrees. My own narrow experience makes me suggest a good engineering program with a CS minor. I do wonder if one learns programming without gaining a few scars and adopting one dogma and another and have that go bad on you.

To give an example, I was once in a position to interview candidates for compiler positions. There were some schools whose CS masters grads were frightened of compilers, others who had a good grasp.

However, if you have done a "few apps" and consider yourself a Badass Developer, perhaps a good school will help you with that notion. I am reminded of stories I heard about folk going to places such as Cal Tech. Supposedly there was a week spent convincing all these very smart kids that they were not all that much more badass than the kids to their left or right.

> I'm an aspiring and pretty badass dev and designer

Some tens of years ago programming was a very respectable engineering activity.

Today it is basically a blue collar job, at the complexity level comparable to that of plumber or electrician (though i doubt that many of today "badass" programmers would be able to muster all the knowledge required for and successfully pass the related plumber or electrician exam. Don't know about other states, in CA you'd need 4 years of related professional experience working for somebody who already have a license before you'd be eligible to even take the exam).

Tomorrow - programming would logically come to being just a very basic rudimentary skill people apply among others while performing some professional activity.

In general, the basic education level isn't K12, it is K16. It is your own personal choice whether you wanna be a dropout and stake all your future on some basic skill you developed while in the middle-school (ie. K5 to K12 grades).

I'll focus on the "badass" dev aspect.

Head over to topcoder and do some of the algorithm/design/development competitions. Did you win? Place?

If you want to do startups you should go to school and bootstrap something on the side. If you come up with a viable product you can then maybe consider dropping out, but you need to hedge your bets and start by going. Note that Bill Gates was a college dropout not someone who never went to college, BIG difference.

College isn't about the curriculum as much as about your fellow students. If you go to a good Computer Science department, you WILL find coders that are at least as good as you. Great people to start projects with and network with if you are looking to do a startup.

This seems like great advice, or at least it's working out for me. I had the money before college to consider not going, but I never seriously considered it. If you get into a decent school, which most technically inclined people don't have a problem with, you'll meet a ton of smart students and professors.

For something like what you're doing, you will likely meet a lot of similar students in your CS classes, many of which who might not even care for college but go for other reasons (their parents value education, they want the college experience, etc).

I really agree with hedging your bets; if you have the happy problem of creating something that is worth dropping out to work on, more power to you.

This is really a personal decision. Most people would benefit from college, but there are plenty of otherwise smart people who aren't cut out for it (like me). Here's what I'd say:

Go to college, but don't stick around if it turns out to be a waste of your time. That's the mistake I made. It took me nine years and $35000 in student loans to figure out that I'm not cut out for college.

That said, I did learn a decent amount about programming in college that I might not have learned about on my own. So it wasn't a complete waste of my time.

Go, but don't pick a super specialized school. The valuable aspects of college aren't so much in what you learn in the classroom, but in what you learn about life. It is 4 years where you can pretty much dick around and find out what interests you. In my opinion, the social experience is what really makes it. You get to spend those years around a diverse group of people in your own age range who are probably just as lost and confused as you are. This is great for both friendships and more intimate relationships (it really is never as easy as in college).

You can also build awesome things while in college. If you're fairly bright, course work shouldn't consume all of your time. It's all about balance between class, building things on your own, and your social life.

Also, another thing to consider is that if you skip college, you will likely be spending a lot of time with people 6-10 years your senior. This can be both fun, but also quite a drag. This is especially evident when they go out to bars and you have to stay behind (or hope to god that your "alternative" id works).

My university has a drinking song that includes the line "We all came to college, but we didn't come for knowledge, so let's raise hell while we're here." In a lot of ways, this sums up the true value proposition for "wasting" 4 years of your life in the pursuit of finding out who you actually are.

Yes, you should go. I was in a similar position, although not particularly badass myself. After getting an associate's at a local community college (practically for free) I wasn't sure whether I should transfer to a university or spend more time building stuff.

Bottom line, as I'm now about to graduate with my BBA in Computer Information Systems, I'm quite glad I opted to continue. Like you, I wasn't sure how much tech stuff I'd learn. And it's true, most of my computer classes were way too easy and not really beneficial for me. But my program is also heavily focused on business, which I think is extremely important, especially for someone considering working independently. I also discovered an interest in Economics, in which I decided to minor. However well you can program, if you can't manage the business side of things, you're cooked.

You also shouldn't underestimate the benefits of developing more in the general education areas. Developing a firm grasp of English writing is absolutely vital. Developing the capacity to further understand and appreciate history and culture can also be very helpful. This kind of sampling can also help you realize other areas of interest and help build up a general pattern of understanding which can be useful in understanding all frameworks. You can, in theory, learn all this on your own. It's just that college can really help you get started if you're serious about it and are actually there to learn.

At the same time, though, I've now been considering whether to continue into a graduate program. I've excelled in classwork, and it seems like a no-brainer, but since I don't have a definite direction I'm opting not to pursue a graduate degree. At least not for now. That would be an additional large commitment, even just of time, and I think it's benefit, since I also don't want to work for a large, corp would not pay off.

I've never met a bad-ass developer that described himself as a bad-ass developer. The decisions you make over the next 5 years will heavily influence the rest of your life. Treat college as a safety net and a networking opportunity. Aside from that, it will be a humbling experience for you. It's funny how getting smarter/wiser first means realizing how stupid you are.

If you are really good, are you in a position to get some scholarships / financial aid? This would lower some of the opportunity costs of going. Now...

a) In college, you would still have a lot of free time to pursue your own projects, and could always drop out if you hit it big! It gives you a safe place to work from while giving you a chance to learn more skills, too.

b) It gives you a GREAT chance to meet other people who can help you, work with you, drop out with you, etc.

c) You can learn about other life skills, too!

Those are three good reasons that you might want to consider more seriously going to college. I feel the same way about many post-graduate experiences as you do about college, and it's important to try to see things with more shades of grey and to be more open to positive experiences.

Remember, no one is going to put you in a prison for four years, but by not going to college now (or not applying... etc) you are losing on some opportunities that you might like, even in six months. So for now, relatively easy to keep more options open.

I got my 3 year degree in 2 years and since we're in Italy it was really easy - I could have spent my time in better ways.

But the point is I probably would not have done that, college teaches you some basic things about IT (or business or what you want) that you wouldn't study on your own because they're basically too boring and you might be too busy doing other things (being it working for you, for someone else or even doing wonderful things)

Also college "woke me up", when I first started (actually I spent the first semester playing cards ALL DAY :) I didn't know what I was gonna do with my life - probably work for someone. I'm not sure if this was gonna happen anyway or it was that for the first time I knew I could take save time in college rushing the coursers.

So if you already got "the balls" and think you are mature enough to build something awesome, then do it and skip college. But please don't skip college to be depressed after 6 months and work for a big corp, since you seem to hate it.

My advice: If you have something better to do -- you are hot to trot to join the military, travel the world, launch a specific product you are currently working on...etc and it is do-able in the here and now -- go do that. If you do not have something better to do, then go to college. You can always quit should something better to do come along.

College does so much more than teach you how to code. In a good CS program, you're going to get exposed to ideas and concepts you'd probably never encounter in your own studies. There's also that thing about going to college to become a more knowledgeable person in many subjects. If you go to a good school, it will probably be worth it.

Also, getting your foot in the door can be tough without a college degree. It's not you don't know your stuff, it's that the HR people will toss you off the pile. You stated that you want to work at/on start ups so this probably won't be a problem, but it's something to think about.

Consider the social aspect too; college can be good social training and put you in touch with people of the same mindset as yourself.

I've been out of education for nearly 3 years now and already have made good use of such connections.

As a soon to be graduate, who thought university education wasn't worth it as well, GO TO COLLEGE! It's so much more than just programming. You'll learn technical things and non-technical things. The experiences you'll have during these 3-4 years, you will cherish for the rest of your life. You can always work for yourself later, if the need be, there's no hurry to startup by throwing yourself in 100%. Take some time off, learn some core CS/Math concepts, join a few campus clubs, party hard in the dorms - remember work is never gonna get less.

A college degree will give you a lot more choice of opportunities and it's hard for me to think of any it will eliminate. That said, flunking out because you are not motivated won't do you any good. So if you are really not motivated to do it, try something else first. Military service, a start up, a regular job... all will give you perspective.

Taking this path however, be sure that you are happy with what you are doing before you start putting down anchors like getting married, having kids, etc. as that will greatly limit your freedom to keep exploring.

I think perhaps it depends on the school you choose. I went through 6 years of college without obtaining that piece of paper. I bounced from electrical engineering, to pure mathematics, to computer science, and eventually to network administration.

I've been doing freelance development for around 5 years now and have been a network admin for a small municipality for 7 years. All the while I've been involved in open source projects and a few tool building projects that I apply to all of my jobs.

The experience I had in college was bitter. The CS department wasn't teaching anything useful. The only two classes from the dept. that taught me anything were Data Structures and Algorithms. They were unfortunately taught in Java (the school moved from C courses to Java in my second year there). Everything else was knowledge that I had learned on my own prior to college.

I found the pure mathematics courses to be more interesting and useful. Discrete mathematics being the most useful for development. I think the course taught me better ways to approach problems, not just the mathematics itself.

People I've worked with who have degrees seem to have a very focused skillset. They know a lot of theory, but lack a lot of practical knowledge because (I assume) they don't care to educate themselves further. I'm not making a sweeping generalization here, just an observation. There are plenty of college graduates with a ton of practical knowledge.

As mentioned, I don't have a degree, but I think I'm doing OK career/job wise. I can provide for my family and enjoy what I do.

If you don't go to college, get as much experience as you can. Many employers will ask for a four year degree OR equivalent experience. If you want to be a developer, learn other disciplines that tie into development (such as system administration) while you're writing code. In doing so, you'll be less dependent on others to get your job done and you'll be better adjusted to most any position. Understand the foundations of your work. Additionally, learn to speak/write well.

Colleges seem to focus not on learning, but completing the tasks required to obtain a degree. It's mechanical in nature and you only get out of college what you put into it. If you go, be willing to go deeper than the coursework.

In my [limited] experience, it's common for developers who haven't had a formal CS education to never pick up some of the important CS fundamentals. Of course it's certainly possible to learn this stuff on your own, just unlikely.

A few other things to keep in mind:

* You can build things while you're in school, and if anything starts taking off then drop out.

* Or you can just work hard and graduate in ~3 years, especially since you already know how to program.

* College is about more than just taking classes and learning the material for your degree.

If you have a feeling that you can do this without going to college and that it's a waste of time, you are probably right.

Also, you should consider to do formal part time study. With some skills and knowledge on your back you will find out that taking some exams part time isn't too hard when you can focus more full-hearted than a regular student. You can cherry-pick your courses and later, when you have saved some money, perhaps finish with a degree if you feel like it. Best of luck.

It's been beat to death, but everything of substance that I took away from college came from outside the classroom.

Socialize. Network. Further develop your relationship building skills.

The way I see it: I entered college as a smart, but normal guy. I had no special connections or family ties, and I subscribed to the 6 degrees of separation mentality. I'm now 23 and I'd be willing to be I could meet anyone in the world with through 3 degrees of separation.

College was that extra 3 degrees, and it was well worth it.

If you don't go to college, you better damn well educate yourself better than anyone in college will.

That means reading big textbooks, working on hard projects, getting to know more about things outside your field of study.

This is what I've done instead of college, but I feel like I've probably studied a lot more computer science than a lot of my friends who did go to college. It's not an easier path, just a different (and possibly cheaper) one.

You mention you don't want to work for the man, this sounds like you'd prefer to go freelance or start your own business. Given that and the fact, which I'll accept at face value, that you're a bad ass developer who knows big O notation and can code your own lists and trees and hashes, and you did fine in your math classes, and if you did go to college it would be to get a CS degree, then I would say no, don't go to college, it will be a waste of time compared to what you could have done by not going to college, in particular starting a business while traveling the world and not going into debt.

If you are not a trust fund child, the debt loan from college will definitely prevent you from starting your own business and ensure that you have to work for the man whether you want to or not.

If you decide to go to college later, that's fine too and maybe by then you'll have a hankering to study philosophy or russian literature or such and do so without going into debt because you are already running a multi billion dollar company that you founded yourself.

You sound a lot like me. I was designing embedded systems and writing operating systems in machine language by the time I was 16. I ran into problems dealing with concurrency, read a number of papers, had some solutions, but felt there had to be a better way, and so off to college I went, and I got into one of the best engineering schools there was (Stanford). After four years, I had not learned a single useful thing and discussions with top professors in the field taught me only that not only had almost no professors at top engineering schools have ever written and released to the public a program more than a couple thousand lines of code long, but also these jokers don't know anything about developing software. So it was a big waste of money.

If I had majored in art or history or something like that it might have been worth it because I wouldn't have been pulling all nighters to finish labs that were busy work, and probably gotten more sex with hot girls, and learned something interesting that I didn't already know.

If I skipped college, I would have gotten a 4 year head start on my career and I wouldn't have had to pay off $50,000 in loans right away, which required that I had to work corporate BS for several years to pay off before quitting and doing my own thing.

So, for your specific case, and speaking from my own personal experience, don't go.

Keep in mind one thing. College isn't valuable for the collection of facts that you accumulate in the same way that armed forces basic training isn't just to teach people who will be running through tires and climbing ropes.

"Getting through it", "finishing stuff" and learning how to teach yourself are what makes college worthwhile. If you're using a different scorecard, you may be overlooking value.

I don't know how the scene in Jacksonville is, but I would strongly recommend, if you skip college, to go to a strong technical hub (Silicon Valley, New York, etc). You will have fantastic networking opportunities that you won't have elsewhere, which goes inline with what tptacek's point (d).

FWIW, I am leaving college to take a full-time job at a company in the valley. I was (am) a junior in CS.

I went, and recently finished ('09). I'm dissatisfied with my job for the same reasons you would be, but at the same time, the extracurriculars surrounding the college experience were overall positive. If you don't "go to college," at least go to a college town and meet the women and drink with the men. There's a certain value to being able to discuss the experience later.

Nothing I can say will tell you what to do, neither will the rest of the community. This is something I had to learn the hard way, and despite my best efforts you'll probably learn the hard way too.

You're 18. Confidence is essential to success but please remember you only know a fraction of what your parents wanted you to.

Definitely go (coming from a college freshman who just started). You'll learn much more than you think, meet people much more "badass" than you, and you'll have 4 years and plenty of time.

You coded in high school, you can code many times more than that in college (I'm doing the same). That's four years of cushion and no rent.


From someone that learned The Hard Way- just do it. Everyone here makes great points, and the connections you make really will serve you well for a lifetime, but also consider that you'll probably have a blast.

Have you visited some of these campuses? ;)

I think that the one advantage you'll gain from going to college is potentially meeting similarly driven people with similar interests :)

That group you used to have a pint with might end up being business partners one day.

If I could do things over, I think I might have given economics a try. Unless you really want to do "CS" kinds of stuff as a career, you can figure out programming on your own, most likely.

I think that way you laid down your thoughts asking for feedback pretty much tells you what deep down you really want to do. What are you looking for is just confirmation from other people.

Sounds like you don't want to go to college right now, and want us to tell you it's okay. Do want to feel like doing right now, you can always drop out, or start college in a year or two.

I would go to college for the connections. Go to college with a good CS and business network, MIT, Stanford, Harvard, etc.

Be friends with your professors especially. They can open doors for you.

You're clueless. That's OK - all high school seniors are.

Go to college. You'll have fun. You'll grow up. You'll make friends that you'll have forever. You'll learn more than you think.

I learnt hardly anything computer related at uni, I actually lost some knowledge. However the social side and the things I learnt about myself made it more then worth it.

Based on the syntax of your post, I would suggest at least a couple night courses in professional writing. You never know when you might need to write your own copy.

Provided it does not produce financial hardship, go. Maybe major in something other than CS: the next big thing (if not current) is domain knowledge.

It's expensive, but worth it for the people you meet and the unexpected directions you may find.

I'd say don't go to college if you think you can meet people and find jobs without it. Here's my story.

In 2007 I left high school 2 years early and went to community college. I didn't know what I wanted to do with my life; all I knew was that I hated high school. During the next 3 years at community college, I learned that I was way better at computer programming than I thought, and that I wanted to do software startups for a living.

I got accepted as a computer science transfer student to UC Berkeley, but by this time I had learned to work 6-8 hour days 6 days a week programming my own stuff. I was very ambivalent about whether to go, but a friend of mine who I had a lot of respect for said I would actually be more productive there, so I went.

Pros of going to college:

* Diverse experiences are good, right? I walked alone in the hills a few times, snuck in to one of the other dorm buildings at night, got girls' phone numbers and learned just how polite a rejection can be, tried drinking, and met a homeless guy who succeeded in convincing me he had a PhD in biology from MIT. I probably wouldn't have had these adventures at home.

* I met a designer (who was actually already my friend on Facebook) and now we're collaborating.


* My 6-8 hour days fell apart. I now work maybe 1-2 hours a day on my projects.

* UC Berkeley students aren't really all that clever. Even among the computer science students, many couldn't program before they came here, and a solid majority of them never program unless it's for school.

* It's a bit hard to relate to the freshmen on my floor. I don't think I've ever had a really good conversation with any of them, let alone a good conversation about physics/economics/etc.

* My classes are dull. I already know what's being taught. And non-sped-up lectures are an inefficient way of learning things in general. I'll believe that educators seriously want to educate students when they write education websites that optimize for learning the way e-commerce sites optimize for conversions.

How to meet people?

* Scour your Facebook friends, gChat contacts, etc. I didn't know my friend Persia was in to web design; I had to run in to her in Berkeley to find out. That's an inefficient way of doing things.

* Go to events like SuperHappyDevHouse, meetup.com stuff

* younoodle.com? djangopeople.net? etc.

One option is to go to college and then withdraw. UCB at least offers guaranteed readmission to withdrawals. I'll probably do that if I find that I can't reconstruct my 6-8 hour days or I become ramen profitable.

I would say go -- you can always drop out if you decide it's not for you.

Buddy, GO to college. If you feel you're that good then prove it with your grades.

AND (more importantly) help others do some good with their lives!

I won't lie to you, I built a business with no higher education, and have never regretted my choice. If you're a talented hacker, you love what you do, and you think you have what it takes, I recommend you go for it.

The fact is, you can always go back to college if you fail, and you can always do a startup later in life, but you'll never get your youth back. So you need to choose the path into which you'll be pouring those precious years.

Starting a company is a great alternative to college, but don't expect it to be an "easier" path. You're going to have to learn just as much, and on your own to boot.

The rewards are there, if you work hard. But the final decision is yours, and is largely dependent on what you want to do.

I haven't finished college. Currently 23, making 80k. There shouldn't be a question, you NEED to go. Professionally it makes things just that much more difficult. You'll be climbing an uphill battle from the start. Your professional network will be smaller, and people are going to make judgments about you from the start. To deal with that you'll have to develop a personality where you project yourself smarter then you are (and hopefully you remember you're doing it).

However you're young, and probably hard headed. My recommendation, go for a year, during that year work on the idea you like. If it fails stay for another year, and work on another idea.

I'd recommend going because of the opportunities for making important friends and learning things you might not otherwise have had the willpower to learn on your own. Keep in mind you don't have to stay for all 4 years if you don't want to. Stay until you feel you've gotten what you came for. I dropped out 3/4ths of the way, and was quite happy to have done so.

Your view of avoiding a career in a large business organization, I believe, is fully correct: Starting at age 22, to age 70, assume 70 will be the Social Security retirement age, you will have 48 years of work, and the chances of doing all that just in big corporations are slim to next to none. One reason is that, over the past 100 years, for a single corporation to be stable for 48 years was rare. Another reason is, the strong but unwritten rule is that the subordinate must be younger than the supervisor: So, by age 45 or so you are qualified only for CEO. So, about the only hope will be CEO of a small organization, most likely yours. So, you will have to do startups anyway and should get on with it.

E.g., assume you start at age 22 and (A) join a large corporation and get fired at age 40 or (B) start a grass mowing service and grow it and expand to higher end clients and some landscape architecture. At age 40 (B) stands to be much better than (A). If being an electrician is better than grass mowing, then good. If computing is still better than being an electrician, then still better.

A career with a license, e.g., law, medicine, electrician, can be good, but you are not considering any of those.

State government jobs don't pay very well, and government jobs are much less stable than is commonly assumed, are really not stable enough to bet your career on. That you have set aside careers with academic tenure or licenses, basically you need to be running your own business. Period.

Millions of US families are supported by men who own their own Main Street businesses. If computing is a better opportunity than, say, HVAC, auto body repair, or an independent insurance agency, then so much the better, but you still need to run your own business.

A BS from Harvard, Princeton, Yale, or Stanford can bring a lot of prestige and let you meet some people who are or will become important, but running your own successful startup will make you a still MORE important person. Uh, a Harvard guy seems important because of his chances of running a successful business and the people he met that might help him run a successful business: If you are already running a successful business, then basically you are ahead; the Harvard guy may want you to hire him!

Yes, there is a joke: "If I need a Ph.D., then I'll hire one.".

So, if you don't want prestige, then you are free to go to a state school and save a lot of money.

Still, college will cost you about four years of time away from your business (likely a big problem), four years of income from your business, and enough cash out of pocket to buy a house or nearly so. Big question if college is worth it.

If you don't go to college, then work hard to pick up some of what you missed by some high quality directed reading or a few courses as a special student.

So, you need to learn some things.


For your life both inside and outside business, you need to learn some things about people.

For business, you need the basics of organizational behavior -- even at best people are goofy to work with.

More generally the fraction of badly mixed up people in society is surprisingly high, and basically you need to be able to detect, maybe diagnose, and likely avoid these people on your own, quickly.

One rule is, if talking to them leaves you somewhat or more shaken, then you just detected some bad intensity and struggles within them; stay away from them.

People can make such detections at an early age. Indeed, in:

T. Berry Brazelton, M.D., What Every Baby Knows, ISBN 0-345-34455-3, Ballantine Books, New York, 1987.

is the flat statement that when a child is rejected by his peers it is because the peers detect some intensity that scares them.

For more, there are four neurotic (now just an informal word) styles: paranoid, hysterical, obsessive-compulsive, and psychopathic passive. You need to understand these; once you understand, you will see examples fairly frequently. Then a lot of what they do will be understandable and predictable. A good start is just:

David Shapiro, Neurotic Styles, ISBN 0-465-09502-X, Basic Books, New York, 1965.

The author has an MD.

More generally for people 101 read:

Erich Fromm, The Art of Loving, Harper and Row, New York, ISBN 0-06-080291-X, 1974.

Fromm was a Freud student.

It's a classic, originally published in about 1947.

Men and women, whatever else they are, are not the same. For some insight into women, read:

Deborah Tannen, You Just Don't Understand: Women and Men in Conversation, William Morrow and Company, New York, ISBN 0-688-07822-2, 1990.

Here Tannen wrote a popular book about her academic specialty; she has been a professor at Georgetown.

I am NOT an expert in psychology. If you can find a college professor who is good a expert on people and teaching such material well, then at least get their reading list and maybe take their course, if only as a special student.


Biology, chemistry, and physics stand to be of increasing importance; you might want to know more about each of these.

Just in physics, just for computing, you should be able to do basic energy calculations. Also in electronics the practical consequences of Maxwell's equations are good to know. Quantum mechanics stands to become of more importance in computing.


You might get some benefit from accounting, finance, and labor law.


Math is the most precise knowledge we have, and knowing some of it can help provide a benchmark we can try to approach outside of math.

Also my opinion is that math is the most important field, more important than computer science, for the future of computing, especially in entrepreneurship where it is good to have some powerful secret sauce that delivers valuable solutions and is difficult to duplicate or equal.

I have some expertise in applied math -- a good Ph.D., a lot of successful applications, quite a lot of college and graduate school teaching, and some published papers.


Good skills in critical reading and in writing for a purpose could be crucial for you.

===Computer Science===

I am not convinced that college courses in computer science will do much for you in the future of computing.

So, we have subjects:






One way or another, you should seek to make good progress with each of these topics and maybe some more. For nearly everyone, college is the best approach.

Still, you have learned practical computing on your own. And in the rest of your career you will have to continue to learn a lot, more than people learn in college, on your own. So, it is not clear that you can't learn on your own what others learn in college.

One approach would be to compromise: Get some college course catalogs and see what the main courses are. Go to some college campuses and see what texts and other materials the courses are using. In time it will become clear what the most important texts are. Then for each such text, scan it, maybe just in a library. If a text or course looks really good, consider buying the text and/or taking the course, if only as a special student.

If as a special student you see that you actually want a degree, then go for it then.

In the end in life, you have to get the work done; you can teach yourself things that will help you and you have; college will teach you things, too; but you still have to get the work done, and college won't do that for you. Indeed, if you go to a good graduate school, then the main messages will be (A) learn the basic material for the qualifying exams on your own or nearly so and (B) do some research, mostly on your own. In the end, college or not, you have to do work of your own largely on your own. You got started early; good for you.

Okay..take this test..

You have a set of music files that you want to search on a mobile sd card..

The pseudo code and math to do this is what?

Hint: Most programmers take 7 days to figure this out..

If you can come up with the code and it works, than odds are you only need a 2 year degree..or less..

Note: Question is right from an interview with RealNetworks...the interviewer could not come up with reasons why his assumptions would work(they do not) and thus I declined to interview further..as most texts have the wrong assumptions about this..

that isn't a well defined problem.

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