Requirements

Two degrees and a minor are offered. Explore the program requirements below.
Toggle
Bachelor of Arts
Learn the fundamentals of computer science, including programming techniques, data structures, and computer systems. Pursue electives on a variety of topics such as big data, machine learning, educational technologies, and computational linguistics. This track combines well with a second major or a minor.
Core Courses
  • COSI 12b: Advanced Programming Techniques in Java
  • COSI 21a: Data Structures and the Fundamentals of Computing
  • COSI 29a: Discrete Structures
  • COSI 131a: Operating Systems
Five Electives

Full details and recommendations are provided in the University Bulletin.

Additional Requirements for Degree with Departmental Honors

Graduation with honors in computer science requires completion and defense of a senior honors thesis. Students interested in senior thesis should contact prospective mentors by the spring of their junior year and should take note of the prerequisites for enrollment in COSI 99d (Senior Research).

Toggle
Bachelor of Science
Go beyond fundamentals and prepare for a career in computer science research or high-tech development. Dive deeper into more core courses, electives, and mathematics courses. This track combines well with work in a faculty research lab and industry internships.
Core Courses
  • COSI 12b: Advanced Programming Techniques in Java

  • COSI 21a: Data Structures and the Fundamentals of Computing

  • COSI 29a: Discrete Structures

  • COSI 131a: Operating Systems

  • COSI 121b: Structure and Interpretation of Computer Programs

  • COSI 130a: Intro. to Theory of Computation

Six Electives
Full details and recommendations are provided in the University Bulletin.
Additional Requirements
  • Math 8a: Introduction to Probability and Statistics or MATH 36a, ECON 83a, BIOL 51a, or PSYC 51a

  • MATH 10a: Techniques of Calculus

Additional Requirements for Degree with Departmental Honors

Graduation with honors in computer science requires completion and defense of a senior honors thesis. Students interested in senior thesis should contact prospective mentors by the spring of their junior year and should take note of the prerequisites for enrollment in COSI 99d (Senior Research). 

Toggle
Minor
Core Courses
  • COSI 12b: Advanced Programming Techniques in Java

  • COSI 21a: Data Structures and the Fundamentals of Computing

Four Electives

For Business Majors we suggest the following electives:

  • COSI 102a: Software Entrepreneurship

  • COSI 125a: Human Computer Interaction

  • COSI 127b: Database Management Systems

 For Biology Majors we suggest the following electives:

  • COSI 101a: Artificial Intelligence

  • COSI 113b: Artifical Life

  • COSI 123a: Statistical Machine Learning

  • COSI 165a: 3D Animation

  • COSI 178a: Computational Molecular Biology

For Psychology Majors we suggest the following electives:

  • COSI 101a: Artificial Intelligence

  • COSI 111a: Topics in Computational Cognitive Science

  • COSI 114a: Topics in Computational Linguistics

  • COSI 118a: Computer Supported Cooperation

  • COSI 125a: Human-Computer Interaction

Full details and other recommendations are provided in the University Bulletin.