4 ms·
This is why it's called Computer Science, and not Software Engineering.
by alexmolas 2y ago
This is why it's called Computer Science, and not Software Engineering.
- sureglymop 2y agoIn my uni, "Software Engineering" was the one class of the CS program that had nothing to do with programming. It was about UML, SOLID, DRY, KISS, agile, scrum and more. Useless class that was mostly a waste of time. On the other hand, we had classes like Operating Systems, Computer Networks and more where we had to write things in C and assembly.
- solarkraft 2y agoIt teaches you how to build practically functional and maintainable software instead of the prototypes that are enough to pass other classes. It's one step beyond just programming.
- sureglymop 2y agoThere is some truth in that but mostly I would disagree. A lot of what I mentioned are ideas/concepts that usually came from one or more "guru-types". They may have been programmers, managers, or other. They're not necessarily wrong but the issue I have is that, in science what should be taught is to question everything and see if it's actually correct and verifiably so. With a lot of these concepts this is seemingly never done. It also comes from a specific period where everything happens to be quite tightly bound to Java (UML, Clean Code etc. especially). That doesn't mean that I can't learn something from it. But it is almost a little hypocritical when you are taught the importance of abstracting and generalizing but then the tools given themselves are not even general enough to apply to anything besides enterprise Java.
- Uehreka 2y agoSo where should people who want to learn the discipline of software engineering go? It’s definitely what most CS majors are actually there for, and there’s no separate software engineering major at (almost) any liberal arts colleges. I get that saying “that’s why it’s CS not SE” is the hip thing to say when this comes up, but it doesn’t answer the underlying issue, which is that people want a mix of theory and job training, and right now they’re getting almost entirely theory.
- vitaminCPP 2y agoI don't know where you are from, but in Canada there's a clear distinction between those 2 degres.
- 9659 2y agoThe two degrees are distinct and accredited differently. One is engineering, the other is computing science.
- threatofrain 2y agoSome universities differentiate between engineering and CS.
- seadan83 2y agoLikely a good development. My class of some decades ago was one of the first where it was an actual CS degree and not applied math. CS is an infant of a field. Not too surprising perhaps the degrees would specialize.
- CuriousCosmic 2y agoTo quote an older comment of mine: https://news.ycombinator.com/item?id=40416604 https://news.ycombinator.com/item?id=40416604 > Computer Engineering or any of the other legitimately useful CS degree paths instead of CS itself. > At least at the school I went to, CS was kind of a joke for undergrad. > The students that cared about CPU design, low level software (firmware, drivers, kernel, embedded), or robotics (including computer vision, etc) all went computer engineering. > The students that cared about cryptography or the formal maths side of computing all went to the mathematics dept in their applied discrete maths or applied computational mathematics degree paths. > The students that cared primarily about high performance computing or applied computing in general (but didn't go one of the aforementioned routes) went through the computational modelling and data analytics program. > And the students that wanted to learn CS for the purpose of game design or creative arts had their own program within the school of arts (can't remember the name). > So out of the students who were interested in computing that went to my uni for undergrad, the ones that were left in the CS department were those who were told "get a CS degree for lots of money", those that didn't bother researching any other programs, and those who wanted to be web devs or enterprise java/c# devs.
- vunderba 2y agoExactly. Graduates of a computer science program don't know specific commands around versioning software that they can learn in 10 minutes on the job. Gasp. Algorithms, mathematics and logic are timeless, tooling is not, and it baffles me that people can't distinguish between the two. EDIT: Furthermore, where did they pull this statistic from? I didn't realize that the census also included questions around git knowledge.
- iainmerrick 2y agoBut if they aren’t teaching Git, are they at least teaching about source control in general? What it does, how it works, how it should and shouldn’t be used. That would be pretty useful.
- deleted 2y ago[deleted]
- mopsi 2y agoHow can you graduate from a CS program without having had to learn git somewhere along the way? Do you never collaborate on any project? Do you never check out a repo or make changes to it?
- WolfeReader 2y agoBelieve it or not, it is possible to collaborate on a CS project without automated source control! It's very painful though.
- seadan83 2y agoCS is an underpinning to software engineering. Knowing how code is translated to assembly to then machine language is helpful to engineering. It is helpful to know how to analyze algorithms, to have studied and implemented algorithms. Though.. in software engineering, being able to write well is perhaps the single most important skill. Communication, documentation, very important. Are we going to then say English majors are the best programmers? If they later become dev managers or director - then perhaps. Does a person learn English really well by also learning Latin and the origins of english and it's great works? I believe yes, and that is why I think knowing the theory and underpinnings of CS are very useful foundational knowledge. Required? No, but nor is touch typing or anything else that makes a person extremely competent.