| ▲ | doug_durham 10 hours ago |
| The author has a bizarre idea of what a computer science degree is about. Why would it teach cloud computing or dev ops? The idea is you learn those on your own. |
|
| ▲ | happytoexplain 9 hours ago | parent | next [-] |
| If that's "the idea", then clearly we need a more holistic, useful degree to replace CS as "the" software degree. |
| |
| ▲ | kibwen 8 hours ago | parent | next [-] | | Despite what completely uninformed people may think, the field "computer science" is not about software development. It's a branch of mathematics. If you want an education in software development, those are offered by trade schools. | | |
| ▲ | AnimalMuppet 8 hours ago | parent [-] | | What I want is for universities to offer a degree in Software Engineering. That's a different field from Computer Science. You say that belongs in a trade school? I might agree, if you think trade schools and not universities should teach electrical engineering, mechanical engineering, and chemical engineering. But if chemical engineering belongs at a university, so does software engineering. | | |
| ▲ | collingreen 7 hours ago | parent | next [-] | | Plenty of schools offer software engineering degrees alongside computer science, including mine ~20 years ago. The bigger problem when I was there was undergrads (me very much included) not understanding the difference at all when signing up. | |
| ▲ | xboxnolifes 5 hours ago | parent | prev | next [-] | | Many do. Though, the one I'm familiar with is basically a CS-lite degree with software specific project design and management courses. Glad I did CS, since SE looked like it consisted of mostly group projects writing 40 pages of UML charts before implementing a CRUD app. | |
| ▲ | none2585 7 hours ago | parent | prev | next [-] | | Saying this as a software engineer that has a degree in electrical engineering - software "engineering" is definitely not the same as other engineering disciplines and definitely belongs in a trade school. | |
| ▲ | pkaye 6 hours ago | parent | prev | next [-] | | My university had Electrical Engineering, Computer Engineering, Software Engineering and Computer Science degrees (in additional to all the other standard ones.) | |
| ▲ | mxkopy 8 hours ago | parent | prev [-] | | Last I checked ASU does, and I’m certain many other universities do too. |
|
| |
| ▲ | throwaway7783 8 hours ago | parent | prev | next [-] | | The degree is (should be) about CS fundamentals and not today's hotness. Maybe a "trades" diploma in CS could teach today's hotness. | |
| ▲ | wrs 9 hours ago | parent | prev | next [-] | | Cloud computing is not some new fundamental area of computer science. It’s just virtual CPUs with networks and storage. My CS degree from 1987 is still working just fine in the cloud, because we learned about CPUs, virtualization, networks, and storage. They’re all a lot bigger and faster, with different APIs, but so what? Devops isn’t even a thing, it’s just a philosophy for doing ops. Ops is mostly state management, observability, and designing resilient systems, and we learned about those too in 1987. Admittedly there has been a lot of progress in distributed systems theory since then, but a CS degree is still where you’ll find it. School is typically the only time in your life that you’ll have the luxury of focusing on learning the fundamentals full time. After that, it’s a lot slower and has to be fit into the gaps. | |
| ▲ | wakawaka28 9 hours ago | parent | prev [-] | | There has to be a balance of practical skills and theory in a useful degree, and most CS curricula are built that way. It should not be all about random hot tech because that always changes. You can easily learn tech from tutorials, because the tech is simple compared to theory. Theory is also important to be able to judge the merits of different technology and software designs. |
|
|
| ▲ | tibbar 9 hours ago | parent | prev [-] |
| Why is this necessarily true? |
| |
| ▲ | sys_64738 9 hours ago | parent [-] | | A CS degree is there to teach you concepts and fundamentals that are the foundation of everything computing related. It doesn't generally chase after the latest fads. | | |
| ▲ | tibbar 7 hours ago | parent [-] | | Sure, but we need to update our definitions of concepts/fundamentals. A lot of this stuff has its own established theory and has been a core primitive for software engineering for many years. For example, the primitives of cloud computing are largely explained by papers published by Amazon, Google, and others in the early '00s (DynamoDB, Bigtable, etc.). If you want to explore massively parallel computation or container orchestration, etc, it would be natural to do that using a public cloud, although of course many of the platform-specific details are incidentals. Part of the story here is that the scale of computing has expanded enormously. The DB class I took in grad school was missing lots of interesting puzzle pieces around replication, consistency, storage formats, etc. There was a heavy focus on relational algebra and normalization forms, which is just... far from a complete treatment of the necessary topics. We need to extend our curricula beyond the theory that is require to execute binaries on individual desktops. | | |
| ▲ | michaelsalim 5 hours ago | parent [-] | | I do agree that the scale has expanded a lot. But this is true with any other fields. Does that mean that you need to learn everything? Well at some point it becomes unfeasible. See doctors for example, you learn a bit of everything. But then if you want to specialise, you choose one. |
|
|
|