HMC
Computer Science

A Guide to Advising Students about the Computer Science Core
and Preparing for the Computer Science Major


The Computer Science Core

What are the CS requirements in the Core?
Computer Science’s portion of Harvey Mudd’s core curriculum is CS 5: Introduction to Programming. This class assumes no prior programming experience and presents fundamental computer science ideas and skills with the Java programming language. There are weekly programming assignments that take most students between 6 and 12 hours to complete.


Is it possible to “place out” of the CS Core?  Is it advisable to place out if a student has a strong background?
Yes on both counts. Students who receive a 5 on the Java AP examination and complete a medium-sized programming project may receive credit for CS 5. Students who feel confident in their programming background in other languages, especially C++, are also welcome to pass out of CS 5 by completing the programming project and taking a short test once they arrive on campus. Typically 20-25 (out of 180) students per year pass out of CS 5.


What is the “next” Computer Science course if credit is awarded for the CS Core?
First-year students with credit for CS 5 should take the follow-up course, CS 60: Principles of Computer Science. CS 60 is an intensive introduction to the science of CS. It is an excellent barometer by which potential majors can gauge their interest in the broad field of computer science. In addition, it develops facility with several different types of programming languages and paradigms. While students almost never pass out of CS 60, it is not uncommon (2-3 students per year) to pass out of the third course in the major sequence, CS 70: Program Development and Data Structures. Students with a strong background in C++ and data structures can complete a few programs and take a test to receive credit and placement for CS 70.


Preparing for the CS Major

What additional courses should a first-year student take if interested in the CS major?
If a student takes CS 5 in the fall term and would like to further consider CS as a major, there are three options for the spring: CS 60 (Principles of CS), Math 55 (Discrete Mathematics), or another HMC core course. CS 60 is preferable if one is “on the fence” about CS, as it provides an overview of much of the field. Often students realize that computer science is the “right” major for them (or decide against CS) based on CS 60. Math 55 is also a requirement for the CS major and is useful especially for students deciding among mathematics, computer science, or the joint math/cs majors. An unrelated core course is also a possibility, as students taking CS 60 in the fall of their sophomore year are not at all behind in completing a CS major at Mudd.