Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

screensaver400

macrumors 6502a
Original poster
Jan 28, 2005
858
46
I studied a social science in college. I was one of the "mathiest" students in my department, but my experience is more in statistics. I took algebra and geometry in high school, then a few stats courses.

Now I'm interested in iOS development, and thinking of getting started with the Stanford iTunes U courses (including the more basic CS course that comes before iOS Development).

Will I be okay in the math department? Or do I need to take more general math first? And if so, what math courses would you advise?
 

Duncan C

macrumors 6502a
Jan 21, 2008
853
0
Northern Virginia
I studied a social science in college. I was one of the "mathiest" students in my department, but my experience is more in statistics. I took algebra and geometry in high school, then a few stats courses.

Now I'm interested in iOS development, and thinking of getting started with the Stanford iTunes U courses (including the more basic CS course that comes before iOS Development).

Will I be okay in the math department? Or do I need to take more general math first? And if so, what math courses would you advise?

The short answer is that it depends.

For business software, hardly any.

Graphics tends to be fairly math intensive. Trig, geometry, algebra. Also a healthy dose of matrix math, mostly for manipulating transformation matrices for 3D graphics or other uses of hardware-accellerated graphics engines.


Being good at logic, proofs, and deductive reasoning is a very good foundation for programming. Set theory and boolean algebra also come in quite handy.

Animation in iOS tends to use a fair amount of trig and matrix math, so it would be good to brush up on that stuff.
 

chown33

Moderator
Staff member
Aug 9, 2009
10,748
8,421
A sea of green
You could start with the basic CS course, and then see if you run into math problems. If not, then start the next course. In short, try it and see what happens.
 

1458279

Suspended
May 1, 2010
1,601
1,521
California
+1 on what Duncan said.

One other issue is what tools (engines) you use. Some tools hide the math because they work at a higher level.

Some use tools like Unity, others write their own engines. Apple just put a bunch of game related stuff in their latest iOS API.

It really depends on what level of programming you are working at.

Logic is always a plus.
 

thekev

macrumors 604
Aug 5, 2010
7,005
3,343
The short answer is that it depends.

For business software, hardly any.

Graphics tends to be fairly math intensive. Trig, geometry, algebra. Also a healthy dose of matrix math, mostly for manipulating transformation matrices for 3D graphics or other uses of hardware-accellerated graphics engines.


Being good at logic, proofs, and deductive reasoning is a very good foundation for programming. Set theory and boolean algebra also come in quite handy.

Animation in iOS tends to use a fair amount of trig and matrix math, so it would be good to brush up on that stuff.


Animation in anything uses a fair amount of trig and linear algebra. I can think of several extremely math heavy books. Mathematics for 3d game programming has a lot of info relative to its density. If the OP is looking for something heavy on graphics algorithms, the graphics gems series still works. MIT Opencourseware has good sets of lectures + notes and pseudo books (pdfs of a bunch of lecture slides presented as ebooks) on linear algebra and discrete math. You can find more material here. If you like the discrete math course, there's an algorithms one that follows it. Coursera offers an intro to computer science self-study course. I'm not sure how good it is. The big nerd ranch book is one of the few entry level objective C books I know. You can find reviews if you look up the first edition. It doesn't make an assumption of prior object oriented programming experience. I read the first edition. It was decent, but not as thorough as I would like.

If the OP intends to take something like a night course, my suggestion would be to google the professor in advance. Even with a formal course, I think it's well worth going through the opencourseware materials. They're great. The first book provides a very gentle explanation of some of the math used in animation, such as quaternions (rigging systems) and homeomorphism. It isn't important, and you'll probably never see it. I thought it was cool that one book went over so much targeted math that comes up in 3D work.
 
Last edited:

ArtOfWarfare

macrumors G3
Nov 26, 2007
9,560
6,059
Programming teaches math. If you don't know it now, you'll learn it without realizing while learning to program.
 

iMacFarlane

macrumors 65816
Apr 5, 2012
1,123
30
Adrift in a sea of possibilities
My 2 cents.

For UI elements, basic algebra and trig are a must. I arranged a grid hexagonally. Since I wanted to allow the numbers of grid elements to vary, I had to set the elements programmatically. Using simple trig identities made this a snap.

For models, such as physics, pathfinding, or AI, not only would you need to know some calculus, statistics, and logic, you would need to recognize the proper mathematical tool to apply to a given problem. This comes with exposure to the maths, the problems, and, like ArtOfWarfare said, the programming.

My advice is to take the course, follow along, experiment. Try to come up with your own "proof of concept" programs. Start small. You'll learn one of two things in the process:
  1. How to program effectively in iOS
  2. That you don't like to program iOS

Either way, you win, and you'll never know if you don't try!
 

PhoneyDeveloper

macrumors 68040
Sep 2, 2008
3,114
93
You will be ok in the math department. The first part of the Stanford course has the student implement a simple calculator. The point of it isn't to learn how a calculator works, it's to learn how to program.

Just jump in. The math won't be the hard part and if you need more you can look it up.

I wasn't one of the meatiest students but it hasn't held me back.
 

firewood

macrumors G3
Jul 29, 2003
8,108
1,345
Silicon Valley
Basic algebra, geometry and logic is all you really need for most mobile app development.

Of course there are specialties, such as apps using 3D graphics requiring a lot of trig and some linear algebra, or physics simulations requiring numerical analysis of differential equations, or audio processing where knowing calculus of complex variables is extremely helpful, or navigation where spherical trigonometry is useful, etc.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.