The Computer Science Minor is designed to provide basic proficiency in computer science. The requirements focus on programming methodology and skills, computer organization, relevant mathematical skills, structure techniques, laboratory courses with programming projects, and design and analysis of algorithms. Completing these requirements provides a strong foundation in computer science.
PLEASE NOTE: Due to the high demand for CSE courses, CS minors do not receive priority for CSE classes and we cannot guarantee you will be able to complete the minor requirements before graduation. Because of this, minor required courses should be taken out of academic interests and not solely to earn the CS minor designation on a transcript.
CSE Minor Requirements
CSE lower-division courses (16 units)
- CSE 8B or CSE 11: Intro Computer Science and Object-Oriented: Java (4 units)
- CSE 12: Data Structures and Object-Oriented Programming (4 units)
- CSE 20*1: Discrete Mathematics (4 units)
- CSE 21*2: Math/Algorithms and Systems Analysis (4 units)
*1: CSE 20 may be substituted with MATH 109 or MATH 31CH. This is a manual update an advisor needs to make. Send a message through the Virtual Advising Center (VAC)
*2: CSE 21 may be substituted with MATH 154 or MATH 184 or MATH 188. This is a manual update an advisor needs to make. Send a message through the Virtual Advising Center (VAC).
- CSE 100/CSE 100R: Advanced Data Structures (4 units) ** Three upper division CSE Elective courses from the CS26 Major listed below (12 units)
- Please use this example as to how should properly list the upper-division courses: CSE 100 or CSE 100R, CSE 1XX, CSE 1XX, and CSE 1XX.
- Electives may NOT be from the Technical Electives. Must be from the CSE elective options listed.
- Please note: Students do not need to update their CSE Minor application if they decide to take a different pre-approved CSE Upper-Division Elective than originally listed on their application. Please keep in mind that the approved CSE electives can change. Before you enroll into a course, make sure that this elective is still on the approved electives page. If you are not sure whether a course can fulfill the CSE Minor UD Elective, please refer to the CSE Electives page and contact the CSE Undergraduate Advisors via the Virtual Advising Center with any questions.
Prerequisite notes: Granting exceptions to prerequisites is rare and requires documentation of extenuating circumstances.
- Please be aware that the upper-division courses may be more difficult to secure a seat for non-majors.
**Although CSE15L and 29 are not part of the CSE Minor Curriculum, taking one of these is a required prerequisite to take CSE 100/CSE 100R. If you have not taken CSE 15L in or before SPRING 2024, you will need to take CSE 29 instead. Please refer to the CSE Prerequisites webpage for more details.
**Students who take CSE 15L (in or before Spring 2024), but did not take CSE 30 in SP24 will be advised to take CSE 29 (for 2 units).
Computer Science Minor Policies
- All lower- and upper-division courses must be completed with a letter grade. D grades are allowed in lower division courses.
- Students must achieve at least a 2.0 average GPA in the upper-division courses for the minor to be awarded.
- Students who cannot minor in Computer Science: students in the Jacobs School of Engineering CANNOT minor in Computer Science, students in the Data Science major (DS25) and students in Math-CS major (MA30) in the Mathematics Department.
- Please see "How to Declare a Minor" for UCSD minor policies.
- A maximum of 4 units of special studies courses may be used towards the CS minor: ENG 100D, ENG 100L, CSE 198, or CSE 199
- Per campus policy, a maximum of 8 upper division units may be overlapped between your major and your minor.
- Undergraduate students may use CSE graduate-level courses towards their minor requirements, but may need a petition if they have taken the equivalent/similar undergraduate course. Undergraduate students must get instructor's permission and departmental approval (EASy request) to enroll in a graduate course.
- **CSE 180/ and CSE 180R are not approved for CSE Elective for CS minors**
Declaring the Minor
- Declare the CS Minor using TritonLink.
- Click on "Major and Minor" and then at the bottom of your screen where it says Minor click "Add Minor"
- Enter the required lower and upper-division courses in the form. You can find these listed above.
- Please list the upper-division courses as: CSE 100 or CSE 100R, CSE 1XX, CSE 1XX, and CSE 1XX.
- Please note: Students do not need to update their CSE Minor application if they decide to take a different pre-approved CSE Upper-Division Elective than originally listed on their application. Please keep in mind that the approved CSE electives can change. Before you enroll into a course, make sure that this elective is still on the CSE approved electives page. If you are not sure whether a course can fulfill the CSE Minor UD Elective, please refer to the CSE Electives page or contact the CSE Undergraduate Advisors via the Virtual Advising Center with any questions.
- Please allow up to 4 weeks for your Minor request to be reviewed. If your request was not approved and you have questions, please contact the CSE Department through the Virtual Advising Center.
- If you are prompted to submit a Quarter by Quarter (QxQ) plan, you need to add ALL of the courses that you have remaining to complete your degree. This includes major courses, minor courses and college/GE courses.
2025-2026 CS26 ELECTIVES
CS minors must complete 12 units of CSE Electives
- Computer Science and Engineering
-
Any upper-division CSE course between CSE 100-190, 193, 194 that is not being used for another major requirement (and is taken for a letter grade and passed with a C- or better) may be used towards an upper-division "CSE Elective" for the CS29 major.
Each CSE Elective course is “tagged” as Systems, Theory, Applications of Computing, and/or Open CSE Electives. Students may view the full list of tagged CSE courses on the CSE Undergraduate Program Catalog.
- Cognitive Science
-
COGS 108 - Data Science in Practice (4) - Applications of Computing
COGS 109 - Modeling and Data Analysis (4) - Applications of Computing
COGS 118A - Supervised Machine Learning Algorithms (4) - Applications of Computing
COGS 118B - Intro to Machine Learning II (4) - Applications of Computing
COGS 118C - Neural Signal Processing (4) - Applications of Computing
COGS 120 - Interaction Design (5) - Applications of Computing
COGS 121 - Human Computer Interaction Programming Studio (4) - Applications of Computing
COGS 122 - Startup Studio (4) - Applications of Computing
COGS 123 - Social Computing (4) - Applications of Computing
COGS 124 - HCI Technical Systems Research (4) - Applications of Computing
COGS 125 - Advanced Interaction Design (4) - Applications of Computing
COGS 126 - Human-Computer Interaction (4) - Applications of Computing
COGS 127 - Designing Human-Data Interactions (4) - Applications of Computing
COGS 181 - Neural Networks/Deep Learning (4) - Applications of Computing
COGS 185 - Advanced Machine Learning Methods (4) - Applications of Computing
COGS 186 - Genetic Algorithms (4) - Applications of Computing
COGS 187A - Usability and Information Architecture (6) - Applications of Computing
COGS 187B - Practicum in Professional Web Design (4) - Applications of Computing
COGS 188 - Artificial Intelligence Algorithms (4) - Applications of Computing
COGS 189 - Brain Computer Interfaces (4) - Applications of Computing
Please use the UC San Diego EASy Course Pre-Authorization Forms for COGS course clearance.
- Data Science
-
DSC 100 - Introduction to Data Management (4) - Applications of Computing
- Design
- Economics
- Education Studies
-
EDS 124AR - Teaching Computation in the Digital World (4) - Applications of Computing
EDS 124BR - Teaching Computational Thinking for Everyone (4) - Applications of Computing
- Electrical & Computer Engineering (ECE)
-
ECE 111 - Advanced Digital Design Project (4) - Systems
ECE 140A - The Art of Product Engineering I (4) - Systems or Applications of Computing
ECE 140B - The Art of Product Engineering II (4) - Systems or Applications of Computing
ECE 148 - Introduction to Autonomous Vehicles (4) - Applications of Computing - may be used as a CSE Elective for CS26 majors on the FA23 or later curriculum plans; pre-FA23 CS26 majors may use it as a Technical Elective.
- Engineering (Global Ties)
-
ENG 100D/ENG 100L: Principles of Team Engineering: globalties.ucsd.edu
- Students may use up to 8 units of ENG 100D/ENG 100L courses towards upper division CSE Elective credits (as part of the 8 units maximum of CSE 198/199/199H Special Studies courses allowed). You are NOT able to take ENG 100D twice.
- Students must take ENG 100L twice (2 units each time) to receive credit for upper division CSE Elective (not exceeding the 8 units of CSE 198/199/199H Special Studies courses); students may not combine this course with another 2 unit or 6 unit course.
- Students may request to have their degree audit updated by contacting the Virtual Advising Center.
- Linguistics
-
LIGN 165 - Computational Linguistics (4) - Applications of Computing
LIGN 167 - Deep Learning for Natural Language Understanding (4) - Applications of Computing
- Mathematics
-
MATH 114 - Introduction to Computational Stochastics (4) - Applications of Computing
MATH 155A - Geometric Computer Graphics (4) - Applications of Computing
MATH 170A - Introduction to Numerical Analysis: Linear Algebra (4) - Theory
MATH 170B - Introduction to Numerical Analysis: Approximation and Nonlinear Equations (4) - Theory
MATH 170C - Introduction to Numerical Analysis: Ordinary Differential Equations (4) - Theory
MATH 171A - Introduction to Numerical Optimization: Linear Programming (4) - Theory
MATH 171B - Introduction to Numerical Optimization: Nonlinear Programming (4) - Theory
MATH 173A - Optimization Methods for Data Science I (4) - Theory
MATH 173B - Optimization Methods for Data Science II (4) - Theory
MATH 181D - Statistical Learning (4) - Theory
MATH 185 - Introduction to Computational Statistics (4) - Theory
MATH 187A - Introduction to Cryptography (4) - Theory
MATH 189 - Exploratory Data Analysis and Inference (4) - Applications of Computing
- Music
-
MUS 171 - Computer Music I (4) - Applications of Computing
MUS 172 - Computer Music ll (4) - Applications of Computing
MUS 177 - Music Programming (4) - Applications of Computing
- Visual Arts
-
VIS 141A - Computer Programming for the Arts I (4) - Applications of Computing
VIS 141B - Computer Programming for the Arts II (4) - Applications of Computing
CSE Course Placement
- CSE Course Placement Advice
-
All UC San Diego students are invited to take CSE courses to check out the CS Minor. All CSE courses are open for enrollment, and most are offered more than one quarter. You can start with CSE 3 or CSE 5A or CSE 8A or CSE 11.
Still not sure which class to take first? Start by reading the CSE Course Placement Advice page.
P/NP Grading Policies for Spring 2020 - Spring 2021