In a rapidly growing and changing field, the Computer Science department offers a range of courses that enable majors to use modern technology, to understand its applications across a broad range of disciplines, and to comprehend the fundamental and enduring principles underlying those applications.
The computer science deptarment offers offers two disciplinary majors, a B.A. and a B.S., and one disciplinary minor.
If you'd like to view a full listing of our course options in Computer Science or any other subject, please visit the Online Course Catalogue.
Requirements for the Major (B.A.)
disciplinary, 10 courses
CPSC 124, CPSC 220, CPSC 225, CPSC 229, CPSC 327, CPSC 329; two additional 300- or 400-level CPSC courses excluding CPSC 450, CPSC 495, and CPSC 499; two additional computer science or mathematics (MATH 130 or above) courses.
Requirements for the Major (B.S.)
disciplinary, 15 courses
CPSC 124, CPSC 220, CPSC 225, CPSC 229, CPSC 327, CPSC 329; two 400-level computer science courses excluding CPSC 450, CPSC 495, and CPSC 499; two additional computer science courses; and five additional courses from the Natural Science division that count towards the major in their respective departments, chosen in consultation with the adviser. (MATH 130 can be included in the last category.)
Requirements for the Minor
disciplinary, 5 courses
CPSC 124, CPSC 225, and three additional computer science courses chosen in consultation with the adviser.
Our students choose from a variety of introductory and advanced courses, each designed to provide students with an ability to think critically and solve problems.
Below, you'll find a sampling of some of our most popular classes, as well as suggestions for making Computer Science a part of your larger interdisciplinary experience at Hobart and William Smith Colleges.
CPSC 124 Introduction to Programming
Learn about the theory and practice of computer programming as well as the basic concepts of software development through the use of the programming language, Java. If you find that you are interested in programming techniques, expand your knowledge of the process by taking CPSC 329 Software Development.
CPSC 220 Introduction to Computer Architecture
Discover how computers really work and how millions of transistors come together to form a complete computing system. If you find out that you enjoy construction, try your hand at design by enrolling in ART 115 Three-Dimensional Design.
CPSC 336 Robotics
Participate in an advanced study of the eletronics, mechanics, sensors and programming of robots with the emphasis placed on programming robots which investigate, analyze and interact with the environment. Now that you know what makes robots tick, discover how humans interact with their environment in ANTH 110, Introduction to Cultural Anthropology.