Curriculum and Requirements

Degree Requirements

All students must start the program with a Core Programming class. Results of the placement exam will determine placement in Core Programming. Only one Core Programming class will be counted towards MPCS degree requirements. If you need to take MPCS 50101 Concepts of Programming (Immersion Programming), you will take Concepts of Programming and then a Core Programming class.

The first three classes taken in the program must be core classes. Electives or Specialization coursework will not be approved until both immersion classes and three core classes have been completed.

  • Full-time students will begin with Core Programming (Python, Intermediate Python, C, Java, Swift or Advanced Programming), Algorithms (if Discrete Math is completed or waived) and 1-2 core Systems classes. If Discrete Math is needed, it should be taken at the start of studies or in the first quarter it is offered after program start.
  • Part-time students will begin with Core Programming (Python, Intermediate Python, C, Java, Swift or Advanced Programming) and either Algorithms (if Discrete Math is completed or waived) or a Core Systems class if their schedule permits.

All students must either pass the programming placement exam OR successfully complete Immersion Programming (MPCS 50101 Concepts of Programming) before beginning any other coursework in the MPCS.

All students must either pass the math placement exam OR successfully complete the immersion math (MPCS 50103 Discrete Math) class prior to completing a full year in the MPCS.

  • For full time students, the math placement exam should be taken at the start of studies and Discrete Math, if needed, should be taken in your starting quarter, if it is offered.
  • For part time students, this means that if you are unsure if you will pass the math exam, you will need to take the exam early enough in your studies to be able to take MPCS 50103 Discrete Math if necessary within your first year in the program. No additional coursework will be approved if this requirement is not met.

MPCS students (not including Joint MBA/MPCS students) may take up to two (2) courses from outside the program course offerings and have them count toward their degree requirements as electives. Requests must be sent before the quarter begins and you must have the program's approval before you can officially register for the class. Classes outside the MPCS will not be approved in your graduating quarter unless it has been confirmed that a provisional grade can be provided. To request approval, please complete the request form. 

If you need assistance with course planning or would like to meet with an academic counselor, please email masters-admin@cs.uchicago.edu to set up an appointment.