TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Ask HN: Is it possible to never take formal CS classes but learn from books?

5 pointsby newsoulover 1 year ago
Is there anyone on HN, who have never learned programming or CS by taking formal classes, but learned everything by reading books on their own and building stuff that they wanted?<p>What was the process like? Maybe they were from different major like engineering, physics, maths, biology, social sciences, humanities?

8 comments

_rmover 1 year ago
You&#x27;re missing the point.<p>CS actually has very limited utility in the software engineering and web development industry at large. It&#x27;s very rare that you&#x27;ll need to work out the time complexity of something or pick exactly the right data structure to use.<p>The value is in the fact that you graduated. That fact means you had the access to resources, the intelligence, the conscientiousness, and the interest in the topic, such that you could stick that out for 4 years without dropping out. That, in the interviewing company&#x27;s mind, makes you &quot;one of us&quot;, and who&#x27;ll continue that grind on the job without giving up, hence the value.<p>The knowledge actually has little value. As a tech lead, I&#x27;m not interested in if you know what a double linked list is. I don&#x27;t use those. I care if people are going to have to routinely rescue you from stuff like an npm package version problem or setting up xdebug or your local dev environment failing. That&#x27;s what actually affects getting things done.<p>But if I see a degree in CS on someone&#x27;s resume, I know what they&#x27;ve successfully been through, proving their nature is a fit.<p>On the other hand, if you show up saying you read CS books, I&#x27;m going to ignore you unless you&#x27;ve got some solid show-and-tell.<p>You be far better of joining the &quot;building in public&quot; indie hacker crowd, because you&#x27;ll have practical skills to show for it.
评论 #37349617 未加载
评论 #37349310 未加载
评论 #37348768 未加载
jantypas2over 1 year ago
Absolutely it is -- your talking to a neuroscientist who did just that, sort of.... But it does help to take the classes. You can learn a lot of music theory in books, but until you <i>play</i> music in practice, you never get close. You can learn neurosurgery theory, but it doesn&#x27;t change the first day when you actually perform it. They&#x27;re quite different! The classes are an accelerator. You can learn it all on your own, but the classes can, in many cases, offer a short-cut to learn things you might not find in the books. For example, you will find many sorting algorithms in books, but will you discover what leftist-trees are? Or needlesort? These are &quot;tools&quot; in the &quot;toolbox&quot;. Don&#x27;t get me wrong, you can do it, but you&#x27;ll be buying a lot of textbooks on your own. Again, notthing wrong with that -- we both know most college classes <i>you</i> do the work and the lectures are there to assit - you can skip the lectures if you desire. So, you can teach yourself -- it just takes longer. A history buff turned system admin once put it to me this way.... &quot;I learned CompSci myself, but added the degree later to be accepted. You can it yourself and become expert in your field in about five to ten years - or take the classes and learn a lot in two. That being said, even an old history major can do it.&quot;
theGeatZhopaover 1 year ago
One would need logical thinking, the ability to read + exercise + memorize and execute the knowledge.<p>If you take CS courses, you learn from &quot;other&quot; in a compressed way and get some nice explanations. Also, the exams you write in courses foster the memorization and execution.<p>So, it&#x27;s perfectly legit to learn from books&#x2F;websites. But you need problem solving abilities, which is you mostly learn while studying - no matter if its CS, physics or any other subject.<p>The only thing you learn is problem solving:)
GianFabienover 1 year ago
YES you can.<p>I&#x27;m an EE who learnt CS from books and by actual programming. It was an iterative process that worked both ways for me. I would write a program to accomplish something specific, have problems and delved into the books to solve that problem and&#x2F;or better understand how to better do it. Then in other cases I would read some material in a book and then program it up and fiddle with it to understand how it works.<p>IMO working through MIT&#x27;s SICP: <a href="https:&#x2F;&#x2F;web.mit.edu&#x2F;6.001&#x2F;6.037&#x2F;sicp.pdf" rel="nofollow noreferrer">https:&#x2F;&#x2F;web.mit.edu&#x2F;6.001&#x2F;6.037&#x2F;sicp.pdf</a> is profoundly valuable. Although there are Python and Javascript versions of that material available, I recommend the 2nd edition&#x27;s Scheme version. Once you grok the essential core principles, you will readily apply your knowledge to any reasonably competent &quot;modern&quot; programming language.<p>The foregoing approach worked well for me. It lead me to complete a ME in CS, work in industry for a couple of decades and then complete a PhD in SE.
brudgersover 1 year ago
It is of course logically possible.<p>That doesn&#x27;t mean it is practically possible for you (this is not a moral judgement).<p>It is a question of your actual motivation. If you are attracted to the work of learning CS from books, that&#x27;s one thing.<p>If being a-person-who-knows-CS-without-formal-training is the important thing, that&#x27;s another thing. It can be hard to recognize that obtaining an identity is the motivating factor in one&#x27;s self.<p>Anyway, if you want to learn CS from books, buy a boxed set of Knuth and get started. He&#x27;s been working on the TAoCP since 1962, so expect a long haul.<p>If you just want to learn CS, going to school is probably a more straight forward way to start. And it&#x27;s not one or the other, you can go to school and learn from books.<p>The advantage of school is it provides a kind of legitimacy that only comes from formal education. Know if what you want is legitimacy.<p>Good luck.<p>---<p>Things I did not say:<p>1. Knuth is easy.<p>2. Knuth is the only or best book.<p>3. Formal education is the only form of legitimacy.<p>4. The legitimacy through formal education is a good thing.<p>Just letting the whole internet to know.
trh0awaymanover 1 year ago
It&#x27;s possible to learn CS on your own, but judging by how many people on HN seem to have a complete misunderstanding of what big O means, I would say it&#x27;s rare.
CraigRoover 1 year ago
Mostly. I studied math, lived with cs majors, read their books, and downloaded the syllabus for a couple universities and did those problems
arrowsmithover 1 year ago
The blogger Scott Adams did something like this, teaching himself (so he claims) the entire MIT compsci syllabus in a year: <a href="https:&#x2F;&#x2F;www.scotthyoung.com&#x2F;blog&#x2F;2012&#x2F;09&#x2F;27&#x2F;mit-challenge-done&#x2F;" rel="nofollow noreferrer">https:&#x2F;&#x2F;www.scotthyoung.com&#x2F;blog&#x2F;2012&#x2F;09&#x2F;27&#x2F;mit-challenge-do...</a>
评论 #37349585 未加载