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 11A | Calculus with Applications | 5 |
MATH 11B | Calculus with Applications | 5 |
| or these courses | |
MATH 19A | Calculus for Science, Engineering, and Mathematics | 5 |
MATH 19B | Calculus for Science, Engineering, and Mathematics | 5 |
| or these courses | |
MATH 20A | Honors Calculus | 5 |
MATH 20B | Honors Calculus | 5 |
Plus one of the following:
AM 10 | Mathematical Methods for Engineers I | 5 |
MATH 21 | Linear Algebra | 5 |
Plus all of the following
CSE 20 | Beginning Programming in Python | 5 |
CSE 30 | Programming Abstractions: Python | 7 |
CSE 12 | Computer Systems and Assembly Language and Lab | 7 |
CSE 16 | Applied 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 13S | Computer Systems and C Programming | 7 |
ECE 13 | Computer Systems and C Programming | 7 |
Upper-Division Courses
The following course
CSE 101 | Introduction to Data Structures and Algorithms | 5 |
Plus two upper-division computer science and engineering courses from the following list
CSE 101M | Mathematical Thinking for Computer Science | 5 |
CSE 102 | Introduction to Analysis of Algorithms | 5 |
CSE 103 | Computational Models | 5 |
CSE 110A | Fundamentals of Compiler Design I | 5 |
CSE 112 | Comparative Programming Languages | 5 |
CSE 114A | Foundations of Programming Languages | 5 |
CSE 115A | Introduction to Software Engineering | 5 |
CSE 118 | Mobile Applications | 5 |
CSE 120 | Computer Architecture | 5 |
CSE 130 | Principles of Computer Systems Design | 5 |
CSE 132 | Computer Security | 5 |
CSE 134 | Embedded Operating Systems | 5 |
CSE 138 | Distributed Systems | 5 |
CSE 140 | Artificial Intelligence | 5 |
CSE 142 | Machine Learning | 5 |
CSE 143 | Introduction to Natural Language Processing | 5 |
CSE 144 | Applied Machine Learning: Deep Learning | 5 |
CSE 150 | Introduction to Computer Networks | 7 |
CSE 160 | Introduction to Computer Graphics | 7 |
CSE 180 | Database Systems I | 5 |
CSE 183 | Web Applications | 5 |
CSE 184 | Data Wrangling and Web Scraping | 5 |
CSE 186 | Full 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.