Stanford-CS-Course
Over the last decade, computer science has experienced a burst in popularity among students worldwide, and at Stanford University in particular. In 2020, over twice as many Stanford undergrads majored in CS as in any other discipline. And Stanford’s CS curriculum has grown from a few core subjects to a tapestry of specializations and integrated disciplines, as you can see below.
Stanford’s CS core and specialization subjects
Most of Stanford’s on-campus computer science courses have a companion website. Some are only open to Stanford students. But many are open to everyone, allowing learners worldwide to access the course slides, readings, and assignments. And some even provide video lessons — for instance:
- CS106B Programming Abstractions
- CS107 Programming Paradigms
- CS110 Principles of Computer Systems
- CS221 Artificial Intelligence
- CS229 Machine Learning
- CS231N Convolutional Neural Networks for Visual Recognition
- CS224N Natural Language Processing with Deep Learning
In this Class Central article, we compiled a list of over 150 Stanford on-campus computer science courses that are, to varying degrees, available online.
For your convenience, we’ve broken down the courses by topic. You can click on a topic to jump to the corresponding courses.
- Methodology
- Courses Subjects
If CS isn’t your cup of tea, Stanford also offers medical online courses and webinars, which free certificates of completion. And if you’re a healthcare professional, they also carry continuing medical education credit. Learn more here: Stanford Medicine Offers Courses with Free Certificate & CME Credit.
First, I built a list of Stanford’s CS offering by looking at their 2022 course catalog and Engineering Everywhere portal. Second, I checked the courses one by one to see which had a companion website. Third, I organized them into subjects according to Stanford’s own undergraduate and graduate guidelines. Fourth, I consolidated my findings into a dedicated list.
Note that this list only includes Stanford’s on-campus courses that have an online presence. To see a list of the university’s purely online courses and MOOCs, head to our Stanford online course catalog.
Without further ado, here are Stanford’s on-campus courses available online. Courses that include video recordings are denoted with the 🎦 icons.
- CS101 Introduction to Computing Principles
- CS105 Introduction to Computers 🎦
- CS106E Exploring Computing
- CS106B Programming Abstractions
- CS106B Programming Abstractions 🎦
- CS106B Programming Abstractions, Winter 2018
- CS106B Programming Abstractions, Winter 2018 🎦
- CS106X Programming Abstractions in C++
- CS107 Computer Organization & Systems
- CS107 Programming Paradigms 🎦
- CS107A Problem-solving Lab for CS107
- CS107E Computer Systems from the Ground Up
- CS110 Principles of Computer Systems
- CS110 Principles of Computer Systems 🎦
- CS140 Operating Systems
- CS140E Operating Systems Design and Implementation
- CS143 Compilers
- CS149 Parallel Computing
- CS240 Advanced Topics in Operating Systems
- CS240LX Advanced Systems Laboratory, Accelerated
- CS244b Distributed Systems
- CS315B Parallel Programming
- CS348K Visual Computing Systems
- CS357S Formal Methods for Computer Systems
- CS103 Mathematical Foundations of Computing (Fall 2021)
- CS103 Mathematical Foundations of Computing
- CS103A Math Problem-Solving Strategies
- CS106A Programming Methodologies
- CS106A Programming Methodology 🎦
- CS106L Standard C++ Programming
- CS109 Probability for Computer Scientists
- CS151 Logic Programming
- CS157 Computational Logic
- CS154 Introduction to the Theory of Computation
- CS154 Introduction to the Theory of Computation 🎦
- CS168 The Modern Algorithmic Toolbox
- CS242 Programming Languages
- CS261 Optimization and Algorithmic Paradigms
- CS334A/EE364A Convex Optimization I
- CS334A/EE364A Convex Optimization I 🎦
- CS334B/EE364B Convex Optimization II
- CS334B/EE364B Convex Optimization II 🎦
- MS&E213/CS269O Introduction to Optimization Theory
- CS254 Computational Complexity
- CS254B Computational Complexity II
- CS358 Programming Language Foundations
- CS243 Program Analysis and Optimizations
- CS265 Randomized Algorithms and Probabilistic Analysis
- CS351 Open Problems in Coding Theory
- CS349D Cloud Computing Technology
- CS229 Machine Learning
- CS229 Machine Learning 🎦
- CS229 Machine Learning 🎦
- CS229M Statistical Learning Theory
- CS205L Continuous Mathematical Methods with an Emphasis on Machine Learning
- CS221 Artificial Intelligence: Principles and Techniques
- CS221 Artificial Intelligence: Principles and Techniques 🎦
- CS131 Computer Vision Foundations and Applications
- CS231A Computer Vision, From 3D Reconstruction to Recognition
- CS231N Convolutional Neural Networks for Visual Recognition
- CS231N Convolutional Neural Networks for Visual Recognition 🎦
- CS236G Generative Adversarial Networks (GANs)
- CS239 Advanced Topics in Sequential Decision Making
- CS224N Natural Language Processing with Deep Learning 🎦
- CS224W Machine Learning with Graphs
- CS224W Machine Learning with Graphs 🎦
- CS224U Natural Language Understanding
- CS224V Conversational Virtual Assistants with Deep Learning
- CS294S/CS 294W A Project Course on Building the Best Virtual Assistant
- CS224S Spoken Language Processing
- CS20 Tensorflow for Deep Learning Research 🎦
- CS230 Deep Learning 🎦
- CS234 Reinforcement Learning
- CS234 Reinforcement Learning 🎦
- CS 329S: Machine Learning Systems Design
- CS236: Deep Generative Models
- CS330 Deep Multi-Task and Meta Learning
- CS330 Deep Multi-Task and Meta Learning 🎦
- CS331B Interactive Simulation for Robot Learning
- CS320 Value of Data and AI
- CS217 Hardware Accelerators for Machine Learning
- CS472 Data science and AI for COVID-19 🎦
- CS335 Fair, Accountable, and Transparent Deep Learning 🎦
- CS348I Computer Graphics in the Era of AI
- CS528 Stanford MLSys Seminar Series
- CS110L Safety in Systems Programming 🎦
- CS144 Introduction to Computer Networking
- CS144 Introduction to Computer Networking 🎦
- CS155 Computer and Network Security
- CS244 Advanced Topics in Networking
- CS344 Topics in Computer Networks
- CS253 Web Security
- CS253 Web Security 🎦
- CS255 Introduction to Cryptography
- CS350 Secure Compilation
- CS355 Advanced Topics in Cryptography
- CS356 Topics in Computer and Network Security Stanford
- CS102 Working with Data Tools and Techniques
- CS124 From Languages to Information
- CS145 Data Management and Data Systems
- CS166 Data Structures
- CS245 Principles of Data-Intensive Systems
- CS246 Mining Massive Data Sets
- CS246 Mining Massive Data Sets 🎦
- CS246H Mining Massive Data Sets Hadoop Lab
- CS276/LING 286 Information Retrieval and Web Search
- CS448B Visualization
- CS147 Introduction to Human-Computer Interaction Design
- CS247 Interaction Design Studios
- CS347 Human-Computer Interaction Research
- CS377E Designing Solutions to Global Grand Challenges: Human-Centered AI
- CS377U Understanding Users
- CS422 Intelligent Avatars Lab
- CS547 Human-Computer Interaction Seminar
- CS547 Human-Computer Interaction Seminar 🎦
- CS148 Introduction to Computer Graphics and Imaging
- CS228 Probabilistic Graphical Models: Principles and Techniques
- CS233 Geometric and Topological Data Analysis
- CS248 Interactive Computer Graphics
- CS348A Computer Graphics: Geometric Modeling & Processing
- CS348C Computer Graphics Animation and Simulation
- CS448 Computational photography
- CS468 Non-Euclidean Methods in Machine Learning
- CS142 Web Applications
- CS190 Software Design Studio
- CS193A Android App Development
- CS193A Android App Development 🎦
- CS193P Developing Applications for iOS using SwiftUI
- CS193P Developing Applications for iOS using SwiftUI 🎦
- CS193Q Introduction to Python Programming
- CS193X Web Programming Fundamental
- CS194A Android Workshop
- CS194 Software Project Experience
- CS47 Cross-Platform Mobile Development
- CS223A/ME320 Introduction to Robotics
- CS223A Introduction to Robotics 🎦
- CS225A Experimental Robotics
- CS327A Advanced Robotic Manipulation
- CS237B Principles of Robot Autonomy II
- CS326 Topics in Advanced Robotic Manipulation
- CS193U Video Game Development in C++ and Unreal Engine
- CS227 Knowledge Representation and Reasoning
- CS227B General Game Playing 🎦
- CS269I Incentives in Computer Science
- CS106S Coding for Social Good
- CS181/181W Computers, Ethics, and Public Policy
- CS182 Ethics, Public Policy, and Technological Change
- CS184 Bridging Policy and Tech Through Design
- CS202 Law for Computer Science Professionals
- CS204 Computational Law
- CS21SI AI for Social Good
- CS278 Social Computing
- CS322 (Social and Information) Network Analysis
- CS325B Data for Sustainable Development
- CS384 Ethical and Social Issues in Natural Language Processing
- CS398 Computational Education
- CS+Social Good: Implementing Social Good Projects
- CS235 Computational Methods for Biomedical Image Analysis and Interpretation
- CS273A The Human Genome Source Code
- CS275 Translational Bioinformatics
- CS279 Computational Biology Structure and Organization of Biomolecules and Cells
- BIODS220 (CS271, BIOMEDIN220) Artificial Intelligence in Healthcare
- CS342 Building for Digital Health
- CS371 Computational Biology in Four Dimensions
- CS372 AI for Disease Diagnosis & Information Recommend 🎦
- CS522 Seminar in Artificial Intelligence in Healthcare 🎦
- CS523 Research Seminar in Computer Vision and Healthcare
- CS007 Personal Finance for Engineers
- CS349F Technologies for Financial Systems
- CS251 Cryptocurrencies and Blockchain Technologies
- CS206 Technical Foundations of Electronic Commerce
- CS208E Great Ideas in Computer Science
- CS198 Teaching Computer Science
- CS249i The Modern Internet
- CS298 Seminar on Teaching Introductory Computer Science
- CS97SI Introduction to Programming Contests
- CS9 Problem-Solving for the CS Technical Interview
- CS197 Computer Science Research
- CS238 Decision Making under Uncertainty
- EE185/285, CS241 Interactive Light Sculpture Project
- CS348E Character Animation: Modeling, Simulation & Control 🎦
- CS476A Music, Computing and Design I
- CS520 Knowledge Graphs 🎦
- CS41 The Python Programming Language
- CS46N Big Data, Big Discoveries, Big Fallacies
- CS83 Playback Theater