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.

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), C (Programming Language), Object Oriented Programming (OOP), Programming Principles, Software Design Patterns, Debugging, Computer Programming, Object Oriented Design, Algorithms, Data Structures, Pseudocode, Command-Line Interface, Graph Theory, Artificial Intelligence, File Systems, Game Design
Beginner · Specialization · 3 - 6 Months
Dartmouth College
Skills you'll gain: Command-Line Interface, C (Programming Language), Linux Commands, Linux, Embedded Systems, Embedded Software, Programming Principles, Computer Engineering, Linux Servers, File Systems, System Programming, Build Tools, Data Structures, Algorithms, Computer Architecture, Computer Programming, Software Documentation, Computer Science, Software Engineering, Debugging
Beginner · Specialization · 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: 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

The Chinese University of Hong Kong
Skills you'll gain: Operations Research, Computational Logic, Advanced Mathematics, Combinatorics, Algorithms, Applied Mathematics, Graph Theory, Mathematical Modeling, Mathematical Software, Computational Thinking, Programming Principles, Theoretical Computer Science, Program Development, Performance Tuning, Linear Algebra
Intermediate · Course · 1 - 4 Weeks

University of Michigan
Skills you'll gain: Unified Modeling Language, JSON, Object Oriented Programming (OOP), Software Design, Debugging, Object Oriented Design, Data Processing, Web Scraping, Unit Testing, Programming Principles, Python Programming, Data Import/Export, Restful API, Image Analysis, Data Manipulation, Jupyter, Computer Programming, Data Structures, Software Engineering, File Management
Beginner · Specialization · 3 - 6 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

Skills you'll gain: Verification And Validation, Theoretical Computer Science, System Testing, System Software, Systems Design, Software Architecture, Embedded Systems
Intermediate · Course · 1 - 4 Weeks

University of Pennsylvania
Skills you'll gain: Matplotlib, Object Oriented Design, Java, Object Oriented Programming (OOP), Data Analysis, Unit Testing, Pandas (Python Package), Java Programming, Eclipse (Software), Application Development, Data Visualization, Data Structures, Data Science, Data Cleansing, Debugging, Pivot Tables And Charts, Data Visualization Software, Programming Principles, Python Programming, Computer Programming
Beginner · Specialization · 3 - 6 Months

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

Skills you'll gain: Persona (User Experience), User Interface (UI), Prompt Engineering, Interaction Design, Usability, User Experience Design, Human Computer Interaction, Usability Testing, Web Content Accessibility Guidelines, AI Personalization, User Research, Prototyping, Natural Language Processing
Intermediate · Course · 1 - 3 Months

Princeton University
Skills you'll gain: Data Structures, Algorithms, Theoretical Computer Science, Java, Computational Thinking, Graph Theory, Performance Testing
Intermediate · Course · 3 - 6 Months