
Ask HN: If I've already taught myself to code, should I still get my CS degree? - MathCodeLove
I&#x27;m roughly 2 years into my CS degree, which basically means I&#x27;ve just completely all of the mandatory prerequisite courses. At this point, I can write software in multiple languages, across multiple platforms. I&#x27;ve taught myself everything I&#x27;ve needed to know about Software Engineering, and if it didn&#x27;t feel so mandatory to get a job then I would drop out of school right now.<p>Fortunately, I do have a full scholarship, so I&#x27;m not going in debt. But I still dont know if this is even worth 2 more years of my time.
======
nieksand
In the coming months, you are likely to face the ugliest labor market in
living memory. A lack of degree and real world experience means you're looking
at even more difficulties.

Given that you have a scholarship, you'd be unwise not to snag the credential.

Also, it does not need to be a waste of time. Don't do the bare minimums. Push
yourself. Take the hardest relevant classes you can find. Dig deep into any
topics that interest you.

Finally, focus very hard on getting internships. In a grim market, you will be
needing both the resume entries and the job leads that those can provide.

~~~
valuearb
You don’t need a CS degree to become a professional developer.

~~~
nieksand
Correct, and I never claimed otherwise.

Whether you have a credential becomes less important the more experience you
have. There will always be silly companies that do a hard-filter on degree,
but you can have a perfectly happy and successful career without them.

But winter has come.

Available positions will become way more competitive, with more people chasing
after few opportunities. It may be unfair, but the combination of no degree
and no experience will be a large handicap.

------
chrisbennet
" _I 've taught myself everything I've needed to know about Software
Engineering_"

I respectfully suggest that you haven't (taught yourself everything you need
to know). Not a criticism, we all thought we knew everything at that age, LOL.

Besides the credential, the value of college is that you "forces you to eat
your vegetables". By that I mean you will learn about things that you aren't
really interested in (at the time at least) or aren't as interesting as
something else, but will be valuable later.

BTW: In case you also know everything you need to know about women, you can
email me your wisdom. At 58, I still haven't figured them out. :-)

~~~
chwind
Nothing in the above specifically indicates that the writer is a man.

~~~
Tagbert
Nor does it specifically indicate heterosexual :)

... but the tone is a better match for a young straight man.

~~~
chwind
A gay guy can still "know about women" (a phrase which to me is a dog whistle
anyway). And the assumption based on tone is what I was trying to point out.

------
codingdave
Being able to code is a bit of a funny goal, because it doesn't actually make
you good at either software development, or academic CS. While coding is
certainly required to be a professional software dev, it is just one aspect of
a far more complex industry. Likewise, it is just one aspect of academic CS.

So the answer of whether you should continue is completely dependent on your
goals. You certainly could step out into industry, learn the rest, and be
successful. Or stick with school, and in 2 years have a wider selection of
options of where you can take your life.

During the last recession (2008), most devs I knew found a place they were
happy staying in for a few years and rode it out. If it were me, I'd ride out
your CS degree, and in 2 years when business starts to return to normal, you
have an array of choices in front of you. Frankly, that is always the advice I
give my own kids - if you are unsure what path to take, take the one that does
not limit your options.

------
phan
I think you should finish the degree. For two reasons you have a scholarship /
can do it without taking on debt and with recent events the job market will be
tough for everyone.

I have a bachelors in a non-STEM field, and am self-taught (been working for
~5 yrs now, a few years as an IC and then now been an engineering manager for
almost 2 years). I manage people who have bachelors/masters in computer
science, and having the degree both grants you more job security and leeway in
negotiating better compensation (I've seen qualified people without a degree
get passed up/not been compensated as fairly for their skills). My company has
a 'education benefit' so I've been looking to go back into school to get my
masters in software engineering - maybe this is the year. But in my
opinion/perspective, the degree opens up so many more degrees compared to if
you didn't have it.

