I am greatly interested in programming, and I guess I am doing good at it. But at the same time I have tons of calculus and stuffs inside my course studies of bachelor in computer engineering which I think it shouldn't be there. I want to know where will I need to use these calculus in real time programming?
[+] [-] dalke|14 years ago|reply
The techniques of the intro to intermediate calc classes are more relevant. That would be up to about Stoke's theorem and partial differentiation, and some differential equations and numerical analysis to round out the calculus. Statistics, topology and algebras (like matrix algebra) are different fields and have different impact on software development, which I won't get into here.
I don't have much experience with real-time computing, but if you're doing any sort of real-time machine control then you're dealing with physical systems, where differential equations and questions of numerical accuracy come into play. You need to know how your model works mathematically, how that model is implemented in hardware, and the types of error propagation which come from both. You'll need to know about feedback loops, and get some feel for how to understand their stability or instability.
That analysis is best done with the techniques of calculus. For example, how do you understand a PID controller without knowing calculus?
Now, you can argue that you know what type of field you want to get into and you know that you'll never need calculus for it. But then you're really asking about the differences between US-style university, which stresses a broad base of knowledge, vs. a trade school which emphasizes the study of techniques relevant to a job.
[+] [-] jasonkester|14 years ago|reply
Remember back in high school when you'd look at the sky and ask "who will ever actually use this stuff?" That would be you. You're going to use it, as well as all that crazy matrix transform stuff they'll teach you next year and the DiffEq they'll spend the 3 years after that pounding into your head until you finally get it.
So yes, sorry to break the news, but you're that guy. You've picked one of the few professions in this world that actually use higher math.
[+] [-] impendia|14 years ago|reply
Seems like a way of thinking that would be useful for computer engineering, or damn near anything else.
[+] [-] namank|14 years ago|reply
DSP is all calc Control Systems too As our circuits Graphics (more so CS but...) Embedded Systems - you'll need the rigour math provides. And if you do anything that hasn't been done before, you'll be reading a lot of papers. Most formalized concepts and implementations need math to be explained. Same for Computer Architecture
For that matter, most other options also require advanced calc - one area that comes to mind is management science.
[+] [-] ww520|14 years ago|reply
[+] [-] w1kke|14 years ago|reply
[+] [-] tonyarkles|14 years ago|reply
Because of the combined programme, I ended up taking 4 calculus classes and a linear algebra class. Additionally, there were some others that were thinly veiled statistics classes (digital communication = gaussian statistics). Add in some signal processing (signals & systems, DSP I, DSP II), an introductory logic course (from computer science), and two algorithms courses.
Do I use all of these in my day-to-day work? No. I'm mostly doing web and mobile apps these days (fun, good money, very low probability of killing anyone). Do the concepts I learned through both programmes influence my thought patterns every day? Absolutely! Do I get to randomly pull some of this stuff out of my hat and apply them? Yes, and it amazes people.
Day-to-day, I probably use the linear algebra and algorithms stuff most frequently (the guys down the hall are doing games programming and sometimes ask me questions). Next up is probably numerical methods stuff, but that's mostly because of a cool project we did on contract a few months ago (non-linear least squares, mmmmm). I occasionally get to use the signal processing stuff, we did an audio-related project a few months ago, and more recently I wrote a simple high-pass filter so that we could detect when someone was shaking their iOS device quickly :D.
Really, there's two important reasons to take all of this stuff: it definitely shapes your thought process, and it's very handy to have this stuff in your toolbox (you never know when you'll need it).
[+] [-] _pcpe|14 years ago|reply
[+] [-] aberatiu|14 years ago|reply
[+] [-] _pcpe|14 years ago|reply
[+] [-] startupgrrl|14 years ago|reply
[deleted]