St. Olaf’s Computer Science (CS) major is a balanced liberal-arts program that satisfies national curricular expectations, builds on a breadth-first, hands-on introduction to the discipline, takes a team-based approach to software design including interdisciplinary team projects, integrates ethical and social analysis in a distinctive way, and emphasizes written and oral communication skills and other aspects of a liberal arts education. See the page on curricular objectives for more information about these goals. See also the most recent catalog description of the major.
A CS major is arranged by individual contract between the program and a student, which helps both the student and the program with academic planning and builds in the potential to adapt requirements according to special circumstances and particular educational objectives. See Dick Brown (
firstname.lastname@example.org) to arrange a contract.
The CS major ordinarily requires a total of 11 credits in CS, with exceptions for double majors with Mathematics or Physics. Further information about the courses is provided in summary or detailed format; see also additional documents related to the curriculum.
- Foundation courses (3-4 required)
- CS1: CS CS 121 Principles of Computer Science. [AQR]. No prerequisite.
- MFC: CS CS 231 Mathematical Foundations of Computing. Prerequisites: CS1, average mathematics background.
Alternative: Math 232, Discrete mathematics
- HD: CS CS 241 Hardware Design. Prerequisite: CS1.
- SD: CS CS 251 Software Design and Implementation. Prerequisite: CS1.
Alternative. The following course (offered through Fall 2008) replaces both CS1 and SD:
- CS1+: CS CS 225 Accelerated Principles of Computer Science. [AQR]. Prerequisite: Advanced placement in Computer Science or comparable experience.
- Core courses (4 required)
- ADS: CS CS 253 Algorithms and Data Structures. Prerequisites: SD, MFC.
- ESD: CS CS 263 Ethical Issues in Software Design. [ORC, EIN]. Prerequisite: SD.
- Languages. One of the following:
- Systems. One of the following:
- Capstone course (1 credit required)
- CAP: CS CS 390 Senior Capstone Seminar. [WRI]. Prerequisite: Senior CS major with all core courses taken or currently enrolled.
- Elective courses (2 required)