Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I am in my early 40s and plan to enroll in university this fall to pursue a long-postponed CS degree. I have been working as a developer for almost 20 years, but have found further advancement at this stage of my career difficult without a degree. Plus, I've always wanted to get one, I have a hunger for learning, and I'd still have 20 years ahead of me after graduation before retirement. I started at a junior college out of high school, but only completed about 16 hours, so I'm basically starting from scratch. I'm excited, but apprehensive.

In high school, I was very good at math - took Trig/Pre-calc, etc. and did well. I scored high in math on the ACT/SATs. However, 20 years of database-driven application development has not required any higher math, and I know I am quite rusty. What specific topics/areas in mathematics do I need to review and master over the next 6 months to give me a fighting chance in Calc I (and beyond) come fall? Your help is greatly appreciated.

Thank you for your time.

share|improve this question
1  
The sad truth is that at 40+ you'll face significant age discrimination in this field, especially when it comes to companies that might have projects that go beyond simple business CRUD apps. Instead of using your lack of a degree as an excuse not to hire you, they'll use some HR approved mumbo-jumbo like "You don't fit in with our team dynamics." –  jfrankcarr Feb 23 '12 at 16:48
5  
Funny, in my company the most senior developers are the ones doing the "projects that go beyond simple business CRUD apps", and the fresh grads are the ones looking over their shoulders trying to wrap their heads around distributed transactions and processing grids. –  TMN Feb 23 '12 at 16:57
1  
@TMN - It really depends on the company. Some companies do seem to value experience but many more don't. –  jfrankcarr Feb 23 '12 at 17:05
7  
@jfrankcarr - Quite frankly I don't want to work for a company who discriminates against people in their 40's anyway. I've had enough of 80 hour a week crunches, months on the other side of the world and all of the other mushroom management you get heaped on you earlier in your career. I'm now happily working my 40 hours a week just getting on with interesting work and having a life outside of my job. I'm never going to get rich, but I'll never be bored either. Now how about helping Bryan with an answer rather than doom-saying? –  Mark Booth Feb 23 '12 at 19:05
2  
@jfrankcarr, your experience is of course your experience, but you may want to be cautious about relying on it to draw broad conclusions. "The plural of anecdote is not data". My own anecdote is that at 48 I took two years off from work to get an MS degree, and had no trouble landing a development job where the MS degree was directly relevant. I may just have been lucky, but then again you may just have been unlucky. –  Charles E. Grant Feb 23 '12 at 20:11
show 5 more comments

7 Answers

Not really a programmers.stackexchange question, but you should have a solid grasp of trigonometry, algebra and geometry before attempting college calculus and discrete mathematics.

share|improve this answer
2  
This is the correct answer. A CS degree would include courses in discrete math, calculus and (probably) linear algebra. Therefore, what he should review are the foundations that those courses build on. These foundations go under the umbrella term of "precalculus". –  user16764 Feb 23 '12 at 17:32
    
Perfect answer. This is the standard high school pre Calc. –  MathAttack Feb 23 '12 at 18:27
add comment

Discrete math and probability/statistics are the ones you want. Unless you're going to be doing engineering or scientific work, calculus is superfluous. Check out the math used in algorithm analysis and data structures books -- that's the stuff you'll use.

share|improve this answer
2  
I keep seeing people suggesting probability/statistics in place of calculus, but calculus is a prerequisite for most probability and statistics courses, except for the most basic "descriptive" statistics courses. –  Charles E. Grant Feb 23 '12 at 17:30
    
@CharlesE.Grant - Depends upon how far you want to take the calculus. A good Calc I course might set you up for probability and statistics which makes the next two (or three) calculus courses unnecessary. –  rjzii Feb 23 '12 at 17:38
    
I'm with @CharlesE.Grant . Most programs I have looked over typically require 3 semesters of Calculus. Linear Algebra for some too. They can be far more complex than the intro probability and statistics that most require. –  Rig Feb 23 '12 at 20:14
add comment

Why not visit your Maths Faculty and ask them for the course breakdown for Calc 1 ? That seems far more useful than asking random strangers on the internet what Maths they reckon will be useful? =)

That said, Linear Algebra and Differential / Integral calculus are probably good options. Trig is also always good to know.

share|improve this answer
1  
Thanks for the comment. I didn't clarify, but I was hoping there were many random strangers here with a CS degree and first-hand knowledge of the math requirements. ;) –  Bryan J. Feb 23 '12 at 16:45
    
Haha, granted. Speaking for myself, Maths1 wasn't a prerequisite for my CS degree but was for my Physics major. In day to day development, though, I've found that I've very rarely used any of my faintly-remembered maths, other than some concepts from calculus and basic knowledge of modulus etcetera. My basic exposure to statistics in first year has proven a lot more useful. –  mcfinnigan Feb 23 '12 at 16:47
    
The required math background varies greatly depending on the type of programming you do. For example, programming in a scientific field will likely require more math than database-driven development. +1 for suggesting to let the education experts recommend what courses to take. –  semaj Feb 23 '12 at 17:19
    
If you are looking to get a CS degree the first math course is Calculus 1. This generally requires you to be up to date with your trigonometry and logarithm knowledge. –  Dunk Feb 23 '12 at 19:32
    
