I’m working my way to a CS degree and am currently slogging my way through an 8-week Trig course. I barely passed College Algebra and have another Algebra and two Calculus classes ahead of me.

How much of this will I need in a programming job? And, more importantly, if I suck at Math, should I just find another career path?

3 points

Depend on what programming you do. Graphics will be math out of the wazoo, whereas generic web or desktop app programming has very little math involved

permalink
report
reply
5 points

Being comfortable with basic back-of-the-envelope math can be a huge benefit. (Full disclosure: i am a math major who is now a programmer)

Over my career I have several examples of projects that have saved weeks worth of dev time because someone could predict the result with some basic calculations. I also have several examples where I have shown people some basic math showing that their idea is never gonna work, they don’t listen and do it anyway, and I see them 1 month later and the project failed in the way i predicted.

A popular (and wise) saying is that “Weeks of work can save you hours of meetings”. I think the same is true for basic math. “Weeks of coding can save you minutes of calculation”.

You can definitely be a successful programmer career without great math skills. Math is a tool that can help you be more effective.

permalink
report
reply
4 points

Can you share the full story of the projects that you could predict could fail using maths?

permalink
report
parent
reply
78 points

Anywhere from very important to not important at all, depending on your specific job.

There is some good news though, you’ve been lied to about sucking at math. Whether by yourself or other people I do not know, but the education research I have seen has been pretty clear that the main difference between people of normal intelligence who are ‘good at math’ and those ‘bad at math’ is how long they’re willing to work on a problem to ensure the correct answer before moving on.

I know ‘try harder’ sucks as an answer but it’s the best one I know of and at least in this case will actually make a difference.

permalink
report
reply
1 point
*

Well being able to figure out 1 complex math solution per day vs 1 complex solution per 1.5 days for the person who just has to work on the problem for longer is balloons a lot over the long term.

Like how the average calorie burning difference between people is only 400 per day out of ~2000, but over a month that is like 1.5kg difference of mass burned which is 18kg per year.

But I don’t know if I am interpreting the result you said correctly.

permalink
report
parent
reply
17 points

Agreed. Math, for the most part, is very rule oriented and problems only have one answer and often one strategy to get to the answer. If you work on many different problems (in the same subject) you should start to get used to the rules.

Overall I would say a strong math foundation is important to CS but CS isn’t just about coding. You can absolutely get a coding job without strong math skills or even without a degree, it’s just a bit harder to get started. If the discipline still exists you might consider a Business Information Systems degree (we used to call it CS lite). Depending on the position a company might equally consider BIS and CS majors.

permalink
report
parent
reply
12 points

i would disagree that math problems only have one strategy for getting to the answer. there are many things, particularly in more abstract math, which can be understood in multiple different ways. the first example that comes to mind is the fundamental theorem of algebra. you can prove it using complex analysis, algebraic topology, or abstract algebra. all the proofs are quite different and rely on deep results from different fields of math.

i think the same thing holds in the less abstract areas of math, it’s just that people are often only taught one strategy for solving a problem and so they believe that’s all there is.

permalink
report
parent
reply
7 points
*

problems only have one answer and often one strategy to get to the answer

Totally disagree

You’re thinking of equations, which only have one answer. There are often many possible ways to solve and tackle problems.

If you’ll permit an analogy, even though there’s “only one way” to use a hammer and nail, the overall problem of joining wood can be solved in a variety of ways.

permalink
report
parent
reply
3 points

You’re absolutely right. I was referring to equations which, in my experience, is 90% of undergrad math.

permalink
report
parent
reply
5 points

Do you have a link to the research? I’m a math educator and I’d like some good materials for encouraging my students.

permalink
report
parent
reply
8 points
*

Depends on the programming job.

In my amateur experience, the most difficult math I had to do was use the Pythagorean theorem to calculate a point that was spinning around an other point.

But I can see needing to be able to use matrices in some instances.

Being good at math allows programmers to code more efficient systems. Instead of doing multiple complicated lines, it could all be incorporated into a single efficient equation.

Most of programming is just logic based. Although math is also logic based. So take from it what you will.

permalink
report
reply
4 points

Yep, truth tables mostly. Math is mostly useful in game programming.

permalink
report
parent
reply
3 points

And graphics.

Statistics is also important in a lot of areas if your doing data analysis.

permalink
report
parent
reply
22 points
*

As many have already said, the math needed will depend on what type of work you’re looking to do. Writing business software, for example, rarely requires more than basic arithmetic.

However, I think that the logical thinking skills that are needed for math are also necessary to be a good software engineer.

permalink
report
reply

Programming

!programming@programming.dev

Create post

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person’s post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you’re posting long videos try to add in some form of tldr for those who don’t want to watch videos

Wormhole

Follow the wormhole through a path of communities !webdev@programming.dev



Community stats

  • 3.1K

    Monthly active users

  • 890

    Posts

  • 7.7K

    Comments