B.S. Computer Science

CS 26 FA23 Homepage

Updated July 19, 2024

Curriculum Update: CSE 15L (2 units) will be replaced with CSE 29 (4 units) in Spring 2024. A new updated version of CSE 30 will be offered Fall 2024. For students admitted in FA24, to accommodate the two additional units for CSE 29, the General Science requirement will be reduced by one course and the Computer Science and Engineering lower-division elective will be increased by two units.

If you were admitted to CS26 before Fall 2023 and want to switch to the New Fall 2024 curriculum, you will need to fill out the Intent to Change Degree Audit FA23 form first to review the updated major requirements and policies. Once you complete the form, please message us in the VAC and mention you would like to switch to the FA24 curriculum.

If you were admitted to CS26 in FA23 and would like to switch to the FA24 requirements, please send us a VAC message to CSE Advising to let us know that you would like your degree audit updated. Students may request this starting September 1st 2024. FA23 admits do not need to complete the Intent to Change Degree Audit form.

This is CSE’s core major, preparing students to contribute to the profound societal changes being brought about by innovations in computing. Students interested in a software emphasis might want to consider Computer Science (CS26).  The CSE program provides three majors in all, with numerous electives, allowing flexibility to explore your academic and career interests. The lower-division course requirements are designed to provide a strong foundation in mathematics, physics, programming methodology and skills, and computer organization. Upper-division core courses deal with the theory and design of algorithms, hardware, and software as well as applying your knowledge to the computing world. Electives allow students to gain additional breadth and/or depth in computer science and engineering.

Effective Fall 2023, the Computer Science (CS26) major curriculum has been updated. The FA23 curriculum is designed to ensure flexibility and adaptability for first year students and transfer students with the goal of ensuring students are prepared for the growing breadth known as Computer Science. Once students have taken our Core Courses, our elective courses allow students to explore multiple paths to graduation and dive into these areas of specialization:

  • (Systems) The implementation of abstractions behind, and security of, computer hardware, software, and networking.
  • (Theory/Abstraction) Abstract computational ideas using mathematical or formal tools.
  • (Applications of Computing) Applying appropriate computing knowledge and problem-solving techniques to guide and shape the impact of computing on the world. 

UCSD- CSE General Catalog

Degree Plan Checklist:

  • BS Computer Science Checklist (Fall 2024 Curriculum): a checklist for all major requirements for students on the Fall 2023 Curriculum
    • All major requirements must be taken for a letter grade AND passed with a C- or better (with the exceptions of: CSE 91, CSE 95, CSE 197, CSE 198, and CSE 199). 
    • A maximum of 12 units of P/NP courses may count, chosen from: a maximum of 8 units of CSE 198 or CSE 199 or 199H; a maximum of 4 units of CSE 197.
      • Students may use 8 units of CSE 198 or CSE 199 or CSE 199H towards CSE elective requirements.
      • 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.
    • A maximum of 12 units of CSE 190 can be used towards Open CSE elective credit. May be repeated for credit max 3 times (maximum of 12 units; assuming courses taken for a different topic). 
      • Please visit the CSE 190 website for current offerings and to view the tag for each course.
    • Undergraduate students may use CSE graduate-level courses towards their major 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 291's are topics courses and are counted as part of the maximum of three CSE 190's allowed for CSE electives. 
    • Untagged upper division CSE courses that may be used as Open CSE Electives are CSE 109 (2 units), CSE 190 (tagged based on offering), CSE 192, CSE 195, CSE 197, CSE 198, CSE 199, CSE 199H. 
    • CSE courses that may not be used as Open CSE Electives courses toward the CS degree are: CSE 180, CSE 180R.

