TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Ask HN: What are CS topics covered in school, that aren't learned in the wild?

11 点作者 __ralston3大约 6 年前
I&#x27;m a self-taught dev with a solid understanding of a broad scope of CS topics. However, I&#x27;ve recently learned that some companies filter during the interview process for CS-grads <i>only</i> by asking topics that specific to CS in school, but aren&#x27;t necessarily learned in the wild. A good thread example is the one from yesterday about DP problems[1].<p>So what are some CS topics&#x2F;concepts that are covered in school, but <i>aren&#x27;t</i> learned necessarily as an Engineer at work.<p>1. https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=19396042

8 条评论

triska大约 6 年前
Logic programming is one such example. Prolog and its syntactic subset Datalog are taught as part of countless CS degrees throughout the entire world.<p>In fact, <i>logic</i> in general is such an example. At least a basic treatment of propositional logic and predicate logic, computation, unification, resolution and sequent calculus is a common ingredient of CS degrees all around the world.<p>Other common examples include probability theory, statistical tests and complexity theory, all of which are part of many CS degrees, both at the undergraduate and graduate level.<p>In all these examples, organizations that need these skills tend to hire people that already have them at least to some degree, making it unlikely to encounter these topics at work for the first time.
hackermailman大约 6 年前
Something that isn&#x27;t easily learned in the wild is precision in communications. For example the few interviews I&#x27;ve had, each time they asked me to implement a solution to some problem, then continue to refine the solution to be more efficient while talking through my solution(s). At any moment when I mentioned some jargon like &#x27;invariant&#x27; or &#x27;accumulator&#x27; they would ask me to precisely define it, something which for me would be difficult to do without some academic background, just because I would be likely to give a weak definition or inaccurate methaphor and be corrected as the interviewers I had all had degrees and it showed, they were very precise with their communications. The more courses I complete, the more I realize how imprecise I (still) communicate. I learned later after being hired what they wanted was somebody who would not bluff their way through meetings, and had the ability to precisely explain solutions or have the ability to admit &#x27;I&#x27;m not sure&#x27; since these outfits handled a lot of money and apparently, there are a lot of bluffers around in that industry that sink companies.<p>&quot;.. and here is a boolean condition that is true immediately before every evaluation of the loop guard, and due to preservation...&quot;<p>&quot;Stop there and define preservation for us&quot;. &quot;Stop there and define what an undecidable problem is&quot;.<p>If you want a crash course in various undergrad theoretical compsci topics to help refine your communications like how to state something is true and then justify it, there is this good YouTube playlist <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;playlist?list=PLm3J0oaFux3aafQm568blS9blxtA_EWQv" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;playlist?list=PLm3J0oaFux3aafQm568bl...</a>
wmf大约 6 年前
Automata and regular languages, invariants and proofs, functional programming, recursion come to mind immediately.<p>(Note that I&#x27;m not interested in bikeshedding about how a small fraction of highly motivated programmers have learned these things outside of formal education.)
评论 #19406858 未加载
externalreality大约 6 年前
Famous quote by Einstein:<p>&quot;Education Is What Remains After You Have Forgotten Everything You Learned In School&quot;<p>I don&#x27;t remember the fine details of anything I&#x27;ve learned in school that I don&#x27;t use on a daily basis yet the confidence of knowing that I studied and passed the exams is invaluable. I can go back and re-learn things if the need arises knowing that an expert once agreed with my understanding. That is invaluable.<p>Basically, if this your attempt to make yourself feel better about not having a degree, why not just go get one - there are affordable schools out there that offer nice programs. You may learn something in the process and meet new people.<p>But, in reality. Do you really NEED a degree to pass a little theory quiz (or for anything else for that matter) -- no you don&#x27;t -- your brain works the same way with or without a degree.
a-saleh大约 6 年前
T.b.h. these two were often dis-joint. Applicable skills learned in the wild and the ones learned in CS classes can have little in common. I would say they are almost orthogonal.<p>But for the most white-board style algorithm questions I have heard about, it would mostly be covered by &quot;Introduction to Algorithms&quot; from MIT press. For overview of chapters you could look on wiki [1]<p>There might be more. But I actually liked that book :-)<p>[1] <a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Introduction_to_Algorithms" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Introduction_to_Algorithms</a>
评论 #19418745 未加载
rajacombinator大约 6 年前
Sorting algorithms. I learned them in my first CS course 20 years ago and never had a need to know them since.
segmondy大约 6 年前
Most of the relevant ones.<p>algorithm &amp; data structures.<p>algorithm analysis<p>OS&#x2F;internals<p>compiler design<p>computer architecture.<p>discrete mathematics.<p>distributed systems.
3into10power5大约 6 年前
Scaling a webservice. Understanding graphs.