2023-2024 Catalog

Advising Information

There are three focus areas in the major: the standard Computer Science focus, the Computational Math focus for students who have a more theoretical interest, and the CS+X focus for students who want to dive into the intersections between computing and other disciplines in the liberal arts (forming the discipline X).

All 100-level COMP courses are appropriate for students with no computer science experience. For students exploring their interest in the major, we recommend starting with COMP 131, which will provide an introduction that should determine their levels of interest and enjoyment in the subject. Students with previous experience that includes object-oriented programming may be able to start at a more advanced level (see Placement Information below). Once students have completed COMP 131, they should enroll in COMP 229 (Data Structures), which serves as a gateway course to upper-division courses. Students may also take COMP 239 (Computer Organization). Both courses are required for the major. Students are also encouraged to take COMP 101 (Justice and Equity in Technology) as early as possible.

The CS department typically offers 4-5 upper-division electives each semester. Note that our required upper-level seminars, COMP 390 (Junior Seminar) and COMP 490 (Senior Seminar), are only offered in the Spring and the Fall semesters respectively, and should be taken in the Junior Spring semester and the Senior Spring semester. Careful schedule planning is recommended for majors, and students who wish to study abroad should talk to their advisor as early as possible.

Placement Information

Students interested in the Computer Science major who have not previously studied object-oriented programming do not need to take a placement exam and should start with COMP 131.

Students who received a 4 or 5 on the AP Computer Science exam do not need to take COMP 131 and should start the major by taking COMP 229. Students who are uncertain of their programming abilities may elect to take COMP 181 (Advanced Programming), which is not required for the major but is designed to refresh/strengthen students’ programming abilities.

Other students who have previously studied programming have the option of taking the CS Self-Placement Exercise.

Sample 4-Year Plan: Focus in Computer Science

For students that are required to take COMP 131 to satisfy the proficiency requirement:

 

Fall

Spring

Year 1

  • Fall FYS course

  • Foreign Language 101

  • Core Requirement (4 units)

  • Core Requirement (4 units) 

  • Spring FYS course

  • COMP 131 (CPLS)

  • Foreign Language 102 (4 or 5 units)

  • Core Requirement (4 units)

Year 2

  • COMP 229 or COMP 239 (CPMS)

  • COMP 101 (2 units)

  • Core Requirement (4 units)

  • General Elective (4 units)

  • General Elective (4 units)

  • COMP 149

  • COMP 229 or COMP 239 (CPMS)

  • Core Requirement (4 units)

  • General Elective (4 units)

Year 3

  • COMP Elective (300-level, Subfield #1)

  • COMP Elective (300-level)

  • General Elective (4 units)

  • General Elective (4 units)

  • COMP 390

  • COMP Elective (Subfield #2)

  • General Elective (4 units)

  • General Elective (4 units)

Year 4

  • COMP 490

  • COMP Elective (300-level)

  • General Elective (4 units)

  • General Elective (4 units)

  • COMP Elective

  • COMP Elective

  • General Elective (4 units)

  • General Elective (4 units)

Curricular Notes:

  • Three COMP Electives must be at the 300-level

  • Two COMP Electives need to be taken in different subfields

  • Two COMP Electives may be selected from the list of Additional Electives

Sample 4-Year Plan - Focus in Computational Mathematics

For students that are required to take COMP 131 to satisfy the proficiency requirement:

 

Fall

Spring

Year 1

  • Fall FYS course
  • Foreign Language 101
  • Core Requirement (4 units)
  • Core Requirement (4 units)
  • Spring FYS course
  • COMP 131 (CPLS)
  • Foreign Language 102 (LANG)
  • Core Requirement (4 units)

Year 2

  • COMP 229 or COMP 239 (CPMS)
  • MATH 210 (CPMS)
  • COMP 101 (2 units)
  • Core Requirement (4 units)
  • General Elective (4 units)
  • COMP 229 or COMP 239 (CPMS)
  • MATH 214
  • Core Requirement (4 units)
  • General Elective (4 units)

Year 3

  • Interdisciplinary Elective
  • Interdisciplinary Elective
  • General Elective (4 units)
  • General Elective (4 units)
  • COMP 390 (Junior Seminar)
  • Interdisciplinary Elective
  • General Elective (4 units)
  • General Elective (4 units)

 

Year 4

  • COMP 490 (Senior Seminar)
  • Interdisciplinary Elective
  • General Elective (4 units)
  • General Elective (4 units)
  • Interdisciplinary Elective
  • Interdisciplinary Elective
  • General Elective (4 units)
  • General Elective (4 units)

Curricular Notes:

  • Computational Mathematics majors must submit a form declaring their theme and what courses will be part of that theme. Students should do this by the beginning of their Junior Spring semester, so that the department can deliberate on the theme before students register for their Senior Fall semester classes.
  • Three Interdisciplinary Electives must be in Computer Science, and three must be in MATH.
  • A maximum of two courses can be at the 200-level (excluding MATH 210 and MATH 214).
  • A maximum of two courses can be double dipped with another major or minor.
  • Interdisciplinary Electives that do not carry the subject codes COMP or MATH must be filed with the Registrar’s Office by submitting a Transfer Credit & Course Substitution Form.

Sample 4-Year Plan - Focus in CS+X

For students that are required to take COMP 131 to satisfy the proficiency requirement:

 

Fall

Spring

Year 1

  • Fall FYS course
  • Core Requirement (4 units)
  • Core Requirement (4 units)
  • Foreign Language 101 (4 or 5 units)

 

  • Spring FYS course
  • COMP 131 (CPLS)
  • Core Requirement (4 units)
  • Foreign Language 102 (4 or 5 units)

 

Year 2

  • COMP 229 or COMP 239 (CPMS)
  • COMP 101 (2 units)
  • Core Requirement (4 units)
  • General Elective (2 units)
  • General Elective (4 units)

 

  • COMP 149 (CPMS)
  • COMP 229 or COMP 239
  • Core Requirement (4 units)
  • General Elective (4 units)

 

Year 3

  • COMP Elective (Subfield #1)
  • Interdisciplinary Elective
  • General Elective (4 units)
  • General Elective (4 units)

 

  • COMP 390 (Junior Seminar)
  • COMP Elective (Subfield #2)
  • General Elective (4 units)
  • General Elective (4 units)

 

Year 4

  • COMP 490 (Senior Seminar)
  • Interdisciplinary Elective
  • General Elective (4 units)
  • General Elective (4 units)

 

  • Interdisciplinary Elective
  • Interdisciplinary Elective
  • General Elective (4 units)
  • General Elective (4 units)

 

Curricular Notes:

  • CS+X majors must submit a form declaring their theme and what courses will be part of that theme. Students should do this by the beginning of their Junior Spring semester, so that the department can deliberate on the theme before students register for their Senior Fall semester classes.
  • Three Electives need to be at the 300-level
  • A maximum of two courses can be double dipped with another major or minor
  • Interdisciplinary Electives must be filed with the Registrar’s Office by submitting a Transfer Credit & Course Substitution Form