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.

Korea Advanced Institute of Science and Technology(KAIST)
Skills you'll gain: Scala Programming, Programming Principles, Theoretical Computer Science, Other Programming Languages, Computer Programming, Functional Design, Algorithms
Mixed · Course · 1 - 3 Months

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

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

Vanderbilt University
Skills you'll gain: Prompt Engineering, Image Analysis, Data Visualization Software, Matlab, Algorithms, Machine Learning Methods, User Interface (UI), Applied Machine Learning, ChatGPT, Scatter Plots, Object Oriented Programming (OOP), Dimensionality Reduction, Classification And Regression Tree (CART), Computer Programming, Histogram, AI Personalization, Data Processing, Data Analysis, Programming Principles, Debugging
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Data Structures, Graph Theory, Algorithms, Java, Theoretical Computer Science, Computer Programming, Object-Relational Mapping, Computational Thinking, Programming Principles, Performance Tuning
Intermediate · Specialization · 1 - 3 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

University of Maryland, College Park
Skills you'll gain: Cryptography, Encryption, Public Key Cryptography Standards (PKCS), Cybersecurity, Digital Communications, Authentications, Data Integrity, Algorithms, Computer Science
Mixed · Course · 1 - 3 Months

Skills you'll gain: Data Import/Export, Java Programming, Java, Computer Programming, Data Structures, Object Oriented Programming (OOP), File Management, Integrated Development Environments, Computer Science
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Event-Driven Programming, Debugging, Game Design, Animation and Game Design, Program Development, Algorithms, Computer Programming, Application Development, Problem Solving, Design, Computer Science
Beginner · Guided Project · Less Than 2 Hours

Skills you'll gain: User Research, User Experience Design, Design Thinking, User Centered Design, Usability, Persona (User Experience), User Interface (UI), Web Content Accessibility Guidelines, Wireframing, Prototyping, Sprint Retrospectives, Sprint Planning
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Bash (Scripting Language), Operating Systems, File Systems, Linux Commands, Linux, SQL, Unix, Database Management, Command-Line Interface, Relational Databases, Authorization (Computing), Authentications, User Accounts
Beginner · Course · 1 - 4 Weeks
University of California, Santa Cruz
Skills you'll gain: Programming Principles, Pseudocode
Beginner · Course · 1 - 3 Months