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.

Computer science as a lost art (2015)

247 pointsby jxubalmost 7 years ago

29 comments

wrsalmost 7 years ago
Well stated.<p>I recently went through (the recordings of) MIT’s intro course for electrical engineers, in which somewhere the professor says students may wonder why they have to do all this calculus and learn FET models and so on — in real life don’t you just wire chips together? And he points out that MIT degrees are for the people who <i>make</i> the chips.
评论 #17649947 未加载
评论 #17649903 未加载
评论 #17649962 未加载
learc83almost 7 years ago
I&#x27;ve worked for years as a self-taught developer before going back to get my CS degree, I&#x27;ve taught at a bootcamp, and I&#x27;ve hired bootcamp graduates.<p>Bootcamps can be valuable, but they are in no way comparable to a 4 year degree from a decent CS program. The top performing bootcamps are either functioning as an extended job interview that you have to pay for, or they are very good at selecting experienced students who only need a 12 week course to be ready to be productive developers. In my opinion, the reason we&#x27;ve seen bootcamps close or fail to expand is that there is a limited supply of these types of students.<p>For the vast majority of people a 12 week course, no matter how intensive, is a good introduction, but a lot of training is still necessary to be useful. If you are prepared to invest in that training, they can be great hires. However, you need to be aware that it&#x27;s likely going to be months before you get real productive work without hand-holding. It takes most people a lot longer than 12 weeks to be comfortable with the basics of moving up and down through levels of abstraction.
评论 #17650078 未加载
评论 #17650091 未加载
lostcolonyalmost 7 years ago
I was involved in the hiring and filling of &gt; 50 developer positions at a company, while being a tech lead.<p>We tried hiring a few people with just bootcamps. Only a few (so hardly a representative sample), but none of them worked out. As soon as they had to try something even the slightest bit different than what they&#x27;d done in the bootcamp they were lost. There were people with degrees in unrelated fields who then did a bootcamp who were good, and almost all of the CS&#x2F;CE&#x2F;EE people we hired were good.<p>I&#x27;m not saying this is always the case, but the two years of CS fundamentals seem to be valuable, AND the two years of unrelated core classes seem to be valuable. It might just be how it forces you to engage with and learn things you don&#x27;t care about (because there will be times in any job you have to do that), or the people skills of having to learn to deal with professors and other students, or the pattern of constant learning and adapting it ingrains upon you, or something else entirely, but per the link, I don&#x27;t think a bootcamp should ever be viewed as sufficient preparation for a career in development. It&#x27;s fine in tandem with other things, but it&#x27;s extremely limiting on its own.
评论 #17654425 未加载
评论 #17659457 未加载
评论 #17656783 未加载
amorphousalmost 7 years ago
What I miss in those kinds of discussions are the intangible benefits of having studied a subject in depth to acquire a degree. The person that entered university is different from the one that came out of it. The way to tackle problems, to think scientifically, the ability to see the broader picture are some of the advantages of good education that are easy to dismiss since they are not immediately visible.<p>There has been a similar thread on HN where someone with a bunch of degrees said: &quot;I haven&#x27;t used anything from my studies in my work&quot;. But this person might be blind to the fact how the education shaped her mind. Understanding goes beyond mere knowledge.
评论 #17651878 未加载
评论 #17651864 未加载
评论 #17652082 未加载
yontherubiconalmost 7 years ago
So, for the dogshed builders among us, what might be the recommended pathway to learn some architecture--beyond the obvious academic options?<p>I&#x27;m sure this has been covered to death on HN already, but if anyone has a link bookmarked and feels like sharing?
评论 #17649845 未加载
评论 #17650145 未加载
评论 #17649856 未加载
评论 #17649879 未加载
评论 #17649970 未加载
评论 #17653608 未加载
评论 #17649974 未加载
stcredzeroalmost 7 years ago
<i>It means that a person can get the little things done while knowing very little. But it also means that this person probably will never learn enough to get the big things done.</i><p><i>To be honest, I get secretly frustrated with the lower-level people who now exist in giant hordes. (I rarely tell anyone that.) To me, they are like people who have decided to learn 5% of their field in order to get a few things done, have some fun, and make a living.</i><p><i>These people use tools to create little applications for everyday use. But remember: The tools themselves are also software. But they are a level of software far beyond anything these people could dream of creating. They use languages, editors, compilers, and operating systems; but they don&#x27;t have the first clue about how to create any of these things or even how they really work.</i><p>The most disturbing thing to me, based on interviews I&#x27;ve conducted, is that this seems to include some large fraction of people graduating with a Computer Science degree from supposedly top tier schools with high GPAs that supposedly mean something.<p><i>If you want to make really interesting exciting things that have never existed before, if you want to make a tiny little difference in the industry and change the world just a little bit, then you do need that degree. If you want to make the tools and libraries that the lower-level people use, you do need that degree.</i><p>The tools and libraries aren&#x27;t sentient AI yet. If you want to use the tools and libraries at a high level, then you really need to have some knowledge about how they work. The disturbing thing I might be seeing, is that something like 40% of graduates from even good schools have that Computer Science degree, yet really only have that 5% knowledge, yet have been led to think that they know more.
评论 #17651677 未加载
评论 #17651980 未加载
评论 #17650287 未加载
fru311almost 7 years ago
I would suggest that if someone isn&#x27;t interested in technical fundamentals, they should consider a degree in human computer interaction and design. The things you can create with shallow technical knowledge continue to become more commoditized, but understanding problems that people have and designing a solution that makes them happy is a good way to create value.
ereyes01almost 7 years ago
We&#x27;ve reached an era where the average worker&#x27;s serviceable time long outlives the competitive edge they&#x27;ve gained from their education&#x2F;training in their formative years. The accelerating pace of economic and technological change is faster than ever, and this condition is unprecedented in human history.<p>I&#x27;ve become more and more convinced that this is the defining problem of our times- we&#x27;re becoming victims of our own success. The author of this post feels like a dinosaur, and I would bet that many young people in our field who give in to their natural instincts and specialize in something will emerge on the other end feeling the same, at a much younger age than the author, and maybe unable to find equal or better work than before.<p>In other professions, the difference is more stark, and I think this is a major catalyst for the political&#x2F;populist zeitgeist of the day. Entire industries have disappeared in a historical blink of an eye, and their former struggling workers are up in arms fighting powerful forces of nature trying to turn back the clock and stay relevant &#x2F; valuable.<p>Bringing this back to CS, it&#x27;s interesting to use this lens to determine whether the degree is worth pursuing anymore. On the one hand, it&#x27;s fundamental and it encompasses the building blocks of how computers work and what they can do. On the other hand, programming techniques haven&#x27;t changed very much and are quickly becoming commoditized and more accessible. As the author notes, it&#x27;s true that you don&#x27;t need to know as much as you used to, to build a useful program anymore. Like it or not, that&#x27;s a fact, and economic forces are exploiting this more and more.<p>I think our human-being wiring is optimized to learn when young, and then &quot;grow up&quot; and become efficient at repeatedly applying our skills to obtain the expected outcome. Increasingly, I feel like the winning (or at least a better) strategy is to stay &quot;young&quot; as much as possible, since the chance you will need to reinvent yourself seems to only rise. This sounds great when you&#x27;re <i>actually</i> young, but as time passes you get worse and worse at it, despite needing to remain &quot;young&quot; and malleable, and despite the mounting competition from actual young people.<p>So given all this, saying people &quot;need&quot; a CS degree seems like punching and kicking at giant waves you&#x27;ll never beat. And I say this as someone who deeply loves both CS and academia. Stay &quot;young&quot; as best you can and try to keep riding the next wave you can find.
评论 #17651033 未加载
评论 #17652442 未加载
spraakalmost 7 years ago
&gt; If you want to make really interesting exciting things that have never existed before, if you want to make a tiny little difference in the industry and change the world just a little bit, then you do need that degree. If you want to make the tools and libraries that the lower-level people use, you do need that degree.<p>I wonder if the author considers Node.js to be really interesting and exciting and never existed before. Ryan Dahl doesn&#x27;t have a CS degree (but does have a mathematics degree).<p>Another (pretty cliché) example: Bill Gates never finished his degree and went on to create many great, exciting and interesting things.
评论 #17650437 未加载
评论 #17651385 未加载
评论 #17651025 未加载
User23almost 7 years ago
Germane meditations from the pioneer of kvetching about the standard substandard approach to programming: <a href="https:&#x2F;&#x2F;www.cs.utexas.edu&#x2F;~EWD&#x2F;transcriptions&#x2F;EWD10xx&#x2F;EWD1036.html" rel="nofollow">https:&#x2F;&#x2F;www.cs.utexas.edu&#x2F;~EWD&#x2F;transcriptions&#x2F;EWD10xx&#x2F;EWD103...</a>
white-flamealmost 7 years ago
Bootcamp vs CS degree really has to do with what sort of work you want to do, which is a missing variable in this article.<p>There&#x27;s plenty of programming work out there that doesn&#x27;t require any deep understanding of CS. You&#x27;re not going to be creating algorithms when using existing frameworks to write yet another web thing, phone app, or internal businessy database-based system.<p>A bootcamp can get you started doing practical things. Yes, you won&#x27;t have deep knowledge, but really you don&#x27;t <i>need</i> deep knowledge for most employable work. Code doesn&#x27;t need to be hyper-optimized at the scale you&#x27;re working, and it&#x27;s easy to learn common pitfalls &amp; best practices from applied practice, reading, and mentorship.<p>And I say all this as an oldish fart who understands the chain from designing bespoke high level language environments down through to transistors. We don&#x27;t need to count bytes &amp; clock cycles anymore; people can let the machine &amp; its provided environment simply work for them and learn the top-level interface.
neil_macintyrealmost 7 years ago
&gt; He&#x27;s a freshman at Kennesaw State right now, but he really struggles with the idea of taking two years of classes that he has very little interest in.<p>If it is just the idea of having to take a load of liberal arts classes that perturbs your son and not the low level courses like chip design, logic, algorithms and data structures, calc and stats, one alternative to consider is to study internationally. English universities, for example, offer a bachelors in computer science in three years. Unlike a &quot;8- to 16-week full-day immersive courses that focus solely on technology&quot; they have a curriculum almost exactly the same a US computer science course minus the 3 English classes, 3 history and political sciences classes, 2 economic courses and an art course that a college like Kennesaw has a graduation requirement: Kennesaw State Curriculum (<a href="http:&#x2F;&#x2F;ccse.kennesaw.edu&#x2F;cs&#x2F;docs&#x2F;BSCS_2016-2017.docx" rel="nofollow">http:&#x2F;&#x2F;ccse.kennesaw.edu&#x2F;cs&#x2F;docs&#x2F;BSCS_2016-2017.docx</a>). To compare look at the University of Bristol&#x27;s Curriculum:[<a href="https:&#x2F;&#x2F;www.bris.ac.uk&#x2F;unit-programme-catalogue&#x2F;RouteStructure.jsa;jsessionid=55C3E695CF3A9FA6C9333C0391AC0FBE?byCohort=N&amp;cohort=Y&amp;routeLevelCode=1&amp;ayrCode=19%2F20&amp;modeOfStudyCode=Full+Time&amp;programmeCode=4COSC019U" rel="nofollow">https:&#x2F;&#x2F;www.bris.ac.uk&#x2F;unit-programme-catalogue&#x2F;RouteStructu...</a>]<p>I know this is not an option for everybody - many people need to stay close to home for personal or financial reasons, but is definitely something to look into. With regards to finances, English university for international students even with 1 year less of study still cost a lot. However, I am pretty sure that the course structure is similar at most European universities some of witch offer really low fees to international students.
评论 #17650171 未加载
评论 #17650164 未加载
评论 #17651198 未加载
评论 #17656333 未加载
tabtabalmost 7 years ago
As soon as higher-level programming languages such as COBOL, Algol, and FORTRAN came out; many clerks in the mid 1960&#x27;s onward learned programming without knowing about the hardware guts or theory. Thus, the layering of specialties had already begun.
评论 #17649772 未加载
评论 #17650002 未加载
Xeronatealmost 7 years ago
College is only one way (albeit a good one) to get a firm grasp of CS. I&#x27;d argue putting in 1000s of hours of work is another.
xor1almost 7 years ago
I know someone currently doing a CS MS so she can get into tech. She is good at math, so all of those classes are free As for her. She has other people help with her programming homework assignments, sometimes even having them do the entire thing for her. I know because she told me this herself, and even asked me to do some for her. As long as she gets near 100% on homework, it&#x27;s nearly impossible to get less than a B in any programming class. She has an adderall prescription so she can cram for tests, which have way more multiple-choice questions than should reasonably be expected.<p>She&#x27;s currently on her second internship. They&#x27;re both at employers that don&#x27;t screen candidates on actual programming ability (they just looked at GPA, resume&#x2F;application, and then a soft interview), and the current one has a reputation for being a very meh internship, though good resume padding. The last time I helped her, her code was fine for someone who had just started learning two years ago, but I don&#x27;t think she is going to progress to the point that you&#x27;d expect someone with a Master&#x27;s to be at simply because she isn&#x27;t doing her own homework.<p>I don&#x27;t have a CS BS or MS, but there have been a few times where I feel like I need to get one just in case the market tanks again and they become a significant hiring criteria. But at the same time, I have to wonder just how many people currently enrolled in MS CS programs throughout the nation are doing something similar, and devaluing the worth of the degree (on paper, to potential employers) to the point that some could even look at it negatively.
richpimpalmost 7 years ago
I see pros and cons to both sides (4 year university vs boot camp). I have a CS degree, whereas our front end developer came from a boot camp.<p>For my part, I have found the underlying theory to be helpful in ways I couldn&#x27;t have comprehended while at school. Understanding binary made understanding octets in IP addresses and subnet masking much easier. Taking a class that involved programming sorting algorithms by hand in C++ was very beneficial, even though I have no need to do this in my day to day work. Learning about logic gates has even been helpful. Basically, I&#x27;m better equipped to have a fundamental understanding of how software and hardware works, even if it&#x27;s a very basic understanding. What I lacked coming out of school, though, was having a clear road map of how to just build something in a modern stack on day one at a job.<p>My compatriot is in the opposite boat. He came out of boot camp with a clear understanding of how to build web applications using Angular. He could hit the ground running, and did from day one. However, he lacks the underlying theory that helps to understand how things work. Does he need these things to do his job? No, but I do believe it makes for a more well-rounded developer to have this knowledge. Fortunately, he&#x27;s got a great attitude and aptitude, so he&#x27;s been picking these things up as he goes.<p>I&#x27;d rather see something more in the middle, where one can get the theory coupled with the real-world programming skills. Maybe my CS program is to blame, and others exist that do a better job of this. Looking back, my senior &quot;full-stack&quot; project was very limited. I would have benefited from a little more meat to the project, and also having some more of the ancillary things taught, such as anything to do with networking in a more practical rather than academic way.
3pt14159almost 7 years ago
I mostly disagree. Software, like electronic engineering, is about abstraction, but it differs in a critical way: It&#x27;s self-modifiable. Kids can think they&#x27;re making computer games using little apps, but what they&#x27;re doing is more akin to making a map for Starcraft than it is to actually making a game. If anything I&#x27;d argue that getting a CS degree or similar (math, engineering, philosophy) will arm your mind with the tools it needs to really compete over the coming decades.<p>If you want a simple middle class life a bootcamp is perfectly fine. Lots of people make money writing CSS. There is nothing wrong with it. But I would never tell a bright youngster that CS degrees (and similar) are a waste.
评论 #17653209 未加载
评论 #17653468 未加载
评论 #17656177 未加载
rb808almost 7 years ago
Bob Martin has a great talk <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=ecIWPzGEbFc" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=ecIWPzGEbFc</a>, which illustrates a lot of history of computers.<p>He asserts that the number of devs is doubling every 5 years which means that half the developers have &lt; 5 years experience. The industry has lots much of its scientific discipline which has to return, or regulations will force more structure.<p>Anyway he&#x27;s a great speaker and this is one of my favorites.
projektiralmost 7 years ago
Ugh.<p>I think what people writing articles like this tend to miss, is that it&#x27;s much easier to be super deep in a field when the field is limited and low-entry but you&#x27;re already in it. Because there&#x27;s not really as much going on and there&#x27;s not much else to do but learn C or some text editor on a super deep level or what not. What else are you going to do? Look at the stuff &quot;deep&quot; people are generally into, it mostly revolves around POSIX some way or another. And databases, but nobody wants to talk about that.<p>But today, there are hundreds of languages, a whole bunch of frameworks per language, various tools, constantly changing standards, etc. The available landscape is absolutely staggering. If you want to deeply focus, you need to pick what to deeply focus on, which is a rather tough choice and a questionable one, because the thing you focused on might become obsolete.<p>&gt; if you want to make a tiny little difference in the industry and change the world just a little bit, then you do need that degree<p>And what sense does THIS make? Among the people who I know who _do_ deeply get into some specific CS topic, many are those who do not have degrees, because they&#x27;re often people who are not fans of structure and ended up doing what they want, as opposed to what might be beneficial for career purposes.<p>This just seems to be heavily misguided elitism.<p>If you really want to know why the quality of software, and basically everything else, has gone down, just look at market incentives and you&#x27;ll find that to be an utterly boring question.
评论 #17651424 未加载
评论 #17650451 未加载
NTDF9almost 7 years ago
I&#x27;ve worked with plenty of competent developers who don&#x27;t have degrees. Most crud jobs don&#x27;t need degrees anymore.<p>But, any serious business that&#x27;s going to churn a lot of data, needs fast pipelines, needs to invent entire new markets or ideas will heavily rely on people with patience and training in scientific process.
michaels9876almost 7 years ago
Very fun to read and sounds very true. In my experience though, I found no correlation between programmers with a CS degree and being a good developer&#x2F;architect.<p>I will say that those of us who didn&#x27;t graduate (including me, I dropped out) often feel they have something to prove and will work harder.
Jarwainalmost 7 years ago
Mirror: <a href="https:&#x2F;&#x2F;web.archive.org&#x2F;web&#x2F;20180731000241&#x2F;http:&#x2F;&#x2F;rubyhacker.com&#x2F;blog2&#x2F;20150917.html" rel="nofollow">https:&#x2F;&#x2F;web.archive.org&#x2F;web&#x2F;20180731000241&#x2F;http:&#x2F;&#x2F;rubyhacker...</a>
tonyedgecombealmost 7 years ago
If you require programmers to have a deep understanding of computer science then you will never have enough programmers. This is good for those people with the qualifications but not necessarily good for the rest of society which ends up with an unmet need.
jteppinettealmost 7 years ago
I dropped out of a Computer Science program at KSU. It’s been great.
评论 #17650733 未加载
devxpyalmost 7 years ago
&gt; If you want to make really interesting exciting things that have never existed before, if you want to make a tiny little difference in the industry and change the world just a little bit, then you do need that degree. If you want to make the tools and libraries that the lower-level people use, you do need that degree<p>I don&#x27;t know about you, but I need some solid evidence that you did anything close to that so I can consider you seriously.
ThJalmost 7 years ago
As a person who never had a degree but whose knowledge goes above and beyond what 90% of the market needs and well into CS territory, this article insults me. It&#x27;s also a painful reminder of similar prejudices in people who are looking to hire. I often end up doing the kind of basic development the author talks about and I&#x27;m not happy about that.<p>Why not just take a CS degree? Because I&#x27;m a poor fit for the education system. That&#x27;s why I dropped out of high school in the first place.<p>Also, I feel like I&#x27;ve paid my dues already. I&#x27;ve been learning about computer software (and hardware and electronics) for 27 years. I haven&#x27;t stopped at merely what I needed to know to do my job. I have done a lot of self-study. I routinely roll my own libraries and write embedded code, and I had a patch submitted to the Linux kernel a few years back. I also design analog and digital circuits on my spare time.<p>I feel it&#x27;s not about having a degree at all, because I&#x27;m living, breathing evidence of that. I&#x27;ve met people with CS degrees who can barely write a line of code. Maybe they didn&#x27;t go to a good college. Maybe they did, and it&#x27;s possible to pass the exams by cramming (followed by forgetting).<p>Saying that you can&#x27;t do advanced stuff without a CS degree is snobbery.
评论 #17650406 未加载
评论 #17650285 未加载
评论 #17650236 未加载
评论 #17650620 未加载
评论 #17650446 未加载
评论 #17650317 未加载
anfiltalmost 7 years ago
He calls it a rant, but I would say its just being honest.
oyebennyalmost 7 years ago
My Alma mater on HN? Weird!
评论 #17650758 未加载
andrewmcwattersalmost 7 years ago
&gt; If you want to make the tools and libraries that the lower-level people use, you do need that degree.<p>No, you need to somehow invest more time to build more features than another sucker out there. That&#x27;s almost entirely it. Period. Shit is just fast enough these days, and if your industry cares about performance, well then maybe understanding something about caching that can be learned in less than a day from a blog article will help you with 80% of your problems.<p>There&#x27;s plenty of work out there that craves better solutions, and a degree is absolutely not even a nice to have at this point. Let me repeat: there are fundamentally basic applications and software solutions that various industries are dying to have exist, millions of dollars on the line if you know what industries in question, that simply just take a damn long time to implement but every individual piece is so far removed from so much as a basic comp sci 101 algo class, that you&#x27;re literally just talking about business logic at that point.
评论 #17650418 未加载
评论 #17650382 未加载