Computer Science Curriculum


Computer Science studies the design of computational processes, computing systems, and virtual objects.

The Colby Department of Computer Science is committed to making computer science an integral part of a liberal arts education. Our goal is to provide Colby students with a strong background in computer science, including the integration of knowledge from other disciplines. Our graduates will have the ability and experience to enable and produce new and innovative discoveries.

The Department of Computer Science has the broader goal of enabling computational thinking throughout the college community. Computational thinking is the ability to decompose a problem or process and describe it at the level of computable operations. Computational thinking integrates abstraction, hierarchical design, information management, and an understanding of complexity.


Objectives are broad statements that describe the career and professional accomplishments that the program is preparing graduates to achieve.

We expect that graduates of the Colby Computer Science program will


Outcomes relate to the skills, knowledge, and behaviors that students acquire through courses and degree programs.

Graduates of Colby College with a major in computer science will possess

  1. proficiency in computational thinking,
  2. the ability to analyze systems at the three levels of computer science: theory, software, and hardware,
  3. proficiency in the design and implementation of algorithms using multiple programming languages,
  4. the ability to apply computational thinking to a diverse set of problems and disciplines,
  5. the ability to communicate effectively and collaborate with others, and
  6. the ability to adapt to new challenges and computational environments.

Degree Programs

Students with a variety of interests may want to explore Computer Science, as it impacts and interacts with virtually every discipline. Many advances in the natural and social sciences, engineering, and the humanities would not have been possible without the exponential growth in computing power and the corresponding design of advanced algorithms by computer scientists. Students who become majors or minors, or take just a few courses, will expand their possibilities by knowing more about how to effectively use computers and computation.

Computer science offers a major in CS, a major in CS with a concentration in Artificial Intelligence, and a minor in CS. Joint with departments across campus, we also offer a major in Data Science, minor in Data Science, and five interdisciplinary computing majors (CS+X): IC-Theater and Dance, IC-Music, Environmental Computation, Computational Biology, and Computational Psychology. The CS+X majors are designed to give students depth in both computer science and their focus discipline, preparing them for careers or interdisciplinary graduate programs with a computational focus, such as digital media, geographic information systems, and bioinformatics, computational neuroscience, or computational biology.

The initial sequence of CS courses (Computational Thinking, CS 231, and CS 251/2) also complements many disciplines. Whether you are an artist or a biology major, you will benefit by knowing more about how to apply computing to you area of interest. The first CS course for most students will be Computational Thinking: CS 151, 152, or 154. Students with some programming experience should speak with a professor about taking a placement exam and potentially starting with Computational Thinking: CS 166. Students with significant programming experience should speak with a professor about taking a placement exam and potentially starting with CS 231.

Students may count only Computational Thinking, CS 231, and CS 251/2 toward a CS major or minor and any Interdisciplinary major. CS majors or minors may not also obtain a major or minor in Data Science. CS majors, IC majors, or CS minors interested in Data Science should complete a Statistics minor. Mathematics or Statistics majors interested in Data Science should complete a CS minor.

Major in Computer Science

The major in computer science is designed to prepare students for either graduate study or a career in a computation-related field. Colby CS majors have been successful in a wide variety of career paths.

Students planning to attend graduate school in CS should strongly consider taking CS 376 and CS 378, undertaking an honors project, and strengthening their math background beyond the minimum required.

Visually, we have

Interested students should look at the example CS Major timelines. As is apparent from the timelines, taking Computational Thinking in your first year is strongly recommended. Students can take only one of the Computational Thinking courses.

A student majoring in Computer Science may not also major in Computer Science with a Concentration in Artificial Intelligence.

Major in Computer Science with a Concentration in Artificial Intelligence

The Computer Science major with a concentration in Artificial Intelligence prepares students for graduate work or careers as tool builders in AI.