5 ms·
"CS majors"? Can you specify which universities you think have that mindset? At least for us, CS is just algorithms and maths, we had only one single course fo
by danielscrubs 3y ago
"CS majors"? Can you specify which universities you think have that mindset?
At least for us, CS is just algorithms and maths, we had only one single course for a specific language in my five years (C) but you where required to just pick up whatever the professor chose.
If you check the list of computer science awards they all focus on algos & maths so it feels weird if you could get a degree with a "language is what matters" mindset.
- Arch-TK 3y agoSeems like the standard CS degree course in the UK (at least last time I researched this stuff which was some years ago) heavily focuses around teaching the most popular tech stacks and employability and does not really focus as much at fostering a general interest in CS.
- pmontra 3y agoIsn't that Software Engineering instead of Computer Science?
- wil421 3y agoMy understanding is the same. CS is a couple of programming classes and then algos and math. SE focuses on creating actual software.
- Arch-TK 3y agoI mean yes, but at least a few years ago when I last looked at this, CS degrees in this country were heavily SE oriented and standalone SE courses were rare. I think the problem was lots of people were applying for CS degrees expecting SE courses and universities adjusted to cater for this. It meant that actual CS degrees seemed sparse for a while.
- maffydub 3y agoHere's the course list for Cambridge for 2019-2020: https://www.cl.cam.ac.uk/teaching/1920/cst/ https://www.cl.cam.ac.uk/teaching/1920/cst/ Yes, there are courses on Java and C/C++ (and also LATEX, MATLAB and Prolog!), but these are a few out of 60 courses in total, which include things like algorithms, information theory, distributed systems and optimizing compilers. ...although maybe Cambridge isn't a "standard" CS degree?
- tialaramex 3y agoFirstly yes, Cambridge isn't "standard". It gets to assume its graduates will likely be employed because hey, Oxbridge degree, and in a STEM subject too, so it needn't care about "employability". Both Oxford and Cambridge currently begin with an ML as first language (Cambridge chooses Ocaml), for the reasons I was taught an ML first too. These languages have sound fundamentals, their type system is good, they can handle recursion and other natural ways to express software. Also, almost none of the entrants know an ML [this will have started to change somewhat because of Rust] and so the introductory material holds everybody's attention and you don't need to spend as much time breaking bad habits. Places which begin with just Java need to wrestle with the fact that Java has some very weird assumptions which you need to either mention but move past or else ignore and then they leave a weird hole in the knowledge of your students. (For now) All Java's user defined types live on the heap - that's very weird, do you call it out?. Some of your cohort know this language well, and so they can do your exercises without paying attention and they lose interest right at the start of your course which isn't good. But others are new to programming entirely as well as Java, for them every concept you introduce is a general idea - this isn't "How variables work in Java" for them it's "How variables work". Beware the resulting prejudices you have created.