University requirements sometimes don’t have any connections to the degree. For example, most colleges require that students earn credits in a physical education course. Most computer science programs require that students take at least one physics class, but why?
Computer science degrees have a physics requirement so graduates can solve physics problems in the design of computers or software. Hardware designers need to understand electromagnetic forces, for example, and software writers need to know how forces affect devices for which they write code.
Students are often surprised that a physics course is a requirement for earning a computer science degree because they have the misconception that a computer science degree only teaches coding. They hear “physics” and think “quantum mechanics” and “black holes.” However, physics has practical applications, and universities want computer science students to have some basic knowledge of those applications.
Why People Want Computer Science Degrees
Before you embark on a computer science degree, decide what you want to do with it—work with software, hardware, or both. The hardware is the physical device of a computer, and the software consists of the codes needed to make the hardware run.
Computers need both.
The computer you are reading on probably has a monitor, keyboard, hard drive, and mouse. A phone has at minimum a screen, battery, and camera, as well as the circuitry that lets you make and receive texts and calls, take photos, and listen to your favorite music or podcast.
Even a car’s computers need hardware. First, the motherboard needs to take the input from the many sensors that send it information, everything from the air pressure to the engine temperature, and more. So a car with cruise drive, anti-lock brakes, and keyless entry has separate computers for each (source).
Without software, computers are useless. The same is true of the computer or tablet you are reading on and the phone you will use later. Designers break software down into two categories: system and application (source).
System applications are related to the operating software and make the computer work. Application software is what the user relies on to get things done.
Before starting a computer science degree, you should decide what you want to do—design the hardware or write the software that makes the computer work or the applications.
Are Physics Classes Required for Computer Science?
Physics classes are required for computer science majors for several reasons. First, a knowledge of physics is considered essential to solving current and future computer science problems. In addition, physics is a requirement of the engineering schools that administer most Computer Science classes.
Universities will indicate the courses needed for a major, and many courses of study list one or two physics classes. One will typically be an overview of physics and the other exploring specific aspects of physics related to computing.
How Is Physics Used in Computer Science?
Computer science majors use physics in the development of computer hardware and software applications. In addition, a physics background gives students the flexibility to choose between the various aspects of computer science.
To better understand why most universities consider physics essential, let’s define physics. A common misconception is that physics deals with large objects and concepts, such as gravity, black holes, and particle accelerators. But physics is much more, and we interact with it constantly.
Physics is the study of matter and the forces that cause objects to behave in predictable ways.
For example, the nature of gravitational forces and electromagnetic fields are two aspects of physics important to computer scientists.
Electromagnetic forces are central to the hardware of computers. For example, hard drives use electromagnets to store data. As computers become smaller and people want more memory in less space, computer scientists use the knowledge of electromagnetic fields.
Physicists often classify the study of electrical, magnetic, optical, and thermal properties of solid substances as condensed-matter physics.
A computer scientist interested in the software side might need at least a basic knowledge of gravitational forces such as acceleration, force, and power, especially when writing software for moving objects.
Computer Science or Computer Engineering
The CS major can focus on computer science or computer engineering. As you can see, both require a foundational understanding of physics.
The computer science degree focuses on creating software. The software can include network and database design, computer programming, and software development. In addition, programmers need a solid grasp of computation theories, and calculus is usually another requirement of a computer science major.
Physics becomes essential when the software is related to moving objects. For example, programmers of the computers in cars needed an understanding of physics when writing the code.
Computer engineers create the microprocessors, circuits, and other hardware that make computers and other computing devices work. For example, when you text with a phone, thank the computer engineer who designed the circuitry inside the computer as well as the touchscreen used to type your text.
But not so fast—the engineer needs the programmer to create the software that pops up the mini keyboard and determines which letters you mean to type. So whichever track someone uses, there will often be a collaboration with other computer scientists.
Two Other Reasons Physics Is Usually a Computer Science Requirement
Since computer scientists will often collaborate with other scientists, universities believe that the students will benefit from having basic knowledge of physics.
Therefore, students in computer science programs typically take first- or second-year courses to gain the background knowledge necessary for this kind of collaboration.
Finally, most computer science programs are in a university’s Engineering School and must meet the requirements of that school.
This is similar to most university students being required to take classes they might not ever need in their careers. For example, all graduates will usually be required to take an introductory essay writing class.
What Kind of Physics Classes Will Computer Science Students Take?
The kinds of physics classes a student will be required to take depends on the specific requirements of the university. Most programs will require that a student take two first or second-year college-level courses.
For example, students at McGill University will need to take a four-credit Physics 131 Mechanics and Waves course. This will cover the fundamental laws and principles of Newtonian mechanisms as well as waves and wave optics. In addition, an introductory calculus course is a requisite.
They will also be required to take a second physics course, such as Phys 230: Dynamics of Simple Systems. This course builds on the topics in the 131 course.
At Stanford, Computer Science majors must take two physics courses. One must be in a mechanics class and the other in an electricity and magnetism course. Unlike McGill University, Stanford does not require Computer Science students to take courses that have labs.
Stanford allows most first-year college-level courses, including those taken at community colleges. The university also counts AP physics. Universities that allow transfer courses always suggest you get them approved through either the computer science or engineering school.
North Carolina State requires students to take several physics courses. PY 205, Physics for Engineers and Scientists, covers coordinated problem-solving using a calculus-based study of mechanics.
Unfortunately, not all universities are clear on whether a graduate is required to take a physics course. Brown University, for example, has an extensive list of courses, but it is not clear what additional courses should be. However, Brown is in the minority of universities that don’t list physics as a requirement.
A list like this is only partially helpful. When choosing a university, there are many considerations, including whether you will get accepted, whether it will be affordable, and if you even want to attend.
Perhaps you’ve always had your heart set on becoming a Penn State Nittany Lion. In that case, you will have to complete the requirements for Penn State. And yes, the university requires two physics courses for computer science majors.
What if a Student Is Not Good at Physics?
If a student isn’t good at physics, there’s still hope for that person in the computer science field. Some students struggle with it, but that doesn’t mean passing physics is impossible. Instead, there are alternatives and strategies students can use to be successful.
For starters, good study habits, like reading the chapter before coming to class, taking notes, working, and practicing problems will help. Those habits are essential for any course. Here are some tips specific to physics:
- Have the necessary math skills. Physics is built on math. Geometry, Calculus, Algebra and trigonometry are the four math topics you need to know to understand “the language of physics.” Added bonus: they will come in handy in many computer applications.
- Basic constants. Fundamental constants are always represented the same way because these forces are always the same, or constant. For example, you should know constants such as gravity on earth, which is measured 9.81 meters/second² (32.18 feet/second²), and the speed of light is 3 x 10 to the 8th/second. This article has additional fundamental physics constants.
- Memorize fundamental equations. Many physics problems can be solved by applying popular equations. For example, Force = Mass x Acceleration and Momentum = Mass x Velocity are two popular equations you should know. Although this equations list might be too comprehensive, even complex physics problems can be solved through the use of a combination of simple equations.
- Understand why the equations work. Rote memorization without understanding why the equations work is not going to help you. The textbook, lectures, and labs will build on the constants and equations, but understanding why the equations work is helpful. A good tool for this is YouTube or Khan Academy videos.
Khan Academy offers high school physics as well as AP/College Physics courses. Although they won’t replace the class lectures, they might reinforce them. Another option would be to preview topics with the Khan Academy courses.
Another popular option for anyone who struggles with physics is to take the courses at a local community college. Class sizes will be much smaller, and you will be able to receive more individualized instruction.
Often beginning physics courses at a college will be taught by physics students who may not have much experience teaching. Instructors at community colleges rarely do research, so their focus is on teaching.
Ensure that the program accepts community college credits (many will) and that the community college credits are not remedial physics.
Do I Need Physics to Learn to Code?
You do not need physics to learn to code, and you don’t even need to earn a full-time college degree. Most universities offer coding boot camps that can be completed in under a year. So it is even possible to teach yourself coding and land a good job.
However, a coding certificate might not allow you to do the work of a programmer. Although the two words are often used interchangeably, coding and programming are not identical.
A coder translates codes from a human-based language to a language a computer understands. The coder uses different programming languages like Python and Java to let the machine know what it should do.
The typical work process for a coder is to receive instructions for code requirements, write the code, implement it, and debug and test it.
Programmers are responsible for taking code and creating fully functioning software. While a coder might write code for one or more parts of software, the programmer is responsible for analyzing the code for each aspect of the software. So a programmer has to be able to code and much more.
More and more companies are hiring coders to write code. But, ultimately, computer programming is about getting results, and if a coder can create the software, database, or other product a company desires, they can move up to being a programmer.
However, a coding boot camp limits your job search. You can learn specific skills quickly, but if given a choice between a bootcamp and a computer science graduate, employers prefer the person who has a broader range of skills and knowledge.
Nearly every computer science major requires some physics courses. Some programs will give credit to high school AP courses, others will accept physics classes taken at a local community college, and some require that you take the courses offered at their university.
Luckily, these courses are first- or second-year introductory classes, not Quantum Theory of Fields.