Do I Have to be Good at Math for Computer Science?
August 02, 2022
If you plan to earn a computer science degree to work in computer programming, artificial intelligence, or machine learning, you need aptitude in discrete mathematics and linear algebra.
They say that everything in life is math. If by "they" you think we mean mathematicians, well, yes, of course, they say it. But it happens to be true, and it is especially true of many aspects of computer science (CS).
Perhaps you perked up at the mention of computers. After all, this is an article fundamentally about computer science, and if we were to ask people to name things that are ever-present in life, wouldn't a lot of people be more likely to name computers than mathematics? Can't we just stick to the former and forget about the latter?
Unless you are completely computer illiterate (in which case, you wouldn't be reading this), you know that isn't possible. Computer science is suffused with mathematics, from algorithms to computer programming languages to data structures and data analytics. Almost every area of computer science utilizes mathematical concepts such as logic, abstract reasoning, and critical thought.
In fact, if you are thinking of pursuing a CS degree, chances are that you have already taken at least one of the prerequisite courses, such as Introduction to Programming, Coding, Software Engineering or Database Management, and you already have a sense of how mathematics is linked to computer science. For example, it is hard to delve into a subject as popular as 3D graphics without understanding the role that linear algebra plays in their production.
But maybe you've found yourself wandering down this path for another reason: perhaps you've been complimented on your creativity and considered that there may be ways for you to exercise that within the field of software development. Perhaps you've always been known for your critical thinking skills and thought that problem-solving within the context of artificial intelligence could make for a rewarding avenue of professional study.
In other words, an interest in computers doesn't automatically translate into an interest in math. So, the question must be asked: Do I have to be good at math for computer science? We'll explore this topic, as well as:
- How to help yourself become better at math
- What is a computer science master's degree?
- What are the top schools that offer a computer science master's degree?
Do you need to be good at math to seek a degree in computer science?
The short answer is yes. The longer, more helpful answer is yes, but how good you need to be in a certain kind of math depends on the area in which you plan to specialize. In general, some believe that knowledge of math enhances the ability to think abstractly, which is a valuable tool tech-related fields like computer engineering. Others think of it in terms of math enabling the ability to apply logical thinking, a highly useful skill in artificial intelligence and machine learning.
Beyond that, there are fields within computer science that require less math than others, such as HCI/UX, software engineering, systems engineering, and computer architecture.
Those hoping to become computer scientists with whatever basic math skills they may have picked up in high school or through a mere understanding of binary code (the famous ones and zeroes) are going to be disappointed. You are going to need at least some understanding of discrete math to chart a career path anywhere in this field.
How to help yourself become better at math
If you are disappointed by the previous paragraph but not discouraged, there are avenues available that can help you in your math courses if the discipline doesn't come easily to you:
- Tutoring and/or faculty assistance: There is no shame in admitting what you don't know or are having trouble grasping (quite the opposite). Working directly with a tutor or teacher can help you address the specific problems you are having with any given subject. In the case of group tutoring, it can help you to understand that you are not alone in your confusion and expose you to takes on the material that you may not have thought of on your own.
- Study groups: Similar to group tutoring, study groups, with their emphasis on shared dialogue, can make you feel that you are part of a larger effort within the learning environment—both opening your eyes to new lines of thought and helping you to further develop your own.
- Study guides: The educational publishing industry has long provided self-help guides for study, despite reluctance of some to admit that that's what they are, from Cliff's Notes to SparkNotes to the Dummies series. Used in conjunction with the assigned texts from your math classes (not as substitutes; the detractors do have a point there), these guides can help you order your thoughts around a particular subject, making it less intimidating and thus more absorbable.
What is a computer science master's degree?
In the simplest terms, a computer science master's degree is for those seeking the sort of greater knowledge and understanding of computers that allows them to pursue careers as programmers (average base salary (US): $65,307), software developers (average base salary (US): $73,441), web developers (average base salary (US): $60,611) or systems managers (average base salary (US): $87, 761).
How long does it take to earn a computer science master's degree?
This depends on whether you choose a full-time (one to two years) or part-time (three to four years) course of study.
CS admissions officers expect that most applicants for a CS master's degree program will have a bachelor's in either computer science or one of its adjacent fields. You will be expected to have studied such subjects as programming, coding languages, calculus, discrete mathematics, and data structures. Experience in other related subjects such as algorithms, software engineering, and database management certainly helps.
CS master's programs include computer science courses designed to broaden computer science students' knowledge of several subjects, including:
- Web programming
- Computer languages (Python, Java, etc.)
- Computer architecture
- Algorithm analysis
- Software engineering and development
- App development and cloud computing
- Database systems
- Data storage
- Operating systems
- Computational theory
Most courses also require a capstone project.
Your interest in computer science may be spurred by a desire to work in a specialized area. Below is a list of some of the specializations within computer science that you may want to investigate:
- Artificial intelligence (AI): Devices seem to be getting "smarter" all the time. Aside from the benefits to one's personal life of having an "assistant" that helps you run your household, businesses have found AI to be invaluable in increasing efficiency and continuity, cutting down on errors, and reducing the need for humans to engage in boring, repetitive tasks. And if you're worried about the robot apocalypse, perhaps the $162,588 median salary for AI engineers in the US will offset your fears.
- Cryptography/Information security: With an increasingly plugged-in world comes an increasing need for serious security. Practically uncountable amounts of information are stored and shared every day, and it's the talents of cryptographers and information security analysts that ensure that this information is accessed only by those who are supposed to see it.
- Game design: It's hard now to remember when this wasn't the case, but video games certainly aren't just for kids anymore. Aside from their widespread use as a form of leisure, they are also being used in both military training and as an educational tool. The gaming industry earned $60.4 billion in 2021 in the US alone, meaning a career in this sector could be both fun and lucrative.
- Human-computer interaction/User experience (HCI/UX) For all of the focus on increasingly impressive digital doodads, it can be easy to forget that tech is supposed to be about humans. It's the job of HCI/UX experts to always keep humans in the picture. By combining ideas from computer science with those from social science, HCI/UX experts seek to develop sophisticated understandings of the way that users interact with technology, thereby enabling them to improve that interaction.
What are the top schools that offer a computer science master's degree?
US News & World Report features a list on their website of great CS master's programs around the country, including the following programs:
- California Institute of Technology
- Carnegie Mellon University
- Cornell University
- Georgia Institute of Technology (Main Campus)
- Massachusetts Institute of Technology
- Princeton University
- University of California - Berkeley
- University of Texas at Austin
- University of Washington - Seattle Campus
Depending on what works best for you and your schedule, you may not want to spend all of your time—or any of your time—in an actual classroom. That's where online programs come in. The following schools offer online options for earning your master's in computer science:
- Boston University
- Case Western Reserve University
- Columbia University
- Drexel University
- Johns Hopkins University
- North Carolina State University at Raleigh
- Southern Methodist University
- Stanford University
- Stevens Institute of Technology
- Tufts University
- University of Illinois at Urbana - Champaign
- University of Southern California
- Virginia Polytechnic Institute and State University
So, do you need to be good at math to pursue a master's in computer science? Well, at the very least, you need to be willing to engage with it. But, as we've seen, some tools can help you to overcome any deficiencies you may have in that department. Math competency is not such a high hurdle to clear when you know a career in computer science awaits on the other side.
Questions or feedback? Email email@example.com