
Ask HN: I just decided to drop university. What's your advice? - lifechange
Hello HN!<p>Long time lurker, first time posting.<p>So... I failed another exam yesterday. 
I can&#x27;t deal with this anymore.
I&#x27;m dropping university (CS).<p>I can write code and have some small projects in my public
repositories.<p>I am not strong with algorithms and data structure but I 
understand the implications of computational complexity on 
running time and why good algorithms and good data structures 
are important. Put simply, I never needed such tools in my
small projects.<p>So, out of the blue, my plan would be to go 100% on algorithms, 
data structures, databases and portfolio creation. Ideally, I
would start scheduling at least an interview with a &quot;big&quot; company
every month.<p>What are your advices, HN ?<p>THANKS
======
rv77ax
Do not. If you based your decision because you think or heard that some famous
and rich people dropped out from school, you just committed survivorship bias.
[1]

Here is a thing that I learned when I finished college (I have two degrees
which means it has been happened twice in my life):

college is not just about learning, its about finding friends and socializing.
You can learn anything by yourself, anytime, anywhere, but knowing some people
is hard.

You may think that your friend is loser, because they are just playing or
party around. Well, here is the thing: one of your friend will be someone,
either small business men or work in government. This is a long-term
investment. When they success and you have learned more skill in IT, when they
need some custom software or service, they will probably remember you and call
you or vice versa.

Big company can wait later, do you think you are the only programmer out
there? Think again, there is probably more with a degree, experience, and
smarter than you.

So, you failed on exam? Try again and keep having fun with your friend.

So, you don't like socializing? Write something, built something, while you
still have free time in college, learn and create. Later you will get a degree
and product to show. Free time is hard to get when you already in "big"
company.

[1]
[https://en.wikipedia.org/wiki/Survivorship_bias](https://en.wikipedia.org/wiki/Survivorship_bias)

------
EdwardCoffin
I would recommend against dropping. It sounds like you are more interested in
_Software Engineering_ than the more academic _CS_ , so if you could transfer
into such a program, I would do that, if you really think you can't deal with
CS any more.

From your description above, your ambition is to work at a big company, which
pretty much by definition is working on big projects. CS will give you (some
of) the tools, the ones you say you've never needed in your small projects, to
deal with these big projects, and they are the kind of thing that a big
company would find appealing in an applicant. I think you will learn those
things much better in a university setting than on your own, and at the end
you'd have the credibility to back up such learning.

Another note is that communications skills are important for working with
others, as you'd have to do in a big company. I have to mention that in your
post title, you should have written "Please advise me" (an 's', not a 'c'),
and your conclusion should be "What is your advice, HN?"

Finally, I think that you might find the work world to be at least as hard to
deal with as university. Persisting with CS (or an alternative) would be
better than dropping out and taking your chances on a purely self-taught skill
set.

------
sharemywin
I dropped out 2 years to own a bar/pizza shop. I ended up going back because
the "real world sucks" I would get a degree in something. It shows employers
you can go above and beyond and finish something. Is it the only way no but
it's probably the easiest way. You failing your tests because you don't see
the value. If you want to succeed you need to become the type of person that
can go above and beyond. you may need a break to get perspective.

------
skwosh
I think the most important skills you can learn as a programmer are the
_fundamentals_ , including control (continuations, generators, etc), data
patterns/structures (template method, functors, etc), and systems
(distributed, databases, etc). This requires study, and University is a great
place for that, not only for the courseware, but for the available resources
and community as well. Look at it as more of a _vehicle_ for what you _want_
to learn, rather than a series of trials you have to work through.

The fundamentals make it possible to learn new frameworks, libraries, idioms,
etc very quickly. And being able to draw on solutions across computer science
gives you a huge advantage in problem solving for the real world.

But if you just want to be an Angular or React hack you'll definitely have
some success working through tutorials, vlogs, etc. But ultimately I think
your value will be limited (by comparison).

------
gamechangr
It's hard to get an interview with a "big" company without a degree and/or any
professional history as a developer?

Maybe you just didn't provide all the information? Have you been employed full
time as a developer before?

How long and what was your focus?

------
GFK_of_xmaspast
If you couldn't make your way through undergraduate CS exams, why do you think
that you'll be able to sustain 100% effort on anything?