BS Computer Science Checklist (FA23 and Prior):

  • BS Computer Science Checklist (Fall 2023 Curriculum): a checklist for all major requirements for students on the Fall 2023 Curriculum
    • All major requirements must be taken for a letter grade AND passed with a C- or better (with the exceptions of: CSE 91, CSE 95, CSE 197, CSE 198, and CSE 199). 
    • 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) may be used towards an upper-division "Open CSE Elective".
    • A maximum of 12 units of P/NP courses may count, chosen from: a maximum of 8 units of CSE 198 or CSE 199 or 199H; a maximum of 4 units of CSE 197.
      • Students may use 8 units of CSE 198 or CSE 199 or CSE 199H towards CSE elective requirements.
      • 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 one elective credit; students may not combine this course with another 2 unit or 6 unit course.
    • A maximum of 12 units of CSE 190 can be used towards Open CSE elective credit. May be repeated for credit max 3 times (maximum of 12 units; assuming courses taken for a different topic). 
      • Please visit the CSE 190 website for current offerings and to view the tag for each course.
    • Undergraduate students may use CSE graduate-level courses towards their major 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 291's are topics courses and are counted as part of the maximum of three CSE 190's allowed for CSE electives. 
    • Untagged upper division CSE courses that may be used as Open CSE Electives are CSE 109 (2 units), CSE 190 (tagged based on offering), CSE 192, CSE 195, CSE 197, CSE 198, CSE 199, CSE 199H. 
    • CSE courses that may not be used as Open CSE Electives courses toward the CS degree are: CSE 180, CSE 180R.
  • BS Computer Science Checklist (Fall 2022 Curriculum): a checklist of all major requirements for students on the Fall 2022 curriculum
    • All major requirements must be taken for a letter grade AND passed with a C- or better (with the exception of CSE 91, CSE 95, 197, 198, and 199). 
  • BS Computer Science Checklist (Fall 2021 Curriculum): a checklist of all major requirements for students on the Fall 2021 curriculum
    • All major requirements must be taken for a letter grade AND passed with a C- or better (with the exception of CSE 95, 197, 198, and 199). 
  • BS Computer Science Checklist (Fall 2020 Curriculum): a checklist of all major requirements for students on the Fall 2020 curriculum
    • All major requirements must be taken for a letter grade AND passed with a C- or better (with the exception of CSE 95, 197, 198, and 199). 
  • BS Computer Science Checklist (Fall 2019 Curriculum): a checklist of all major requirements for students on the Fall 2019 curriculum
    • All major requirements must be taken for a letter grade AND passed with a C- or better (with the exception of CSE 95, 197, 198, and 199). 
  • BS Computer Science Checklist (Fall 2017 Curriculum): a checklist of all major requirements for students on the Fall 2017 curriculum
    • All major requirements must be taken for a letter grade (with the exception of CSE 95, 197, 198, and 199).
    • For CSE majors on an old degree curriculum, if you want to switch to Fall 2017 requirements, please send a request to advising through the Virtual Advising Center (VAC) or come in to meet with an advisor

Four Year Plans

  • Academic Planning Worksheet (link to copy a Google Sheet): blank worksheet for students to be able to create a sample long term plan which can be brought to an advising meeting 

  • Sample Plans By College: sample long term plan that includes college requirements

Sample 4 Year Plan (Fall 2024 Curriculum)

 These plans only include CSE major requirements. For questions regarding your college and university requirements, please check with your college.

 

YEAR

FALL

WINTER

SPRING

First Year

CSE 8A or 11*1

MATH 20A

 

 

 

CSE 8B*1

MATH 20B

 

 

 

CSE 12

CSE 29 

CSE 20*2

MATH 20C

Second Year

CSE 21*3

CSE 30

CSE General Science 

 

CSE 100

Math 18

 

 

CSE 101

CSE 110

Statistics 

 

Third Year

Systems Elective

Theory/Abstraction Elective

Applications Elective 
 

Systems Electives

Theory/Abstraction Elective

Applications Elective

 

Systems Elective 

Theory/Abstraction Elective 

Applications Elective


 

Fourth Year

Open CSE Elective*4 

Open CSE Elective*4

 

Open CSE Elective*4

Open CSE Elective*4

Open CSE Elective*4

 

Open CSE Elective*4

Elective  

*1: Students who do not have programming experience should begin with the two-track course: CSE 8A (take CSE 8B in the second quarter). Students who have programming experience may begin with CSE 11 (take CSE 12 and CSE 29 in the second quarter).

*2: 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).

*3: CSE 21 may be substituted with MATH 154 or MATH 184. This is a manual update an advisor needs to make. Send a message through the Virtual Advising Center (VAC). *Effective Winter 2023: CSE 21 may be substituted with MATH 154 or MATH 184 or MATH 188*

*4: Open CSE Electives: CSE UD courses, including Special Studies along with any non-CSE courses that have any of the above tags. For a full list of policies and limitations on Open CSE Electives, please visit the CSE Electives website

 

Transfer Students

Transfer students are in a special situation where the credits they come in with vary vastly from one student to another. To assist transfer students with their long term plans for completing major requirements, we have created different long term plans with different entry points depending on the CSE credits students typically come in with. These plans only include CSE major requirements, for questions regarding your college and university requirements, please check with your college.

*These plans only focus on CSE coursework. For a list of all CSE Major requirements (including math and general science courses needed), please see the BS Computer Science Checklist above. 