I recommend looking through the required courses that make up the CS degree you are enrolling in. That will give you a good idea of where to start. If you do indeed need to take calculus 1, find out what textbook is used and start looking through it. Popular textbooks such as Stewart normally include a review of algebra and trig in the appendix which may be enough for your purposes. –  Antonio2011a Feb 23 '12 at 22:18
show 2 more comments

Here's the math I had to know for my CS degree (in progress, 4th year student), ordered by importance:

  1. Algebra and proofs
  2. Discrete math
  3. Trigonometry, geometry and linear algebra (mostly for 2D/3D graphics)
  4. Statistics
  5. Calculus (not used, but mandatory)
share|improve this answer
    
FWIW, as a working software engineer, I've used all of these. Though trigonometry least of all (the last time I used trigonometry in programming was to write an xscreensaver screenhack, I think). The stuff I use most is program complexity analysis, which I use several times a week (and often in interviews). –  James Youngman Feb 25 '12 at 0:39
add comment

The classes that matter for a CS degree are Discrete Math (which is a grab bag of set theory, combinatorics, Boolean algebra, recurrence relations, information theory, and the like) and maybe Linear Algebra (which wasn't required for my degree). Both of those will definitely have Calculus as a prereq, and of course Calc will have at least Trig and Algebra as prereqs. My program also had Analytic Geometry as a prereq for Calc. You shouldn't need more than one or two semesters of Calculus along with Discrete and all their prereqs to satisfy a CS degree plan, but that will obviously vary by program and what you pick as a minor1.

I can count on one finger the number of times I had to use anything more complicated than basic algebra since graduating; unless you're doing some serious physical modeling or other analytical work, 90% of what you learn will not be used outside of class.

At this point in your career, I don't know how much help a BS would be in helping you land a job. It won't hurt, obviously, but depending on the field you want to get into, it may not be that great a help.

EDIT

To answer your actual question, the main things you will want to bone up on will be your trigonometric identities, linear vs. non-linear functions, stuff like that. And remember:

  • You never really understand algebra until you start doing trigonometry;
  • You never really understand trigonometry until you start doing differential calculus;
  • You never really understand differential calculus until you start doing integral calculus;
  • You never really understand integral calculus until you start doing differential equations;
  • You never really understand differential equations until you start modeling non-linear systems;
  • You never really understand non-linear systems.


1 I wound up minoring in math (which shocks me to this day -- I hated math in high school), so I have 3 semesters of calculus and 1 semester of Differential Equations under my belt. Not that I've used any of it.

share|improve this answer
    
Thank you for your comment. To be clear, I want to get my degree as a personal achievement, and to help open the door to advancement (a closed door due to lack of a degree something I see more often these days). I'm not so much concerned about whether I'll use the math learned in a CS curriculum in my everyday work afterward, just what do I need to master to grasp Calc 1 and succeed from that point forward throughout the program. –  Bryan J. Feb 23 '12 at 21:37
    
@BryanJ. In that case I recommend getting the calc I textbook and starting to go through it. Probably the highschool math you remember will be enough. The prerequisites will probably be reviewed in the textbook appendices. Only if that is insufficient would I look at a more basic book. A lot of people like the books by K.A.Stroud for a condensed review, but make sure you look at a copy before buying as they are quite terse. –  Antonio2011a Feb 23 '12 at 22:25
    
@Bryan - see edit. –  John Bode Feb 23 '12 at 23:24
add comment

Discrete math is absolutely necessary - basic boolean logic, set theory, etc. An algorithmic understanding of how to write proofs. Algebra is helpful. That's pretty much it unless you are going into AI, in which case calculus, linear algebra, etc.

share|improve this answer
add comment

I was required to take calculus in college even though I had a 4 on the AP test (I made the wise choice of matriculating to a school that gave no credit whatsoever for AP grades or even college courses you took before matriculation. Any other school I would have started as a sophomore...but I needed to be taken down a peg, I was pretty high on myself back then. But I digress. As I remember it, calculus boiled down to two things, Derivatives and Integrations.

A derivative can be used for several things. It can be used to calculate the tangent of an equation at a given point. Depending on what that equation represents (say the velocity of a particle over time), the derivative represents some other aspect of the equation (in the case of velocity, the derivative of the function would give you the particle's acceleration over time). From what I recall we spent a great deal of time discussing the theory around derivatives and were finally given a heuristic for determining the derivative for any function.

Integrations are the reverse of derivatives. Basically given a function f, the integration of f, g, is the function that f is the derivative of. From what I recall (don't quote me on this). The integration of a function can be used to calculate the area beneath the function from 0 to x. Again, you will spend a lot of time around the theory of integrations and then will be given the heuristic for calculating an integration for any function.

There's also a lot of discussion around function limits and other concepts like that but the big two are Derivatives and Integrations.

Before taking calculus, I had a year of Algebra, Geometry, and Trigonometry and I brought all of that knoweldge to bear in understanding Calculus.

share|improve this answer
    
What specific topics/areas in mathematics do I need to review and master over the next 6 months to give me a fighting chance in Calc I (and beyond) come fall? I gave him an overview of what calculus was an what courses I took to prepare for it how the hell does it not have to do with the question? If you didn't bother to read it that's one thing but to say that my answer that addresses the question directly has nothing to do with the question is extremely dismissive especially considering that you didn't bother providing your own answer. –  Mike Brown Feb 24 '12 at 11:11
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.