Math has always been my thing in that I've always found the subject easy. Computer Science is my second love, though. Given the choice, I would prefer to major in Math. Since the only careers one would usually go into with an undergraduate degree in math are not appealing at all, I would be very content spending my days as a software developer.

My question is this: Which math discipline would a future programmer reap more benefits from? Applied math or pure math?

I enjoy teaching myself and I am confident that I can teach myself how to be a great programmer, but I still plan on getting a minor in CS!

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance. If this question can be reworded to fit the rules in the help center, please edit the question.

Game development wouldn't hurt my feelings but I hear that its a rough field to get into. And I can't imagine that not having a CS degree would help my chances.
– JooseApr 20 '11 at 16:01

Game development is very competitive. You'd be surprised. Especially with all the iOS, Android, WP7 apps gaining popularity. It was a lot harder to get into (just like professional 3D Animators. That was my dream before CS) but the mobile arena has opened new doors. Either way, with software development if you have the skills finding a job isn't an issue. I am graduating in 2 months and my counselor was telling me that our CS dept. has 100% job placement for its graduates. That number is typical for major Universities and CS
– joe_coolishApr 20 '11 at 16:17

Very true. But advanced math did come in handy that one time, and it probably will come in handy atleast one more time before you retire. Where as my underwater basketweaving class has yet to prove useful in my experience. Basically, the more math, the more tools you have to solve problems. It's never a bad idea to take more math
– joe_coolishApr 20 '11 at 16:21

And there's an extent to which you can learn the stuff you need when you need it - particularly if you have a strong mathematical background already. I studied CompSci, but when in my first job I needed to know spherical geometry I went and spent a bit of time in my old college's library to read up on it.
– Peter TaylorApr 20 '11 at 22:44

@joe_coolish Didn't you know? They're looking for experts in the field to help with Underwater Basketweaving Simulator 2011.
– MaxpmApr 21 '11 at 5:20

Programming is applied math. That said, I don't believe it makes much difference. The applied math that I took for my degree (in math) was primarily oriented towards physics which wouldn't do much for the logic that is required for programming but it works great for determining the algorithms.

It's also very useful for the many math-heavy application areas to know calculus, linear algebra, probability & statistics.

It's also very important to get no-nonsense software engineering, so you know how to analyze a problem area and propose a range of approaches to it, with pros and cons. Then be able to carry them through with a team. Understand the importance of source code control, maintainability, proper testing and quality control, and software lifecycle management.

I've seen very smart people who were shy in one or more of these areas, and it definitely holds them back. And if they are teachers, it holds their students back.

I'm finishing a degree in pure math currently, but I also spent a lot of time working in applied math research projects. Though every discipline draws its own cultural boundaries, the distinction between pure and applied math is often more elusive than we would like to admit. Until relatively recently in the history of mathematics, almost all of math was what we would now call "applied math." (Grant an exception for number theory if you like.) Sometimes the boundaries shift, as well. One of my research interests was motivated by an extremely "applied" problem corresponding to an actual physical system, but grew to encompass central techniques from semigroup and formal language theory, relatively "pure" topics. Remember that even Gauss, the prince of pure, spent hours calculating the orbit of Ceres by hand. (This is supposed to have motivated the discovery of least squares, so it wasn't a total wash.)

It's very difficult to say much more about your situation without specific details about coursework and research opportunities, but it would be fair to say that applied math will give you much more experience in programming. This is not to say that there are not computational problems in "pure math", (there are!), but that these will not be emphasized, and you will have to dig for them on your own. On the other hand, it seems that most folks have an easier time going from pure to applied to vice-versa. There's lots of opportunity for confounding variables here, but that may give you pause.

Ultimately, one of the most useful skills you can cultivate as an undergraduate is the ability to determine answers to the following: "what do I need a gun to my head in order to learn?" If you have interests that span multiple fields and prevent you from exhausting the course offerings in each, that question should motivate a great deal of coursework. For instance, I love automata theory dearly but I never took a course in the theory of computation because I could just read the textbook for pleasure. (Nota bene: this only works if you actually read the textbook). In differential geometry, however, I knew that I would never actually be arsed to deal with Christoffel symbols and the like unless I had a gun to my head in the form of a weekly quiz.

You should learn to recognize your own inclinations and disinclinations, and reroute around them.

The University of Illinois Math Department has an interesting M.S. program called Applied Math (Theory of Computation). It's a joint program between the Math Department and the C.S. Department. That might be the sort of thing you want, but it's a graduate program.

As an Applied Math major (at least at the university I'll be going to) I will have to take Discrete Math. I've noticed that there are a lot of courses listed as both Pure and Applied.
– JooseApr 20 '11 at 16:00

I managed to have a perfectly nice software engineering degree with a degree in Computational Math. I was lucky, my school had a program specifically for this, and it was a blend of CS and math with a focus on math that supported CS (Discrete, Abstract Algebra, Graph Theory & Networks) and math that requires some computer help (numerical analysis, linear algebra).

I guess that's "pure" math, but I never really thought of it that way - it was so focused on computers, that computational math was a really good description.

I think it depends on what you want to do. I've always been involved with computation, as applied to science and engineering, so applied math is the bigger part of the skill set. A lot of comp sci, strikes me as more pure math, worry about whether an algorithm exists that is NP complete and all that stuff, has never struck me as very interesting or practical. But functional approximation, PDEs, linear algebra etc. has always been pretty foundational. But if you are planning a career in general programing, I suspect this stuff won't do much for you other then development thinking skills.