Is Calculus necessary for computer science student? [closed]What math should a computer scientist take in college?How to prepare for Integral Calculus (Calculus 2)Learning Proofs (for Computer Science)Looking for data science-oriented “Applied Maths for dummies” summer school

Dealing with an extrovert co-worker

Sun setting in East!

How should I face my manager if I make a mistake because a senior coworker explained something incorrectly to me?

Which household object drew this pattern?

If the first law of thermodynamics ensures conservation of energy, why does it allow systems to lose energy?

Confirming resignation after resignation letter ripped up

Why were movies shot on film shot at 24 frames per second?

Did it used to be possible to target a zone?

Shouldn't the "credit score" prevent Americans from going deeper and deeper into personal debt?

Avoiding racist tropes in fantasy

Who was president?

Why does The Ancient One think differently about Doctor Strange in Endgame than the film Doctor Strange?

Checking a beta regression model via glmmTMB with DHARMa package

C++20 constexpr std::copy optimizations for run-time

Is “I am getting married with my sister” ambiguous?

How to respectfully refuse to assist co-workers with IT issues?

Numbers Decrease while Letters Increase

How to find multiple values on the same line in any permutation using Notepad++?

Did the British navy fail to take into account the ballistics correction due to Coriolis force during WW1 Falkland Islands battle?

Why do all fields in a QFT transform like *irreducible* representations of some group?

How to prevent cutting edges on my TV, HDMI-connected?

How to use "Du hast/ Du hattest'?

Earth rotation discrepancy

Compelling story with the world as a villain



Is Calculus necessary for computer science student? [closed]


What math should a computer scientist take in college?How to prepare for Integral Calculus (Calculus 2)Learning Proofs (for Computer Science)Looking for data science-oriented “Applied Maths for dummies” summer school






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








25












$begingroup$


I'm a freshman in university and I'm studying Computer science and engineering. This will be my second year of studying. We don't have Calculus as a mandatory class but I can take it from elective classes.



More senior students are telling me calculus is a very hard class and I shouldn't take it. Should I take easier classes just to pass? Or should I take it anyway even if I'm really bad at math but enjoy math a lot?



Is calculus necessary for my future as a student and would it help me in data science or AI? That's what I'm really interested in and I want to work for either of them. Would Calculus make my education easier in the future and in my work or should I just take something just to pass? In my next semesters, I want to take just AI and DS classes (Data mining, Data Science, Mechanical Learning, etc).



Thanks for your time reading and answering my question.










share|cite|improve this question











$endgroup$




closed as off-topic by Xander Henderson, воитель, KReiser, José Carlos Santos, YuiTo Cheng Aug 11 at 23:40


This question appears to be off-topic. The users who voted to close gave this specific reason:


  • "Seeking personal advice. Questions about choosing a course, academic program, career path, etc. are off-topic. Such questions should be directed to those employed by the institution in question, or other qualified individuals who know your specific circumstances." – Xander Henderson, воитель, KReiser, José Carlos Santos, YuiTo Cheng
If this question can be reworded to fit the rules in the help center, please edit the question.












  • 10




    $begingroup$
    May be more suitable for Mathematics Educators. My opinion is that while not necessary (you can clearly opt not to take it), calculus is certainly very applicable, and can help you think about certain problems.
    $endgroup$
    – Simply Beautiful Art
    Aug 10 at 23:19






  • 2




    $begingroup$
    initially, no because the low level courses are taught without the theory in mind (multivar calc and complex analysis). but if you want to do research you do need multivariable calculus or complex analysis which require calculus I as prerequisites. Calc I may not even be applied directly but the concepts are anyways.
    $endgroup$
    – user29418
    Aug 10 at 23:20






  • 2




    $begingroup$
    I am also of the opinion that if you enjoy it, you should take it. If you think you might fail, you can consider trying to study it a bit before taking the course, or just study it on your own (join some study group or something). Calculus concepts, at the very least, are very easy to learn.
    $endgroup$
    – Simply Beautiful Art
    Aug 10 at 23:21







  • 2




    $begingroup$
    If you want to do AI, calculus is absolutely required. It's also important for data science, because without calculus you won't understand what machine learning algorithms are doing under the hood. Also Calculus is a delightful subject.
    $endgroup$
    – littleO
    Aug 10 at 23:39






  • 3




    $begingroup$
    "More senior students are telling me calculus is a very hard class and I shouldn't take it" -- I would be surprised if those are computer science and engineering students with an interest in data science and AI. Don't let the questionable opinions of the math phobic dissuade you from learning something which in the grand scheme of things is not particularly hard.
    $endgroup$
    – John Coleman
    Aug 11 at 13:17

















25












$begingroup$


I'm a freshman in university and I'm studying Computer science and engineering. This will be my second year of studying. We don't have Calculus as a mandatory class but I can take it from elective classes.



More senior students are telling me calculus is a very hard class and I shouldn't take it. Should I take easier classes just to pass? Or should I take it anyway even if I'm really bad at math but enjoy math a lot?



Is calculus necessary for my future as a student and would it help me in data science or AI? That's what I'm really interested in and I want to work for either of them. Would Calculus make my education easier in the future and in my work or should I just take something just to pass? In my next semesters, I want to take just AI and DS classes (Data mining, Data Science, Mechanical Learning, etc).



Thanks for your time reading and answering my question.










share|cite|improve this question











$endgroup$




closed as off-topic by Xander Henderson, воитель, KReiser, José Carlos Santos, YuiTo Cheng Aug 11 at 23:40


This question appears to be off-topic. The users who voted to close gave this specific reason:


  • "Seeking personal advice. Questions about choosing a course, academic program, career path, etc. are off-topic. Such questions should be directed to those employed by the institution in question, or other qualified individuals who know your specific circumstances." – Xander Henderson, воитель, KReiser, José Carlos Santos, YuiTo Cheng
If this question can be reworded to fit the rules in the help center, please edit the question.












  • 10




    $begingroup$
    May be more suitable for Mathematics Educators. My opinion is that while not necessary (you can clearly opt not to take it), calculus is certainly very applicable, and can help you think about certain problems.
    $endgroup$
    – Simply Beautiful Art
    Aug 10 at 23:19






  • 2




    $begingroup$
    initially, no because the low level courses are taught without the theory in mind (multivar calc and complex analysis). but if you want to do research you do need multivariable calculus or complex analysis which require calculus I as prerequisites. Calc I may not even be applied directly but the concepts are anyways.
    $endgroup$
    – user29418
    Aug 10 at 23:20






  • 2




    $begingroup$
    I am also of the opinion that if you enjoy it, you should take it. If you think you might fail, you can consider trying to study it a bit before taking the course, or just study it on your own (join some study group or something). Calculus concepts, at the very least, are very easy to learn.
    $endgroup$
    – Simply Beautiful Art
    Aug 10 at 23:21







  • 2




    $begingroup$
    If you want to do AI, calculus is absolutely required. It's also important for data science, because without calculus you won't understand what machine learning algorithms are doing under the hood. Also Calculus is a delightful subject.
    $endgroup$
    – littleO
    Aug 10 at 23:39






  • 3




    $begingroup$
    "More senior students are telling me calculus is a very hard class and I shouldn't take it" -- I would be surprised if those are computer science and engineering students with an interest in data science and AI. Don't let the questionable opinions of the math phobic dissuade you from learning something which in the grand scheme of things is not particularly hard.
    $endgroup$
    – John Coleman
    Aug 11 at 13:17













25












25








25


2



$begingroup$


I'm a freshman in university and I'm studying Computer science and engineering. This will be my second year of studying. We don't have Calculus as a mandatory class but I can take it from elective classes.



More senior students are telling me calculus is a very hard class and I shouldn't take it. Should I take easier classes just to pass? Or should I take it anyway even if I'm really bad at math but enjoy math a lot?



Is calculus necessary for my future as a student and would it help me in data science or AI? That's what I'm really interested in and I want to work for either of them. Would Calculus make my education easier in the future and in my work or should I just take something just to pass? In my next semesters, I want to take just AI and DS classes (Data mining, Data Science, Mechanical Learning, etc).



Thanks for your time reading and answering my question.










share|cite|improve this question











$endgroup$




I'm a freshman in university and I'm studying Computer science and engineering. This will be my second year of studying. We don't have Calculus as a mandatory class but I can take it from elective classes.



More senior students are telling me calculus is a very hard class and I shouldn't take it. Should I take easier classes just to pass? Or should I take it anyway even if I'm really bad at math but enjoy math a lot?



Is calculus necessary for my future as a student and would it help me in data science or AI? That's what I'm really interested in and I want to work for either of them. Would Calculus make my education easier in the future and in my work or should I just take something just to pass? In my next semesters, I want to take just AI and DS classes (Data mining, Data Science, Mechanical Learning, etc).



Thanks for your time reading and answering my question.







calculus soft-question computer-science education






share|cite|improve this question















share|cite|improve this question













share|cite|improve this question




share|cite|improve this question








edited Aug 12 at 22:21









Zacky

