4 ms·
Because actual Computer Science is not writing a VBA script, or putting together your own PC. There is some common misconception that Computer Science = Being g
by lykr0n 6y ago
Because actual Computer Science is not writing a VBA script, or putting together your own PC. There is some common misconception that Computer Science = Being good with computers.
At RIT, the Introduction to CS cources (CSCI 140 & 141) were designed to be hard to get people who assumed CS was "computers" to switch to SWE, GameDev, IT, Security, EE, or Systems. The courses weeded people out who thought CS was just programming, because the upper level courses get heavy into math, science, and theory.
There is no easy way for people to figure out if they are just interested in computers (IT), like to write software (SWE), like to make games (GameDev), or are actually into the lower level concepts such as memory management (and others). You need weed out courses to get people to think about what they actually want to do.
- Spartan-S63 6y agoIn that case, I admire (from the outside looking in) RIT's program because my own college conflated CS and SWE together. We did get into theory, but it was largely rooted in writing code and SWE.
- jandrese 6y agoWhen I went there were two tracks. CS or CE. CE was taught out of the engineering department and was more focused on people who were going to write device drivers or FPGAs. It overlapped considerably with EE. CS was quite math heavy. In fact you only needed 1 extra elective to get a math minor. That said there was a fair bit of practical developer classes as well, like Networking and Graphics (this was before GPUs so the graphics class was mostly about matrix math).
- norswap 6y agoIs it really admirable though? If you remove the tether of software engineering, then CS is just math. I think what I like most in CS is when theory comes in support of SWE. Having something that is elegant and practically useful. (And I don't know about RIT, but overwhelming, schools don't teach pure CS theory, but rather CS/SWE.)
- lykr0n 6y agoAt RIT, this statement holds true: "You don't learn how to write software in CS, you just learn it by proxy." The CS course is focused on concepts, involving writing assembly programs to understand how stuff works. And yeah, it turns into heavy mathematics towards the end, which is why I gave it up after the first year. It turned into applied theory. If the course was in Networking (for example), you would spend your time learning the theory behind it while implementing something to apply the theory. My friend did a whole bunch of this stuff in C++/Java. He never learned how to write practical software, just enough to complete the assignments. Most people move to Software Engineering- the first two years of the CS/SWE program are virtually the same. You fairly quickly figure out which side of the fall you want to fall onto.
- perl4ever 6y agoI didn't exactly take a full normal CS curriculum, but I did get the impression, back in the 90s, that there tends to be a cultural bias against any language you would use in industry. If there's any excuse not to use something practical, they won't. Knuth and (M)MIX is the extreme example. My college did all assembly language in MIPS.
- hyperpallium 6y agoMy CS dept liked to say "We don't teach programming".
- musicale 6y agoI thing it was Niklaus Wirth (Turing award winner, inventor of Pascal/Modula/LoLa/Oberon, and general CS hero) who once said something like "I am a programmer who is a professor, and a professor who is a programmer."
- nine_k 6y agoHaving a programmer's knowledge is very valuable for CS. But CS is not about programming, it's about the fundamental mathematical structures that underlie computation. CS and SWE are definitely related but distinct. Knowing both is best, but knowing one well and having a very cursory and elementary knowledge of the other is perfectly fine and useful. It's like studying the Maxwell's theory does not make you a qualified electrician, nor even requires you to already be one.
- musicale 6y ago> You need weed out courses to get people to think about what they actually want to do. In my experience, "weed out" courses are usually a) very poorly taught and b) much more work than a normal course. I'm sort of OK with (b) with full disclosure, but there is no excuse for (a). Science, engineering and math departments should have high-quality onramp courses that do their best to help beginners master the material and discover how fun, interesting, and challenging the subject is. Personally I've had experience with some fantastic introductory courses where basically everyone succeeded, had a great time, and learned a huge amount; a big part of this seemed to be instructors who actually cared about student learning. This stands in bleak contrast to other courses where the course staff seemed to actively work against any attempts by the students to learn the material.
- perl4ever 6y ago"actual Computer Science is not writing a VBA script" This seems a little like saying "actual motorsports is not riding a scooter". However, I took the class to get my motorcycle license from a guy who had experience racing scooters in Europe. https://www.flickr.com/photos/sipscootershop/17709340698/ https://www.flickr.com/photos/sipscootershop/17709340698/