Course Catalog

Course Catalog

The Jarvis College of Computing and Digital Media offers more than 450 courses each quarter, including over 130 online. The list below includes all courses on CDM's catalog. Not all courses are offered each quarter. Consult the CDM course schedule to see when CDM courses are being offered.

Supports * wildcard search
 
 
  1. (149 courses - Expand all)
  2. (52 courses - Expand all)
  3. (154 courses - Expand all)
  4. (32 courses - Expand all)
  5. (35 courses - Expand all)
  6. (4 courses - Expand all)
  7. (4 courses - Expand all)
  8. (23 courses - Expand all)
  9. (1 courses - Expand all)
  10. (20 courses - Expand all)
  11. (22 courses - Expand all)
  12. (15 courses - Expand all)
  13. (29 courses - Expand all)
  14. (73 courses - Expand all)
  15. (108 courses - Expand all)
  16. (35 courses - Expand all)
  17. (107 courses - Expand all)
  18. (88 courses - Expand all)
  19. (55 courses - Expand all)
  20. (8 courses - Expand all)
  21. (9 courses - Expand all)
  22. (35 courses - Expand all)
  23. (7 courses - Expand all)
  24. (11 courses - Expand all)
  25. (78 courses - Expand all)
  26. (34 courses - Expand all)
  27. (11 courses - Expand all)
  28. (8 courses - Expand all)
  29. (2 courses - Expand all)
  30. (44 courses - Expand all)
  31. (6 courses - Expand all)
  32. (56 courses - Expand all)
  33. (18 courses - Expand all)
  34. (4 courses - Expand all)
  35. (21 courses - Expand all)
  36. (23 courses - Expand all)







 Course Promotions

  • CSE 375/475 Introduction to Robotics 

    Interested in Robotics? Check out GLE 375/475 Introduction to Robotics. No background in robotics needed. The course will cover all the basics to get you started with any wheeled robot platform in a fun and engaging way. All the classes have hands-on activities.

    This year, the course will be offered as a Global Learning Exchange (GLE) and co-taught in University of São Paulo, Brazil. Have fun working in teams while gaining cross-cultural exposure.

  • Post 328/428 Scoring for Film and Video 

    Autumn 2022, Weds from 5:45pm-9

    Students explore their creativity using the tools available, work on projects of increasing complexity, and complete a score for their own film or video as a final project. 

    The class is designed for all student abilities and experiences. It's great for editors that want to know how scores work to directors who need to learn how to talk to composers to screenwriters who need to imagine how music functions in their scripts.
     

  • SCWR 100 - Intro to Screenwriting 

    Learn how to write your own screenplay and earn your Arts and Literature credit! Screenplays are the blueprint to telling a quality story, but you need the necessary tools to write one. SCWR 100 is the class that will teach you the basic tools that will potentially allow you to tell a gripping story. By the end of the class, you will have a complete script to a short film that you could potentially make into a movie once the class is over.

    The class will run on Tuesdays and Thursday from 11:50pm to 1:20pm. For more information or questions please email Brian Mellen at bmellen@cdm.depaul.edu.

  • FILM 390 Advanced Topics in Cinema: J Robert Oppenheimer and the Atomic Films 

    Course Overview and Introduction

    What is the materiality of film? Scientists used the technologies of films to measure and document the immediate effects of the nuclear bomb on the environment and the human race. Documentary filmmakers used film to portray the long-term impact of the nuclear fallout. Film and documentary became the eyes of the world by providing firsthand accounts and testimonials of the physical and psychological damage the Atom Bomb inflicted. Finally, artists used film art to evoke the memory and fantasy of nuclear war and culture. 

    This course first uses film and documentary to critically explore the development of the Atomic Bomb in threefold:

    1. Understanding the infrastructure of the Manhattan Project in a historical context.
    2. Decoding how documentary and film served as both documentation and artistic expression during and after the dropping of the bombs on Hiroshima and Nagasaki.
    3. Examining the public response to the ever-present threat of the use of nuclear power during the Cold War period and beyond as recorded in media, films and documentary.

    As a film studies course, the topic for discussions will include but are not limited to archival films, documentaries, and film art –  such as the de-classified nuclear test footage from The National Archives Museum, the documentary "White Light/Black Rain" by Steven Okazaki, and the French New Wave film "Hiroshima Mon Amour" by Alain Resnais.

    At the end of the course, students shall expect to learn the following concepts and practices in documentary film and film art:

    -To comment on the relationship between formal aesthetics and content in film art and documentary film

    -To use multiple perspectives to address, analyze, and think critically about how media uses in war conflicts

    -To analyze and interpret the methods used by documentary filmmakers in addressing the problems of representations and their authorships 

    Class assignments may include research papers and short film projects. For more information about this course, don't hesitate to get in touch with Associate Professor Chi-Jang Yin at cyin1@depaul.edu

  • CSC 397: Topics in Computer Science, Topic: Computational Biology 

    Are you interested in exploring biological systems through the lens of computer science, then check out CSC 397 CSC 397: Topics in Computer Science (Topic: Computational Biology). No biology background is required

    Computational Biology lies in the intersection of Computer Science & Biology and is the study of how biological information is organized and analyzed in biological ecosystems. Topics will include surveying publicly available databases for all domains, understanding genomics file formats and analyzing biological data using UNIX command line interface and PYTHON programming. Students will apply problem-solving and programming skills towards implementing a tool that will analyze complex biological data sets.

    This course will be offered as a Global Learning Exchange (GLE) in collaboration with São Paulo State University (UNESP), Brazil. Have fun working in teams while gaining cross-cultural exposure.

  • CSC397 Topics in Computer Science: Program Analysis for Vulnerability Mitigation 

    Program analysis is the process of automatically analyzing program code and/or behavior to learn a property such as correctness, robustness, safety and liveness. As software has been dramatically becoming more and more complicated and ubiquitous, program analysis has been increasingly used to solve critical computer science, software engineering, and cybersecurity problems. Tremendous effort has been invested by both the industry and academia to use and develop program analysis techniques for identifying and addressing software bugs, particularly software vulnerabilities, which are frequently exploited by real-world attacks, such as the series of Russian attacks on U.S federal agencies in 2020, the data leakage of over 500 million Facebook users' private information in 2021, and the pervasive ransomware attacks nowadays. Due to the severity of software vulnerabilities, many software vendors such as Google, Microsoft, Adobe, have incorporated the use of program analysis tools as part of their software development life cycle. 

    The purpose of the course is to introduce concepts and techniques that allow us to apply program analysis to solve problems. After taking the course, you will be able to

    • formulate a problem in a way so that it is solvable using program analysis 

    • implement and use popular program analysis techniques, such as control flow analysis and data flow analysis, to solve problems

    • analyze and mitigate software vulnerabilities rapidly

    • use and extend state-of-art automatic vulnerability mitigation tools to mitigate real-world vulnerabilities

    The course is intended as an advanced course. There will be homework assignments, reading assignments, a project and a final take-home exam. The lectures will be open to students’ suggestions and input.

    If you are interested in automatically analyzing program code, synthesizing program code, identifying software bugs (particularly vulnerabilities), and addressing software vulnerabilities, this is the course for you!

    LEWIS 01005 or online
  • CSC 595 Topics in Computer Science: Program Analysis for Vulnerability Mitigation 

    Program analysis is the process of automatically analyzing program code and/or behavior to learn a property such as correctness, robustness, safety and liveness. As software has been dramatically becoming more and more complicated and ubiquitous, program analysis has been increasingly used to solve critical computer science, software engineering, and cybersecurity problems. Tremendous effort has been invested by both the industry and academia to use and develop program analysis techniques for identifying and addressing software bugs, particularly software vulnerabilities, which are frequently exploited by real-world attacks, such as the series of Russian attacks on U.S federal agencies in 2020, the data leakage of over 500 million Facebook users' private information in 2021, and the pervasive ransomware attacks nowadays. Due to the severity of software vulnerabilities, many software vendors such as Google, Microsoft, Adobe, have incorporated the use of program analysis tools as part of their software development life cycle. 

    The purpose of the course is to introduce concepts and techniques that allow us to apply program analysis to solve problems. After taking the course, you will be able to

    • formulate a problem in a way so that it is solvable using program analysis 

    • implement and use popular program analysis techniques, such as control flow analysis and data flow analysis, to solve problems

    • analyze and mitigate software vulnerabilities rapidly

    • use and extend state-of-art automatic vulnerability mitigation tools to mitigate real-world vulnerabilities

    The course is intended as an advanced course. There will be homework assignments, reading assignments, a project and a final take-home exam. The lectures will be open to students’ suggestions and input.

    If you are interested in automatically analyzing program code, synthesizing program code, identifying software bugs (particularly vulnerabilities), and addressing software vulnerabilities, this is the course for you!

    LEWIS 01005 or Online
  • SE 598 Topics in Software Engineering: Program Analysis for Vulnerability Mitigation 

    Program analysis is the process of automatically analyzing program code and/or behavior to learn a property such as correctness, robustness, safety and liveness. As software has been dramatically becoming more and more complicated and ubiquitous, program analysis has been increasingly used to solve critical computer science, software engineering, and cybersecurity problems. Tremendous effort has been invested by both the industry and academia to use and develop program analysis techniques for identifying and addressing software bugs, particularly software vulnerabilities, which are frequently exploited by real-world attacks, such as the series of Russian attacks on U.S federal agencies in 2020, the data leakage of over 500 million Facebook users' private information in 2021, and the pervasive ransomware attacks nowadays. Due to the severity of software vulnerabilities, many software vendors such as Google, Microsoft, Adobe, have incorporated the use of program analysis tools as part of their software development life cycle. 

    The purpose of the course is to introduce concepts and techniques that allow us to apply program analysis to solve problems. After taking the course, you will be able to

    • formulate a problem in a way so that it is solvable using program analysis 

    • implement and use popular program analysis techniques, such as control flow analysis and data flow analysis, to solve problems

    • analyze and mitigate software vulnerabilities rapidly

    • use and extend state-of-art automatic vulnerability mitigation tools to mitigate real-world vulnerabilities

    The course is intended as an advanced course. There will be homework assignments, reading assignments, a project and a final take-home exam. The lectures will be open to students’ suggestions and input.

    If you are interested in automatically analyzing program code, synthesizing program code, identifying software bugs (particularly vulnerabilities), and addressing software vulnerabilities, this is the course for you!

    LEWIS 01005 or Online