Courses in Theory of Computation often teach formal languages, automata theory, computability, and complexity classes. You can build skills in algorithm design, problem-solving, and understanding the limits of computation. Many courses introduce tools like Turing machines and state diagrams, which help illustrate concepts and analyze computational problems. You'll also explore key topics such as P vs NP, decidability, and the role of algorithms in artificial intelligence, enhancing your ability to tackle complex computational challenges.

University of Colorado Boulder
Skills you'll gain: Verification And Validation, Computational Thinking, Systems Design, System Design and Implementation, Systems Analysis, Model Evaluation, Software Design, Computer Architecture, Program Development, Software Quality (SQA/SQC), Logical Reasoning
Beginner · Course · 1 - 4 Weeks

University of Colorado Boulder
Skills you'll gain: Data Ethics, Security Awareness, Healthcare Ethics, Responsible AI, Ethical Standards And Conduct, Computer Security Awareness Training, Cybersecurity, Diversity Awareness, Generative AI, Artificial Intelligence, Information Technology, Information Privacy, Diversity Equity and Inclusion Initiatives, Social Impact, Media and Communications, Automation, Robotics, Cultural Diversity, Personally Identifiable Information, Emerging Technologies
Build toward a degree
Beginner · Specialization · 3 - 6 Months

University of Colorado Boulder
Skills you'll gain: Computational Logic, Mathematical Modeling, System Requirements, Functional Requirement, Theoretical Computer Science, Verification And Validation, Control Systems, Network Model, Systems Analysis, Automation, Mechanical Engineering, Real-Time Operating Systems, Agentic systems, Differential Equations, Safety Assurance, Robotics, Artificial Intelligence, Linear Algebra, Algorithms, Applied Mathematics
Build toward a degree
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Data Structures, Graph Theory, Algorithms, Java, Java Programming, Theoretical Computer Science, Computer Programming, Computational Thinking, Programming Principles, Performance Tuning, Object-Relational Mapping, Computer Programming Tools
Intermediate · Specialization · 1 - 3 Months

University of California San Diego
Skills you'll gain: Graph Theory, Combinatorics, Network Analysis, Data Structures, Visualization (Computer Graphics), Algorithms, Mathematical Theory & Analysis, Theoretical Computer Science, Program Development
Beginner · Course · 1 - 3 Months

University of California, Davis
Skills you'll gain: Social Network Analysis, Network Analysis, Data Wrangling, Natural Language Processing, Web Scraping, Social Sciences, Data Ethics, Databases, Artificial Intelligence, Research, Simulations, Data Processing, Big Data, Systems Thinking, Social Studies, Trend Analysis, Data Science, AI Enablement, Research Methodologies, Agentic systems
Beginner · Specialization · 3 - 6 Months

Stanford University
Skills you'll gain: Data Structures, Graph Theory, Algorithms, Bioinformatics, Theoretical Computer Science, Network Model, Programming Principles, Social Network Analysis, Network Analysis, Computational Thinking, Analysis, Computer Science, Network Routing, Probability, Pseudocode, Computational Logic, Operations Research
Intermediate · Specialization · 3 - 6 Months

University of Colorado Boulder
Skills you'll gain: Theoretical Computer Science, Algorithms, Computational Thinking, Pseudocode, Data Structures, Design Strategies, Programming Principles, Computer Science, Advanced Mathematics, Python Programming, Analysis
Build toward a degree
Advanced · Course · 1 - 4 Weeks

University of California San Diego
Skills you'll gain: Algorithms, Program Development, Debugging, Development Testing, Software Testing, Computational Thinking, Test Case, Computer Programming, Programming Principles, Data Structures, Theoretical Computer Science, Design Strategies
Intermediate · Course · 1 - 3 Months

University of Colorado System
Skills you'll gain: Computational Thinking, File I/O, Data Collection, Simulations, Data Analysis, Microsoft Visual Studio, C (Programming Language), Statistical Analysis, Automation, Program Development, Data Structures, Programming Principles, Algorithms, Computer Programming, Theoretical Computer Science, Data Storage, Descriptive Statistics, Data Visualization Software, Debugging
Beginner · Specialization · 3 - 6 Months
University of Washington
Skills you'll gain: Supervised Learning, Network Model, Matlab, Machine Learning Algorithms, Artificial Neural Networks, Neurology, Computer Science, Reinforcement Learning, Computational Thinking, Bioinformatics, Mathematical Modeling, Physiology, Recurrent Neural Networks (RNNs), Biology, Linear Algebra, Statistical Methods, Information Architecture, Differential Equations, Probability Distribution
Beginner · Course · 1 - 3 Months

University of California San Diego
Skills you'll gain: Cryptography, Encryption, Public Key Cryptography Standards (PKCS), Cybersecurity, Arithmetic, Algorithms, Theoretical Computer Science, Computational Thinking, Algebra, Python Programming
Beginner · Course · 1 - 4 Weeks