Computer Science
Basic Structure of the Department
- The department offers a Computer Science Major and Minor, a Minor in Digital Arts, a Computational Methods Minor, an Operations Research Minor, a Major modified with Engineering, a Major modified with Digital Arts, and the ability to modify another major with computer science.
- The Computer Science Major is designed for students who want a comprehensive background in computer science. Rather than just teaching you the systems and programming languages of today, a Computer Science Major allows you to be able to learn what you need to know for graduate studies or a professional career.
- A Computer Science Major consists of two prerequisites, nine major courses, and a culminating experience. Prerequisite courses are COSC 1 and COSC 10. Of the nine major courses, two must be in the areas of theory and algorithms, two must be in the areas of systems and hardware, two must be in applied computer science, and three are electives. The culminating experience is either an honors thesis (COSC 99) or COSC 98.
- The Computer Science Minor is designed for students who want to complement a different major with a significant background in computer science. A Computer Science Minor consists of 3 prerequisites and 5 upper-level courses. All the prerequisites and 3 of the upper-level courses are required, but there are choices for the remaining 2 upper-level courses.
- The Digital Arts Minor is designed for students who want to bring their talents and skills into the digital arts realm; it teaches the principles, aesthetics and practice of digital art, modeling, and animation. A Digital Arts Minor consists of 1 prerequisite and 5 upper-level courses. There are 3 required upper-level courses, but there are choices for the prerequisite and the remaining 2 upper-level courses.
- The Computational Methods Minor prepares students to work at the interface of computer science and another discipline, training them in formulating, developing, implementing, and applying computational solutions to domain-specific challenges. A Computational Methods Minor consists of 2 prerequisite courses, 3 upper-level computer science courses, and 2 upper-level courses from the relevant discipline. Most of the requirements offer several choices.
- The Operations Research Minor is offered for students who want to complement a different major with a background in quantitative optimization. An Operations Research Minor consists of 4 prerequisites and 5 upper-level courses. All the prerequisites and 4 of the upper-level courses are required, but there are choices for the remaining upper-level course.
- The Computer Science Major modified with Engineering is offered for students who want a background in computer science with a focus on the design of computer systems. This major consists of 8 prerequisites and 11 major courses. All the prerequisites and 5 of the major courses are required, but there are choices for the remaining 6 major courses.
- Computer science can be part of a modified major (frequently with digital arts, engineering, or economics, but also with music, philosophy, psychology, and many other disciplines).
Courses for the Student with Little or No Background Who Wants to Explore Computer Science
- COSC 1 (Introduction to Programming and Computation, 11F and 12W), is the header course for the major. There are no prerequisites for the course, and it is available to everyone.
- A student who comes to Dartmouth with credit for COSC 1 may take COSC 10 (formerly COSC 8), or COSC 30 (formerly COSC 19).
- For more information on the restructuring of Computer Science courses and course numbers, please see http://www.cs.dartmouth.edu/site-content/site/a-major-redesign.php
Other Information About Courses and Considerations
- A student who plans on majoring in computer science should, by the end of sophomore year, have taken at least COSC 1 (Introduction to Programming and Computation), and preferably also COSC 10 (Problem Solving via Object-Oriented Programming), and COSC 30 (Discrete Mathematics in Computer Science, offered every fall and winter).
- A student planning on majoring in computer science is also advised to take at least two of the following: COSC 31 (Algorithms), COSC 50 (Software Design and Implementation), and COSC 51 (Computer Architecture) by the end of sophomore summer.
- Students may substitute for COSC 1 any of the following: ENGS 20; credit and placement from the Computer Science Advanced Placement exam; credit and placement from the local placement exam.
- The earlier a student starts taking computer science courses, the more flexibility there will be later on
Current Enrollments, Class Size, and Distributives
Course Descriptions - ORC
The Computer Science home page