Course Substitutions for Majors & Minors

Course Substitutions for CS Majors or Minors

For any of these substitutions, you MUST REQUEST approval for the substitution by sending 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.

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 can count for any substitution.


Substitutions for Minors

Stats Pre-req for the CompBio minor
One of the following courses can be substituted for the Stats pre-req:

  • BIO 215
  • BIO 304
  • BME 244
  • PHYSICS 414

Substitutions for Majors

Stats requirement for the BS major
The following course can be substituted for the Stats requirement for the COMPSCI BS major.

  • BME 244
  • ECON 104
  • STA 110FS
  • PSY 204L and PSY 205L

COMPSCI 201
We do not allow substitutions for COMPSCI 201. Every student must take COMPSCI 201. 

COMPSCI 230
COMPSCI 230 can be replaced by COMPSCI 232 OR it can be replaced by two courses with one of the combinations listed below. Any courses used to replace COMPSCI 230 cannot count for any other requirement for the CS major.

  • 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 250D

COMPSCI 210D can be used in place of COMPSCI 250D. 

COMPSCI 210D, Introduction to Computer Systems, provides an alternative to COMPSCI/ECE 250 for Trinity CS majors; taking either course will satisfy the CS major requirement. Pratt students are still required to take 250. 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 330

COMPSCI 532 can be used in place of COMPSCI 330. 

DUS-approved Electives for the COMPSCI Major (BA or BS)

Three of the five electives for the BS major and one of the three electives for the BA major must be a COMPSCI course.  Any course that is cross-listed as a CS course counts. The other two electives for the major can be 200-level or above CS, Math (must be QS), Stats (must be QS), DUS-approved, or Independent Study courses

Here are some of the courses that 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: CS 201)
  • FINTECH 536 - Robo-Advising (pre-reqs: CS 101 & Econ 372)
  • FINTECH 564 - Blockchain (previously 590-01 Spring 2020) (pre-req: CS 201)

Courses that 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)

For any of these substitutions, you MUST REQUEST approval for the substitution by sending 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.