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.

Universidade de São Paulo
Skills you'll gain: Debugging, Computational Thinking, Programming Principles, Data Structures, Computer Programming, Program Development, Integrated Development Environments, Computer Science, Python Programming, Algorithms
Beginner · Course · 1 - 3 Months

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Go (Programming Language), Data Structures, C and C++, C (Programming Language), Object Oriented Programming (OOP), Programming Principles, Software Design Patterns, Debugging, Computer Programming, Unit Testing, Integrated Development Environments, Algorithms, Pseudocode, Command-Line Interface, Graph Theory, Computer Science, File Systems, Artificial Intelligence, Integration Testing
Intermediate · Specialization · 3 - 6 Months
University of California, Santa Cruz
Skills you'll gain: Go (Programming Language), Data Structures, C and C++, C (Programming Language), Programming Principles, Object Oriented Programming (OOP), Debugging, C++ (Programming Language), Computer Programming, Unit Testing, Integrated Development Environments, Computer Science, Pseudocode, Command-Line Interface, Algorithms, File Systems, Integration Testing, Software Design
Intermediate · Specialization · 3 - 6 Months

Duke University
Skills you'll gain: Debugging, Programming Principles, Maintainability, Software Testing, Program Development, C (Programming Language), Algorithms, Pseudocode, Simulations, System Programming, Computer Programming, Data Structures, Software Development, Software Engineering, Command-Line Interface, Operating Systems, Development Environment, User Interface (UI), Problem Solving, Software Design
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Cybersecurity, Security Controls, Information Systems Security, Information Systems Security Assessment Framework (ISSAF), Cyber Security Strategy, Cyber Risk, Security Information and Event Management (SIEM), Data Ethics, Network Analysis, Personally Identifiable Information, Ethical Standards And Conduct, SQL
Build toward a degree
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: C and C++, Object Oriented Programming (OOP), C++ (Programming Language), Data Validation, Object Oriented Design, Computer Programming, Programming Principles, Computer Science
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Django (Web Framework), Full-Stack Web Development, Version Control, Restful API, Data Structures, Unix Commands, Bootstrap (Front-End Framework), Git (Version Control System), Back-End Web Development, GitHub, Web Design and Development, Relational Databases, Front-End Web Development, Object Oriented Programming (OOP), Database Management Systems, SQL, Database Design, Python Programming, Computer Programming, Cloud Hosting
Build toward a degree
Beginner · Professional Certificate · 3 - 6 Months

University of Alberta
Skills you'll gain: Computational Thinking, Video Game Development, Game Design, Programming Principles, Animation and Game Design, Software Quality (SQA/SQC), Problem Solving, Computer Programming, Program Development, Software Engineering, Python Programming, Algorithms, Object Oriented Programming (OOP), Pseudocode, Data Structures, Application Design, Debugging, Computer Science, Test Planning
Beginner · Course · 1 - 3 Months

Skills you'll gain: Debugging, Python Programming, Cybersecurity, Scripting, Programming Principles, Data Import/Export, Algorithms, Automation, Computer Programming, File Management
Beginner · Course · 1 - 4 Weeks

Peking University
Skills you'll gain: Data Structures, Algorithms, Computer Science, Theoretical Computer Science, Data Architecture, Database Systems, Performance Tuning, Data Storage
Mixed · Course · 1 - 3 Months

Pontificia Universidad Católica de Chile
Skills you'll gain: Python Programming, Data Structures, Programming Principles, Computer Programming, Program Development, Algorithms, File Management
Beginner · Course · 1 - 3 Months

EIT Digital
Skills you'll gain: Data Structures, Theoretical Computer Science, Data Storage Technologies, Algorithms, Graph Theory, File Systems, Data Access, Performance Tuning, Computer Hardware
Advanced · Course · 1 - 3 Months