Learning Goals

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:

  1. To clearly articulate the core concepts of computing and to successfully apply those concepts using modern theoretical and programming tools.

  2. To precisely define, represent, and algorithmically solve problems both from within computing and also from myriad domains across the arts and sciences.

  3. 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.

  4. To develop design and abstraction principles suitable for tackling problems large and small.

  5. 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.