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: 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: Software Development Life Cycle, Open Web Application Security Project (OWASP), Istio, Linux Commands, Software Architecture, Application Deployment, Kubernetes, NoSQL, Bash (Scripting Language), MongoDB, Restful API, Shell Script, Django (Web Framework), Object-Relational Mapping, OpenShift, Git (Version Control System), Grafana, Microservices, Data Import/Export, Python Programming
Beginner · Professional Certificate · 3 - 6 Months

Skills you'll gain: Django (Web Framework), Responsive Web Design, HTML and CSS, Back-End Web Development, Relational Databases, Object Oriented Programming (OOP), Database Management Systems, Bootstrap (Front-End Framework), SQL, Database Design, Databases, Front-End Web Development, Database Administration, Unit Testing, MySQL, Debugging, Web Development, Computer Programming, Pseudocode, Communication
Beginner · Specialization · 3 - 6 Months

JetBrains
Skills you'll gain: Object Oriented Programming (OOP), Data Structures, Software Development Tools
Beginner · Course · 1 - 3 Months

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

Codio
Skills you'll gain: Algorithms, C++ (Programming Language), Data Structures, Theoretical Computer Science, Computer Programming, Programming Principles, Computational Thinking
Intermediate · Course · 1 - 4 Weeks

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

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

EIT Digital
Skills you'll gain: Verification And Validation, Systems Analysis, Systems Design, Computational Logic, Data Structures, Theoretical Computer Science, Distributed Computing, Algorithms, Logical Reasoning
Intermediate · Course · 1 - 4 Weeks

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Go (Programming Language), Data Structures, C and C++, Object Oriented Programming (OOP), Software Design Patterns, Debugging, Object Oriented Design, Computer Programming, Unit Testing, Algorithms, C (Programming Language), Programming Principles, Integrated Development Environments, Graph Theory, Computer Science, File Systems, Artificial Intelligence, Integration Testing, Software Design
Intermediate · Specialization · 3 - 6 Months
Multiple educators
Skills you'll gain: Unit Testing, Data Structures, Event-Driven Programming, Interactive Data Visualization, Java, Java Programming, User Interface (UI), Object Oriented Programming (OOP), Debugging, Object Oriented Design, Computer Programming, Cryptography, Software Engineering, Performance Tuning, Encryption, Algorithms, Programming Principles, Data Analysis, Software Design, Problem Solving
Beginner · Specialization · 3 - 6 Months
University of Michigan
Skills you'll gain: Data Structures, Data Analysis, Python Programming, Data Manipulation, Software Installation, File Management, Development Environment, Debugging
Beginner · Course · 1 - 3 Months