The Williams College Computer Science Department aims to provide the finest possible computer science education for our students. Our goal is to provide majors with the following abilities:
-
To clearly articulate the core concepts of computing and to successfully apply those concepts using modern theoretical and programming tools.
-
To precisely define, represent, and algorithmically solve problems both from within computing and also from myriad domains across the arts and sciences.
-
To develop precise formal models of computer systems, to reason about them mathematically, to manifest them in computing hardware and software, and to experimentally validate them via the scientific method.
-
To develop design and abstraction principles suitable for tackling problems large and small.
-
To clearly communicate complex ideas orally, in writing, and in collaboration with others.
Building a strong foundation of computing in our students prepares them for a life full of learning that extends well beyond our department and Williams.