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: Data Ethics, Security Awareness, Computer Security Awareness Training, Ethical Standards And Conduct, Cybersecurity, Information Technology, Responsible AI, Information Privacy, Social Impact, Media and Communications, Personally Identifiable Information, Artificial Intelligence, General Data Protection Regulation (GDPR)
Build toward a degree
Beginner · Course · 1 - 4 Weeks

University of Colorado System
Skills you'll gain: Cryptography, Brute-force attacks, Encryption, Information Systems Security, Cybersecurity, Theoretical Computer Science, Computational Logic
Intermediate · Course · 1 - 4 Weeks
University of California, Irvine
Skills you'll gain: Blockchain, FinTech, Cryptography, Distributed Computing, Transaction Processing, Payment Systems, Emerging Technologies, Digital Assets, Software Systems, Computer Systems, Software Architecture, Data Integrity, Network Analysis, Peer Review
Beginner · Course · 1 - 4 Weeks

University of California San Diego
Skills you'll gain: Combinatorics, Probability, Probability Distribution, Algorithms, Bayesian Statistics, Mathematical Modeling, Statistics, Arithmetic, Python Programming, Simulations
Beginner · Course · 1 - 3 Months

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 California, Davis
Skills you'll gain: Simulations, Social Sciences, Systems Thinking, Agentic systems, Social Network Analysis, Model Evaluation, Sociology, Economics, Scientific Methods, Computer Programming
Beginner · Course · 1 - 4 Weeks

Universidad Nacional Autónoma de México
Skills you'll gain: Algorithms, Computational Thinking, Applied Mathematics, Machine Learning Algorithms, Biology, Life Sciences, Artificial Intelligence, Computer Science, Programming Principles, Mathematical Modeling, Engineering Practices
Intermediate · Course · 1 - 4 Weeks

Birla Institute of Technology & Science, Pilani
Skills you'll gain: Computer Architecture, Computer Systems, Computational Logic, Hardware Design, Computer Hardware, Programming Principles, Digital Signal Processing, Debugging
Beginner · Course · 1 - 3 Months

University of Colorado Boulder
Skills you'll gain: Systems Design, Computational Logic, Verification And Validation, Software Systems, Theoretical Computer Science, Simulations, Programming Principles, Graph Theory, Model Evaluation, Hardware Architecture, Algorithms, Logical Reasoning
Beginner · Course · 1 - 4 Weeks

Pohang University of Science and Technology(POSTECH)
Skills you'll gain: Blockchain, Cryptography, Transaction Processing, Programming Principles, Encryption, Data Structures, Virtualization and Virtual Machines, Network Protocols, Distributed Computing, Network Architecture, Algorithms
Intermediate · Course · 1 - 3 Months

Tsinghua University
Skills you'll gain: Data Structures, Algorithms, Graph Theory, Computational Thinking, Programming Principles, Computer Programming
Intermediate · Course · 1 - 3 Months
University of Illinois Urbana-Champaign
Skills you'll gain: Application Specific Integrated Circuits, Hardware Design, Computer-Aided Design, Systems Design, Computer Architecture, Network Routing, Computational Logic, Electrical Engineering, Data Structures, Algorithms, Graph Theory, Mathematical Modeling, Calculus
Intermediate · Course · 1 - 3 Months