------
gshdg
A major global recession is the time when the opportunity cost of schooling is
lowest.

Plus a with a lot of more experienced engineers suddenly out of work and on
the job market, it’s going to be extremely difficult to find work at entry
level just now. Not having a degree will only exacerbate that.

That said, in the long run getting the Bachelors will be more important than
getting the CS degree specifically. If you want to get a CS minor while
majoring in something else, it may be worth considering.

------
thedevindevops
If you really believe theres nothing more to be learned in those two years
left then absolutely drop out but remember that everyone who didn't will have
those extra two years and the qualification that proves they actually know
what they're talking about. And you'll probably be working with those people.

------
pharaohgeek
Yes. Absolutely. While you may very well have long-term success without a
degree, in a lot of industries a lack of a degree limits your upward mobility.
I work with some very talented and experienced individuals who are self-
taught. They are paid very well and are well-respected. However, they've also
reached the upper bounds of their career. I also work with people who may be
slightly less knowledgeable about the specifics when compared to those self-
taught individuals, but they are the ones who get promoted and have no limit
to their career potential. Why? They have a college degree, often a Master's.
It has very little to do with coding experience. In most cases it has to do
with everything ELSE that you learn in college. Problem solving in areas you
may not be familiar with; "learning how to learn"; understanding different
viewpoints or unrelated subject matter. College helps you to become a more
well-rounded individual and, more importantly, a better LEARNER. All the
people I hear saying that college is a waste of money and useless are missing
the point and are limiting themselves.

------
7532yahoogmail
Yes you should. I learned development on my own and, yes, I landed lots of
jobs. However there are barriers:

\- without a cs degree several avenues of kernel development

\- ditto distributed systems

\- anything with a strong quantitative basis

\- formal tools/tooling

\- specialty data structures and algorithms

Will be beyond reach. You simply won't be able to cope. I went on to get a
mathematics degree and that saved my bacon when older and had needs beyond a
paying gig (read family and house).

Do not under estimate the need to write clearly. On above topics bubbles and
arrows don't cut it. You need to write papers, and/or formally model if you
want to communicate and prove non trivial results.

Learning languages is one thing. Having a deep understanding of the libraries
that come with the language (simple example: STL) is also quite important.

Finally given a choice between a guy with a degree and a guy without ... The
guy with shows he/she can finish something of difficulty in four years. This
is not to say MIT grads are always better. But a degree is better than none.

------
codycraven
Definitely stick out the degree. I was once in a similar situation.

By the time I started college I had already been programming for 6 years. I
was self-taught and worked full-time (60+ hrs) as a programmer while pursuing
my degree (accounting information systems because I wanted to understand the
underbelly of business and I was arrogant enough to think CS wouldn't teach me
anything).

While everywhere I've worked, I've been promoted and identified as a high
performer, I still lack many CS aspects I wish I had gotten with a CS degree.
I've even thought heavily about going back for a MS in CS, but the opportunity
cost is very high for me at this point.

Based on my experiences (both good and bad) the one thing I would have changed
would be to go back, set my ego aside and try to learn everything I could in
the CS degree. Knowing it's not about the coding, but rather the deep and wide
CS concepts I was to learn.

------
austincheney
As a web developer I have rarely, almost never, been impressed with the
technical capabilities of developers who rely on their CS education more than
independent experience outside of work. I have known many developers with a CS
education from a good school who are duds and several excellent developers
without any college.

My recommendation is to stay the course if you plan on achieving a master’s
education in computer science otherwise you are just wasting your time and
money. While that one line on your resume is helpful it would be better spent
on a different major.

Edit: I read that you have a full scholarship. Stay course anyways because you
don’t have the financial burden of tuition. But understand a good CS education
is not enough to make you a good developer. Good developers produce good
software.

------
erjiang
I went into college able to write software in multiple languages across
multiple platforms. I also skipped a bunch of prereqs and got the other
mandatory courses out of the way quickly.

