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?

2 points

you can program without math, but it will be hard to pass a rigorous interview without math.

You should strive to learn symbolic math at least, and make sure you can do all the leet code problems and explanations using whatever math you are comfortable with.

permalink
report
reply
0 points

The field is incredibly broad. Choose a field or employer or project that’s not doing that an you’re fine.

permalink
report
reply
1 point
*

You often need to be pretty good at math. But not because you’re “doing math” to write the code.

In real world software systems, you need to handle monitoring and alerting. To properly do this, you need to understand stats, rolling averages, percentiles, probability distributions, and significance testing. At least at a basic level. Enough to know how to recognize these problems and where to look when you run into them.

For being a better coder, you need to understand mathematical logic, proofs, algebra/symbolic logic, etc in order to reason your way through tricky edge cases.

To do AI/ML, you need to know a shitton of calculus and diff eqs, plus numerical algorithms concepts like numerical stability. This is kinda a niche (but rapidly growing) engineering field.

The same thing about AI also applies to any other domain where the thing being computed is fundamentally a math or logic solution. This is somewhat common in backend engineering.

I’m not “doing math” with pen and paper at work, but I do use all of these mathematical skills all. the. time.

I am an SRE on a ML serving platform.

permalink
report
reply
1 point

In real world software systems, you need to handle monitoring and alerting.

That’s one example of your particular programming job. Many real world software systems do not require handling monitoring and alerting especially not using statistics, rolling averages, etc.

For example, I once wrote the encryption code used on smart card chips. Writing statistics for smart card card transactions would be someone else’s job. Same with the modem code I wrote for a product.

permalink
report
parent
reply
1 point

So, I’d argue that “frontend” and “backend” are the default modes of software engineering these days, and that embedded is a more niche field.

That said, if you’re doing encryption code, you’re doing far more advanced math than backend monitoring and alerting.

permalink
report
parent
reply
2 points
*

Practical programming itself does not require this kind of math. The stuff you’re trying to make a program do might; but even then I don’t think you’ll have difficulty in that context. The stuff you’re learning now will have had time to “settle”, and you’ll be working towards a concrete goal, which makes it easier in my experience.

Another thing is that just because you’re struggling right now doesn’t mean you’ll be struggling forever. Math didn’t really click for me until I took calculus. I had a math professor who it didn’t click for until their junior year of college as a math major.

So don’t sweat it. But it’s always a good idea to have another career idea or two in your back pocket just in case. There are lots of reasons you might not want to be a programmer as a career. You might hate it. You might love it enough that you want to be able to do it freely instead of at the behest of others for money.

These kinds of anxieties are normal for someone your age (assuming you’re not nontraditional student). But one day you’ll look behind you in all these worries will seem unjustified. Everything will almost certainly turn out fine.

permalink
report
reply
4 points

Depends on the industry and depth you want to go to, gamedev for example you can do without any, but all lower level custom graphics and physics are pretty calculus heavy.

Website dev can be entirely independent of math

permalink
report
reply
6 points

Ya, in gamedev you just need triginometry, lerp, quaternions, matrix multiplications and basic 3D math and maybe some more.

permalink
report
parent
reply
1 point

Me opening rpgmaker to do some matrix multiplication

permalink
report
parent
reply
5 points
*

Depends entirely on your definition of “gamedev”, IMO. If you’re trying to write a platformer in basic C with no external libraries, you will absolutely need to use algebra/geometry/etc. and maybe even some more advanced things like physics/calculus depending on what features/effects you want to put in your game.

permalink
report
parent
reply
3 points

I would uh consider that pretty in deep gamedev, even lower than some shader code lmao - so yes you would need to know some math.

Cracking open Godot and using a bunch of premade assets hardly even requires programming, much less mathematical knowledge

permalink
report
parent
reply
5 points
*

Be that as it may, I personally wouldn’t consider someone to be a very knowledgeable (on how games actually work) game developer if they didn’t at least know how to use things like linear algebra to make a character run and jump naturally and such, even if they’re not coding like that day to day and just using a higher level framework.

You don’t have to agree with me, and I still respect your opinion either way.

permalink
report
parent
reply
-1 points

That’s a really ridiculous example though. No one is doing that.

permalink
report
parent
reply
2 points

I’m doing that. I know several others who have as well.

permalink
report
parent
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

  • 2.4K

    Monthly active users

  • 1.8K

    Posts

  • 28K

    Comments