4 ms·
Where did you get your CS degree? Or more importantly, which institutions do you know of that actually teach CS as applied mathematics and aren't just "Java Sch
by devon_r_t 16y ago
Where did you get your CS degree? Or more importantly, which institutions do you know of that actually teach CS as applied mathematics and aren't just "Java Schools?" I went to roughly a school with what was and still is an incredibly mediocre CS department and, as far as I can tell, this is the case more times than it isn't. I spent time working on a Pure Mathematics degree but eventually switched to CS and I still consider it to be one of the biggest mistakes of my life.
I agree with Zed to an extent, but only because so many CS programs focus on the wrong things and are little more than trade programs. For most young people I meet I strongly recommend they steer clear of CS unless they're going to a school with a proven program.
- hga 16y agoDid your CS program require a discrete mathematics course?
- devonrt 16y agoYes, and it was my favorite part of the program! (Sorry about the multiple login, I mistakenly logged in with clickpass last time)
- hga 16y agoAh ha! I just guessed and confirmed that that's a requirement for ABET accreditation. Which of course doesn't mean the program as a whole will be infused with a mathematical or engineering ethos, I'm sure you can get ABET accreditation while still (mostly) doing Cargo Cult Computer Science.
- elblanco 16y agoMost decent schools should teach CS as an applied math course. In fact most undergrad CS majors should graduate not too many credits shy from an undergrad Math degree (or at least a minor). The problem is that student demand isn't for CS. Student demand is for Information Systems and Software Engineering. Schools either respond to that demand and turn their CS programs into glorified trade schools, or they keep CS as an applied mathematics program like it's supposed to be and risk angering new grads (e.g. "I didn't learn anything useful in my CS program!")
- HaloZero 16y agoI think the level of college you go to is important. The Author even says places like MIT teach you more theory and mathematical aspects of CS. That is also true of Berkeley and Stanford (I can't attest for any schools other than that). I think the higher universities with older programs would be more inclined to teach theoretical than younger programs just starting during the dot com boom or during the past few years.
- enjo 16y agoI attended the University of Central Arkansas (Go Purple Bears!) starting in 1998. This is obviously not a top-tier school by any stretch. I felt like it was an excellent program. We spent all of a semester on C/C++. My program was heavy on the math (Calculus, Differential Equations, Linear Algebra, Statistics, and a few others I can't bring to mind). We studied algorithms, number systems, analysis, and all sorts of topics. The amount of time we spent 'learning to program' was minimal. Maybe I was lucky, but I have to imagine it's hardly different for the majority of programs.
- hga 16y agoYou're lucky (you attended a school which is a variation of one of those "hidden gems" benatkin talked about). ABET only requires: "One year of science and mathematics: 1. Mathematics: At least one half year that must include discrete mathematics. The additional mathematics might consist of courses in areas such as calculus, linear algebra, numerical methods, probability, statistics, number theory, geometry, or symbolic logic." (http://www.abet.org/Linked%20Documents-UPDATE/Criteria%20and%20PP/C001%2010-11%20CAC%20Criteria%2011-16-09.pdf http://www.abet.org/Linked%20Documents-UPDATE/Criteria%20and...) MIT requires differential equations or linear algebra and no statistics (although I think they used to before the '80s) and of course discrete mathematics which is one of the things I'm sure you're not bringing to mind. (MIT does demand a relative high level of mathematical sophistication, every undergraduate must take or place out of single and multivariable calculus in their freshman year (where it is taught at speed), and SICP/6.001 and 6.01 both use math freely (in 6.01 at least as initially taught you have to use differential equations right off and they don't assume you've previously thoroughly learned them). I've worked very closely with a UVa Applied Mathematics graduate who was taught C++ (but not C, I taught him the new/malloc distinction :-) back in the early-mid 90s. He's not as good a programmer as I am, but he's very solid and most importantly understands what he's doing and the implications of it. Our designs don't fail because we e.g. didn't realize or think correctly about scaling issues.