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 Colorado Boulder
Skills you'll gain: Robotic Process Automation, Artificial Intelligence, Graph Theory, Algorithms, Computer Vision, Control Systems, Data Structures, Python Programming, Simulations
Build toward a degree
Intermediate · Course · 1 - 3 Months

Coursera
Skills you'll gain: TypeScript, Computational Logic, Scripting Languages, Programming Principles, Web Development Tools, Data Structures, Computer Programming
Intermediate · Guided Project · Less Than 2 Hours

Universidade de São Paulo
Skills you'll gain: Model View Controller, Unified Modeling Language, Object Oriented Programming (OOP), Software Design Patterns, Software Design, Java Programming, Computer Programming, Debugging, Software Architecture, Programming Principles, Other Programming Languages, Prototyping
Intermediate · Course · 1 - 3 Months

LearnQuest
Skills you'll gain: Visual Basic (Programming Language), Development Environment, Program Development, Microsoft Development Tools, .NET Framework, Data Storage, Computer Programming, Software Development, Computational Logic, Cross Platform Development, Command-Line Interface, Debugging
Beginner · Course · 1 - 4 Weeks

EIT Digital
Skills you'll gain: Embedded Software, Real-Time Operating Systems, Embedded Systems, Internet Of Things, Operating Systems, Computer Systems, Application Design, Hardware Architecture, Wireless Networks, Communication Systems, C (Programming Language), Simulations, Application Programming Interface (API)
Intermediate · Course · 1 - 4 Weeks
Imperial College London
Skills you'll gain: Logo Design, Computer Graphics, Visualization (Computer Graphics), 3D Assets, Android Development, Augmented and Virtual Reality (AR/VR), Android Studio, Computer Graphic Techniques, Animations, Programming Principles
Intermediate · Course · 1 - 4 Weeks

Microsoft
Skills you'll gain: Microsoft Copilot, Programming Principles, Full-Stack Web Development, GitHub, Version Control, Program Development, Debugging, Computational Thinking, Pseudocode, Git (Version Control System), Web Design and Development, Computer Programming, Algorithms, Web Development, C# (Programming Language), Data Structures, Back-End Web Development
Beginner · Course · 1 - 3 Months

Skills you'll gain: JUnit, Test Driven Development (TDD), Version Control, Git (Version Control System), GitHub, Performance Tuning, Unit Testing, Data Structures, Java Programming, Development Testing, Algorithms, Program Development, Software Testing, Java, Computer Programming, Software Development, Programming Principles, Debugging, Scalability
Beginner · Course · 1 - 4 Weeks
Google Cloud
Skills you'll gain: Google Workspace, Gmail, Google Gemini, Email Automation, Service Management, Scripting, Automation, Document Management, Collaborative Software, Configuration Management, Data Sharing
Beginner · Course · 1 - 4 Weeks

Universidad Nacional Autónoma de México
Skills you'll gain: Bioinformatics, Algorithms, Computational Thinking, Machine Learning Algorithms, Artificial Intelligence, Computer Science, Program Development
Intermediate · Course · 1 - 4 Weeks

Peking University
Skills you'll gain: Algorithms, Programming Principles, Computer Programming, Graph Theory, Computational Thinking, Data Structures
Mixed · Course · 1 - 3 Months

University of Minnesota
Skills you'll gain: Software Development Methodologies, Agile Methodology, Software Engineering, Software Development Life Cycle, Requirements Analysis, Application Deployment, Agile Software Development, Systems Development, Software Architecture, Verification And Validation, Process Driven Development, Waterfall Methodology, System Requirements, Software Testing, Scrum (Software Development), Release Management, User Requirements Documents, Development Testing, Software Design, Maintainability
Beginner · Course · 1 - 4 Weeks