just how much math is needed to program anyway So I think you should be good at math to program. But I'm not a zealot about it. I do a fair amount of algebra in my own coding and also trigonometry, but also the sort of reasoning and problem solving done in math is quite useful in programming, it's the same sort of thing.
Dennis Atkins
Oh and here's the times article if anyone wants it:
Dennis Atkins
I have a math degree and have never used math beyond 8th grade trigonometry in my programming work.
z
I don't think it is valid if you are looking for a direct effect, i.e. I cannot do calculus therefore I cannot program. It is invalid to say that one is the reaosn for the other. I do think, however that programming thinking is very mathematical in nature (at least it used to be, this enterprise stuff is less so) and if kids aren't forced to learn math they will probably not go on to study computers or any other type of engineering.
name withheld out of cowardice
I have a master's in math, and a master's in CS, and I have done very little integration in my life. One of my huge pet peeves is that people who take a couple of freshman calculus course claim they know mathematics. I hear this constantly from engineers. Newsflash! A diff-e-qs course does not mean you know math.
anon
np-completeness is a bare minimum:-)
Prakash S
There does tend to be a relationship between Math skills and computer programming ability. I would suggest that the comparison might be that people that can handle Calculus can make that extra leap of abstraction, similar to programmers that understand pointers. (See http://www.joelonsoftware.com/articles/fog0000000006.html)
Gord Schmidt
As an american public school graduate, I can assure you that high school in america does suck. Whether or not it needs to be improved is another story.
I think the more important question of mental qualifications should be directed at journalist.
m
> Mathematica was written by stephen wolfram, btw.
Dennis Atkins
>> "I would suggest that the comparison might be that people that can handle Calculus can make that extra leap of abstraction, similar to programmers that understand pointers."
anon
stephen wolfram is from the UK. he was a math prodigy, receiving his PhD in physics from caltech at age 20. he now lives in illinois.
"Math is about mental discipline and rigor. It's about having the intellectual wherewithal to be able to construct a proof."
Vlad Gudim
I can't figure out integrals. I don't really know what a definite integral is. I can do derivatives, sometimes, but it's really hard for me. My math skills only go up to induction, and then stop completely.
Caliban Tiresias Darklock
Maths and programming have some similar skills, e.g. the ability to do "symbol substitution". I think it's also true that, at least in pre-CS days (and maybe still), they hired mathematicians to learn programming. And, some domains require mathematics knowledge as well as programming knowledge, but as you say there's a whole lot of programming that doesn't require (specifically) calculus.
Christopher Wells
I agree, I haven't used anything beyond 2nd degree functions in my code.
Alex.ro
Re: the japanese.
It's interesting that Mr. Kristof uses the example of the American space program as an argument for increasing American technical skills. At mission control in Houston, the design of the operation was such that the first row of people dealt almost entirely with the detailed mathematical problems that came up over the course of a mission. But there were several rows behind those guys becoming increasingly non-technical, leading all the way back to central management. And this is at a highly technical organization! Maybe the important lesson is that these required talents ought to be in the right proportion, rather than that 80% of the population should be capable of working in "the Trench".
also, one reason no one understands how to do calculus in america is because the teaching methods learned when people get teacher training are SO HORRIBLE. ugh. If anyone has struggled with calc, and wants to really learn what's going on, they should get the book "Calculus Made Easy" by silvanus p. thompson. I would have been totally hosed as a math major if I hadn't worked through this book.
I do not understand. Calculus? But since computers are COMPUTErs why use Integrals? A loop does the job, does it not?
Inidan Developer in India
Comparing high school students is rather disingenuous.
Chris Tavares
Indian, if you integrate x**-1 dx from 0 to infinity that way, it'll take a long time and you'll get a less precise answer when you eventually terminate prematurely than if you'd done the symbolic integration.
Outside the EUA, americans are very known by their marketing :P
Dewd
I'm sick and tired of hearing about how poor US schools are because we don't outscore other countries. As somebody else pointed out, in many, many other countries, the poor students are removed from the academic system early, so we are comparing our average kids to other's best.
anon
x**-2 dx from 1 to infinity, rather
> why use Integrals? A loop does the job, does it not?
Caliban Tiresias Darklock
My highschool offered Calculus to select seniors and very select juniors only. The focus in highschool was to give the amount of math one would need to get by in the world if one stopped their education immediately after highschool.
Lou
> why use Integrals? A loop does the job, does it not?
Vlad Gudim
Indian and blank,
Dennis Atkins
> Draw a function on an x-y plane. Shade in the area under the curve. There's your integration. How much more concrete can you get?
VPC
anon,
Dennis Atkins
OK, I looked through my old source code base. The algorithm I described for doing integrals is Romberg's algorithm.
Dennis Atkins
If you do any OpenGL graphics work you have to mess with vectors and matrices.
MR
what do you mean by "chaos mathematics?" that was my specialty as a math major, and the only reason I specialized in that is because it was much easier than the other paths I could have taken. :) I'm assuming you mean something other than what I did...
underscore
I've always thought the single biggest stupidity of schools is the way they iterate through the same thing over and over because they keep sending the kids off on one vacation after another. If we did away with summer vacation altogether, we could recover not only the months of summer vacation (fully three years of instruction) but also a nearly equivalent amount of time previously wasted on review. With an extra six years of time to teach children NEW things, we could graduate children from high school with the equivalent of masters degrees -- and undoubtedly produce a number of 21 year old doctors.
Caliban Tiresias Darklock
If you take away summer vacation, when do the students get to be kids? Children need that recharge time.
Chris Tavares
Caliban -
Devil's Advocate
"One of my huge pet peeves is that people who take a couple of freshman calculus course claim they know mathematics. "
name withheld out of cowardice
Mark Hoffman
"One of my huge pet peeves is that people who take a couple of freshman calculus course claim they know mathematics. Newsflash! A diff-e-qs course does not mean you know math. :
I Hate Whiners
For a lot of math stuff, particularly numerical computation, some sort of iterative or recursive calculation is involved. No matter how high your precision is, it's not infinite. So something gets truncated in a calculation somewhere. Start iterating, and in a lot of cases an obvious and simple algorithm completely breaks apart due to the lack of infinite precision errors rapidly spiralling out of control and making all your data results totally erroneous.
Dennis Atkins
>> "I doubt that such a person claims to have complete understanding of math just as I doubt you do."
anon
I don't think that you have to know a lot of math to do most business aplications, but there are certainly a lot of other areas in programming where it would be helpful. Here's my take on math:
Nick
>>Engineers who constantly say things like, "Well, when you get involved in higher math, blah, blah, blah."
Nick
>> "Newsflash! This is the nerdy, ego-centric crap..."
anon
So... anon, you would not consider Newton or Laplace to be mathematicians, by your definition.
Dennis Atkins
3D graphics programmer. Thanks to OpenGL & DirectX I have to know basic high school trig.
>> "So... anon, you would not consider Newton or Laplace to be mathematicians, by your definition."
anon
First, the post was about some journalist thinking of a reason why we are outsourcing. The reaon is very basic: APPARENT cost savings (why, stupid managers for the most part, I think some outsourcing can be efficient).
Me
"Why would you claim that it's egocentric of me to point out that dif-e-qs isn't really mathematics? "
I Hate Whiners
"Newsflash! This is the nerdy, ego-centric crap that kept people like you from getting invited to frat parties in college. And is the reason people still think people like you are socially inept geeks who argue over pointless things.
:-}
>> "Because of your condescending"
bob
Oops. I'm not anon anymore. Oh well.
bob
[This "I'm better than you because I know <x>" affliction seems to affect techies almost exclusively. The sad part is, most techies don't even realize they suffer from this ego-driven disease. They just wonder why the rest of the world looks at them like they are from outer space. ]
trollbooth
>Teaching calculus in high school is a very new thing anyway, it was not done at all before 1960, according to several of my older relatives and friends I have asked.
Li-fan Chen
Actually my point on Newton and Laplace is that they did not discover calculus by doing proofs. Proof that calculus worked had to wait several hundred years. And there are those who claim that the guy who came up with the delta epsilon proof is the mathematician and newton and laplace were just talentless, lucky monkey-hacks who didn't understand the aloof and fine principles af mathematics with a capital M. I reject this argument and say that they guys who are pushing the envelope with math are not the dudes alone in some ivory tower with their precious proofs which could be 50% typos and no one would even be able to tell the difference. :-)
Dennis Atkins
By the way, isn't the answer x^3/3-x^2+x+C?
Alyosha`
bob, maybe you're a decent guy and not condescending at all. Who knows, maybe the engineers you work with we're being snobs themselves when they spoke of "higher math" and deserve a comeuppance. But the way you expressed yourself above, you're coming off as a snob.
Nick
trollbooth and dennis make an important point.
underscore
Alyosha, integrate by simplifying substitution:
I expanded (x-1)^2 to x^2-2x+1 before integrating. For some reason I have fear of the substitution method (probably from years of forgetting to multiply by du; not that it matters in this case).
Alyosha`
Heh. I use integration a lot when doing algorithmic analysis of the code I write.
SG
Dennis Atkins,
bob
bob
> If you take away summer vacation, when do the
Caliban Tiresias Darklock
what is this 'salad cream'?
anon
'Salad cream' seems to be the JoS equivalent of "Godwin's Law": http://www.faqs.org/faqs/usenet/legends/godwin/
Christopher Wells
Taking away the summer holidays is a bloody stupid idea.
Stephen Jones
In Australia, we don’t study Math, we study Maths :)
Jussi (www.zeusedit.com)
Dennis:
Stephen Depooter
I did it the same way as Alyosha`and even got the same answer. First time doing integration in more than 15 years. Got to say it's more like being a computer than programming one - it's just following an algorithm.
pdq
I think I can answer the question "how much maths is needed to program" ...
Sum Dum Gai
Someone, way back when, described numerical integration by approximating the area under the curve with trapezoids and adding them up, and then said "that's Romberg's algorithm". Not quite. Romberg's algorithm is what you get when you do the trapezoid thing for trapezoids of width h, h/2, h/4, etc, and then extrapolate to h=0. There's a neat way of organizing the calculations that makes it quite easy to implement, and it's startlingly effective when the integrand is sufficiently well behaved.
Gareth McCaughan
>> " In Australia, we don’t study Math, we study Maths :) "
bob
> Shorten the holidays, and the students will actually learn
Caliban Tiresias Darklock
Mental fatigue is a very real problem, much like physical fatigue. You need to rest.
Sum Dum Gai
The article is very *interesting* It reminds me of a Don Henley song about the press "It's interesting when people die - give us dirty laundary" .
Eddie Dickey
Calculus is damn near useless
Laurel
"See how much harder #2 is? That's just three days. How hard would it be to remember something for three *months*? ... That's why we have to go over it all again when the kids get back from summer vacation."
Alyosha`
> But I think that the other posters are right. There are usually more important things to worry about than how to integrate some particular function or another. If you understand the first principles behind integration and differentiation, you've gotten what you really need out of Calculus. Unless you have some kind of specialized need, there's no reason to memorize books full of special-case integration techniques.
christopher baus (www.baus.net)
I've never used any math beyond Trig and algebra in my programming. Now, I do use the HECK out of them for positioning things on the screen and creating resizable forms.
The real Entrepreneur
-----"I think there's an optimal amount of time, and an optimal way to divide it up."-----
Stephen Jones
>> "And I went all the way to DE (Differential Equations) with me BSEE degree."
bob
> Real math is proof. Proof, proof, proof, proof, proof.
Christpoher Wells
This all depends on the kind of programming you do. For most business and applications programm, you only need basic math (i.e. how to compute an average, how to center something between two coordinates). But there are other kinds of programming, such as CAD, 3D games, engineering simulations, and so on. Obviously you need more math for those types of applications. For heavy math in an unlikely place, try to write your own JPEG decoder from scratch.
Junkster
[After reading the first post, I had to run to wikipedia to refresh my memory of exactly what integration is. I have used so little maths as a programmer that my knowledge of mathematics has rotted.
trollbooth
> Wow!!! All the way to DE?!? That's almost a superhuman feat.
> If you don't use it, you lose it.
tekumse
> Same goes for 3 years of French and 2 years of Italian.
Christopher Wells
---"I went to a french-language school from age 5 to 11"----
Stephen Jones
Fog Creek Home |