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 California San Diego
Skills you'll gain: Cryptography, Cryptographic Protocols, Encryption, Public Key Cryptography Standards (PKCS), Arithmetic, Cybersecurity, Algorithms, Computational Thinking, Theoretical Computer Science, General Mathematics, Applied Mathematics, Python Programming
Beginner · Course · 1 - 4 Weeks

Universitat Autònoma de Barcelona
Skills you'll gain: Computer Architecture, Hardware Architecture, System Design and Implementation, Application Specific Integrated Circuits, Digital Design, Design Software, Computer Hardware, Verification And Validation, Computer Programming Tools, Simulations
Intermediate · Course · 1 - 3 Months

University of California San Diego
Skills you'll gain: Debugging, Computational Thinking, Event-Driven Programming, Computer Programming Tools, Algorithms, Programming Principles, Diversity Awareness, Digital pedagogy, Program Development, Education Software and Technology, Technical Communication, Computer Programming, Diversity Equity and Inclusion Initiatives, Code Review, Brainstorming, Software Documentation, Computer Science, Data Structures, Game Design, Student Engagement
Beginner · Specialization · 3 - 6 Months

École normale supérieure
Skills you'll gain: Sampling (Statistics), Physics, Simulations, Computational Logic, Numerical Analysis, Markov Model, Quantitative Research, Algorithms, Applied Mathematics, Linear Algebra, Integral Calculus
Mixed · Course · 1 - 3 Months
University of London
Skills you'll gain: Computer Science, Computer Systems, Web Applications, Computer Literacy, Network Security, Computer Networking, Computational Thinking, Theoretical Computer Science, Cybersecurity, Problem Management, Software Architecture, Databases
Beginner · Course · 1 - 4 Weeks

University of California San Diego
Skills you'll gain: Logical Reasoning, Computational Logic, Computational Thinking, Deductive Reasoning, Theoretical Computer Science, Mathematical Modeling, Computer Programming, Algorithms, Program Development, Applied Mathematics
Beginner · Course · 1 - 3 Months

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

University of Colorado System
Skills you'll gain: Computational Thinking, C (Programming Language), Data Structures, Programming Principles, Computer Programming, Program Development, Debugging
Beginner · Course · 1 - 4 Weeks

University of Colorado Boulder
Skills you'll gain: Data Ethics, Computer Security Awareness Training, Ethical Standards And Conduct, Information Systems Security Assessment Framework (ISSAF), Responsible AI, Cybersecurity, Information Privacy, General Data Protection Regulation (GDPR), Personally Identifiable Information, Artificial Intelligence, Media and Communications, Social Impact
Build toward a degree
Beginner · Course · 1 - 4 Weeks

University of Colorado System
Skills you'll gain: Cryptography, Arithmetic, Algorithms, Applied Mathematics, Probability, Computer Science
Beginner · Course · 1 - 4 Weeks

Shanghai Jiao Tong University
Skills you'll gain: Combinatorics, Graph Theory, Theoretical Computer Science, Mathematical Theory & Analysis, Advanced Mathematics, Network Analysis, Computational Thinking, Algorithms, Data Structures, Computer Science
Intermediate · Course · 1 - 3 Months

University of Colorado Boulder
Skills you'll gain: Verification And Validation, Systems Design, Hardware Design, Mathematical Modeling, Theoretical Computer Science, Computer Architecture, Software Architecture, Graph Theory, Algorithms
Beginner · Course · 1 - 4 Weeks