"Do you need to be good at mathematics to get into computer science or cyber security?"
This is a super common question I've seen from people looking to get into computer science and related fields. The great part of my ability to answer this question is that I'm incredibly qualified to answer this: I was absolutely horrible at math. Still am. I failed college statistics once, almost failed it again, almost failed every discrete mathematics I was in and failed a calculus class once all in four years of college. I am currently at a senior level in the cyber security field and have been a developer for a long time now. So this part, at least, I can wrap up quickly: you absolutely do not need to be good at mathematics to be in computer science and cyber security.
So, why am I writing this article?
Well, frankly, I kinda want to be good at math.
Math is an awesome universal language, an objective reality in a very subjective world. It can help you understand the way the world works, from demographics and sociology to economics and logistics. It's also just slightly personally irritating that I'm not good at math.
One of the coolest things about the way the internet works now is that you can pretty much teach yourself everything. I did it with coding: while I went to college for computer science, I pretty much had taught myself everything by the time I got to college, and now I teach myself everything from the internet.
So, why can't I do the same with math?
I did some initial looking and found this awesome article titled "So You Want to Study Math..." by Susan Rigetti as well as a video on learning math via texbooks on YouTube. This not only convinced me that self-teaching mathematics can work, but there are great pathways to doing it and tons of people who have tried it.
So, what's the approach? I'm going to work my way through some of the textbooks mentioned in the two links above and take my typical approach to learning: projects! I mentioned in my blog on OpenGL that I wanted to learn graphics to teach myself mathematics just because it's a great way to visualize your thinking. I'm also going to look at machine learning models and things like that to learn some statistics as well.
I'm actually really looking forward to this learning process. I think it's going to be powerful and really help in my CS journey.