Overview

Faculty

Mark Bailey
Mason Brown
Shawn Chen
Karyn Doke
Han Dong
Thomas Helmuth (on leave 2025-26)
Sarah Morrison-Smith (on leave 2025-26)
Darren Strash, chair
Wenbo Wang

Department/Program Goals

The goal of the Computer Science Department is to prepare students to adapt and excel in an ever-changing field by combining a strong foundation in mathematics, logic, and language with exposure to the latest innovations in technology.

Department/Program Student Learning Outcomes

Students Will Learn to:

  • Apply core principles of program execution by developing an assembler
  • Demonstrate knowledge of programming language environments by implementing an interpreter
  • Solve a given problem by writing an efficient algorithm that uses an appropriate data structure, analyzing its running time, and demonstrating that their algorithm works
  • Demonstrate their mastery of appropriate programming constructs in written code

Concentration/Minor Description and Requirements

The computer science concentration changed to include new course requirements.

No course taken Credit/No Credit may count toward the concentration.

Students may place out of CPSCI-101 by taking and passing the department's placement exam upon entering Hamilton. Any concentrator or minor placing into CPSCI-102 must still earn replacement credit for CPSCI-101. This replacement course is chosen in consultation with the Computer Science Chair.

Concentrators fulfill the Senior Program requirement by taking 410. Students may earn departmental honors by a concentration average of not less than 3.3, earning at least four credits in electives numbered 298 and above in the department, and achieving an average of not less than 3.5 in all 300-level courses taken in the department.

We believe that our students need to be aware how historical contributions of underrepresented groups in science illuminate inequalities of opportunity to contribute to science and technology, that a diversity of perspectives are crucial to science when dealing with complex problems, that the impact of science is both local and global, and that science policy decisions are made in the real world in which biases might be hidden. Students concentrating in Computer Science satisfy this SSIH (Social, Structural, and Institutional Hierarchies) requirement by selecting a course, in consultation with their academic advisor, from any department on campus that would help the individual student to address and expand his/her understanding of SSIH issues. The department will approve course selections. This requirement must be fulfilled by the end of the student’s junior year. Once completed, the student should enroll in the department's zero-credit SSIH “bookkeeping” course, CPSCI-200, to indicate they have completed the requirement.

The minor in computer science changed to include new course requirements.

  • Prior to the class of 2029, a minor in computer science consists of five courses: CPSCI-101, CPSCI-102, two courses numbered 210 or higher, and one course numbered 300 or higher. CPSCI-290 and CPSCI-298 may not be counted towards satisfying the requirements for the minor.
  • Beginning with the class of 2029, a minor in computer science consists of five courses: CPSCI-101, CPSCI-102, CPSCI-130, one 200-level elective (selected from 220, 230, 240, 250, 270), and one course numbered 300 or higher.

No course taken Credit/No Credit may count toward the minor.