Computer Science Course Offerings

For current class offerings, times, and additional information, visit the Office of the Registrar.

A game with a sea monster and pirate ship

CSC 121 Creative Coding
This introductory course, designed for non-majors and prospective majors, focuses on art-based coding projects and games in p5.js.
Student Project: "Pirate Ship Vs. Sea Monster" Game by Tahmina Yousafi

Arduino computer with 7sigs that spell "MASH"

CSC 240 Computer Systems Organization
CSC 240, affectionately known as "OoCS," is a hardware and computer engineering crash course required for CS majors.
Example Work: Arduino lab on pre-assembler directives using 7-segment display

A map of crime in DC

Intro to Info Visualization
Info Visualization is one of our Selected Topics courses (CSC-496). This course explores data visualization through D3.js and has an emphasis on student projects.
Final Project (visualization of DC Crime Data and Policing Shifts) by Julianne Delia and Ben Doiron

Course Descriptions

Undergraduate Courses

  • Loading...

Graduate Courses

  • Loading...

Courses by Level

100 Level courses are designed for non-majors/minors and to fufill general education requirements. Credits in these courses cannot be used towards the Computer Science major or minor.

  • CSC-100 Computers and Information
  • CSC-121 Creative Coding (Fufills the Quantitative Literacy II requirement)

200 Level courses are part of Computer Science major core requirements and are usually taken by majors their first and second year. For more information on major requirements see the B.S. in Computer Science.

  • CSC-240 Computer Systems Organization

  • CSC-256 Discrete Structures

  • CSC-280 Introduction to Computer Science I

  • CSC-281 Introduction to Computer Science II

These courses are Computer Science major requirements usually taken by majors in their third and fourth years. For more information on major requirements see the B.S. in Computer Science.

  • CSC-420 Algorithms and Data Structures

  • CSC-421 Design & Org Programming Lang

  • CSC-434 Database Management Systems

  • CSC-465 Operating Systems

  • CSC-493 Computer Science Capstone Project

The Computer Science major requires a CSC-XXX course of choice at or above the 300 level and allows for a concentration in 'Computer Science' (12 additional credit hours in CSC-XXX at or above 300-level with approval of academic advisor). The Computer Science minor requires 9 credit hours in CSC-XXX at or above 300-level as approved by advisor (which may also include CSC-3XX courses listed above in "Upper Divison Courses (Major Requirements)." See the B.S. in Computer Science and the Minor in Computer Science for more information.

  • CSC-310 Intro to Geographic Info Systs

  • CSC-316 Computer Science III

  • CSC-435 Web Programming

  • CSC-460 Tools of Scientific Computing

  • CSC-510 Legal Issues in Computing

  • CSC-535 User Interface Analysis/Design

Independent Courses require permission from an instructor and the department chair. See Research for ideas on Independent Reading Courses and Student Resources for a compiliation of local CS internships.

  • CSC-390 Independent Reading Course
  • CSC-491 Internship

Graduate and Advanced Undergraduate Courses are crosslisted for undergraduate students (CSC-4XX) and graduate students (CSC-6XX). Crosslisted courses meet together, however, instructors may require additional projects or work for students in the graduate section (CSC-6XX). Undergraduate students may take these courses as electives or as concentration courses. See the B.S. in Computer Science and the M.S. in Computer Science for degree requirements.

Crosslisted Courses

  • CSC-420 / CSC-620
    Algorithms and Data Structures

  • CSC-432 / CSC-632
    Intro to Simulation & Modeling

  • CSC-440 / CSC-640
    Computer Sys Org & Programming

  • CSC-443 / CSC-643
    Object-Oriented Analy & Design

  • CSC-444 / CSC-644
    Object-Oriented Programming

  • CSC-446 / CSC-646
    Intro to Computer Networks

  • CSC-450 / CSC-650
    Software Engineering

  • CSC-468 / CSC-668
    Artificial Intelligence

  • CSC-470 / CSC-670
    Game Programming

  • CSC-476 / CSC-676
    Computer Vision

  • CSC-480 / CSC-680
    Introduction to Data Mining

Graduate-only Courses

  • CSC-600 Simulation

  • CSC-636 Advanced Database Mgmt Systems

  • CSC-637 Database Administration

Selected Topics courses are non-recurring/offered on a semester by semester basis.

Fall 2019 Special Topics Courses (CSC 496-XXX)

  • High Performance Computing (001)
  • Deep Learning in Computer Vision (002)
  • Network Security (003)