Theoretical computer science courses can help you learn algorithms, computational complexity, automata theory, and formal languages. You can build skills in problem-solving, mathematical reasoning, and algorithm analysis, that support tackling complex computational tasks. Many courses introduce tools like Python for algorithm implementation, LaTeX for typesetting mathematical documents, and software for simulating automata, allowing you to apply these concepts in practical scenarios.

Peking University
Skills you'll gain: C (Programming Language), Programming Principles, Data Structures, Computer Science, Theoretical Computer Science, Computer Architecture, Computer Programming, Computational Thinking, Algorithms, Emerging Technologies
Mixed · Course · 3 - 6 Months

Vanderbilt University
Skills you'll gain: Matlab, Computer Programming, Programming Principles, Debugging, Mathematical Software, Development Environment, Computer Science, User Interface (UI), File Management, Data Import/Export, Data Structures, Computational Logic, Engineering Calculations, Plot (Graphics), Problem Solving
Beginner · Course · 1 - 3 Months

Princeton University
Skills you'll gain: Data Structures, Algorithms, Java, Performance Testing, Computer Programming, Java Programming, Theoretical Computer Science, Object Oriented Programming (OOP)
Intermediate · Course · 3 - 6 Months

University of California San Diego
Skills you'll gain: Unit Testing, Data Structures, Java, Performance Tuning, Debugging, Programming Principles, Algorithms, Object Oriented Programming (OOP), Theoretical Computer Science
Intermediate · Course · 1 - 3 Months

IBM
Skills you'll gain: Prompt Engineering, Software Development Life Cycle, Prompt Patterns, Large Language Modeling, Software Architecture, Computer Vision, LangChain, Responsive Web Design, Restful API, LLM Application, Generative AI, Flask (Web Framework), Responsible AI, IBM Cloud, Data Import/Export, Python Programming, Engineering Software, Workflow Management, Machine Learning, Data Science
Build toward a degree
Beginner · Professional Certificate · 3 - 6 Months
Stanford University
Skills you'll gain: Algorithms, Graph Theory, Theoretical Computer Science, Computational Thinking, Data Structures, Pseudocode, Operations Research
Intermediate · Course · 1 - 4 Weeks
University of Michigan
Skills you'll gain: Programming Principles, Computer Programming, Python Programming, Computational Thinking, Software Installation, Development Environment
Beginner · Course · 1 - 3 Months

University of Washington
Skills you'll gain: Ruby (Programming Language), Other Programming Languages, Object Oriented Programming (OOP), Computer Programming, Programming Principles, Functional Design, Computational Thinking, Software Design Patterns, Theoretical Computer Science, Debugging
Mixed · Course · 1 - 3 Months

Skills you'll gain: Algorithms, Technical Communication, Pseudocode, Computational Thinking, Solution Design, Programming Principles, Software Design, Theoretical Computer Science, Data Structures, Mathematical Modeling, Applied Mathematics, Computer Science
Beginner · Course · 1 - 4 Weeks

Stanford University
Skills you'll gain: Data Structures, Graph Theory, Algorithms, Social Network Analysis, Network Analysis, Theoretical Computer Science, Network Routing, Computational Logic
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: C and C++, Data Import/Export, C++ (Programming Language), Object Oriented Programming (OOP), Data Validation, Object Oriented Design, Programming Principles, Computer Programming, Data Structures, File Management, Integrated Development Environments, Software Documentation, Computer Science, Data Storage
Beginner · Specialization · 3 - 6 Months

University of Illinois Urbana-Champaign
Skills you'll gain: Data Structures, Data Storage, Algorithms, Data Storage Technologies, Database Systems, Database Theory, Theoretical Computer Science
Mixed · Course · 1 - 4 Weeks