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.

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

University of Colorado Boulder
Skills you'll gain: Problem Solving, Computational Thinking, Probability, Mathematical Modeling, Deductive Reasoning, Behavioral Economics, Algorithms, Analytical Skills, Theoretical Computer Science
Beginner · Course · 1 - 4 Weeks

University of Colorado Boulder
Skills you'll gain: Excel Macros, Programming Principles, Visual Basic (Programming Language), Data Structures, Computer Programming, Spreadsheet Software, Problem Solving, Automation, Algorithms, Scripting Languages, Debugging, Data Management, Data Cleansing
Beginner · Course · 1 - 3 Months
Stanford University
Skills you'll gain: Cryptography, Data Encryption Standard, Encryption, Key Management, Advanced Encryption Standard (AES), Public Key Cryptography Standards (PKCS), Cybersecurity, Authentications, Data Integrity, Secure Coding, Algorithms
Mixed · Course · 1 - 3 Months

JetBrains
Skills you'll gain: Object Oriented Programming (OOP), Data Structures, Software Development Tools
Beginner · Course · 1 - 3 Months
Duke University
Skills you'll gain: Java Programming, Software Design, Debugging, Software Engineering, Javascript, Computer Programming, Event-Driven Programming, Encryption, Algorithms, Image Analysis, Web Applications, Data Processing, Statistical Analysis, Data Import/Export, Predictive Modeling, Integrated Development Environments, Data Manipulation, Data Analysis, Web Servers, Cascading Style Sheets (CSS)
Beginner · Specialization · 3 - 6 Months

Peking University
Skills you'll gain: Algorithms, Pseudocode, Theoretical Computer Science, Mathematical Modeling, Computational Thinking, Applied Mathematics, Data Structures, Graph Theory, Mathematical Theory & Analysis, Design Strategies, Bioinformatics
Intermediate · Course · 1 - 3 Months

Rice University
Skills you'll gain: Data Visualization Software, Data Visualization, Plot (Graphics), Package and Software Management, Python Programming, Data Cleansing, Programming Principles, Data Processing, Data Manipulation, Software Installation, Development Environment, Data Structures, File Management, Scripting, Data Storage, Data Import/Export, Data Analysis, Program Development, Data Integration, Computer Programming
Beginner · Specialization · 3 - 6 Months

Coursera
Skills you'll gain: MySQL, SQL, Relational Databases, Data Analysis, Computer Programming, Computer Science
Beginner · Guided Project · Less Than 2 Hours

University of Pennsylvania
Skills you'll gain: Data Structures, Programming Principles, Python Programming, Computer Programming, Computational Thinking, Scripting, Software Development Tools, Integrated Development Environments, Data Import/Export, Jupyter, File Management
Beginner · Course · 1 - 4 Weeks

EIT Digital
Skills you'll gain: Verification And Validation, Systems Design, Process Driven Development, Systems Analysis, Mathematical Modeling, Data Modeling, Theoretical Computer Science, Distributed Computing, Algorithms, Data Structures
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Prototyping, 3D Modeling, 3D Assets, Design Strategies, Engineering Design Process, Computer-Aided Design, Manufacturing Processes, Technical Design, Design Software, Functional Design, Design, Materials science, Typography, Digital Design
Advanced · Course · 3 - 6 Months