Incoming Computer Science (CS26) Majors with Transfer Credit for CSE 11, 12 and 20, click here for Sample Long-Term Plan

 

Fall Quarter - Year One

Winter Quarter - Year One

Spring Quarter - Year One

CSE 30

CSE 100/100R

CSE 110

CSE 21*3

CSE 101

Systems Elective 

CSE 29*1

Statistics 

Abstraction Elective 

 

 

Application Elective 

Fall Quarter - Year Two

Winter Quarter - Year Two

Spring Quarter - Year Two

Systems Electives 

Systems Elective 

Open CSE Electives*4  

Open CSE Electives*4  

Abstraction Elective 

Open CSE Elective*4  

Application Electives 

Applications Electives 

Open CSE Electives*4  

Abstraction Elective 

Open CSE Electives*4  

Open CSE Electives*4  

 

*1: Transfer students who have credit for CSE 11, CSE 12 and CSE 20 in Fall quarter ONLY may take CSE 29 and CSE 30 concurrently. An EASy request will be needed for approval after you are enrolled in CSE 29. 

*3: CSE 21 may be substituted with MATH 154 or MATH 184. This is a manual update an advisor needs to make. Send a message through the Virtual Advising Center (VAC). *Effective Winter 2023: CSE 21 may be substituted with MATH 154 or MATH 184 or MATH 188*

*4: Open CSE Electives: CSE UD courses, including Special Studies along with any non-CSE courses that have any of the above tags. For a full list of policies and limitations on Open CSE Electives, please visit the CSE Electives website

Incoming Computer Science (CS26) Majors with Transfer Credit for CSE 11, 12, 20, and 30 click here for Sample Long-Term Plan

 

Fall Quarter - Year One

Winter Quarter - Year One

Spring Quarter - Year One

CSE 21*3

CSE 100/100R

CSE 110

CSE 29

CSE 101

Systems Elective 

 

Statistics 

Abstraction Elective 

 

 

Application Elective 

Fall Quarter - Year Two

Winter Quarter - Year Two

Spring Quarter - Year Two

Systems Electives 

Systems Elective 

Open CSE Electives*4  

Open CSE Electives*4  

Abstraction Elective 

Open CSE Elective*4  

Application Electives 

Applications Electives 

Open CSE Electives*4  

Abstraction Elective 

Open CSE Electives*4  

Open CSE Electives*4  

 

*3: CSE 21 may be substituted with MATH 154 or MATH 184. This is a manual update an advisor needs to make. Send a message through the Virtual Advising Center (VAC). *Effective Winter 2023: CSE 21 may be substituted with MATH 154 or MATH 184 or MATH 188*

*4: Open CSE Electives: CSE UD courses, including Special Studies along with any non-CSE courses that have any of the above tags. For a full list of policies and limitations on Open CSE Electives, please visit the CSE Electives website

 


FALL 2022 Curriculum and Prior Sample Plans


Four-Year Plans:

  • Academic Planning Worksheet (link to copy a Google Sheet): blank worksheet for students to be able to create a sample long term plan which can be brought to an advising meeting 

  • Sample Plans By College: sample long term plan that includes college requirements

  • Sample 4-year Plan (Fall 2022 Curriculum)

    Sample 4-year Plan (Fall 2022 Curriculum): 

    YEAR

    FALL

    WINTER

    SPRING

    First Year

    CSE 8A or 11*1

    MATH 20A

    GE

    LDE

    CSE 8B*1

    MATH 20B

    GE

    GE

     

    CSE 12

    CSE 15L 

    CSE 20*2

    MATH 20C

    Second Year

    CSE 21*3

    CSE 30

    CSE General Science 

    CSE 100

    CSE 105

    CSE General Science 

    CSE 101

    CSE 110

    MATH 18

     

    Third Year

    CSE 140

    CSE 140L

    Statistics 

    Systems/Networks

    CSE 141 or 142*2

    CSE 141L or 142L*2

     

    Language/Databases 

    Learning/Vision/Graphics

    CSE Elective 

     


     

    Fourth Year

    Security/Cryptography

    CSE Elective

    CSE Elective (CSE 197)

    CSE Elective*4

    CSE Elective*4

     

     

    CSE Elective (or Technical Elective) *4

    CSE Elective (or Technical Elective)

    *1: Students who do not have programming experience should begin with the two-track course: CSE 8A (take CSE 8B in the second quarter). Students who have programming experience may begin with CSE 11 (take CSE 12 and CSE 15L in the second quarter).

    *2: 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).

    *3: CSE 21 may be substituted with MATH 154 or MATH 184. This is a manual update an advisor needs to make. Send a message through the Virtual Advising Center (VAC). *Effective Winter 2023: CSE 21 may be substituted with MATH 154 or MATH 184 or MATH 188*

    *4: Students must either take CSE 141 + 141L or  CSE 142 + 142L.

    *Electives: Students are permitted to take any of these pre-approved courses to fulfill their CSE Electives and Technical Electives requirements.  Please note that courses on this list may not automatically populate in the correct area of a student's degree audit.  In order to update the audit, please contact the CSE major advisors through the Virtual Advising Center (VAC). 

    Major restrictions - The following majors may NOT double major or minor in CSE: 

    - Any majors that fall under the Jacob's School of Engineering

    - Data Science majors (DS25)

    - Math-Computer Science majors (MA30)

 