13.4k1 gold badge22 silver badges85 bronze badges




13.4k1 gold badge22 silver badges85 bronze badges










asked Aug 10 at 23:09









HunaliHunali

1401 silver badge6 bronze badges




1401 silver badge6 bronze badges





closed as off-topic by Xander Henderson, воитель, KReiser, José Carlos Santos, YuiTo Cheng Aug 11 at 23:40


This question appears to be off-topic. The users who voted to close gave this specific reason:


  • "Seeking personal advice. Questions about choosing a course, academic program, career path, etc. are off-topic. Such questions should be directed to those employed by the institution in question, or other qualified individuals who know your specific circumstances." – Xander Henderson, воитель, KReiser, José Carlos Santos, YuiTo Cheng
If this question can be reworded to fit the rules in the help center, please edit the question.









closed as off-topic by Xander Henderson, воитель, KReiser, José Carlos Santos, YuiTo Cheng Aug 11 at 23:40


This question appears to be off-topic. The users who voted to close gave this specific reason:


  • "Seeking personal advice. Questions about choosing a course, academic program, career path, etc. are off-topic. Such questions should be directed to those employed by the institution in question, or other qualified individuals who know your specific circumstances." – Xander Henderson, воитель, KReiser, José Carlos Santos, YuiTo Cheng
If this question can be reworded to fit the rules in the help center, please edit the question.







closed as off-topic by Xander Henderson, воитель, KReiser, José Carlos Santos, YuiTo Cheng Aug 11 at 23:40


This question appears to be off-topic. The users who voted to close gave this specific reason:


  • "Seeking personal advice. Questions about choosing a course, academic program, career path, etc. are off-topic. Such questions should be directed to those employed by the institution in question, or other qualified individuals who know your specific circumstances." – Xander Henderson, воитель, KReiser, José Carlos Santos, YuiTo Cheng
If this question can be reworded to fit the rules in the help center, please edit the question.







  • 10




    $begingroup$
    May be more suitable for Mathematics Educators. My opinion is that while not necessary (you can clearly opt not to take it), calculus is certainly very applicable, and can help you think about certain problems.
    $endgroup$
    – Simply Beautiful Art
    Aug 10 at 23:19






  • 2




    $begingroup$
    initially, no because the low level courses are taught without the theory in mind (multivar calc and complex analysis). but if you want to do research you do need multivariable calculus or complex analysis which require calculus I as prerequisites. Calc I may not even be applied directly but the concepts are anyways.
    $endgroup$
    – user29418
    Aug 10 at 23:20






  • 2




    $begingroup$
    I am also of the opinion that if you enjoy it, you should take it. If you think you might fail, you can consider trying to study it a bit before taking the course, or just study it on your own (join some study group or something). Calculus concepts, at the very least, are very easy to learn.
    $endgroup$
    – Simply Beautiful Art
    Aug 10 at 23:21







  • 2




    $begingroup$
    If you want to do AI, calculus is absolutely required. It's also important for data science, because without calculus you won't understand what machine learning algorithms are doing under the hood. Also Calculus is a delightful subject.
    $endgroup$
    – littleO
    Aug 10 at 23:39






  • 3




    $begingroup$
    "More senior students are telling me calculus is a very hard class and I shouldn't take it" -- I would be surprised if those are computer science and engineering students with an interest in data science and AI. Don't let the questionable opinions of the math phobic dissuade you from learning something which in the grand scheme of things is not particularly hard.
    $endgroup$
    – John Coleman
    Aug 11 at 13:17












  • 10




    $begingroup$
    May be more suitable for Mathematics Educators. My opinion is that while not necessary (you can clearly opt not to take it), calculus is certainly very applicable, and can help you think about certain problems.
    $endgroup$
    – Simply Beautiful Art
    Aug 10 at 23:19






  • 2




    $begingroup$
    initially, no because the low level courses are taught without the theory in mind (multivar calc and complex analysis). but if you want to do research you do need multivariable calculus or complex analysis which require calculus I as prerequisites. Calc I may not even be applied directly but the concepts are anyways.
    $endgroup$
    – user29418
    Aug 10 at 23:20






  • 2




    $begingroup$
    I am also of the opinion that if you enjoy it, you should take it. If you think you might fail, you can consider trying to study it a bit before taking the course, or just study it on your own (join some study group or something). Calculus concepts, at the very least, are very easy to learn.
    $endgroup$
    – Simply Beautiful Art
    Aug 10 at 23:21







  • 2




    $begingroup$
    If you want to do AI, calculus is absolutely required. It's also important for data science, because without calculus you won't understand what machine learning algorithms are doing under the hood. Also Calculus is a delightful subject.
    $endgroup$
    – littleO
    Aug 10 at 23:39






  • 3




    $begingroup$
    "More senior students are telling me calculus is a very hard class and I shouldn't take it" -- I would be surprised if those are computer science and engineering students with an interest in data science and AI. Don't let the questionable opinions of the math phobic dissuade you from learning something which in the grand scheme of things is not particularly hard.
    $endgroup$
    – John Coleman
    Aug 11 at 13:17







10




10




$begingroup$
May be more suitable for Mathematics Educators. My opinion is that while not necessary (you can clearly opt not to take it), calculus is certainly very applicable, and can help you think about certain problems.
$endgroup$
– Simply Beautiful Art
Aug 10 at 23:19




$begingroup$
May be more suitable for Mathematics Educators. My opinion is that while not necessary (you can clearly opt not to take it), calculus is certainly very applicable, and can help you think about certain problems.
$endgroup$
– Simply Beautiful Art
Aug 10 at 23:19




2




2




$begingroup$
initially, no because the low level courses are taught without the theory in mind (multivar calc and complex analysis). but if you want to do research you do need multivariable calculus or complex analysis which require calculus I as prerequisites. Calc I may not even be applied directly but the concepts are anyways.
$endgroup$
– user29418
Aug 10 at 23:20




$begingroup$
initially, no because the low level courses are taught without the theory in mind (multivar calc and complex analysis). but if you want to do research you do need multivariable calculus or complex analysis which require calculus I as prerequisites. Calc I may not even be applied directly but the concepts are anyways.
$endgroup$
– user29418
Aug 10 at 23:20




2




2




$begingroup$
I am also of the opinion that if you enjoy it, you should take it. If you think you might fail, you can consider trying to study it a bit before taking the course, or just study it on your own (join some study group or something). Calculus concepts, at the very least, are very easy to learn.
$endgroup$
– Simply Beautiful Art
Aug 10 at 23:21





$begingroup$
I am also of the opinion that if you enjoy it, you should take it. If you think you might fail, you can consider trying to study it a bit before taking the course, or just study it on your own (join some study group or something). Calculus concepts, at the very least, are very easy to learn.
$endgroup$
– Simply Beautiful Art
Aug 10 at 23:21





2




2




$begingroup$
If you want to do AI, calculus is absolutely required. It's also important for data science, because without calculus you won't understand what machine learning algorithms are doing under the hood. Also Calculus is a delightful subject.
$endgroup$
– littleO
Aug 10 at 23:39




$begingroup$
If you want to do AI, calculus is absolutely required. It's also important for data science, because without calculus you won't understand what machine learning algorithms are doing under the hood. Also Calculus is a delightful subject.
$endgroup$
– littleO
Aug 10 at 23:39




3




3




$begingroup$
"More senior students are telling me calculus is a very hard class and I shouldn't take it" -- I would be surprised if those are computer science and engineering students with an interest in data science and AI. Don't let the questionable opinions of the math phobic dissuade you from learning something which in the grand scheme of things is not particularly hard.
$endgroup$
– John Coleman
Aug 11 at 13:17




$begingroup$
"More senior students are telling me calculus is a very hard class and I shouldn't take it" -- I would be surprised if those are computer science and engineering students with an interest in data science and AI. Don't let the questionable opinions of the math phobic dissuade you from learning something which in the grand scheme of things is not particularly hard.
$endgroup$
– John Coleman
Aug 11 at 13:17










9 Answers
9






active

oldest

votes


















38













$begingroup$

A software engineer probably does not need to study calculus, and it is less likely to be useful than graph theory, elementary logic, study of algorithms, etc. Of course, if you are implementing algorithms for use in science and engineering, calculus and numerical methods for approximating calculus operations will show up all of the time.



AI, on the other hand, is all about calculus (despite the best attempts of the machine learning community to "rebrand" concepts like numerical optimization, the chain rule, gradient descent, etc.) It's hard for me to imagine a successful data analyst or AI researcher who doesn't know at least the basics of calculus.



EDIT: In response to the answer suggesting you do not need calculus to be a data scientist at a company like Google, consider this blog post from a Googler with advice on the job search:




Math like linear algebra and calculus are more or less expected of anyone we’d hire as a data scientist







share|cite|improve this answer











