
Ask HN: Should I go to college? - robotkilla
I&#x27;m in my mid 30s. I&#x27;ve been working professionally as a web developer for the last 13~ years, 4~ of which have been fully remote as a contractor. I can program in multiple languages (including Javascript, Python, PHP... and i&#x27;m currently teaching myself c# and cg as video game dev is a hobby of mine).<p>Prior to becoming a contractor I had around 10 years of solid on the job work experience.<p>My goal for the immediate future is to continue working as a contractor and self educating, however I&#x27;m 34 years old and I want to make sure that I&#x27;m making the right moves for the future.<p>I went to college (for design) back when I was 19 - 21 and dropped out with one credit left and started working for a small web development shop (I had been programming on and off since I was 9 years old).
I&#x27;ve never had a computer science course. Everything I know has been completely self taught or picked up from coworkers on the job.<p>I have been told by my grandfather that I should attend college for computer science, but I feel like this might slow me down.
I&#x27;m hoping I can get some good feedback here. Is college a good idea for someone in my position?
What benefits or drawbacks will it bring?<p>A bit more background:<p>* I have never been to school (100% homeschooled until my brief college years).<p>* I do have some gaps in my knowledge however I typically find myself surpassing others in certain areas (in other words, I feel the lack of college from time to time, but for the most part I have kept up or even passed other people).<p>* I want to make independent video games for a living (I have been teaching myself C#, CG, Unity, Pygame, 3d techniques, pixel art, and brushing up on my math for the last 2 years) - would going to college slow me down on my endeavours at this point or would it equip me with the skills I need to actually finish a game?
======
lsiunsuex
You sound exactly like me - same age, same skill set, same people telling you
to goto college.

I prefer a full time steady job (and have one) but if your happy with contract
work - great!

Every programmer needs to continue to expand they're knowledge - it's a
constant learning process. For the longest time I relied soly on systems
administration and PHP - I've expanded into Objective C and AngularJS most
recently - trying to teach myself React now as JS frameworks seam to be the
"wave of the future"

An example I always give and especially remind my godson who's 16:

My wife is a very bright person - went to a private school for high school,
full ride. She then went to a great college, full ride also graduated with a
3.9 and magna cum laude in Phycology. Wanna know the job she held after she
graduated from college and for 9 years after that? Secretary.

That's not to put my wife down; it's to explain that regardless of your
education, it's all about your drive and motivation. Some people goto college
and don't do much with it. Some of us didn't goto college; work our asses off
and succeed anyways (I make more then both my brother and sister who both went
to college and got they're MBA's)

Work hard; focus on your goal and don't worry about the degree.

(my wife is now back in school for dental hygiene - still with a 3.9 gpa)

~~~
robotkilla
Thanks for the feedback. I didn't want to sway the question with too many of
my own opinions but I have been feeling the same way.

The biggest hurdle I've faced is that of proving my worth to others. Have you
faced similar issues?

~~~
lsiunsuex
Fortunately it hasn't been a problem in the last couple years, but I can
absolutely remember a time when I had to "prove" myself.

A great resume is key as well as a portfolio site. I always bring my laptop to
an interview incase they want to see code; I always make sure I have examples
on my portfolio site that are up to date and have to do with the job I'm
applying for, etc...

What was funny - my 2nd last job - they need a Wordpress developer and
although I'm damn good with PHP, I hated Wordpress - so the weekend of the
interview (interview was on monday) I spent about a day reading the WP docs
and built a website on my portfolio site with a custom theme, custom plugin,
made it responsive, etc... (stuff they would expect) - showed it to them
during the interview and got the job (I like to think it helped) - it didn't
come out until months later that I learned WP in a weekend (roughly) and
everyone was pretty impressed.

My current job - they were looking for a very specific skill set (Rackspace
Cloud administration) and actually were more impressed with one of my side
projects then any job I held. So you never know what someone is looking for -
could be professional experience, could be a side project.

~~~
robotkilla
Things seem to have shifted on my end as of late. People are very skeptical
when if I'm interviewing for a job, more than in the past (I tried recently a
few times when work dried up bombed on the interview processes a few times...
i have comments about it in my history).

I need to get my resume cleaned up and put together a new portfolio site.

I'm starting to become disinterested in full time gainful enslavement. Three
reasons I keep contracting:

1\. freedom (i make my own hours and jump between contracts every 3 months or
so, taking a short break between... usually around a week). When I do work, I
only take on fully remote contracts.

2\. my "interviews" consist of asking how much I charge, asking what my
availability is, asking a few simple tech questions, and then having me sign a
contract. That's because I get my work through recommendations from other
people so I no longer have a need to prove myself on this front.

3\. i make more money than when i was employed.

