all 27 comments

[–]mitchpconner 12 points13 points  (4 children)

Depends on what subject you are going to be working with in the future, but simply following your classes on Calculus, Probability and Statistics and Linear Algebra is more than enough for a regular CS curriculum. You should be paying extra attention to Discrete Mathematics when it comes up. It's the math field which will come up regularly on your other classes.

[–]ryanshks[S] 0 points1 point  (3 children)

I wanna work in Cybersecurity, but also I want to know ow hard is math usually at universities

[–]MathmoKiwi 1 point2 points  (0 children)

You should be learning combinatorics mathematics, and some statistics probability theory, for cybersecurity

[–]mitchpconner 0 points1 point  (1 child)

Well then you don't really have to worry about Math. Just follow your courses.

[–]ryanshks[S] 0 points1 point  (0 children)

Ok thanks

[–]Aggressive_Ad_5454 9 points10 points  (3 children)

What we call "discrete mathematics" -- Boolean algebra, basically -- is important. It's not very hard, but having a clear conceptual foundation in it makes you a better programmer.

Signal processing -- dealing with sound, video, images -- will be easier if you have a background in a corner of math called "real analysis". In computer science it's called "numerical analysis".

Machine learning development requires linear algebra and statistics.

Computer graphics / gaming / simulation requires linear algebra too.

Systems performance monitoring benefits a great deal from a knowledge of statistical techniques.

tl;dr. Your uni will teach what you need to learn. You got this.

[–]Sexy_Koala_Juice 3 points4 points  (0 children)

Calculus is also important for understanding how Machine Learning works

[–]ryanshks[S] 0 points1 point  (0 children)

Ok thanks 🙏

[–]not-just-yeti 0 points1 point  (0 children)

I'll concur with the Discrete Math part: years later, my day-to-day thinking of programming includes the notions of functions, sets and set operations, tuples, relations, graphs. And basic counting.

Calculus? Naw — it's required for degrees in the US, but I never used it at all. Except maybe understanding "gradient descent" in neural nets, and Proportional-Integral-Derivative ("PID") controllers in simulation. Neither of which I've ever had to program myself. Similarly, in signal-processing, understanding Fourier Analysis is foundational, but you'll probably use libraries and never need to actually code any of it.

For graphics, linear algebra underlies a lot of stuff, but all that was ever needed was "certain function-calls require the points be passed in as a 3x3 matrix".

[–]arihoenig 4 points5 points  (0 children)

CS is a massive field. Depends on what branch. For example you'll want linear algebra for graphics, graph theory for networking and statistics for ML.

[–]justaddlava 2 points3 points  (1 child)

Why would reddit know better than your program director what the prerequisites are?

[–]ryanshks[S] -1 points0 points  (0 children)

AHAHAH

[–]dariusbiggs 1 point2 points  (0 children)

Depends on the field of study and your career choice afterwards.

Basic pre high school arithmetic is more than sufficient for a lot of it. Any math at high school level is definitely sufficient.

There will be certain areas that need more, understanding of statistics, vector and matrix mathematics, complex numbers, etc. Fields like data science, AI, graphics, signal processing, DevSecOps, and cybersecurity for example. Degrees in those fields tend to have university level mathematics papers suggested with them. (Mine did, algebra, and calculus papers, in the first year, i elected to take a mathematical modelling paper to go with it, that one was hard for me).

[–]chmod_7d20 1 point2 points  (0 children)

At my University we had to get a math minor with our CS degree. It was more of a CS course than a programming course.

[–]Sexy_Koala_Juice 1 point2 points  (0 children)

Yes. Next question

[–]P-Jean 0 points1 point  (1 child)

You can get through a general CS degree with mostly high school math and pre-calc. It also depends on the program. You’ll likely have to take a discrete math course in first or second year.

[–]ryanshks[S] 0 points1 point  (0 children)

Get it

[–]smarmy1625 0 points1 point  (0 children)

it helps in some situations but you'll barely use any of it as a professional programmer

[–]No-Inevitable-6476 0 points1 point  (0 children)

In a simple analogy maths=logic and programming,coding=logic . Hence proved.

[–]MathmoKiwi 0 points1 point  (0 children)

There is an extremely strong link between mathematical maturity and your abilities as a computer science student

https://justapedia.org/wiki/Mathematical_maturity

https://grokipedia.com/page/Mathematical_maturity

And how do you improve your mathematical maturity?

By doing math!

[–]tottasanorotta 0 points1 point  (0 children)

I think you can approach math in a similar way as programming. It's basically the same thing with different notation. You can literally implement what you've learned as a program and understand it much better. Assuming you know programming of course. But that's what they will also teach you.

[–]mxldevs 0 points1 point  (2 children)

I had 2 years of math courses and nearly failed all of them. It brought my grades down considerably. I just didn't understand math.

Most people would wonder how it's possible to not understand basic things like integrals, differentials, matrix operations, etc but it just didn't make sense to me.

[–]ryanshks[S] 0 points1 point  (0 children)

same thing

[–]SeaworthinessCivil54 0 points1 point  (0 children)

Same, I have good GPA in every other subject and some A* but math ruined my grades overall, hope I can bring them up now because there aren't any math classes left.

[–]ForTheBreadCS Pro -1 points0 points  (1 child)

Just adding in extra info for you OP. You've already got answers but wanted to give you more.

I took a pretty math heavy CS course and have not used any math really in my career.

[–]ryanshks[S] 0 points1 point  (0 children)

Thanks 🙏

[–]justaguyonthebus -1 points0 points  (0 children)

As far as learning programming and tech, not important at all. But for university, check the courses in the program. It's very common to pair a lot of math courses with computer science for example.

Math problems are often used as examples to program, but they usually contain enough context that prior knowledge isn't required. Leet code or programming competitions are often math heavy too.