Hacker News new | ask | show | jobs
by harianus 2526 days ago
It seems like you’re saying it’s nice to know the layers of abstraction but it sounds like you don’t use it in real life.

As a non CS degree developer I can’t really see anything that I’m missing because of not having the degree. I have a successful business, get hired for freelance jobs for a good salary, can build anything I want, ...

Would love to know what one would get out of having the degree versus self study.

4 comments

The original comment is about engineering competence and having the comprehensive understanding of subject, which is not just limited to running business and getting monthly paycheck to pay the bills.

Some benefits that it will give you:

- It will actually let you move into different positions within tech/it industry when you have wider/deeper understanding of how things works.

- As someone said already in this thread: "allows me to make sharper categorizations whether something is mathematical, architectural, security, programming, framework related or a best practice."

- You'll be better at your job. Maybe not every day you need to know what's happening under the hood, but there are and there will be days when you need to. Even if you only developed JS frontend apps whole your career.

When you actually say "I can build anything I want", then (although I don't know you) I'm pretty sure that you can't. People who get that deeper understanding of things also understand how complex some things are and how complex some things can get.

Self-study verses earning a degree is a red herring. While there are some advantages to studying in an institution, the degree is simply there to tell others that you have studied a particular curriculum. My only concern with self-study is that a lot of resources are the educational equivalent of get-rich-quick schemes, but that says more about the people who create those resources than the learners themselves.

As for knowing the theoretical basis of computer science, that will have value in some parts of industry and very little value in other parts of industry. While someone in your position may have a high degree of success working in the upper layers of abstraction, someone has to develop, advance, and maintain the lower levels of abstraction that you depend upon. None of that is meant to say that you need that theoretical knowledge to be successful, rather it is important for some people to have that theoretical knowledge to ensure the success of the industry.

An engineer with a degree and a contractor can both build you a bridge.

The difference is one will remain standing after an earthquake.

Engineers with degrees work for the contractors. They minimize materials and cost. The result doesn't always remain standing, even without an earthquake:

https://en.wikipedia.org/wiki/Florida_International_Universi...

Building good bridges without an engineering degree is easy. You simply don't minimize materials and cost.

If you had a CS degree, you'd know you can't build anything you want cough halting problem cough. I'm surprised this got down voted since it's 100% true.