Course description
Computer Science majors at Harvey Mudd College engage in a rigorous program. Following an initial course in structured programming and problem solving (which is part of the "common core" program taken by all HMC students), students take foundation courses in principles of computer science, discreet mathematics, data structures and program development, and logic for computer science. These are followed by kernel courses in algorithms, computer architecture and operating systems, programming languages, and software development. Each student's program is rounded out with at least three electives chosen from advanced architecture, advanced operating systems, artificial intelligence, compiler design, computer graphics, computer networks, computer vision, databases, knowledge-based systems, neural networks, parallel and real-time computation, and theory of computation. Colloquia and topical seminars are also offered and there are additional opportunities to conduct individual research.
Computer Science studies are performed in conjunction with the strong HMC Core program, in which students also learn the fundamentals of biology, chemistry, engineering, mathematics, and physics. Additionally, an important part of the education of all HMC students is the program in humanities and social sciences, in which each student is required to take twelve courses in a variety of areas. As a consequence of this requirement, HMC students gain a greater understanding of the impact of science on society.