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'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'm not happy about that. Why not just take a CS degree? Because I'm a poor fit for the education…
Computer science as a lost art (2015)
51–60 of 146 posts
Re: Computer science as a lost art (2015)
#52Ugh. I think what people writing articles like this tend to miss, is that it's much easier to be super deep in a field when the field is limited and low-entry but you're already in it. Because there's not really as much going on and there'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 "deep" people are generally into, it mostly…
Self-driving cars (controls, perception, planning, safety, sensor design, localization, mapping, integration, security, etc.), human-competitive NLP/image classification, advanced robotics (repeat list from cars here but for things in the air, off-road, on the water, in the water, in orbit, in deep space, ...).
Those are all examples of real things that real people get to work on every day.
Operating systems topics don't even scrape the top 20 of stuff I think of when I think of deep expertise.
And even if we limit ourselves to the sort of things you mention, most people who work deeply on languages, tools, and standards view these as manifestations of their deep exploration rather than the focus or subject of the dive.
For example, TensorFlow. The framework very much is the product. But even if some other framework won the day tomorrow, the people who worked on TensorFlow would not have "wasted" their time thinking deeply about how to build the system.
This is why researchers whose original contributions were made in the 70s and 80s none-the-less continue to establish themselves as desired experts in new technology trends (e.g., Leslie Lamport and cloud computing or Martin Abadi and ML frameworks). Because they were focused on ideas and fundamental problems. The problems never disappeared, just changed form. And ideas have a lot more staying power than their manifestation in code.
Most people working deeply on systems today are not "revolving around POSIX in some way". See the proceedings of OSDI. And most deep experts choose other topics, most of which your post doesn't mention: graphics, programming languages (making them and analyzing programs written in them), compilers, security, robotics, user interfaces, NLP, ...
Your definition of "expert" seems to revolve around using things, mostly things based on ideas and techniques that were well-understood already 20 years ago and that are related to building a particular type of software system. Which, if anything, seems to deepen the author's point.
Someone gets to fill the AI research labs, staff the self-driving car companies, work at NASA, build core infra at large tech companies, and build the foundation for the next 20 years of trendy growth areas.
It's possible to get to those places without a degree, of course, but a degree is by far the path of least resistance. And in most of these cases, learning the material from the degree isn't optional; you're probably going to have hard time doing that controls engineering job at a self-driving car company if you never made your way through a calc sequence, some physics, and an algorithms course.
It's also worth noting that very often, building wordpress plugins pays more than doing all of those things I mentioned. I guess it's all about what you want to spend your life doing, which is exactly what the author says at the end of the article.
Re: Computer science as a lost art (2015)
#53As 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'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'm not happy about that. Why not just take a CS degree? Because I'm a poor fit for the education…
I don't think that's a charitable reading of the article. The author is not saying that you can't have this knowledge without a degree, he's saying that few people in the field today have this knowledge, because they don't have the degree. The two assertions are different: there are things a degree teaches you; if you have the degree, you probably know them. While you can't judge whether any given individual has the…
> "They use languages, editors, compilers, and operating systems; but they don't have the first clue about how to create any of these things or even how they really work."
And yes, he is asserting that people should get this from a degree:
> If you want to build doghouses, just pick up some skills with hammer and nails, and then go for it. If you want to be an architect who designs and builds skyscrapers, then go get a degree in architecture first.
The full depth of applied understanding comes from personal interest & experience. Whether or not a person with such interest pursues a CS degree is completely orthogonal.
Plus, these applied low- & mid-level computational practicals have nothing to do with Computer Science; they are programming, architecture, and engineering. People generally do not complete CS degrees with any specific imparting of these 3 facets, unless they use their university time to pursue their own interests & ambitions in the field. And again, such people can and do pursue those outside of university, especially in their pre-university age exploratory years, and on-the-job experience with real systems.
Re: Computer science as a lost art (2015)
#54She's currently on her second internship. They're both at employers that don't screen candidates on actual programming ability (they just looked at GPA, resume/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't think she is going to progress to the point that you'd expect someone with a Master's to be at simply because she isn't doing her own homework.
I don'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.
Re: Computer science as a lost art (2015)
#55I've worked for years as a self-taught developer before going back to get my CS degree, I've taught at a bootcamp, and I've hired bootcamp graduates. 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 w…
I'm a self-taught web dev, and I want to further my CS education but can't go back to school for various reasons. I've seen various syllabi eg teachyourselfcs.com and though they seem legit (and I've dabbled is some courses) I don't quite see the application/direct benefit professionally. Let me phrase in another way; when I got started it was easy to see why I needed to learn front-end and back-end to make a web app…
The project is challening but has a pretty rewarding feedback loop. Along the way you'll understand how high level concepts like grphics are implemented on top of hardware, computer architecture, cpu behavior, memory access, interrupts and timers and so on. It'll also challenge your software design skill and project planning. It might not be the best project if you are more interested in cs algorithms though, but I can't really think of anything that has a more enjoyable feedback loop.
previous hn discussion: https://news.ycombinator.com/item?id=17134668
Re: Computer science as a lost art (2015)
#56There's plenty of programming work out there that doesn't require any deep understanding of CS. You'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.
A bootcamp can get you started doing practical things. Yes, you won't have deep knowledge, but really you don't need deep knowledge for most employable work. Code doesn't need to be hyper-optimized at the scale you're working, and it's easy to learn common pitfalls & best practices from applied practice, reading, and mentorship.
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't need to count bytes & clock cycles anymore; people can let the machine & its provided environment simply work for them and learn the top-level interface.
Re: Computer science as a lost art (2015)
#57I've become more and more convinced that this is the defining problem of our times- we'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.
In other professions, the difference is more stark, and I think this is a major catalyst for the political/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 / valuable.
Bringing this back to CS, it's interesting to use this lens to determine whether the degree is worth pursuing anymore. On the one hand, it's fundamental and it encompasses the building blocks of how computers work and what they can do. On the other hand, programming techniques haven't changed very much and are quickly becoming commoditized and more accessible. As the author notes, it's true that you don't need to know as much as you used to, to build a useful program anymore. Like it or not, that's a fact, and economic forces are exploiting this more and more.
I think our human-being wiring is optimized to learn when young, and then "grow up" 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 "young" as much as possible, since the chance you will need to reinvent yourself seems to only rise. This sounds great when you're actually young, but as time passes you get worse and worse at it, despite needing to remain "young" and malleable, and despite the mounting competition from actual young people.
So given all this, saying people "need" a CS degree seems like punching and kicking at giant waves you'll never beat. And I say this as someone who deeply loves both CS and academia. Stay "young" as best you can and try to keep riding the next wave you can find.
Re: Computer science as a lost art (2015)
#58Earlier quoted context omitted.
I don't think that's a charitable reading of the article. The author is not saying that you can't have this knowledge without a degree, he's saying that few people in the field today have this knowledge, because they don't have the degree. The two assertions are different: there are things a degree teaches you; if you have the degree, you probably know them. While you can't judge whether any given individual has the…
I disagree strongly with your point #1. "This knowledge" specifically is deep full-system understanding, as quoted in the article: > "They use languages, editors, compilers, and operating systems; but they don't have the first clue about how to create any of these things or even how they really work." And yes, he is asserting that people should get this from a degree: > If you want to build doghouses, just pick up so…
It's not orthogonal, but rather highly correlated. Combinatorics, graph theory, computer architecture, etc., will all be part of a university CS curriculum. Someone who has a CS degree will probably know those things (or at least recall them after a brief refresher).
Re: Computer science as a lost art (2015)
#59Earlier quoted context omitted.
Computer science graduates also need a lot of training. If not more, a boot camp graduate has already been exposed enough to modern tech stacks to at least come in as a junior. Too many CS grads have little practical experience to hit the ground running on even the simplest real world projects. Yes I have a CS degree.
It should be a requirement to have each student complete a modern full stack. Some schools have pitiful results for what they say is a degree.
Re: Computer science as a lost art (2015)
#60As 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'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'm not happy about that. Why not just take a CS degree? Because I'm a poor fit for the education…
In the years since the author graduated, there has been a shift in some CS degrees, to meet market needs. A key difference is that then, a CS degree wasn't about programming.
Those CS degree were just the starting point, letting you know what is out there, and a taste of how to approach it. Part of that was contact with research academics. (Though some recent graduates miss the point and believe that because they now know something, they now know everything.)