views:

766

answers:

12

I saw this topic and had a bit of a different question.

I've taken almost all the math classes necessary for a CS degree (Calculus I-III, Linear Algebra, Discrete Math, and I'll be taking Statistics this semester). To get a math minor, I only need one more class. Has anybody taken any classes other than these that they found helpful? I'd prefer a class that won't be too difficult (my GPA needs some work), but I'd rather take a useful class than an easy one.

Any suggestions?

+1  A: 

Differential Equations?

chills42
+1  A: 

See if you can find a mathematic-modeling class. Often it's taught as a seminar for math majors, but depending on the projects, it will lie right at the intersection between math and programming.

Jeffrey
+2  A: 

How about logic for computer programmers? You'll learn Prolog, LISP and all sorts of useful stuff :)

Henrik Hartz
+9  A: 

If your discrete math class didn't cover combinatorics, I highly recommend it.

Hank Gay
Mine didn't and I was ignorant on taking more in that direction instead of my math minor tract of Linear Algebra/Calculus. Although my current job uses eigenvalues (never thought that would happen!), it also deals with combinatorics I wish I studied more.
nlucaroni
If your discrete math course doesn't cover combinatorics, take it back and ask for a refund.
Charlie Martin
Discrete math is sort of a gigantic topic, and combinatorics is only one of its subfields: http://en.wikipedia.org/wiki/Discrete_mathematics
Hank Gay
+1  A: 

I would support Henrik -- Set Theory and then Logic, it may be more difficult than you are willing to take on, but will open whole new worlds for you -- you will be able to truly understand functional, relational, Prolog etc.

ttarchala
+1  A: 

Here's what I wish I took:

  • Linear Algebra - for matrix operations, used a lot in computer graphics and numerical simulations. Besides, the basic computer memory model is a matrix.
  • Statistics - I totally underestimated the usefulness of this subject. It's very useful!
  • Discrete Math - Not exactly sure what I'd get out of it, but I feel like it would fill in some missing links
  • Logic - although I got some logic in Digital Electronics, but that's just AND through NAND gates. Formal set theory is quite useful to know.

Here's what I did take that I've found to be useful:

  • Algebra and Calculus (of course)
  • Ordinary Differential Equations
  • Geometry and Trig (though I only took these in high school as true courses)
Scottie T
Looks like I was lucky. I got to take all those math courses. Along with 2 calculus courses.
Kibbee
+4  A: 

If probability is a separate course from statistics in your school, I'd recommend taking probability as well.

John D. Cook
+1  A: 

If you're planning to go on to grad school for CS, I'd highly recommend a class in Number Theory.

Number Theory is heavy on proofs, and you do a lot of that in CS classes like Formal Languages, Theory Of Computation, and Analysis of Algorithms.

This won't help much with programming classes though.

Clayton
+2  A: 

Just because you can get something doesn't mean you should. Unless you are into math I would not necessarily want a math minor. Having that on your resume might pigeonhole you into being the math whiz and unless you are one don't get the math minor or don't tell people about it. That being said look for a class that will help you get to were you want too be which might still be a math class but could also be a writing class, economic class, business class, or another programming class.

Joel has a blog post with advice to programmers in school. CollegeAdvice

Rex Logan
If you're worried about being pigeon-holed you can always leave it off your resume. However, there may be jobs you'd be interested in where having a math minor would be a plus.
Eric Ness
I myself love math and would not mind having a math minor. And if the OP loves math go for it. But his comment about GPA mixed with his almost 10k rep led me to the put up this answer. A math minor is not for everybody.
Rex Logan
+4  A: 

Cripes, there's so much fun stuff in math; how to pick?

  • Mathematical logic: not just boolean algebra, but real mathematical logic, with proof theory, model theory, and working up to Gödel's Theorem. For a taste of it read Doug Hofstedter's Gödel, Escher, Bach.
  • Probability and queueing theory. Of all the courses I took in grad school, this is the one that amazes me, 25 years later, for how often it explains something in real life. (Like: why does it seem lightbulbs blow out in clusters?)
  • See if you can get a numerical analysis course that's cross-listed; numerical analysis just comes up over and over.
  • Algebra. No, not the one you took in 9th grade, abstract algebra: monoids and and closures and rings, oh my!
Charlie Martin
+1  A: 

Is numerical analysis a math or CS course at your university? Either way take it. In my opinion people who haven't taken at least one numerical analysis course should be forbidden from writing mathematical code. There are simply too many traps to fall into if you blindly assume that math on computers work just like the math you where taught in math class.

Otherwise if I was to recommend only one course that will most likely be useful I'd recommend whatever course at your university that covers queue theory and Markov chains.

That's my practical suggestion. If you happen to have time left over take a course in abstract algebra. You cannot really understand math if you don't know any abstract algebra. Of course you can have a long and fruitful career using math every day with out actually understanding math so it’s definitely more of a fun course for enlightenment purposes.

+1  A: 

Advanced Discrete Math.

Anything with Combinatorics or Number Theory.

Demian Garcia