Computer Science & Data Science Curriculum Transition Guide for Students

The Computer Science Department is making significant changes to the algorithms and theory course sequence starting Summer 2026. The advising staff is here to help you navigate this transition - don't hesitate to reach out! 

This page covers the most common questions for both Computer Science and Data Science pre-majors. If you're trying to decide which course to take next quarter, jump straight to Q6 for Computer Science or Q7 for Data Science. If your specific situation isn't addressed here, please contact one of our pre-major advisors (listed on the left) for guidance. 

Curriculum Change FAQs

The algorithms and theory sequence is being restructured. Two courses (CSCI 241 and CSCI 301) are being discontinued, one new course (CSCI 201) is being created, and two existing courses are being updated, CSCI 305 is being revised and CSCI 401 is now required.

MajorOld RequirementNew Requirement
Computer Science pre-majorCSCI 241, CSCI 301, CSCI 247CSCI 201, CSCI 305, CSCI 247
Computer Science majorCS 305 + other coursesCSCI 401 + other courses
Data Science pre-majorCSCI 241, CSCI 301, DATA 311CSCI 201, CSCI 305, DATA 311
Data Science majorCSCI 305 + other coursesCSCI 401 + other courses

In short:

  • For pre-majors: The CSCI 241 + CSCI 301 requirement will be replaced with CSCI 201 and CSCI 305.
  • For majors: The CSCI 305 major requirement will be replaced with CSCI 401, with CSCI 201 being a prerequisite for CSCI 305.

This change is credit neutral - the total credit requirement for the majors remain the same.
 

Two main reasons:

  1. CSCI 301 was overloaded. It tried to cover discrete math, formal languages, automata theory, and functional programming all in one course. The new structure splits this content between CSCI 201 (discrete math + functional programming) and CSCI 401 (formal languages + automata).
  2. Significant overlap between CSCI 241, 305, and 405. Sorting algorithms and data structure analysis were repeated across these courses. The revised CSCI 305 and 405 redistribute this content more evenly and reduce redundancy.

The new sequence is designed to better prepare you for upper-division coursework. CSCI 201 provides a stronger discrete math foundation before you start algorithms, and the revised CSCI 305 pairs data structures with their analysis so you learn both implementation and analysis together instead of across separate courses.
 

The new curriculum begins Summer 2026 (academic year 2026 - 2027). 

CourseStatus
CSCI 241Last offered Spring 2026
CSCI 301Last offered Fall 2026
CSCI 201 (new)First offered Summer 2026
CSCI 305 (revised)First offered Summer 2026
CSCI 401First offered Fall 2026

This change has been carefully designed to not impact student timelines. However, the new sequence requires little planning ahead. So, reach out to your pre-major advisor to discuss your course sequence plan and timeline.

See Q6 for specific Spring 2026 Computer Science advising scenarios.

See Q7 for specific Spring 2026 Data Science advising scenarios. 
 

No, it should not. 

Spring 2026 is the last quarter CSCI 241 will be offered. Use the tables below to find your situation and see the recommended plan.

Completed by End of WinterStill NeedTake in SpringTake in Summer or Fall*Take in FallWhen to apply
CSCI 241 + CSCI 247CSCI 301CSCI 301Apply in Spring for Fall entry
CSCI 241 + CSCI 301CSCI 247CSCI 247Apply in Spring for Fall entry
CSCI 301 + CSCI 247CSCI 241CSCI 241Apply in Spring for Fall entry
CSCI 241CSCI 247 + CSCI 301CSCI 301CSCI 247Apply in Fall for Winter entry*
CSCI 241CSCI 247 + CSCI 301CSCI 301CSCI 247Apply in Fall for Winter entry
CSCI 247CSCI 241 + CSCI 301CSCI 241CSCI 301Apply in Fall for Winter entry
CSCI 301CSCI 241 + CSCI 247CSCI 241CSCI 247Apply in Fall for Winter entry*
CSCI 301CSCI 241 + CSCI 247CSCI 241CSCI 247Apply in Fall for Winter entry

*Students who complete their last pre-major class in summer with an average GPA of 3.0 or above in the three pre-major courses will be allowed to register for fall in-major classes on a space available basis. For these students, admission to a major in winter 2027 is not guaranteed, but very likely.

If you haven't started the pre-major sequence yet, we recommend you take either CSCI 241 or CSCI 247 in Spring. If you cannot take either of those, reach out to Mary Hall to discuss the option to start with CSCI 301.

Spring 2026 is the last quarter CSCI 241 will be offered. Use the tables below to find your situation and see the recommended plan.

Completed by End of Winter Still NeedTake in SpringTake in FallWhen to Apply
CSCI 241 + DATA 311CSCI 301CSCI 301Apply in Spring for Fall entry
CSCI 241 + CSCI 301DATA 311DATA 311Apply in Spring for Fall entry
CSCI 301 + DATA 311CSCI 241CSCI 241Apply in Spring for Fall entry
CSCI 241 onlyCSCI 301 + DATA 311CSCI 301DATA 311Apply in Fall for Winter entry
DATA 311 onlyCSCI 241 + CSCI 301CSCI 241CSCI 301Apply in Fall for Winter entry
CSCI 301 onlyCSCI 241 + DATA 311CSCI 241DATA 311Apply in Fall for Winter entry

If you haven't started the pre-major sequence yet, we recommend you take either CSCI 241 or DATA 311 in Spring. If you cannot take either of those, reach out to Kjatosia Ruvalcaba to discuss the option to start with CSCI 301.

Yes, if you complete the entire pre-major sequence (CSCI 241, 301, and CSCI247 or DATA 311 depending on your desired major) before CSCI 241 and CSCI 301 are discontinued, you will be eligible to apply for admission to the CS major. 

Note:

  • CSCI 241 will be last offered in Spring 2026
  • CSCI 301 will be last offered in Fall 2026

If you started the old sequence but cannot complete it before these courses are discontinued, your situation will be handled on a case-by-case basis. Please contact a pre-major advisor if you are concerned you will not be able to complete the old sequence or to plan in-major courses.
 

  • If you are already in CSCI or DATA major, this change does not affect you.
  • If you are a pre-major student or considering declaring pre-major, reach out to the CS Transfer Advisor to discuss your situation.