$endgroup$














  • $begingroup$
    +1. For general Computer science, Linear Algebra is probably enough. For Data Science, you'll want both Calculus and Linear Algebra -- though Linear Algebra is more important if you can only take one.
    $endgroup$
    – Wayne
    Aug 11 at 12:39







  • 2




    $begingroup$
    @Wayne Linear algebra without calculus is like decaffeinated coffee - all the best bits have been removed. The bottom line is, if you choose not to learn calculus, you have shut yourself out from a lot of employment opportunities for the next 40 or 50 years after you graduate - and nobody knows what will turn out to be the hot topics in CS in that timescale!
    $endgroup$
    – alephzero
    Aug 11 at 18:23



















23













$begingroup$

Calculus is a fundamental mathematical science - Learn it to broaden your mind and not necessarily to be graded at.it. It is fundamental for scientific computing. Programming in scientific filed specially engineering require background. I am surprised that you are studying engineering without calculus!!!






share|cite|improve this answer









$endgroup$






















    6













    $begingroup$

    I’m a CS student myself so I can relate to what you’re asking. First of all, it really matters what branch of CS you’d like to pursue. For example, if you want to do cyber security(more specifically, cryptography), you will definitely need to know a lot of number theory. In your case, you’re interested in AI and data science but that’s still a bit vague; most people who’d like to do AI/data science, don’t really care about what’s going “under the hood”(which is not really that bad) and use libraries such as Pytorch, Tensor Flow, etc(but note that these people aren’t just AI enthusiastics; many of them work for big companies and are rather successful in their respective field). But there are people that are trying to make new, cutting-edge algorithms and write papers and in that case, you definitely will need more than just high school level math(university level calculus, linear algebra and statistics mostly). So if you are one of the former, high school level calculus, some university-level linear algebra and statistics(first year) would suffice. But if you’re one of the latter, you will need a lot more than just high school calculus and basic university linear algebra and statistics.



    To sum it up, most people who do AI(again, not just enthusiastics; people who work for Google, Facebook, etc) do not always understand what’s going on in a library/module. The people who write these algorithms and papers do that. But if you have the time, try learning calculus, linear algebra and statistics so you’ll get a better understanding of what’s going on and maybe even you can make new algorithms that change the AI industry:)



    EDIT



    I think some people mistook what I said about some people not knowing how something works in AI: Does every successful data scientist know how regression works? Of course they do! How and why batch gradient descent works? 100%(you need calculus for these)! But do they all also know how restricted boltzman machine works? Probably not. Do they all understand VBEM? Of course not! The point is, I didn’t mean that people working for Google don’t know calculus or how an algorithm such as deep neural nets or NLP works; I just meant that you don’t need to be as good as most math students at calculus.
    Good luck!






    share|cite|improve this answer











    $endgroup$














    • $begingroup$
      It's funny that in case of AI, your answer seems like opposite of the other answer provided, in particular when you read his second paragraph.
      $endgroup$
      – imranfat
      Aug 10 at 23:46










    • $begingroup$
      @imranfat I actually agree with Borna that many users of libraries like TensorFlow do not fully understand (and do not need to fully understand) what they are doing under the hood. But even if you are not a research-level AI specialist, some basic understanding of how e.g. back-propagation works is expected.
      $endgroup$
      – user7530
      Aug 10 at 23:50







    • 2




      $begingroup$
      @user7530. I see. My answer is in reference to one of my family member who is pursuing a PhD in AI, and he talks about Calculus and Linear Algebra ALL THE TIME. I am just a math dude, but I can see AI alive and well when watching the video clip "Paranoia" by the Art of Noise. Lots of Linear Algebra going on over there as well (Max Headroom), and that was in 1986!
      $endgroup$
      – imranfat
      Aug 10 at 23:54



















    3













    $begingroup$

    It depends what you mean by calculus. Do you need to know basic differentiation/integration? Definitely, I don't know how you could take a class such as digital signal processing (which I assume would be part of a CS and engineering degree) without that. Do you need to learn loads of methods for solving tricky integrals/differential equations, or do a rigorous course in real analysis? No, unless you want to specialise in related areas.






    share|cite|improve this answer











    $endgroup$






















      2













      $begingroup$

      Mathematics needed in Computer Science (Graph theory, Boolean algebra, Number theory) Vs Mathematics for other traditional Engineering disciplines is usually contrasted as Discrete Vs Continuous mathematics.



      That is a correct, best, and shortest description of the contrast. So one can find people who have not yet learnt any serious calculus excelling in Programming and in software. This depends on the nature of applications one wants to handle as a software professional. If you want to be in software working for modelling financial markets or sending rockets to space Calculus is the way.



      (Self-Promotion): I have written an article in a Science Education Journal on this aspect
      analyzing what aspect makes it to work in some application domain and fail in another.
      Here is the link






      share|cite|improve this answer









      $endgroup$






















        2













        $begingroup$

        Calculus (and analysis) is actually far more useful in computer science than one may think. (Also: computer science $neq$ programming.)



        I need not mention that machine learning (especially learning theory) is all about analysis, probability theory and topology (usually on Euclidean spaces), all of which require calculus. Information theory requires knowledge of measure-theoretic probability theory. Robotics requires calculus for movement planning, etc. Computer graphics require a lot of analysis and even some knowledge of differential geometry, which could not be studies without a solid knowledge of analysis.



        Even in fields that seem unrelated to analysis, it can still be useful. Let's use my field of research, programming languages & logic, as an example.



        Infinite-precision computation, for example, uses many important concepts in real analysis. Note the fact that all computable functions on $mathbbR$ are continuous. Using this insight, problems about infinite-precision computation can easily be transformed into problems about properties of functions on and the topological properties of the Euclidean spaces $mathbbR^n$ (see, e.g. this talk and this paper). The paper was published in Logic in Computer Science 2018, which has little to do with analysis!



        Of course, many other related fields of research require knowledge about analysis, for example the design and semantics probabilistic programming languages, which requires knowledge of measure theory. Not to mention that studying calculus and analysis is quite fundamental in building up mathematical maturity that is required for advanced mathematical topics required for computer science, and analysis can be an important pathway to more advanced topics of practical value in computer science, such as probability theory and topology. (You can study topology without real analysis, albeit that makes it much harder. You definitely cannot study probability theory without calculus.)






        share|cite|improve this answer









        $endgroup$






















          1













          $begingroup$

          The short answer is that it really depends what level of calculus you already have and what field of CS you're interested in. If you know the fundamental theorem, common integral/differential identities, the chain rule, product rule, and so on (basically, simple high school calculus), you've got enough calculus for CS in general, but for some parts of AI you'll want more, and in some application domains (anything involving control theory in the EE sense, quantitive finance, all sorts of heavy numerical engineering-related SE work) it is likely to be useful.



          I've probably regretted not studying more formal algebra, graph theory, number theory, etc. more often than I've used university-level calculus, but most universities seem to demand it for CS students.



          You'll need a whole load of statistics and probability (Bayes's Theorem and so on) for AI but you'll probably cover that in a CS-coded course.






          share|cite|improve this answer









          $endgroup$






















            0













            $begingroup$

            Take a look a the degree requirements for a CS at your school. In addition to the classes that deal with CS, there are classes that have nothing to do with the field, but they are still required for your degree.



            It's certainly true that some of these courses help ensure that you're intelligent enough overall for working in a modern economy, but much of the justification is that it makes you well-rounded (whatever that is). In my case I have classes in German, sociology, public speaking, biology, environmental science, history, and what-not, none of which contribute to what I do as a professional developer (except perhaps to give me something to talk about at lunch that isn't work-related).



            So given that there are courses that are not necessary at all to be a good software developer, and yet are still required for the degree, then it stands to reason that anything which is not required must be entirely superfluous.



            In the case of calculus, it is certainly nice to know. Integral calculus, in particular, requires a good deal of imagination, which is definitely a plus when solving problems in any field.






            share|cite|improve this answer









            $endgroup$






















              0













              $begingroup$

              Computer science is not programming. Complexity theory and algorithm analysis are unthinkable without analysis. Look up the "master theorem" of complexity theory and a few examples of its application. Apart from algorithmic analysis, a lot of programming tasks revolve about a problem space described with mathematical analysis. AI is determined by methods like the simplex theorem, gradient descent, and things like neural networks with learning dynamics described by differential equations. Recognition tasks are done using theories of neural fields and their dynamics described, for example, with the Amari field equations.



              If you decide to forget about analysis, you close a whole lot of doors in computer science for you, and even a non-trivial number of doors for programming jobs that require a bit of problem analysis and algorithmic planning.






              share|cite|improve this answer









              $endgroup$























                9 Answers
                9






                active

                oldest

                votes








                9 Answers
                9






                active

                oldest

                votes









                active

                oldest

                votes






                active

                oldest

                votes









                38













                $begingroup$

                A software engineer probably does not need to study calculus, and it is less likely to be useful than graph theory, elementary logic, study of algorithms, etc. Of course, if you are implementing algorithms for use in science and engineering, calculus and numerical methods for approximating calculus operations will show up all of the time.



                AI, on the other hand, is all about calculus (despite the best attempts of the machine learning community to "rebrand" concepts like numerical optimization, the chain rule, gradient descent, etc.) It's hard for me to imagine a successful data analyst or AI researcher who doesn't know at least the basics of calculus.



                EDIT: In response to the answer suggesting you do not need calculus to be a data scientist at a company like Google, consider this blog post from a Googler with advice on the job search:




                Math like linear algebra and calculus are more or less expected of anyone we’d hire as a data scientist







                share|cite|improve this answer











                $endgroup$














                • $begingroup$
                  +1. For general Computer science, Linear Algebra is probably enough. For Data Science, you'll want both Calculus and Linear Algebra -- though Linear Algebra is more important if you can only take one.
                  $endgroup$
                  – Wayne
                  Aug 11 at 12:39







                • 2




                  $begingroup$
                  @Wayne Linear algebra without calculus is like decaffeinated coffee - all the best bits have been removed. The bottom line is, if you choose not to learn calculus, you have shut yourself out from a lot of employment opportunities for the next 40 or 50 years after you graduate - and nobody knows what will turn out to be the hot topics in CS in that timescale!
                  $endgroup$
                  – alephzero
                  Aug 11 at 18:23
















                38













                $begingroup$

                A software engineer probably does not need to study calculus, and it is less likely to be useful than graph theory, elementary logic, study of algorithms, etc. Of course, if you are implementing algorithms for use in science and engineering, calculus and numerical methods for approximating calculus operations will show up all of the time.



                AI, on the other hand, is all about calculus (despite the best attempts of the machine learning community to "rebrand" concepts like numerical optimization, the chain rule, gradient descent, etc.) It's hard for me to imagine a successful data analyst or AI researcher who doesn't know at least the basics of calculus.



                EDIT: In response to the answer suggesting you do not need calculus to be a data scientist at a company like Google, consider this blog post from a Googler with advice on the job search:




                Math like linear algebra and calculus are more or less expected of anyone we’d hire as a data scientist







                share|cite|improve this answer











                $endgroup$














                • $begingroup$
                  +1. For general Computer science, Linear Algebra is probably enough. For Data Science, you'll want both Calculus and Linear Algebra -- though Linear Algebra is more important if you can only take one.
                  $endgroup$
                  – Wayne
                  Aug 11 at 12:39







                • 2




                  $begingroup$
                  @Wayne Linear algebra without calculus is like decaffeinated coffee - all the best bits have been removed. The bottom line is, if you choose not to learn calculus, you have shut yourself out from a lot of employment opportunities for the next 40 or 50 years after you graduate - and nobody knows what will turn out to be the hot topics in CS in that timescale!
                  $endgroup$
                  – alephzero
                  Aug 11 at 18:23














                38














                38










                38







                $begingroup$

                A software engineer probably does not need to study calculus, and it is less likely to be useful than graph theory, elementary logic, study of algorithms, etc. Of course, if you are implementing algorithms for use in science and engineering, calculus and numerical methods for approximating calculus operations will show up all of the time.



                AI, on the other hand, is all about calculus (despite the best attempts of the machine learning community to "rebrand" concepts like numerical optimization, the chain rule, gradient descent, etc.) It's hard for me to imagine a successful data analyst or AI researcher who doesn't know at least the basics of calculus.



                EDIT: In response to the answer suggesting you do not need calculus to be a data scientist at a company like Google, consider this blog post from a Googler with advice on the job search:




                Math like linear algebra and calculus are more or less expected of anyone we’d hire as a data scientist







                share|cite|improve this answer











                $endgroup$



                A software engineer probably does not need to study calculus, and it is less likely to be useful than graph theory, elementary logic, study of algorithms, etc. Of course, if you are implementing algorithms for use in science and engineering, calculus and numerical methods for approximating calculus operations will show up all of the time.



                AI, on the other hand, is all about calculus (despite the best attempts of the machine learning community to "rebrand" concepts like numerical optimization, the chain rule, gradient descent, etc.) It's hard for me to imagine a successful data analyst or AI researcher who doesn't know at least the basics of calculus.



                EDIT: In response to the answer suggesting you do not need calculus to be a data scientist at a company like Google, consider this blog post from a Googler with advice on the job search:




                Math like linear algebra and calculus are more or less expected of anyone we’d hire as a data scientist








                share|cite|improve this answer














                share|cite|improve this answer



                share|cite|improve this answer








                edited Aug 10 at 23:54

























                answered Aug 10 at 23:29









                user7530user7530

                36.6k8 gold badges64 silver badges120 bronze badges




                36.6k8 gold badges64 silver badges120 bronze badges














                • $begingroup$
                  +1. For general Computer science, Linear Algebra is probably enough. For Data Science, you'll want both Calculus and Linear Algebra -- though Linear Algebra is more important if you can only take one.
                  $endgroup$
                  – Wayne
                  Aug 11 at 12:39







                • 2




                  $begingroup$
                  @Wayne Linear algebra without calculus is like decaffeinated coffee - all the best bits have been removed. The bottom line is, if you choose not to learn calculus, you have shut yourself out from a lot of employment opportunities for the next 40 or 50 years after you graduate - and nobody knows what will turn out to be the hot topics in CS in that timescale!
                  $endgroup$
                  – alephzero
                  Aug 11 at 18:23

















                • $begingroup$
                  +1. For general Computer science, Linear Algebra is probably enough. For Data Science, you'll want both Calculus and Linear Algebra -- though Linear Algebra is more important if you can only take one.
                  $endgroup$
                  – Wayne
                  Aug 11 at 12:39







                • 2




                  $begingroup$
                  @Wayne Linear algebra without calculus is like decaffeinated coffee - all the best bits have been removed. The bottom line is, if you choose not to learn calculus, you have shut yourself out from a lot of employment opportunities for the next 40 or 50 years after you graduate - and nobody knows what will turn out to be the hot topics in CS in that timescale!
                  $endgroup$
                  – alephzero
                  Aug 11 at 18:23
















                $begingroup$
                +1. For general Computer science, Linear Algebra is probably enough. For Data Science, you'll want both Calculus and Linear Algebra -- though Linear Algebra is more important if you can only take one.
                $endgroup$
                – Wayne
                Aug 11 at 12:39





                $begingroup$
                +1. For general Computer science, Linear Algebra is probably enough. For Data Science, you'll want both Calculus and Linear Algebra -- though Linear Algebra is more important if you can only take one.
                $endgroup$
                – Wayne
                Aug 11 at 12:39





                2




                2




                $begingroup$
                @Wayne Linear algebra without calculus is like decaffeinated coffee - all the best bits have been removed. The bottom line is, if you choose not to learn calculus, you have shut yourself out from a lot of employment opportunities for the next 40 or 50 years after you graduate - and nobody knows what will turn out to be the hot topics in CS in that timescale!
                $endgroup$
                – alephzero
                Aug 11 at 18:23





                $begingroup$
                @Wayne Linear algebra without calculus is like decaffeinated coffee - all the best bits have been removed. The bottom line is, if you choose not to learn calculus, you have shut yourself out from a lot of employment opportunities for the next 40 or 50 years after you graduate - and nobody knows what will turn out to be the hot topics in CS in that timescale!
                $endgroup$
                – alephzero
                Aug 11 at 18:23














                23













                $begingroup$

                Calculus is a fundamental mathematical science - Learn it to broaden your mind and not necessarily to be graded at.it. It is fundamental for scientific computing. Programming in scientific filed specially engineering require background. I am surprised that you are studying engineering without calculus!!!






                share|cite|improve this answer









                $endgroup$



















                  23













                  $begingroup$

                  Calculus is a fundamental mathematical science - Learn it to broaden your mind and not necessarily to be graded at.it. It is fundamental for scientific computing. Programming in scientific filed specially engineering require background. I am surprised that you are studying engineering without calculus!!!






                  share|cite|improve this answer









                  $endgroup$

















                    23














                    23










                    23







                    $begingroup$

                    Calculus is a fundamental mathematical science - Learn it to broaden your mind and not necessarily to be graded at.it. It is fundamental for scientific computing. Programming in scientific filed specially engineering require background. I am surprised that you are studying engineering without calculus!!!






                    share|cite|improve this answer









                    $endgroup$



                    Calculus is a fundamental mathematical science - Learn it to broaden your mind and not necessarily to be graded at.it. It is fundamental for scientific computing. Programming in scientific filed specially engineering require background. I am surprised that you are studying engineering without calculus!!!







                    share|cite|improve this answer












                    share|cite|improve this answer



                    share|cite|improve this answer










                    answered Aug 10 at 23:49









                    NoChanceNoChance

                    4,6782 gold badges13 silver badges22 bronze badges




                    4,6782 gold badges13 silver badges22 bronze badges
























                        6













                        $begingroup$

                        I’m a CS student myself so I can relate to what you’re asking. First of all, it really matters what branch of CS you’d like to pursue. For example, if you want to do cyber security(more specifically, cryptography), you will definitely need to know a lot of number theory. In your case, you’re interested in AI and data science but that’s still a bit vague; most people who’d like to do AI/data science, don’t really care about what’s going “under the hood”(which is not really that bad) and use libraries such as Pytorch, Tensor Flow, etc(but note that these people aren’t just AI enthusiastics; many of them work for big companies and are rather successful in their respective field). But there are people that are trying to make new, cutting-edge algorithms and write papers and in that case, you definitely will need more than just high school level math(university level calculus, linear algebra and statistics mostly). So if you are one of the former, high school level calculus, some university-level linear algebra and statistics(first year) would suffice. But if you’re one of the latter, you will need a lot more than just high school calculus and basic university linear algebra and statistics.



                        To sum it up, most people who do AI(again, not just enthusiastics; people who work for Google, Facebook, etc) do not always understand what’s going on in a library/module. The people who write these algorithms and papers do that. But if you have the time, try learning calculus, linear algebra and statistics so you’ll get a better understanding of what’s going on and maybe even you can make new algorithms that change the AI industry:)



                        EDIT



                        I think some people mistook what I said about some people not knowing how something works in AI: Does every successful data scientist know how regression works? Of course they do! How and why batch gradient descent works? 100%(you need calculus for these)! But do they all also know how restricted boltzman machine works? Probably not. Do they all understand VBEM? Of course not! The point is, I didn’t mean that people working for Google don’t know calculus or how an algorithm such as deep neural nets or NLP works; I just meant that you don’t need to be as good as most math students at calculus.
                        Good luck!






                        share|cite|improve this answer











                        $endgroup$














                        • $begingroup$
                          It's funny that in case of AI, your answer seems like opposite of the other answer provided, in particular when you read his second paragraph.
                          $endgroup$
                          – imranfat
                          Aug 10 at 23:46










                        • $begingroup$
                          @imranfat I actually agree with Borna that many users of libraries like TensorFlow do not fully understand (and do not need to fully understand) what they are doing under the hood. But even if you are not a research-level AI specialist, some basic understanding of how e.g. back-propagation works is expected.
                          $endgroup$
                          – user7530
                          Aug 10 at 23:50







                        • 2




                          $begingroup$
                          @user7530. I see. My answer is in reference to one of my family member who is pursuing a PhD in AI, and he talks about Calculus and Linear Algebra ALL THE TIME. I am just a math dude, but I can see AI alive and well when watching the video clip "Paranoia" by the Art of Noise. Lots of Linear Algebra going on over there as well (Max Headroom), and that was in 1986!
                          $endgroup$
                          – imranfat
                          Aug 10 at 23:54
















                        6













                        $begingroup$

                        I’m a CS student myself so I can relate to what you’re asking. First of all, it really matters what branch of CS you’d like to pursue. For example, if you want to do cyber security(more specifically, cryptography), you will definitely need to know a lot of number theory. In your case, you’re interested in AI and data science but that’s still a bit vague; most people who’d like to do AI/data science, don’t really care about what’s going “under the hood”(which is not really that bad) and use libraries such as Pytorch, Tensor Flow, etc(but note that these people aren’t just AI enthusiastics; many of them work for big companies and are rather successful in their respective field). But there are people that are trying to make new, cutting-edge algorithms and write papers and in that case, you definitely will need more than just high school level math(university level calculus, linear algebra and statistics mostly). So if you are one of the former, high school level calculus, some university-level linear algebra and statistics(first year) would suffice. But if you’re one of the latter, you will need a lot more than just high school calculus and basic university linear algebra and statistics.



                        To sum it up, most people who do AI(again, not just enthusiastics; people who work for Google, Facebook, etc) do not always understand what’s going on in a library/module. The people who write these algorithms and papers do that. But if you have the time, try learning calculus, linear algebra and statistics so you’ll get a better understanding of what’s going on and maybe even you can make new algorithms that change the AI industry:)



                        EDIT



                        I think some people mistook what I said about some people not knowing how something works in AI: Does every successful data scientist know how regression works? Of course they do! How and why batch gradient descent works? 100%(you need calculus for these)! But do they all also know how restricted boltzman machine works? Probably not. Do they all understand VBEM? Of course not! The point is, I didn’t mean that people working for Google don’t know calculus or how an algorithm such as deep neural nets or NLP works; I just meant that you don’t need to be as good as most math students at calculus.
                        Good luck!






                        share|cite|improve this answer











                        $endgroup$














                        • $begingroup$
                          It's funny that in case of AI, your answer seems like opposite of the other answer provided, in particular when you read his second paragraph.
                          $endgroup$
                          – imranfat
                          Aug 10 at 23:46










                        • $begingroup$
                          @imranfat I actually agree with Borna that many users of libraries like TensorFlow do not fully understand (and do not need to fully understand) what they are doing under the hood. But even if you are not a research-level AI specialist, some basic understanding of how e.g. back-propagation works is expected.
                          $endgroup$
                          – user7530
                          Aug 10 at 23:50







                        • 2




                          $begingroup$
                          @user7530. I see. My answer is in reference to one of my family member who is pursuing a PhD in AI, and he talks about Calculus and Linear Algebra ALL THE TIME. I am just a math dude, but I can see AI alive and well when watching the video clip "Paranoia" by the Art of Noise. Lots of Linear Algebra going on over there as well (Max Headroom), and that was in 1986!
                          $endgroup$
                          – imranfat
                          Aug 10 at 23:54














                        6














                        6










                        6







                        $begingroup$

                        I’m a CS student myself so I can relate to what you’re asking. First of all, it really matters what branch of CS you’d like to pursue. For example, if you want to do cyber security(more specifically, cryptography), you will definitely need to know a lot of number theory. In your case, you’re interested in AI and data science but that’s still a bit vague; most people who’d like to do AI/data science, don’t really care about what’s going “under the hood”(which is not really that bad) and use libraries such as Pytorch, Tensor Flow, etc(but note that these people aren’t just AI enthusiastics; many of them work for big companies and are rather successful in their respective field). But there are people that are trying to make new, cutting-edge algorithms and write papers and in that case, you definitely will need more than just high school level math(university level calculus, linear algebra and statistics mostly). So if you are one of the former, high school level calculus, some university-level linear algebra and statistics(first year) would suffice. But if you’re one of the latter, you will need a lot more than just high school calculus and basic university linear algebra and statistics.



                        To sum it up, most people who do AI(again, not just enthusiastics; people who work for Google, Facebook, etc) do not always understand what’s going on in a library/module. The people who write these algorithms and papers do that. But if you have the time, try learning calculus, linear algebra and statistics so you’ll get a better understanding of what’s going on and maybe even you can make new algorithms that change the AI industry:)



                        EDIT



                        I think some people mistook what I said about some people not knowing how something works in AI: Does every successful data scientist know how regression works? Of course they do! How and why batch gradient descent works? 100%(you need calculus for these)! But do they all also know how restricted boltzman machine works? Probably not. Do they all understand VBEM? Of course not! The point is, I didn’t mean that people working for Google don’t know calculus or how an algorithm such as deep neural nets or NLP works; I just meant that you don’t need to be as good as most math students at calculus.
                        Good luck!






                        share|cite|improve this answer











                        $endgroup$



                        I’m a CS student myself so I can relate to what you’re asking. First of all, it really matters what branch of CS you’d like to pursue. For example, if you want to do cyber security(more specifically, cryptography), you will definitely need to know a lot of number theory. In your case, you’re interested in AI and data science but that’s still a bit vague; most people who’d like to do AI/data science, don’t really care about what’s going “under the hood”(which is not really that bad) and use libraries such as Pytorch, Tensor Flow, etc(but note that these people aren’t just AI enthusiastics; many of them work for big companies and are rather successful in their respective field). But there are people that are trying to make new, cutting-edge algorithms and write papers and in that case, you definitely will need more than just high school level math(university level calculus, linear algebra and statistics mostly). So if you are one of the former, high school level calculus, some university-level linear algebra and statistics(first year) would suffice. But if you’re one of the latter, you will need a lot more than just high school calculus and basic university linear algebra and statistics.



                        To sum it up, most people who do AI(again, not just enthusiastics; people who work for Google, Facebook, etc) do not always understand what’s going on in a library/module. The people who write these algorithms and papers do that. But if you have the time, try learning calculus, linear algebra and statistics so you’ll get a better understanding of what’s going on and maybe even you can make new algorithms that change the AI industry:)



                        EDIT



                        I think some people mistook what I said about some people not knowing how something works in AI: Does every successful data scientist know how regression works? Of course they do! How and why batch gradient descent works? 100%(you need calculus for these)! But do they all also know how restricted boltzman machine works? Probably not. Do they all understand VBEM? Of course not! The point is, I didn’t mean that people working for Google don’t know calculus or how an algorithm such as deep neural nets or NLP works; I just meant that you don’t need to be as good as most math students at calculus.
                        Good luck!







                        share|cite|improve this answer














                        share|cite|improve this answer



                        share|cite|improve this answer








                        edited Aug 11 at 0:49

























                        answered Aug 10 at 23:44









                        Borna AhmadzadeBorna Ahmadzade

                        3531 silver badge11 bronze badges




                        3531 silver badge11 bronze badges














                        • $begingroup$
                          It's funny that in case of AI, your answer seems like opposite of the other answer provided, in particular when you read his second paragraph.
                          $endgroup$
                          – imranfat
                          Aug 10 at 23:46










                        • $begingroup$
                          @imranfat I actually agree with Borna that many users of libraries like TensorFlow do not fully understand (and do not need to fully understand) what they are doing under the hood. But even if you are not a research-level AI specialist, some basic understanding of how e.g. back-propagation works is expected.
                          $endgroup$
                          – user7530
                          Aug 10 at 23:50







                        • 2




                          $begingroup$
                          @user7530. I see. My answer is in reference to one of my family member who is pursuing a PhD in AI, and he talks about Calculus and Linear Algebra ALL THE TIME. I am just a math dude, but I can see AI alive and well when watching the video clip "Paranoia" by the Art of Noise. Lots of Linear Algebra going on over there as well (Max Headroom), and that was in 1986!
                          $endgroup$
                          – imranfat
                          Aug 10 at 23:54

















                        • $begingroup$
                          It's funny that in case of AI, your answer seems like opposite of the other answer provided, in particular when you read his second paragraph.
                          $endgroup$
                          – imranfat
                          Aug 10 at 23:46










                        • $begingroup$
                          @imranfat I actually agree with Borna that many users of libraries like TensorFlow do not fully understand (and do not need to fully understand) what they are doing under the hood. But even if you are not a research-level AI specialist, some basic understanding of how e.g. back-propagation works is expected.
                          $endgroup$
                          – user7530
                          Aug 10 at 23:50







                        • 2




                          $begingroup$
                          @user7530. I see. My answer is in reference to one of my family member who is pursuing a PhD in AI, and he talks about Calculus and Linear Algebra ALL THE TIME. I am just a math dude, but I can see AI alive and well when watching the video clip "Paranoia" by the Art of Noise. Lots of Linear Algebra going on over there as well (Max Headroom), and that was in 1986!
                          $endgroup$
                          – imranfat
                          Aug 10 at 23:54
















                        $begingroup$
                        It's funny that in case of AI, your answer seems like opposite of the other answer provided, in particular when you read his second paragraph.
                        $endgroup$
                        – imranfat
                        Aug 10 at 23:46




                        $begingroup$
                        It's funny that in case of AI, your answer seems like opposite of the other answer provided, in particular when you read his second paragraph.
                        $endgroup$
                        – imranfat
                        Aug 10 at 23:46












                        $begingroup$
                        @imranfat I actually agree with Borna that many users of libraries like TensorFlow do not fully understand (and do not need to fully understand) what they are doing under the hood. But even if you are not a research-level AI specialist, some basic understanding of how e.g. back-propagation works is expected.
                        $endgroup$
                        – user7530
                        Aug 10 at 23:50





                        $begingroup$
                        @imranfat I actually agree with Borna that many users of libraries like TensorFlow do not fully understand (and do not need to fully understand) what they are doing under the hood. But even if you are not a research-level AI specialist, some basic understanding of how e.g. back-propagation works is expected.
                        $endgroup$
                        – user7530
                        Aug 10 at 23:50





                        2




                        2




                        $begingroup$
                        @user7530. I see. My answer is in reference to one of my family member who is pursuing a PhD in AI, and he talks about Calculus and Linear Algebra ALL THE TIME. I am just a math dude, but I can see AI alive and well when watching the video clip "Paranoia" by the Art of Noise. Lots of Linear Algebra going on over there as well (Max Headroom), and that was in 1986!
                        $endgroup$
                        – imranfat
                        Aug 10 at 23:54





                        $begingroup$
                        @user7530. I see. My answer is in reference to one of my family member who is pursuing a PhD in AI, and he talks about Calculus and Linear Algebra ALL THE TIME. I am just a math dude, but I can see AI alive and well when watching the video clip "Paranoia" by the Art of Noise. Lots of Linear Algebra going on over there as well (Max Headroom), and that was in 1986!
                        $endgroup$
                        – imranfat
                        Aug 10 at 23:54












                        3













                        $begingroup$

                        It depends what you mean by calculus. Do you need to know basic differentiation/integration? Definitely, I don't know how you could take a class such as digital signal processing (which I assume would be part of a CS and engineering degree) without that. Do you need to learn loads of methods for solving tricky integrals/differential equations, or do a rigorous course in real analysis? No, unless you want to specialise in related areas.






                        share|cite|improve this answer











                        $endgroup$



















                          3













                          $begingroup$

                          It depends what you mean by calculus. Do you need to know basic differentiation/integration? Definitely, I don't know how you could take a class such as digital signal processing (which I assume would be part of a CS and engineering degree) without that. Do you need to learn loads of methods for solving tricky integrals/differential equations, or do a rigorous course in real analysis? No, unless you want to specialise in related areas.






                          share|cite|improve this answer











                          $endgroup$

















                            3














                            3










                            3







                            $begingroup$

                            It depends what you mean by calculus. Do you need to know basic differentiation/integration? Definitely, I don't know how you could take a class such as digital signal processing (which I assume would be part of a CS and engineering degree) without that. Do you need to learn loads of methods for solving tricky integrals/differential equations, or do a rigorous course in real analysis? No, unless you want to specialise in related areas.






                            share|cite|improve this answer











                            $endgroup$



                            It depends what you mean by calculus. Do you need to know basic differentiation/integration? Definitely, I don't know how you could take a class such as digital signal processing (which I assume would be part of a CS and engineering degree) without that. Do you need to learn loads of methods for solving tricky integrals/differential equations, or do a rigorous course in real analysis? No, unless you want to specialise in related areas.







                            share|cite|improve this answer














                            share|cite|improve this answer



                            share|cite|improve this answer








                            edited Aug 12 at 7:54

























                            answered Aug 11 at 19:59









                            rlmsrlms

                            3381 gold badge4 silver badges18 bronze badges




                            3381 gold badge4 silver badges18 bronze badges
























                                2













                                $begingroup$

                                Mathematics needed in Computer Science (Graph theory, Boolean algebra, Number theory) Vs Mathematics for other traditional Engineering disciplines is usually contrasted as Discrete Vs Continuous mathematics.



                                That is a correct, best, and shortest description of the contrast. So one can find people who have not yet learnt any serious calculus excelling in Programming and in software. This depends on the nature of applications one wants to handle as a software professional. If you want to be in software working for modelling financial markets or sending rockets to space Calculus is the way.



                                (Self-Promotion): I have written an article in a Science Education Journal on this aspect
                                analyzing what aspect makes it to work in some application domain and fail in another.
                                Here is the link






                                share|cite|improve this answer









                                $endgroup$



















                                  2













                                  $begingroup$

                                  Mathematics needed in Computer Science (Graph theory, Boolean algebra, Number theory) Vs Mathematics for other traditional Engineering disciplines is usually contrasted as Discrete Vs Continuous mathematics.



                                  That is a correct, best, and shortest description of the contrast. So one can find people who have not yet learnt any serious calculus excelling in Programming and in software. This depends on the nature of applications one wants to handle as a software professional. If you want to be in software working for modelling financial markets or sending rockets to space Calculus is the way.



                                  (Self-Promotion): I have written an article in a Science Education Journal on this aspect
                                  analyzing what aspect makes it to work in some application domain and fail in another.
                                  Here is the link






                                  share|cite|improve this answer









                                  $endgroup$

















                                    2














                                    2










                                    2







                                    $begingroup$

                                    Mathematics needed in Computer Science (Graph theory, Boolean algebra, Number theory) Vs Mathematics for other traditional Engineering disciplines is usually contrasted as Discrete Vs Continuous mathematics.



                                    That is a correct, best, and shortest description of the contrast. So one can find people who have not yet learnt any serious calculus excelling in Programming and in software. This depends on the nature of applications one wants to handle as a software professional. If you want to be in software working for modelling financial markets or sending rockets to space Calculus is the way.



                                    (Self-Promotion): I have written an article in a Science Education Journal on this aspect
                                    analyzing what aspect makes it to work in some application domain and fail in another.
                                    Here is the link






                                    share|cite|improve this answer









                                    $endgroup$



                                    Mathematics needed in Computer Science (Graph theory, Boolean algebra, Number theory) Vs Mathematics for other traditional Engineering disciplines is usually contrasted as Discrete Vs Continuous mathematics.



                                    That is a correct, best, and shortest description of the contrast. So one can find people who have not yet learnt any serious calculus excelling in Programming and in software. This depends on the nature of applications one wants to handle as a software professional. If you want to be in software working for modelling financial markets or sending rockets to space Calculus is the way.



                                    (Self-Promotion): I have written an article in a Science Education Journal on this aspect
                                    analyzing what aspect makes it to work in some application domain and fail in another.
                                    Here is the link







                                    share|cite|improve this answer












                                    share|cite|improve this answer



                                    share|cite|improve this answer










                                    answered Aug 11 at 0:15









                                    P VanchinathanP Vanchinathan

                                    16.2k1 gold badge22 silver badges37 bronze badges




                                    16.2k1 gold badge22 silver badges37 bronze badges
























                                        2













                                        $begingroup$

                                        Calculus (and analysis) is actually far more useful in computer science than one may think. (Also: computer science $neq$ programming.)



                                        I need not mention that machine learning (especially learning theory) is all about analysis, probability theory and topology (usually on Euclidean spaces), all of which require calculus. Information theory requires knowledge of measure-theoretic probability theory. Robotics requires calculus for movement planning, etc. Computer graphics require a lot of analysis and even some knowledge of differential geometry, which could not be studies without a solid knowledge of analysis.



                                        Even in fields that seem unrelated to analysis, it can still be useful. Let's use my field of research, programming languages & logic, as an example.



                                        Infinite-precision computation, for example, uses many important concepts in real analysis. Note the fact that all computable functions on $mathbbR$ are continuous. Using this insight, problems about infinite-precision computation can easily be transformed into problems about properties of functions on and the topological properties of the Euclidean spaces $mathbbR^n$ (see, e.g. this talk and this paper). The paper was published in Logic in Computer Science 2018, which has little to do with analysis!



                                        Of course, many other related fields of research require knowledge about analysis, for example the design and semantics probabilistic programming languages, which requires knowledge of measure theory. Not to mention that studying calculus and analysis is quite fundamental in building up mathematical maturity that is required for advanced mathematical topics required for computer science, and analysis can be an important pathway to more advanced topics of practical value in computer science, such as probability theory and topology. (You can study topology without real analysis, albeit that makes it much harder. You definitely cannot study probability theory without calculus.)






                                        share|cite|improve this answer









                                        $endgroup$



















                                          2













                                          $begingroup$

                                          Calculus (and analysis) is actually far more useful in computer science than one may think. (Also: computer science $neq$ programming.)



                                          I need not mention that machine learning (especially learning theory) is all about analysis, probability theory and topology (usually on Euclidean spaces), all of which require calculus. Information theory requires knowledge of measure-theoretic probability theory. Robotics requires calculus for movement planning, etc. Computer graphics require a lot of analysis and even some knowledge of differential geometry, which could not be studies without a solid knowledge of analysis.



                                          Even in fields that seem unrelated to analysis, it can still be useful. Let's use my field of research, programming languages & logic, as an example.



                                          Infinite-precision computation, for example, uses many important concepts in real analysis. Note the fact that all computable functions on $mathbbR$ are continuous. Using this insight, problems about infinite-precision computation can easily be transformed into problems about properties of functions on and the topological properties of the Euclidean spaces $mathbbR^n$ (see, e.g. this talk and this paper). The paper was published in Logic in Computer Science 2018, which has little to do with analysis!



                                          Of course, many other related fields of research require knowledge about analysis, for example the design and semantics probabilistic programming languages, which requires knowledge of measure theory. Not to mention that studying calculus and analysis is quite fundamental in building up mathematical maturity that is required for advanced mathematical topics required for computer science, and analysis can be an important pathway to more advanced topics of practical value in computer science, such as probability theory and topology. (You can study topology without real analysis, albeit that makes it much harder. You definitely cannot study probability theory without calculus.)






                                          share|cite|improve this answer









                                          $endgroup$

















                                            2














                                            2










                                            2







                                            $begingroup$

                                            Calculus (and analysis) is actually far more useful in computer science than one may think. (Also: computer science $neq$ programming.)



                                            I need not mention that machine learning (especially learning theory) is all about analysis, probability theory and topology (usually on Euclidean spaces), all of which require calculus. Information theory requires knowledge of measure-theoretic probability theory. Robotics requires calculus for movement planning, etc. Computer graphics require a lot of analysis and even some knowledge of differential geometry, which could not be studies without a solid knowledge of analysis.



                                            Even in fields that seem unrelated to analysis, it can still be useful. Let's use my field of research, programming languages & logic, as an example.



                                            Infinite-precision computation, for example, uses many important concepts in real analysis. Note the fact that all computable functions on $mathbbR$ are continuous. Using this insight, problems about infinite-precision computation can easily be transformed into problems about properties of functions on and the topological properties of the Euclidean spaces $mathbbR^n$ (see, e.g. this talk and this paper). The paper was published in Logic in Computer Science 2018, which has little to do with analysis!



                                            Of course, many other related fields of research require knowledge about analysis, for example the design and semantics probabilistic programming languages, which requires knowledge of measure theory. Not to mention that studying calculus and analysis is quite fundamental in building up mathematical maturity that is required for advanced mathematical topics required for computer science, and analysis can be an important pathway to more advanced topics of practical value in computer science, such as probability theory and topology. (You can study topology without real analysis, albeit that makes it much harder. You definitely cannot study probability theory without calculus.)






                                            share|cite|improve this answer









                                            $endgroup$



                                            Calculus (and analysis) is actually far more useful in computer science than one may think. (Also: computer science $neq$ programming.)



                                            I need not mention that machine learning (especially learning theory) is all about analysis, probability theory and topology (usually on Euclidean spaces), all of which require calculus. Information theory requires knowledge of measure-theoretic probability theory. Robotics requires calculus for movement planning, etc. Computer graphics require a lot of analysis and even some knowledge of differential geometry, which could not be studies without a solid knowledge of analysis.



                                            Even in fields that seem unrelated to analysis, it can still be useful. Let's use my field of research, programming languages & logic, as an example.



                                            Infinite-precision computation, for example, uses many important concepts in real analysis. Note the fact that all computable functions on $mathbbR$ are continuous. Using this insight, problems about infinite-precision computation can easily be transformed into problems about properties of functions on and the topological properties of the Euclidean spaces $mathbbR^n$ (see, e.g. this talk and this paper). The paper was published in Logic in Computer Science 2018, which has little to do with analysis!



                                            Of course, many other related fields of research require knowledge about analysis, for example the design and semantics probabilistic programming languages, which requires knowledge of measure theory. Not to mention that studying calculus and analysis is quite fundamental in building up mathematical maturity that is required for advanced mathematical topics required for computer science, and analysis can be an important pathway to more advanced topics of practical value in computer science, such as probability theory and topology. (You can study topology without real analysis, albeit that makes it much harder. You definitely cannot study probability theory without calculus.)







                                            share|cite|improve this answer












                                            share|cite|improve this answer



                                            share|cite|improve this answer










                                            answered Aug 11 at 8:31









                                            xuq01xuq01

                                            1285 bronze badges




                                            1285 bronze badges
























                                                1













                                                $begingroup$

                                                The short answer is that it really depends what level of calculus you already have and what field of CS you're interested in. If you know the fundamental theorem, common integral/differential identities, the chain rule, product rule, and so on (basically, simple high school calculus), you've got enough calculus for CS in general, but for some parts of AI you'll want more, and in some application domains (anything involving control theory in the EE sense, quantitive finance, all sorts of heavy numerical engineering-related SE work) it is likely to be useful.



                                                I've probably regretted not studying more formal algebra, graph theory, number theory, etc. more often than I've used university-level calculus, but most universities seem to demand it for CS students.



                                                You'll need a whole load of statistics and probability (Bayes's Theorem and so on) for AI but you'll probably cover that in a CS-coded course.






                                                share|cite|improve this answer









                                                $endgroup$



















                                                  1













                                                  $begingroup$

                                                  The short answer is that it really depends what level of calculus you already have and what field of CS you're interested in. If you know the fundamental theorem, common integral/differential identities, the chain rule, product rule, and so on (basically, simple high school calculus), you've got enough calculus for CS in general, but for some parts of AI you'll want more, and in some application domains (anything involving control theory in the EE sense, quantitive finance, all sorts of heavy numerical engineering-related SE work) it is likely to be useful.



                                                  I've probably regretted not studying more formal algebra, graph theory, number theory, etc. more often than I've used university-level calculus, but most universities seem to demand it for CS students.



                                                  You'll need a whole load of statistics and probability (Bayes's Theorem and so on) for AI but you'll probably cover that in a CS-coded course.






                                                  share|cite|improve this answer









                                                  $endgroup$

















                                                    1














                                                    1










                                                    1







                                                    $begingroup$

                                                    The short answer is that it really depends what level of calculus you already have and what field of CS you're interested in. If you know the fundamental theorem, common integral/differential identities, the chain rule, product rule, and so on (basically, simple high school calculus), you've got enough calculus for CS in general, but for some parts of AI you'll want more, and in some application domains (anything involving control theory in the EE sense, quantitive finance, all sorts of heavy numerical engineering-related SE work) it is likely to be useful.



                                                    I've probably regretted not studying more formal algebra, graph theory, number theory, etc. more often than I've used university-level calculus, but most universities seem to demand it for CS students.



                                                    You'll need a whole load of statistics and probability (Bayes's Theorem and so on) for AI but you'll probably cover that in a CS-coded course.






                                                    share|cite|improve this answer









                                                    $endgroup$



                                                    The short answer is that it really depends what level of calculus you already have and what field of CS you're interested in. If you know the fundamental theorem, common integral/differential identities, the chain rule, product rule, and so on (basically, simple high school calculus), you've got enough calculus for CS in general, but for some parts of AI you'll want more, and in some application domains (anything involving control theory in the EE sense, quantitive finance, all sorts of heavy numerical engineering-related SE work) it is likely to be useful.



                                                    I've probably regretted not studying more formal algebra, graph theory, number theory, etc. more often than I've used university-level calculus, but most universities seem to demand it for CS students.



                                                    You'll need a whole load of statistics and probability (Bayes's Theorem and so on) for AI but you'll probably cover that in a CS-coded course.







                                                    share|cite|improve this answer












                                                    share|cite|improve this answer



                                                    share|cite|improve this answer










                                                    answered Aug 11 at 14:22









                                                    user1567459user1567459

                                                    211 bronze badge




                                                    211 bronze badge
























                                                        0













                                                        $begingroup$

                                                        Take a look a the degree requirements for a CS at your school. In addition to the classes that deal with CS, there are classes that have nothing to do with the field, but they are still required for your degree.



                                                        It's certainly true that some of these courses help ensure that you're intelligent enough overall for working in a modern economy, but much of the justification is that it makes you well-rounded (whatever that is). In my case I have classes in German, sociology, public speaking, biology, environmental science, history, and what-not, none of which contribute to what I do as a professional developer (except perhaps to give me something to talk about at lunch that isn't work-related).



                                                        So given that there are courses that are not necessary at all to be a good software developer, and yet are still required for the degree, then it stands to reason that anything which is not required must be entirely superfluous.



                                                        In the case of calculus, it is certainly nice to know. Integral calculus, in particular, requires a good deal of imagination, which is definitely a plus when solving problems in any field.






                                                        share|cite|improve this answer









                                                        $endgroup$



















                                                          0













                                                          $begingroup$

                                                          Take a look a the degree requirements for a CS at your school. In addition to the classes that deal with CS, there are classes that have nothing to do with the field, but they are still required for your degree.



                                                          It's certainly true that some of these courses help ensure that you're intelligent enough overall for working in a modern economy, but much of the justification is that it makes you well-rounded (whatever that is). In my case I have classes in German, sociology, public speaking, biology, environmental science, history, and what-not, none of which contribute to what I do as a professional developer (except perhaps to give me something to talk about at lunch that isn't work-related).



                                                          So given that there are courses that are not necessary at all to be a good software developer, and yet are still required for the degree, then it stands to reason that anything which is not required must be entirely superfluous.



                                                          In the case of calculus, it is certainly nice to know. Integral calculus, in particular, requires a good deal of imagination, which is definitely a plus when solving problems in any field.






                                                          share|cite|improve this answer









                                                          $endgroup$

















                                                            0














                                                            0










                                                            0







                                                            $begingroup$

                                                            Take a look a the degree requirements for a CS at your school. In addition to the classes that deal with CS, there are classes that have nothing to do with the field, but they are still required for your degree.



                                                            It's certainly true that some of these courses help ensure that you're intelligent enough overall for working in a modern economy, but much of the justification is that it makes you well-rounded (whatever that is). In my case I have classes in German, sociology, public speaking, biology, environmental science, history, and what-not, none of which contribute to what I do as a professional developer (except perhaps to give me something to talk about at lunch that isn't work-related).



                                                            So given that there are courses that are not necessary at all to be a good software developer, and yet are still required for the degree, then it stands to reason that anything which is not required must be entirely superfluous.



                                                            In the case of calculus, it is certainly nice to know. Integral calculus, in particular, requires a good deal of imagination, which is definitely a plus when solving problems in any field.






                                                            share|cite|improve this answer









                                                            $endgroup$



                                                            Take a look a the degree requirements for a CS at your school. In addition to the classes that deal with CS, there are classes that have nothing to do with the field, but they are still required for your degree.



                                                            It's certainly true that some of these courses help ensure that you're intelligent enough overall for working in a modern economy, but much of the justification is that it makes you well-rounded (whatever that is). In my case I have classes in German, sociology, public speaking, biology, environmental science, history, and what-not, none of which contribute to what I do as a professional developer (except perhaps to give me something to talk about at lunch that isn't work-related).



                                                            So given that there are courses that are not necessary at all to be a good software developer, and yet are still required for the degree, then it stands to reason that anything which is not required must be entirely superfluous.



                                                            In the case of calculus, it is certainly nice to know. Integral calculus, in particular, requires a good deal of imagination, which is definitely a plus when solving problems in any field.







                                                            share|cite|improve this answer












                                                            share|cite|improve this answer



                                                            share|cite|improve this answer










                                                            answered Aug 11 at 17:37









                                                            EvilSnackEvilSnack

                                                            2473 bronze badges




                                                            2473 bronze badges
























                                                                0













                                                                $begingroup$

                                                                Computer science is not programming. Complexity theory and algorithm analysis are unthinkable without analysis. Look up the "master theorem" of complexity theory and a few examples of its application. Apart from algorithmic analysis, a lot of programming tasks revolve about a problem space described with mathematical analysis. AI is determined by methods like the simplex theorem, gradient descent, and things like neural networks with learning dynamics described by differential equations. Recognition tasks are done using theories of neural fields and their dynamics described, for example, with the Amari field equations.



                                                                If you decide to forget about analysis, you close a whole lot of doors in computer science for you, and even a non-trivial number of doors for programming jobs that require a bit of problem analysis and algorithmic planning.






                                                                share|cite|improve this answer









                                                                $endgroup$



















                                                                  0













                                                                  $begingroup$

                                                                  Computer science is not programming. Complexity theory and algorithm analysis are unthinkable without analysis. Look up the "master theorem" of complexity theory and a few examples of its application. Apart from algorithmic analysis, a lot of programming tasks revolve about a problem space described with mathematical analysis. AI is determined by methods like the simplex theorem, gradient descent, and things like neural networks with learning dynamics described by differential equations. Recognition tasks are done using theories of neural fields and their dynamics described, for example, with the Amari field equations.



                                                                  If you decide to forget about analysis, you close a whole lot of doors in computer science for you, and even a non-trivial number of doors for programming jobs that require a bit of problem analysis and algorithmic planning.






                                                                  share|cite|improve this answer









                                                                  $endgroup$

















                                                                    0














                                                                    0










                                                                    0







                                                                    $begingroup$

                                                                    Computer science is not programming. Complexity theory and algorithm analysis are unthinkable without analysis. Look up the "master theorem" of complexity theory and a few examples of its application. Apart from algorithmic analysis, a lot of programming tasks revolve about a problem space described with mathematical analysis. AI is determined by methods like the simplex theorem, gradient descent, and things like neural networks with learning dynamics described by differential equations. Recognition tasks are done using theories of neural fields and their dynamics described, for example, with the Amari field equations.



                                                                    If you decide to forget about analysis, you close a whole lot of doors in computer science for you, and even a non-trivial number of doors for programming jobs that require a bit of problem analysis and algorithmic planning.






                                                                    share|cite|improve this answer









                                                                    $endgroup$



                                                                    Computer science is not programming. Complexity theory and algorithm analysis are unthinkable without analysis. Look up the "master theorem" of complexity theory and a few examples of its application. Apart from algorithmic analysis, a lot of programming tasks revolve about a problem space described with mathematical analysis. AI is determined by methods like the simplex theorem, gradient descent, and things like neural networks with learning dynamics described by differential equations. Recognition tasks are done using theories of neural fields and their dynamics described, for example, with the Amari field equations.



                                                                    If you decide to forget about analysis, you close a whole lot of doors in computer science for you, and even a non-trivial number of doors for programming jobs that require a bit of problem analysis and algorithmic planning.







                                                                    share|cite|improve this answer












                                                                    share|cite|improve this answer



                                                                    share|cite|improve this answer










                                                                    answered Aug 11 at 21:06







                                                                    user695148























                                                                        Popular posts from this blog

                                                                        Category:9 (number) SubcategoriesMedia in category "9 (number)"Navigation menuUpload mediaGND ID: 4485639-8Library of Congress authority ID: sh85091979ReasonatorScholiaStatistics

                                                                        Circuit construction for execution of conditional statements using least significant bitHow are two different registers being used as “control”?How exactly is the stated composite state of the two registers being produced using the $R_zz$ controlled rotations?Efficiently performing controlled rotations in HHLWould this quantum algorithm implementation work?How to prepare a superposed states of odd integers from $1$ to $sqrtN$?Why is this implementation of the order finding algorithm not working?Circuit construction for Hamiltonian simulationHow can I invert the least significant bit of a certain term of a superposed state?Implementing an oracleImplementing a controlled sum operation

                                                                        Magento 2 “No Payment Methods” in Admin New OrderHow to integrate Paypal Express Checkout with the Magento APIMagento 1.5 - Sales > Order > edit order and shipping methods disappearAuto Invoice Check/Money Order Payment methodAdd more simple payment methods?Shipping methods not showingWhat should I do to change payment methods if changing the configuration has no effects?1.9 - No Payment Methods showing upMy Payment Methods not Showing for downloadable/virtual product when checkout?Magento2 API to access internal payment methodHow to call an existing payment methods in the registration form?