But I learned a ton in my 4 years of CS classes, and would have kept learning
a lot if I stayed for a couple extra years, I'm sure. I'll tell you that it
was eye-opening to go from setting the curve in a mandatory class to
struggling to keep up in a topics class.

It depends on what your school offers, but if you can cherry-pick quality
classes for the remaining two years, I'd say it's worth it unless a time-
sensitive career opportunity comes along (e.g. founding a company). Or do a
second degree with your free time if you're not that interested in CS.

------
rasengan
Coding and the concepts taught in a CS course aren’t necessarily the same. I
think you should choose education if you have a wish to learn what CS courses
teach including but not limited to:

\- Algorithm optimization

\- Logic Gates

\- Cryptography

\- Compilers

\- Assembly

Further studies are available to those who exist in school programs if you
wish to get a higher level degree and do the research associated with it.

That said, I don’t think you necessarily need this to code.

Lastly, if it’s about a job, a degree will most certainly help you get thru a
blind first filter. However, it is definitely possible to show your work and
experience without as well thru open source contributions and the like — so
this really is a choice you’ll have to make.

If it was me with these options, I would go to school for free with the
scholarship and work on open source projects simultaneously.

------
rst_noimage
I have CS degree and what i feel is if you already taught yourself code, you
passed step 1, but I think to go to next level please focus on more Algorithm
Analysis part first example Coursera ->
[https://www.coursera.org/specializations/algorithms](https://www.coursera.org/specializations/algorithms).
It will take a while if you have full-time job but consistency is what it
matters. Once you comfortable with those concept then move to more advance
distributed system areas.

------
tyteen4a03
From a practical standpoint, having a degree will make moving abroad easier.
For example, the EU Blue Card scheme in Germany (which I'm on) requires a
degree related to my job. I'm sure other countries have simar rules as well
since most immigration laws are still operating under this "degree = well-
educated professional" mentality.

Also there's never an end to learrning in practically any subject, and that is
especially true in the world of CS.

------
derrick_jensen
I'd opt for a Math or Physics minor. The more you can intersect with different
fields, the more you stand out in applications. Wheel and deal some projects
on the side if that isn't your jam.

Also in general, college is about growth and experimentation. Having a degree
is definitely useful, but not enjoying getting a degree sounds like an awful
waste of time.

------
mstaoru
2 years is not that much. I'd say do it. I don't have a degree and it never
bothered me in any way until I wanted to have a (self-sponsored) working visa
in another country. Lack of degree meant I'd have to pay roughly 10x the taxes
to qualify.

------
samfisher83
As others have said probably not the best time to be looking for a job. If you
get one at a stable company go for it.

------
rad_gruchalski
> But I still dont know if this is even worth 2 more years of my time.

Yes! 20 years from now, without education, you will hit a glass ceiling. Do
it, finish it. It might seem today as a waste of time but that title after
finishing the degree will go a long way later in your life.

------
a-saleh
a) double-check if there is something that would require you having a degree.
I.e. you probably don't want to pursue PHD, but visa-requrements have degree

b) doublecheck if you want to pursue something that requires to be student,
i.e. internship, scholarship, e.t.c. I started working for a company as an
intern during my studies and after a while it was reasonably easy to upgrade
to part-time employment and later on full-time employment.

c) I don't know what are your costs. I am from europe, so I studied for free.
If you are taking on more and more debt, your cost-benefit analisys might be
different.

------
ksherlock
2 years, eh? There's a common misconception that "sophomore" is greek for
"wise fool". Consider that.

------
jacob_rezi
Hey I have to make a recommendation for this -
[https://www.rezi.io/covid-19-job-relief/](https://www.rezi.io/covid-19-job-
relief/)

We are opening our software for all affected job seekers. If you have any
questions about your resume, just let me know

------
jstewartmobile
Get a degree in a real subject like math, physics, chemistry... The prereqs
are probably the same.

