Skip available courses

Available courses

In this course, we will learn to program in Rust. Rust is a novel programming language combining solid bare-metal performance with modern language features that given good usability and tend to induce high-quality code.
A large well-used application typically develops a user community. The community will often engage in analysis of the application's operation and develop third party software tools to support its use. This course will examine, explain and engage in these activities, using the massively-multiplayer game EVE Online as the model target.
PSU CS 442/542 - Adversary Search covers the theory and practice of finding optimal and satisfying solutions to one-player and two-player combinatorial games, focusing on a variant of chess.
CS 251 is a second course in Discrete Structures for computer scientists. Please see the syllabus for course details.
The focus of CS 201 is on understanding and programming modern computer hardware. Please see the syllabus for course details.
CS 250 is a first course in Discrete Structures for computer scientists. Please see the syllabus for course details.
PSU CS 300, Software Engineering, covers principles and techniques of medium-scale software development for the individual practitioner. Please see the syllabus for course goals and details.

PSU CS 350, Algorithms and Complexity, is an introduction to the design and analysis of algorithms. Please see the course syllabus, below, for detailed information and background.

New Beginnings is an accelerated PSU MSCS prep program for post-Bac non-majors. Please see the syllabus for course goals and details.

PSU CS 584/684, Algorithm Design and Analysis, is an advanced graduate course in algorithms and algorithmics. Please see the syllabus for course goals and details.
PSU CS 161, Introduction to Programming and Problem Solving, is a first computer programming course for prospective CS majors. Please see the syllabus for course goals and details.
PSU CS 441/541, Artificial Intelligence, is an introduction the to the goals and techniques involved in engineering "intelligent" systems. Please see the syllabus for course goals and details
PSU CS 300, Software Engineering, covers principles and techniques of medium-scale software development for the individual practitioner. Please see the syllabus for course goals and details.
PSU CS 161, Introduction to Programming and Problem Solving, is a first computer programming course for prospective CS majors. For more information please see the course syllabus.
PSU CS 441/541, Artificial Intelligence, is an introduction the to the goals and techniques involved in engineering "intelligent" systems. Please see the syllabus for course goals and details
PSU CS 494/594, Internetworking Protocols, is a course in the architecture, organization, protocols and algorithms of the Internet. The course emphasizes IETF-standardized protocols.
PSU CS 494/594, Internetworking Protocols, is a course in the architecture, organization, protocols and algorithms of the Internet. The course emphasizes IETF-standardized protocols.
PSU CS 161, Introduction to Programming and Problem Solving, is a first computer programming course for prospective CS majors. For more information please see the course syllabus.
PSU CS 305, Social, Ethical, and Legal Implications of Computing, covers the history of computing, social context of computing, professional and ethical responsibilities, risks and liabilities of safety-critical systems, intellectual property, privacy and civil liberties, social implications of the Internet, computer crime, and economic issues in computing. For more information please see the course syllabus.
PSU CS 350, Algorithms and Complexity, is an introduction to the design and analysis of algorithms. Please see the course syllabus, below, for detailed information and background.
PSU CS 441/541, Artificial Intelligence, is an introduction the to the goals and techniques involved in engineering "intelligent" systems. Please see the syllabus for course goals and details.
PSU CS 300, Software Engineering, is an introduction to large-scale software development for the individual practitioner. Please see the syllabus for course goals and details.
PSU CS 350, Algorithms and Complexity, is an introduction to the design and analysis of algorithms. Please see the course syllabus, below, for detailed information and background.
PSU CS 251, Discrete Structures II, covers propositional and first-order logic, logical modeling and reasoning, and a bit of abstract algebra and ADTs. See the course syllabus for additional information.