Computer Science Minor

Course Requirements

Thirteen courses are required for the computer science minor.

Lower-Division Courses

One of the following options:

Either these courses

MATH 11ACalculus with Applications

5

MATH 11BCalculus with Applications

5

or these courses

MATH 19ACalculus for Science, Engineering, and Mathematics

5

MATH 19BCalculus for Science, Engineering, and Mathematics

5

or these courses

MATH 20AHonors Calculus

5

MATH 20BHonors Calculus

5

Plus one of the following:

AM 10Mathematical Methods for Engineers I

5

MATH 21Linear Algebra

5

Plus all of the following

CSE 20Beginning Programming in Python

5

CSE 30Programming Abstractions: Python

7

CSE 12Computer Systems and Assembly Language and Lab

7

CSE 16Applied Discrete Mathematics

5

Students with no prior programming will take CSE 20 before CSE 30, and CSE 12. Students with a prior programming course, AP credit, or clearing the “Test-out” bar will start with CSE 30, and CSE 12.

Math placement is required for one or more of the foundational courses for this minor. For more information, please review the Math Placement website.

Plus one of the following

CSE 13SComputer Systems and C Programming

7

ECE 13Computer Systems and C Programming

7

Upper-Division Courses

The following course

CSE 101Introduction to Data Structures and Algorithms

5

Plus two upper-division computer science and engineering courses from the following list

CSE 101MMathematical Thinking for Computer Science

5

CSE 102Introduction to Analysis of Algorithms

5

CSE 103Computational Models

5

CSE 110AFundamentals of Compiler Design I

5

CSE 112Comparative Programming Languages

5

CSE 114AFoundations of Programming Languages

5

CSE 115AIntroduction to Software Engineering

5

CSE 118Mobile Applications

5

CSE 120Computer Architecture

5

CSE 130Principles of Computer Systems Design

5

CSE 132Computer Security

5

CSE 134Embedded Operating Systems

5

CSE 138Distributed Systems

5

CSE 140Artificial Intelligence

5

CSE 142Machine Learning

5

CSE 143Introduction to Natural Language Processing

5

CSE 144Applied Machine Learning: Deep Learning

5

CSE 150Introduction to Computer Networks

7

CSE 160Introduction to Computer Graphics

7

CSE 180Database Systems I

5

CSE 183Web Applications

5

CSE 184Data Wrangling and Web Scraping

5

CSE 186Full Stack Web Development I

5

Plus two additional upper-division courses

Two additional courses numbered CSE 100-189 of 5 credits or more. Lecture/lab combinations count as one course. If a lecture has a lab offered (required or optional), the lab must be passed to count for this requirement.