Lower Division |
---|
Fall 2023 |
Winter 2024 |
Spring 2024 |
Summer 2024 |
CMPS5C: Introduction to Programming in C/C++
|
|
|
|
|
CMPS5J: Introduction to Programming in Java
|
|
|
|
|
CMPS5P: Introduction to Programming in Python
|
|
|
|
|
CMPS10: Introduction to Computer Science
|
|
|
|
|
CMPS11: Intermediate Programming
|
|
|
|
|
CMPS12A: Introduction to Programming (Accelerated)
|
|
|
|
|
CMPS12B: Introduction to Data Structures
|
|
|
|
|
CMPS12L: Computer Programming Laboratory
|
|
|
|
|
CMPS12M: Data Structures Laboratory
|
|
|
|
|
CMPS13H: Introduction to Programming and Data Structures (Honors)
|
|
|
|
|
CMPS13L: Introduction to Programming and Data Structures Laboratory
|
|
|
|
|
CMPS17: Social Networks
|
|
|
|
|
CMPS20: Game Design Experience
|
|
|
|
|
CMPS25: Introduction to Computer Graphics: 3D Modeling
|
|
|
|
|
CMPS26: Introduction to Computer Graphics: 3D Animation
|
|
|
|
|
CMPS42A: SDS:Survey of Applied Computational Science
|
|
|
|
|
CMPS60M: Scientific Computation with Matlab and Maple
|
|
|
|
|
CMPS80B: Systems and Simulation
|
|
|
|
|
CMPS80G: Introduction to Unix
|
|
|
|
|
CMPS80J: Technology Targeted at Social Issues
|
|
|
|
|
CMPS80K: Foundations of Interactive Game Design
|
|
|
|
|
CMPS80L: Social Data Analytics and Visualization
|
|
|
|
|
CMPS80S: From Software Innovation to Social Entrepreneurship
|
|
|
|
|
CMPS80V: Creating Virtual Worlds on the Web
|
|
|
|
|
Upper Division |
Fall 2023 |
Winter 2024 |
Spring 2024 |
Summer 2024 |
CMPS101: Algorithms and Abstract Data Types
|
|
|
|
|
CMPS102: Introduction to Analysis of Algorithms
|
|
|
|
|
CMPS104A: Fundamentals of Compiler Design I
|
|
|
|
|
CMPS104B: Fundamentals of Compiler Design II
|
|
|
|
|
CMPS105: Systems Programming
|
|
|
|
|
CMPS107: Open Source Programming
|
|
|
|
|
CMPS109: Advanced Programming
|
|
|
|
|
CMPS111: Introduction to Operating Systems
|
|
|
|
|
CMPS112: Comparative Programming Languages
|
|
|
|
|
CMPS115: Introduction to Software Engineering
|
|
|
|
|
CMPS116: Software Design Project
|
|
|
|
|
CMPS117: Software Design Project II
|
|
|
|
|
CMPS118: Algorithmic Foundations of Cryptography
|
|
|
|
|
CMPS119: Software for Society
|
|
|
|
|
CMPS121: Mobile Applications
|
|
|
|
|
CMPS122: Computer Security
|
|
|
|
|
CMPS128: Distributed Systems: File Sharing, Online Gaming, and More
|
|
|
|
|
CMPS129: Data Storage Systems
|
|
|
|
|
CMPS130: Computational Models
|
|
|
|
|
CMPS132: Computability and Computational Complexity
|
|
|
|
|
CMPS132W: Computability and Computational Complexity
|
|
|
|
|
CMPS140: Artificial Intelligence
|
|
|
|
|
CMPS142: Machine Learning and Data Mining
|
|
|
|
|
CMPS143: Introduction to Natural Language Processing
|
|
|
|
|
CMPS144: Applied Machine Learning
|
|
|
|
|
CMPS146: Game AI
|
|
|
|
|
CMPS148: Interactive Narrative
|
|
|
|
|
CMPS153: Functional Programming
|
|
|
|
|
CMPS160: Introduction to Computer Graphics
|
|
|
|
|
CMPS160L: Introduction to Computer Graphics Laboratory
|
|
|
|
|
CMPS161: Introduction to Data Visualization
|
|
|
|
|
CMPS161L: Data Visualization Lab
|
|
|
|
|
CMPS162: Advanced Computer Graphics and Animation
|
|
|
|
|
CMPS162L: Advanced Computer Graphics and Animation Lab
|
|
|
|
|
CMPS164: Game Engines
|
|
|
|
|
CMPS164L: Game Engines Lab
|
|
|
|
|
CMPS165: Data Programming for Visualization
|
|
|
|
|
CMPS166A: Game Theory and Applications I
|
|
|
|
|
CMPS166B: Game Theory and Applications II
|
|
|
|
|
CMPS168: Introduction to Augmented Reality and Virtual Reality
|
|
|
|
|
CMPS170: Game Design Studio I
|
|
|
|
|
CMPS171: Games Design Studio II
|
|
|
|
|
CMPS172: Game Design Studio III
|
|
|
|
|
CMPS177: Creative Strategies for Designing Interactive Media
|
|
|
|
|
CMPS178: Human-Centered Design Research
|
|
|
|
|
CMPS179: Game Design Practicum
|
|
|
|
|
CMPS180: Database Systems I
|
|
|
|
|
CMPS180W: Database Systems
|
|
|
|
|
CMPS181: Database Systems II
|
|
|
|
|
CMPS182: Introduction to Database Management Systems
|
|
|
|
|
CMPS183: Web Applications
|
|
|
|
|
CMPS184: Data Wrangling and Web Scraping
|
|
|
|
|
CMPS185: Technical Writing and Communication in Computer Science
|
|
|
|
|
CMPS190X: Methods of Cryptography
|
|
|
|
|
CMPS191: Computer Science and Technology Seminar
|
|
|
|
|
CMPS194: Group Tutorial
|
|
|
|
|
Graduate |
Fall 2023 |
Winter 2024 |
Spring 2024 |
Summer 2024 |
CMPS200: Research and Teaching in Computer Science and Engineering
|
|
|
|
|
CMPS201: Analysis of Algorithms
|
|
|
|
|
CMPS203: Programming Languages
|
|
|
|
|
CMPS204: Compiler Design
|
|
|
|
|
CMPS210: Computational Models and Complexity
|
|
|
|
|
CMPS211: Combinatorial Algorithms
|
|
|
|
|
CMPS217: Logic in Computer Science
|
|
|
|
|
CMPS218: Foundations of Data Science
|
|
|
|
|
CMPS221: Advanced Operating Systems
|
|
|
|
|
CMPS223: Advanced Computer Security
|
|
|
|
|
CMPS229: Storage Systems
|
|
|
|
|
CMPS232: Distributed Systems
|
|
|
|
|
CMPS236: Understanding Cryptography
|
|
|
|
|
CMPS240: Artificial Intelligence
|
|
|
|
|
CMPS241: Knowledge Engineering
|
|
|
|
|
CMPS242: Machine Learning
|
|
|
|
|
CMPS244: Artificial Intelligence in Games
|
|
|
|
|
CMPS245: Computational Models of Discourse and Dialogue
|
|
|
|
|
CMPS247: AI: Problem Solving and Intelligent Search
|
|
|
|
|
CMPS248: Interactive Narrative
|
|
|
|
|
CMPS250: Introduction to Information Theory
|
|
|
|
|
CMPS253: Advanced Programming Languages
|
|
|
|
|
CMPS260: Computer Graphics
|
|
|
|
|
CMPS261: Advanced Visualization
|
|
|
|
|
CMPS262: Computer Animation
|
|
|
|
|
CMPS263: Data Driven Discovery and Visualization
|
|
|
|
|
CMPS265: Generative Methods
|
|
|
|
|
CMPS266A: Data Visualization and Statistical Programming in R
|
|
|
|
|
CMPS266B: Advanced Statistical Programming in R
|
|
|
|
|
CMPS266C: Introduction to Data Wrangling
|
|
|
|
|
CMPS272: Evolutionary Game Theory
|
|
|
|
|
CMPS276: Software Engineering
|
|
|
|
|
CMPS277: Principles of Database Systems
|
|
|
|
|
CMPS278: Design and Implementation of Database Systems
|
|
|
|
|
CMPS279: Software Reuse and Component-Based Software Engineering
|
|
|
|
|
CMPS280A: Seminar in Computer Science Research
|
|
|
|
|
CMPS280D: Seminar in Database Systems
|
|
|
|
|
CMPS280G: Seminar on Software Engineering
|
|
|
|
|
CMPS280H: Seminar in Human Computation Systems
|
|
|
|
|
CMPS280J: Seminar on Computer Graphics
|
|
|
|
|
CMPS280L: Seminar on Logic in Computer Science
|
|
|
|
|
CMPS280M: Seminar on Machine Learning
|
|
|
|
|
CMPS280O: Seminar in Applied Programming Languages
|
|
|
|
|
CMPS280S: Seminar on Computer Systems
|
|
|
|
|
CMPS280W: Seminar in Digital Media
|
|
|
|
|
CMPS280X: Seminar in Distributed Systems
|
|
|
|
|
CMPS280Z: Seminar in Natural Language Processing and Dialogue
|
|
|
|
|
CMPS290A: Topics in Algorithms and Complexity Theory: Probabilistic Algorithms and Average Case Analysis
|
|
|
|
|
CMPS290B: Advanced Topics in Computer Graphics
|
|
|
|
|
CMPS290C: Advanced Topics in Machine Learning
|
|
|
|
|
CMPS290D: Neural Computation
|
|
|
|
|
CMPS290E: Object-Oriented Programming Methodology
|
|
|
|
|
CMPS290F: Applications of Combinatorics
|
|
|
|
|
CMPS290G: Topics in Software Engineering
|
|
|
|
|
CMPS290H: Topics in Database Systems
|
|
|
|
|
CMPS290I: Internet Technology and Policy
|
|
|
|
|
CMPS290J: Playable Media
|
|
|
|
|
CMPS290K: Advanced Topics in Natural Language Processing
|
|
|
|
|
CMPS290L: Topics in Crowdsourcing and Collaboration
|
|
|
|
|
CMPS290O: Algorithmic Foundations of Convex Optimization
|
|
|
|
|
CMPS290P: Data Privacy via Machine Learning, and Back
|
|
|
|
|
CMPS290Q: Topics in Programming Languages
|
|
|
|
|
CMPS290S: Advanced Topics in Computer Systems
|
|
|
|
|
CMPS290T: Topics in Computing for Society
|
|
|
|
|
CMPS290X: Cryptography and Computer Security
|
|
|
|
|
CMPS290Y: Quantum Computing
|
|
|
|
|