Computer Science Major

Computer Science Majors must complete a minimum of 10 one-semester courses in computer science. These include seven required core courses and at least three additional upper-level (numbered 300 or above) electives. In addition, all majors must complete the equivalent of one semester of calculus; AP credit is allowed to satisfy this requirement. Prospective computer science majors are strongly encouraged to complete the equivalent of two semesters of calculus. Advanced placement credit may be used to count toward major requirements.

Department Advanced Placement Policy

AP Calculus

AP Calculus -  Students who have received a score of 4 or 5 on the AP Calculus AB exam, or a subscore of 4 or 5 on the AP Calculus BC Exam, will earn credit for MATH 135 Calculus 1 and are advised to take MATH 136 Calculus 2. Students will forfeit their credit if they opt to take MATH 133 Calculus 1 with Fundamentals or MATH 135 Calculus 1. Students who receive a score of 4 or 5 on the AP Calculus BC exam will earn credit for MATH 136 Calculus 2 and are advised to take MATH 241 Multivariable Calculus. Students will forfeit their credit if they opt to take MATH 133 Calculus 1 with Fundamentals, MATH 134 Calculus 2 with Fundamentals, MATH 135 Calculus 1 or MATH 136 Calculus 2.

AP Computer Science

Students with a score of 4 or 5 on the AP Computer Science A exam earn one unit of credit for CSCI 131 Techniques of Programming and are encouraged to consider enrolling in CSCI 132 Data Structures. Students who experienced significant disruptions to their AP courses in Spring 2020, and any students who are not confident of their programming skills, are encouraged to contact Prof. Kevin Walsh (kwalsh@holycross.edu) for advice on selecting an appropriate course. Students with AP Computer Science A credit will forfeit their AP credit if they opt to take either CSCI 131 or CSCI 110 Survey of Computer Science. AP Computer Science A credit counts towards fulfilling computer science major and minor requirements.  A score of 4 or 5 on the AP Computer Science Principles exam will earn one unit of credit for CSCI 110. This course does not count toward fulfilling the computer science major or minor requirements. Regardless of score, all students who have taken AP Computer Science Principles are encouraged to take CSCI 131 Techniques of Programming. Students will forfeit their AP credit if they opt to take CSCI 110.  A score of 4 or 5 on either AP Computer Science exam fulfills the mathematical science common area requirement.

Requirements

Required courses:
Calculus 1 (or equivalent)
Techniques of Programming
Data Structures
Discrete Structures
Mathematical Structures
Computer Systems & Organization
Analysis of Algorithms
Programming Languages: Design and Implementation
Ethical Issues in Computer Science
In addition to the core courses, majors are required to take at least three elective courses numbered above 300.
Data Mining
Computer Graphics
Theory Of Computation
Operating Systems
Computer Networking
Computational Vision
Compiler Construction
Directed Reading
Directed Project
Computer Science Honors Thesis
Computer Science Honors Thesis

We strongly recommend that students take at least one upper-level course carrying the project course designation. A project course allows students to combine skills and concepts they have previously learned during their undergraduate courses with new material in a complex implementation task. The project course is often scheduled for the last year of undergraduate study, where it can serve as a capstone for the undergraduate experience.