CMSC course designations for undergraduate programs

Basic categories

Theory A

Theory B

Theory C

Core Systems

Programming Languages and Systems (prior to new BA/BS autumn '24)

CS major specializations

Computer Security and Privacy

CMSC 23200 Introduction to Computer Security and two courses from this list.

Computer Systems

Three courses from this list, over and above those taken to fulfill the programming languages and systems requirement.

Data Science

CMSC 21800 Data Science for Computer Scientists and two courses from this list.

Human Computer Interaction

CMSC 20300 Introduction to Human-Computer Interation or CMSC 20310 Introduction to Designing Interaction and two courses from this list.

Machine Learning

Three courses from this list. Note that at most one of CMSC 25500 and TTIC 31230 count towards the Machine Learning specialization, and, more broadly, the computer science major (or minor).

Programming Languages

Three courses from this list, over and above those courses taken to fulfill the programming languages and systems requirements.

Theory

Three courses from this list, over and above those taken to fulfill the theory requirements.

Curriculum areas (in addition to the specializations above)

Software Engineering

Quantum Computing

Visual Computing

Robotics

Honors

Any class designated as Core or Elective on one of these pages (2024-2025, 2023-2024, 2022-2023), or