CS Course Substitutions Guide

Course Substitutions for CS Majors or Minors

For any substitutions (including the ones listed below), you MUST REQUEST approval for the substitution by sending an email to dus@cs.duke.edu. We need to check your record to make sure this substitution makes sense in your case. Then, once you have approval and are taking the course(s), email again so we can adjust your record to reflect the substitution.

Please note that a course below may be listed in more than one place, but can only be used once to satisfy a requirement.

No online courses may count for any substitution.


NOTE: The only substitutions allowed for the minor are substitutions for the  Stats pre-requisite.

RequirementNotesSubstitution(s)
Stats pre-req for CompBio minorOne of these courses may be substituted for the Stats pre-req
  • BIO 215
  • BIO 304
  • BME 244
  • PHYSICS 414
RequirementNotesSubstitution(s)
COMPSCI 201We do not allow substitutions for COMPSCI 201. Every student must take COMPSCI 201. 

 none allowed

COMPSCI 210D

COMPSCI 250D/ECE 250D - Computer Architecture provides an alternative to COMPSCI 210D for Trinity CS majors. Taking either course will satisfy the CS major requirement. Pratt ECE students are still required to take COMPSCI 250D/ECE 250D. Other Pratt majors can likely take COMPSCI 210D or COMPSCI 250D, but they should check with the DUS for their major.

The two courses share the general goal of introducing how programs execute and store information, and cover some of the same topics. However, COMPSCI 210D focuses on software systems aspects from a programmer's perspective. Whereas, COMPSCI 250D focuses on hardware and processor design aspects. COMPSCI 210D introduces concepts that are broadly applicable across the many subfields of computer systems (big ideas in systems) with specific instances demonstrated through labs and assignments in the class.

  • COMPSCI 250D
COMPSCI 230

COMPSCI 230 can be replaced by COMPSCI 231D OR COMPSCI 232 OR it can be replaced by two courses from one of the combinations listed in the next column. Any courses used to replace COMPSCI 230 cannot count for any other requirement for the CS major. 

You will need to request a permission number through the CS PIN request form, if you are using any of the substitutions in lieu of COMPSCI 230 other than COMPSCI 231D or COMPSCI 232 as the prerequisite for a course. Dukehub does not recognize substitutions for prerequisites.

  • COMPSCI 231D
  • COMPSCI 232/MATH 242
  • BME 244 AND BME 271/ECE 280. This may be a good option for a student in BME.
  • BME 271/ECE 280 AND one of these:
    • MATH 230/STA 230
    • MATH 340/STA 231
    • STA 240L
    • STA 340
  • MATH 371 (Combinatorics) AND one of these: (two courses in Math may be a good option for a student also majoring or minoring in Math)
    • MATH 230/STA 230 (Probability)
    • STA 240L
    • STA 340
    • MATH 305
    • MATH 375
    • MATH 404
    • MATH 487
    • PHYSICS 264
  • STA 210 or STA 221 AND either STA 360 or STA 602. This may be a good option for a student also majoring or minoring in Statistics.
  • EGR 224 AND one of these: (This may be a good option for a student in ME)
    • MATH 230/STA 230
    • MATH 340/STA 231
    • MATH/EGR 238L
COMPSCI 270L 
  • MATH 218
COMPSCI 330 
  • COMPSCI 532
Stats requirement for CompSci BSThese courses may be substituted for the Stats requirement for the CompSci BS major.
  • BME 244
  • ECON 104
  • STA 110FS
  • PSY 204L and PSY 205L
Electives Requirement for the COMPSCI Major - AB and BS
Three of the five electives for the BS major and one of the three electives for the AB major must be a COMPSCI course.  Any course that is cross-listed as a CS course counts toward this requirement. The other two electives for the major can be COMPSCI, MATH (must be QS), and/or STATS (must be QS) at the 200-level or above, DUS-approved, or Independent Study courses.
Electives Notes for the MajorCourse List
Some of the courses which are currently DUS-Approved electives
  • ECON 204
  • ECON 205
  • ECON 208
  • ECON 210D
  • ECON 362
  • ECON 372
  • ECON 377A
  • ECON 413
  • ECON 674
  • LINGUIST 211 - Computational Approaches to Human Language
  • ME 555 - Virtual Reality Systems
  • FINTECH 514 - Secure Software Development (pre-req COMPSCI 201)
  • FINTECH 536 - Robo-Advising (pre-reqs COMPSCI 101 and ECON 372)
  • FINTECH 564 - Blockchain (previously 590-01 Spring 2020) (pre-req COMPSCI 201)
Courses which do NOT count as a DUS-Approved elective
  • ECE 290 - Software Skills
  • ECON 281A
  • I&E 550 - Cryptoventures
  • ISS 240L
  • ISS 290 - Humanities Data Mining + Meaning
  • ISS 320S
  • VMS 198
  • VMS 326S - Unity Programming
  • VMS 397L
  • CMAC 317 (crosslisted as VMS 307)