
Ask HN: To go or not to go college? - hajrice
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.<p>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.<p>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.<p>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.
======
alric
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.

~~~
palish
_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?

~~~
chadgeidel
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.

------
tptacek
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.

~~~
elptacek
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.

~~~
tptacek
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.

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

<http://news.ycombinator.com/item?id=528863>

<http://news.ycombinator.com/item?id=1636275>

<http://news.ycombinator.com/item?id=198732>

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.

~~~
tptacek
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, n __2, and 2 __n, 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.

~~~
elblanco
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.

~~~
tptacek
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.

~~~
elblanco
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.

------
ajdecon
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.

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

------
ecaron
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).

~~~
hajrice
> 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.

~~~
ecaron
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.

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

------
hello_moto
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.

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

------
dmillar
Go.

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.

------
telemachos
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.

~~~
gxti
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.

------
lee
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.

~~~
umtrey
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.

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

~~~
hello_moto
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.

------
vaksel
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.

------
BTBurke
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.

~~~
ams6110
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"

------
innovate
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.

------
bendmorris
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.

------
lmkg
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.

~~~
alexgartrell

      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. 
    

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.

------
shazow
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.

------
wglb
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.

------
VladRussian
> 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).

------
djb_hackernews
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?

------
metamemetics
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.

~~~
jiganti
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.

------
j_baker
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.

------
schleyfox
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.

------
jsterce
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.

------
smokestack
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.

------
sabj
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.

------
paolomaffei
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.

------
Mz
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.

------
vital101
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.

------
ErrantX
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.

------
GVRV
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.

------
ams6110
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.

------
x0t
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.

------
tlrobinson
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.

------
gorm
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.

------
hartard
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.

------
runT1ME
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.

------
bugsy
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.

------
minsight
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.

------
CGamesPlay
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.

------
presidentender
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.

------
alttab
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.

------
sahillavingia
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.

Go.

------
bchris4
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? ;)

------
okaramian
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.

------
davidw
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.

------
plainOldText
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.

------
Luff
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.

------
theprodigy
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.

------
itblarg
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.

------
themullet
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.

------
scottmagdalein
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.

------
rue
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.

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

------
astrofinch
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.

Cons:

* 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.

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

------
accessarpit
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!

------
robwgibbons
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.

------
clistctrl
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.

------
itistoday
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.

------
HilbertSpace
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.

===People===

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.

===Science===

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.

===Business===

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

===Mathematics===

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.

===English===

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:

People

Science

Business

Mathematics

English

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.

------
shareme
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..

~~~
jshen
that isn't a well defined problem.