Transfer Students:

Transfer students are in a special situation where the credits they come in with vary vastly from one student to another. To assist transfer students with their long term plans for completing major requirements, we have created different long term plans with different entry points depending on the CSE credits students typically come in with. These plans only include CSE major requirements, for questions regarding your college and university requirements please check with your college.

*These plans only focus on CSE coursework. For a list of all CSE Major requirements (including math and general science courses needed), please see the BS Computer Science Checklist above.   

Incoming Computer Science (CS26) majors with transfer credit for CSE 8A and CSE 20, click here for sample long-term plan.

Fall Quarter - Year One

Winter Quarter - Year One

Spring Quarter - Year One

CSE 11

CSE 12

CSE 30

CSE 21

CSE 15L

Systems

Technical Elective

CSE Elective

CSE Elective

 

Technical Elective

 

Fall Quarter - Year Two

Winter Quarter - Year Two

Spring Quarter - Year Two

CSE 100

CSE 101

CSE 120/123/124

CSE 140  

CSE 130/CSE 132A

CSE 141 or 142 

CSE 140L

CSE 110

CSE 141L or 142L

Statistics 

CSE Electives

CSE Electives

Fall Quarter - Year Three

CSE 107/127

CSE 150/151/152/158/167

CSE Elective 

Incoming Computer Science (CS26) majors with transfer credit for CSE 11 and CSE 20, click here for sample long-term plan. 

Fall Quarter - Year One

Winter Quarter - Year One

Spring Quarter - Year One

CSE 12

CSE 30

CSE 100

CSE 15L

CSE 105

CSE 140

CSE 21

Technical Elective

CSE 140L

 

Technical Elective

CSE Elective 

Fall Quarter - Year Two

Winter Quarter - Year Two

Spring Quarter - Year Two

CSE 101

CSE 141 or CSE 142L

CSE 120/123/124

CSE 110

CSE 141L or 142L

CSE 141 or 142 

Statistics

CSE 120/123/124

CSE 141L or 142L

 

CSE Electives

CSE Electives

Fall Quarter - Year Three

CSE 107/127

CSE 150/151/152/158/167

CSE Elective 

Incoming Computer Science (CS26) majors with transfer credit for CSE 11,  CSE 12  and CSE 20, click here for sample long-term plan.

Fall Quarter - Year One

Winter Quarter - Year One

Spring Quarter - Year One

CSE 15L

CSE 100/100R

CSE 101

CSE 21

CSE 105

CSE 110

CSE 30

CSE 140

CSE Elective

 

CSE 140L

Technical Elective 

Fall Quarter - Year Two

Winter Quarter - Year Two

Spring Quarter - Year Two

CSE 120/123/124 

CSE 130/132A 

CSE 107/127  

Statistics  

CSE 141 or 142 

CSE 150/151/152/158/167 

CSE Elective  

CSE 141L or 142L 

CSE Elective   

CSE Elective  

Technical Elective   

CSE Elective

*1: Students who do not have programming experience should begin with the two-track course: CSE 8A (take CSE 8B in the second quarter). Students who have programming experience may begin with CSE 11 (take CSE 12 and CSE 15L in the second quarter).

*2: 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).

*3: CSE 21 may be substituted with MATH 154 or MATH 184. This is a manual update an advisor needs to make. Send a message through the Virtual Advising Center (VAC). *Effective Winter 2023: CSE 21 may be substituted with MATH 154 or MATH 184 or MATH 188*

*4: Open CSE Electives: CSE UD courses, including Special Studies along with any non-CSE courses that have any of the above tags. For a full list of policies and limitations on Open CSE Electives, please visit the CSE Electives website

 

Major restrictions - The following majors may NOT double major or minor in CSE: 

- Any majors that fall under the Jacob's School of Engineering

- Data Science majors (DS25)

- Math-Computer Science majors (MA30)