Ask HN: CS students/graduates, Did you struggle with Math?
If so, how were you able to get by ? Did you feel like you were falling behind much ? Were you still able to grasp concepts like complexity and other such things ?
Thanks
Edit: I'm currently taking MIT OCW 6.006 (Introduction to algorithms) and some of the math goes a bit over my head but I'm still able to follow along (for the most part). However I've observed, especially during recitations, that most of the students tend to have a very strong grasp of the fundamental math concepts required to understand the material. I'm curious to know if there are any students who struggled/have struggled with this because it seems to me that CS students are math wiz-kids (from the outside looking in).
(
11 comments
| 12 points
| on HN
)
I work in cryptography engineering today.
The routine algorithmic work we do in the industry may be rooted in somewhat sophisticated math, but in reality even if you're doing somewhat advanced work you're not engaging directly with that math. If I read through the OCW 6.006 curricula I see lots of topics that are important in practice, but none of them really involve deeply understanding complexity math.
If you have an intuition for why sort tends to be nlogn and search logn, I think you're probably doing fine.
I was decidedly not one of those people who was told I was good at math and it caused me a lot stress before I started studying CS and early on in my studies.
But it turns out, a lot of what makes people get the reputation for being 'good at math' is about a very specific subset of math that is taught to young students. That very specific subset is important for CS study, but its a very small part of the maths breadth that you need. For instance, I'm terrible at Calculus but found an aptitude for logic only after I began studying CS.
TLDR: Yes, you can study CS while also struggling with math. You have to do things to make up for those struggles such as engage with the professors/TAs more aggressively, get outside tutoring/help & work harder than your peers in those classes.
1.) Many of the people who he thought had an intuitive grasp of concepts that were way over his head had been just as confused and lost as he felt. They were either better actors, or he felt too much shame to recognize they were struggling.
2.) Over the course of his program, every one of his colleagues struggled with something others found intuitive and found something intuitive that others struggled with.
The point of all this is that you are almost certainly not alone in how you feel. I think you'll be okay!
If math in particular causes you trouble, it might be a sign that your study skills aren't quite up to where they should be. But, with some work, you can get over this hurdle!
I picked everything up by myself later after learning computer graphics and AI, since that's when, for me, algebra and calculus became something more than a grade. Derivatives "clicked" for me because i needed to know how to calculate a root value using Newton's method.
I do lack fundamentals, and i do suffer because of that, but over the years i came to the conclusion that i won't understand something if i don't care, and that's just how things are. The education system tends to front-load theory, and i can't learn for the sake of learning. Maybe it's the same for you.
Furthermore, unless you have followed some relatively uncommon high school program that teaches logic and discrete mathematics, the actual overlap between high school and first year CS math is almost empty.
I think a major part of excelling at mathematics is to understand that you must go through material very slowly. Mathematics is not literature. Taking 1 hour of good effort to go through 1 page is far from unusual if you want to truly conquer concepts by understanding definitions, developing good intuitions and proving all major results.
Serious literature study frequently requires this level of pondering as well.