------
Nelyah
I will take the point of view of someone who went to college. Actually I just
graduated from my 5th year(I think it's master degree) and going to PhD in
computer science. To understand what I want to explain, you need to know that
I began college with 3 years of biology, and then switch to computer science.
It is only in my 3rd year that I realised how much I loved computer science. I
worked my ass off to get directly from 3rd year of biology to 4th year of
computer science, so I basically learnt everything by myself too. In the end,
I felt that every "practical" classes were pointless. I don't need someone to
learn a new language, and it seems you don't either. But it is when I tried
some theoretical courses that I realized how much I had to learn in this
domain.

I never learnt anything about advanced algorithmic, or graph theory before, or
language semantics. But in the end, by knowing all that I really look at a
problem with a different point of view than before. I am able to imagine some
new tricky algorithm etc.

All of that to say : It depends on what you seek going to college. You will be
bored if it's just learning some new language, because you either know them
already, or you will go faster than the course. But if you want to learn some
more theoretical knowledge, you will learn some new stuff for sure. Then
again, I don't know where you live, and college might be quite expensive in
some country, so I can't tell if it's really worth the money (since you
already have some years as a developper). But it is totally worth the time
imo.

~~~
robotkilla
Thank you very much for this feedback.

> . But it is when I tried some theoretical courses that I realized how much I
> had to learn in this domain.

> I never learnt anything about advanced algorithmic, or graph theory before,
> or language semantics. But in the end, by knowing all that I really look at
> a problem with a different point of view than before. I am able to imagine
> some new tricky algorithm etc.

This is exactly what I have found myself going through since making an attempt
to switch to 3d video game development. Specifically with the game I'm
currently building and some other things I've wanted to get involved with
(I've taken an interest in AI lately... like everyone else). I can see how
having more math in my past would help greatly.

That said I've been studying algorithms and supplementing my math with books
from the library. I also have a list of bookmarks to various CS courses. I
just need to block out time and watch them.

------
jklein11
It sounds like you are perfectly capable of learning technologies on your own,
and that your primary concern is having a degree as opposed to an education.

Have you considered going for a bachelors in a non-technical field like
economics, or business administration, or engineering management?

Any bachelors degree and your work experience would probably be enough to get
your foot in the door of any company if you wanted to step away from
contracting and go for a corporate job.

------
dudul
I have a masters degree and have been a developer for more than 10 years now.
I really don't see what a successful professionals with 13 years of experience
could learn in college.

It s unclear from your post why you even feel the need to go back. Have you
been denied position because you didn't have a degree? Is it because you want
to learn more?

~~~
robotkilla
It isn't that I do want to go back, its that I'm trying to determine if the
advice of my grandfather (and a few other people) is something I should
follow.

I don't really see what I will gain from it either, but like I said I've never
had a computer science course so I'm not sure if I'm missing out.

------
brudgers
There is no right answer. A college degree, in CS or anything else basically
can provide three things: the college experience, vocational skills, social
validation, and personal enrichment.[1]

Anyway, how these suss out for a particular individual at a particular point
in their life varies. In the question, social validation and vocational skills
are explicit. Personal enrichment feels implicit in the overall structure, by
which I mean that there's a bit of "I wonder what I might learn if I took this
risk" lurking breath the surface. If there weren't there would be little
reason for a long question.

Your grandfather said what he said to give you permission to do something that
is locally suboptimal and entails social risk. That's about as good as a
grandfather can grandfather. Maybe you can talk some more with him. Probably
worth doing regardless.

Good luck.

[1]: a college degree can provide FOUR things...

------
a3n
Personal prejudice: I'd be very reluctant to give up earnings while in
college, particularly as you're already very viable.

In tech, college is _mostly_ a learning experience and certificate program for
entry level workers. You're not entry level.

------
ericdouglas
I did 3.5 years of Mechanical Engineering, but I realized that what I really
love is programming...

So I changed to a CS course, but I did just 1 semester and dropped out... The
educational model nowadays have countless problems.

For that reason, I created this list, for those (like me) that want to have
the knowledge offered in a CS course, but without spending too much
time/money.

[https://github.com/ericdouglas/computer-science-and-
engineer...](https://github.com/ericdouglas/computer-science-and-engineering)

------
gesman
Just to share: In my 20+ yr career no employer actually asked for any proof of
degree. Whatever I have written on my resume was fine with 100% of employers.

They (rightfully so) care about my ability to deliver stuff vs. stuff printed
on some paper.

Exclusions from this rule:

\- Really large enterprises usually hire some sort of background verification
services that would annoy you to no end to provide all kinds of proofs.

\- US Immigration (to get TN or other working visa) does ask for proofs of
your degrees.

------
saluki
I think it's good advice to get a degree in general. I would think about
testing out taking a CS course and see if you enjoy it and is something you
like. You'll never regret having a degree. That said at this point in your
career I'm not sure how many more doors it will open for you and you'll have
to weigh the time spent vs knowledge gained. Another option is maybe a BS in
Science in something other than CS that you could do online that would take
less time/focus, but CS would probably be the best fit for your skill set and
future employment.

Grandparents are great and have lots of knowledge. The employment landscape
has changed though, previously a degree was a ticket to a secure corporate gig
till retirement. Now you have companies laying off employees in their 40s to
hire lower cost employees, benefits are being reduced, etc. So I don't see a
corporate gig as more secure than contracting or freelancing. Another option
is to focus on leveling up to increase your salary/savings. Your grandfather
would probably feel a lot better if he knows you have the skills to obtain
contract employment easily and are making $50+/hr as a contractor. So maybe
share how much you're making and that you have multiple offers when you are
ready for a new contract position.

I would recommend leveling up to increase your earning power vs. a CS degree,
unless it's something you would enjoy/want to have personally.

I don't think you'll learn video game development at university. That's
something you would learn on your own making games.

Check out the startups for the rest of us podcast. It has good information on
planning for your own products/businesses while working your day/contractor
job . . . most of this will apply to making the leap to independent video game
developer.

I would say open your options up . . . success in independent video games
(Notch/Minecraft) is a bit like a lottery ticket. So this might be something
you strive for but realize it might turn in to a nice hobby or niche with a
small following with a chance of a billion dollar payoff or maybe a fulltime
income or maybe just something you do for fun/side income.

You probably don't want to do contract work forever. So plan to launch your
own products, maybe a SaaS app, some type of recurring revenue so you don't
have to chase contracts/projects full time. This could also help give you more
time to learn/run your independent video game development studio.

Check out everything by patio11 (lots of great articles/advice),
[http://startupsfortherestofus.com](http://startupsfortherestofus.com) podcast
(and previous microconf videos) and Amy Hoy's stacking the bricks video.

Good luck with the direction you go.

Good luck sounds like you're on the right track.

~~~
robotkilla
These comments are a big relief.

All except these:

> laying off employees in their 40s

> hire lower cost

which raises the question: what should a 34 year old developer be planning to
do by time he is in his 40s? I'm realizing now that this might be the crux of
my situation.

~~~
saluki
I wouldn't worry too much . . . just keep it in mind . . . the future is
filled with all sorts of unknowns . . . not 100% of developers will get laid
off/replaced by cheaper labor but it's a possibility (Disney, CA Power
company, in the news recently).

I'd recommend exploring having your own product/app/business if that interests
you vs. depending on a company long term.

But lots of changes are going to come about in the next 10 to 15 year.
Automation . . . interstate trucking, uber cars, garbage trucks, restaurants,
this will eliminate a lot of jobs and businesses that provide services (truck
stops, etc). So being a developer your job is more secure than a lot of
careers that are going to be going through major changes.

Don't fear, worry about change, just be prepared/ready.

If you're talented I expect you can be a contract developer for as long as you
want. But explore other options/opportunities.

------
tpeaton
I'm a relatively new developer at 33, with about 2 years of experience now. I
was in a different industry for 12 years, but always wanted to be a dev. I
dropped out of CS about 13 years ago after I chose a bad (for profit) school
that I didn't enjoy. I enrolled in a local state school a couple months before
getting the job I have now. I'm half way through my degree, working full time
and going to school about half time (6-9 credits per semester). I don't know
if I would reccomend it or not. I only went back because I needed to take
concrete steps to get myself on the career path I wanted. Now that I'm in it,
it's a bit of a struggle to stay motivated for school.

Pros:

-I'll have a degree at some point and will no longer have to have awkward conversations about why I don't have a degree. This is probably the #1 reason I'm doing it.

-It removes a way for employers to filter me without seriously considering me as a candidate.

-I'll be proud of my accomplishment at some point and won't feel bad every time I think about my relationship with college.

Cons:

-Money. At a local state school, nothing crazy, I'll be about $35k in debt by the end of it with plenty of up front costs (books, etc).

-Time. It eats an incredible amount of time. Some classes require an hour or so of study time outside of class, but many require a ton. Depending on how polished your math skills are, you'll have a huge wall to climb here. I hadn't been in a math class in 13 years and then get tossed into calculus. Yowch. In addition to 5 or so hours of class time, I probably put in 10 hours a week of studying/homework just for that one course.

-Scheduling. Your scheduling needs might be different, but I work a pretty standard workday of 9-5. The university's latest CS courses start at 5:30 two days a week, which means if I am taking two CS courses simultaneously, I'm in class four nights a week. That means studying has to happen on virtually every off night. It also makes it very tough to take more than 2 classes at a time. Keeping a decent pace is key to actually finishing in a reasonable time. It'll probably take me 5 years total to get through it all.

-Content. The actual courses will drive you crazy. Professor's requirements are usually a clinic in what not to do in the real world. Your good habits will be punished in many circumstances. About half way through, I can't say I've learned anything invaluable that I couldn't have learned better on my own if I were sufficiently motivated. I'm hoping the upper class courses are more interesting, but so far it's been a bust.

-Bandwidth. You only have so many hours in a day. You'll be spending your time on things you have to learn instead of the things you WANT to learn. I'd love to spend my evenings getting more proficient with modern tech, but instead I find myself reading about anthropology or the like. My university is very Java/C/C++ heavy, which is not what I prefer. I'm happy to learn these things, but I don't see myself ever being a happy Java dev professionally.

So there are a lot more cons than there are pros for me, but I think the pros
are still worth it. I'll let you know in a couple years. If you're looking to
be indy dev, I doubt a college degree will help you get where you want to go.
I'd spend that time and effort on a project of your own. By the end of it,
you'll have demonstrable skills and a product you can show off.

