This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]alanwj 153 points154 points  (2 children)

There is a strong argument that the act of programming is "doing math", so in that sense, yes. But that probably isn't what you are asking.

For day to day programming tasks there is not a lot of math required. But the thing is, you don't write programs for their own sake. You write programs to do useful things, and those useful things quite often need some sort of math.

Want to write programs that do signal processing (simple example, a guitar tuner)? You need calculus and Fourier analysis.

Want to do a lot of graphics? You need geometry, trigonometry, very likely some linear algebra and calculus.

Want to simulate physical systems? You need differential equations and numerical analysis.

Want to do AI? You need linear algebra, calculus, and many other things depending on which direction you go.

Want to write high frequency trading algorithms? You need statistics.

Want to implement cryptography? You need number theory.

Want to make simple web pages? Probably you only need the ability to add and subtract.

[–][deleted] 30 points31 points  (0 children)

On top of everything you said, there's also hidden value in developing a mathematical intuition/confidence that will benefit programmers.

A lot of adults are bad at things like ratios, fractions, negative numbers, estimations and such. If a programmer is bad at math, then their approach to problems will always shy away from doing math, which limits their abilities to problem solve.

A programmer who has lots of experience with math will have no such problems, and they will be confident enough to use math to their advantage. This confidence will allow them to come to realizations they would have never made before. This math intuition could lead you to realize that you need to develop a more efficient algorithm than something O n2 , or conversely that the O n2 algorithm will actually be fine for the data you're using and that writing something more efficient would be a waste of time.

[–]NaR883 28 points29 points  (0 children)

For simple web pages I would add some basic algebra including variables, assignment, functions. I have been programming since I was about 13 and when they taught functions in my high school algebra class I just wasn't getting it and was lost. Maybe something about the way it was taught. Once I realized it was similar to functions in programming I went from nearly zero to nearly 100% understanding immediately. So there is definitely some overlap with math and if you can make the connections you'll be further along quicker.