If that’s not what you want to teach, why teach calculus in the first place? If I need an integral I can ask a computer to calculate the integral for me. Why teach someone who wants to be a software engineer calculus?
Calculus isn’t as important to software engineering as some other branches of math, but it can still be handy to know. I’ve mostly encountered it in the context of physical simulation: optics stuff for graphics rendering, simplified Navier-Stokes for weather simulation, and orbital mechanics, to name three. Sometimes you can look up the exact equation you need, but copying out of the back of a textbook won’t equip you to handle special cases, or to optimize your code if the general solution is too computationally expensive.
Even that is sort of missing the point, though. The reason a lot of math classes are in a traditional CS curriculum isn’t because the exact skills they teach will come up in industry; it’s because they develop abstract thinking skills in a way that classes on more technical aspects of software engineering don’t. And a well-developed sense of abstraction is very important in software, at least once you get beyond the most basic codemonkey tasks.
The reason a lot of math classes are in a traditional CS curriculum isn’t because the exact skills they teach will come up in industry
To that extend the CS curriculum shouldn’t be evaluated by how well people do calculus but how well they do teach abstract thinking.
I do think that the kind of abstract thinking where you don’t know how to tackle a problem because the problem is new is valuable to software developers.
Calculus isn’t as important to software engineering as some other branches of math, but it can still be handy to know. I’ve mostly encountered it in the context of physical simulation: optics stuff for graphics rendering, simplified Navier-Stokes for weather simulation, and orbital mechanics, to name three. Sometimes you can look up the exact equation you need, but copying out of the back of a textbook won’t equip you to handle special cases, or to optimize your code if the general solution is too computationally expensive.
Even that is sort of missing the point, though. The reason a lot of math classes are in a traditional CS curriculum isn’t because the exact skills they teach will come up in industry; it’s because they develop abstract thinking skills in a way that classes on more technical aspects of software engineering don’t. And a well-developed sense of abstraction is very important in software, at least once you get beyond the most basic codemonkey tasks.
To that extend the CS curriculum shouldn’t be evaluated by how well people do calculus but how well they do teach abstract thinking. I do think that the kind of abstract thinking where you don’t know how to tackle a problem because the problem is new is valuable to software developers.