4 ms·
You are perhaps right, for some narrow definition of "computer science degree". Perhaps though the root of these endless discussions seems to be that the name
by bruce511 5y ago
You are perhaps right, for some narrow definition of "computer science degree".
Perhaps though the root of these endless discussions seems to be that the name of the degree means different things to different people.
Some see that degree as a way to learn programming, some see it as a route to a doctorate, ultimately to a career in theoretical science, some see it as understanding how hardware works, and so on.
Ultimately since schools, and students, have such a wide interpretation of the term, making blanket statements in any form about compurt science education is always both right and wrong depending on context.
- LogonType10 5y ago"Computer science degree" is not an ambiguous term, in fact (in the US) the goals and curriculum of the degree are explicitly defined by accrediting institutions. At the very least, it's not intended just to teach web development, and that's not up for debate.
- franga2000 5y agoIt's not just the degree itself, it's what the expectations from that degree are. Why students are pursuing a CS degree is what informs what the goals should be and in turn what they should and shouldn't learn. And as that varies greatly between students as well as institutions. OP wasn't saying "you can't pass the designated curriculum of a CS degree without this arcane knowledge", they were saying you shouldn't pursue it in the first place. There are many reasons to pursue a CS degree, therefore there are many different situations you'd need to evaluate their statement on. It's quite ambiguous.
- denton-scratch 5y agoIf we're really talking about a batchelor's degree in a computer-* subject, then I'd expect the graduate to have the basics nailed - not just how to write Javascript using an IDE. I'd expect a graduate to have passing familiarity with a couple of different languages; to have used a CLI and a VCS; to know what an OS does; and to have a reasonable knowledge of processor architecture. Learning how to use some specific IDE is just dead-weight - students aren't expected to write complex systems where IDEs are really useful, there isn't enough time on the course. It's perfectly easy to learn to write simple programs using a text-editor and a command-line. If that's too challenging, please stay away from production code! There's an approach to teaching that's been referred to as "circular learning" - the first time around, you cover most of the basics, then you go around again, deepening your understanding - lather, rinse, repeat. "Spiral learning" is probably a better term. It does require the curriculum to be somewhat integrated, though - not just a bunch of independent, standalone modules. Like, you can't learn to program without some understanding of computer architecture. It's very helpful when learning computer architecture to have some programming skills. But you get taught these things in separate, supposedly-standalone modules that don't reinforce one-another.