My school does not require any math for the CS program, aside from very basic discrete math (very very basic). While I wish we did more math, the people that graduate get jobs and seem to do just fine without the math background.
I mean, they're not working at Google, Facebook, or the NSA (though a lot go work for the CIA for some reason), but it doesn't seem like it sucks for them.
Linear algebra is incredibly useful and, when you know how to spot its shape, is just about everywhere.
A (long) while ago, one of my coworkers spent months putting together an enormous framework for processing some data. It was really well done - simple API, good error messages, verification at various steps, and reliable results. It was a little slow though. It was pushing 1 hour to complete a cycle, which was bumping up against other processes. A senior guy had a look at it, noticed that we could encode the data as a vector and apply some linear transformations to it, then decode afterwards. Thanks to lucky cache hits and BLAS, it took about 25 seconds to run.
I see. I think you hit an interesting point with that story: You may not need math to write an application, but it helps a lot when making it efficient and knowing which abstractions to use.
Personally, I'm going to spend some time after graduation teaching myself math. I think it can be incredibly helpful, even if it's just to improve my thinking.
Same for my school, though our discrete might be a bit less basic. I talked to the department head about it, specifically about calculus, and his answer was that in 30+ years of industry experience, getting a CS PhD (from an engineering university), etc. he had never used calculus in programming except as a type of problem to solve. He suggested people looking to go into fields that might require it to do a math or physics minor, but he saw no need to have everyone do it to get the major.
I find calculus to be a very useful set of mental models for framing problems, even if I'm not doing actual calculations with it. Understanding things like continuity, convergence, boundary conditions, gradients, etc... Almost everything you learn in a calculus course is a general problem-solving technique. (I'll say the same thing about Topology.)
Linear Algebra is almost worthless to most programmers. I challenge you to demonstrate otherwise. Of course it has use in specific industry. So what?
There's a lot of thinking that math is a fundamental part of software development. That was true when the problems were coming up with abstractions that required specific solutions. That hasn't been the focus of development, for decades. Welcome to the world of data processing and presentation (the vast majority of time and effort is in UI).
Yes, but for math to be really important few of those are a developer doing e.g. cryptography, it's a cryptographer doing programming. I worked in one of those fields and it would be at least ten times the developers to people "doing math" and they where highly educated in that field.
Cryptographers are computer scientists/developers, though. If you want to do something "real," other than make pretty buttons, that is, you're going to have to do some math.
Most business and web programmers would find it useless, perhaps, but if you're wanting to go into video games, simulation, physics, aerospace, robotics/internet of things (i.e. sensors), or the about to explode virtual reality field, you will most likely benefit quite a bit from linear algebra.
I've found it much more useful than my calculus classes, personally (although calculus is also useful to know for most of these industries).
Yes, those are specific industries, but that's quite a few specific industries. There's probably others that could benefit from it as well.
That's more because math is important to those fields though. If you're making e.g. a video game math is a very small part of the overall work. It's cool as a hobby if you can go "I know math and I know programming, therefor I can make this game like thing". But if you wanna work as a game programmer your better off focusing on that and figuring out whatever math you need along the way.
My school does not require any math for the CS program, aside from very basic discrete math (very very basic). While I wish we did more math, the people that graduate get jobs and seem to do just fine without the math background.
I mean, they're not working at Google, Facebook, or the NSA (though a lot go work for the CIA for some reason), but it doesn't seem like it sucks for them.