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 San Diego
Skills you'll gain: Event-Driven Programming, Interactive Data Visualization, Java, Java Programming, Object Oriented Programming (OOP), User Interface (UI), Object Oriented Design, Computer Programming, Algorithms, Software Engineering, Data Structures, Programming Principles, Software Documentation, Development Environment, Debugging
Intermediate · Course · 1 - 3 Months
University of London
Skills you'll gain: Machine Learning, Data Processing, Artificial Intelligence, Data Analysis, Machine Learning Algorithms, Computer Vision, Data Collection, Software Testing
Build toward a degree
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Object Oriented Design, Computer Programming, Software Design
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Object Oriented Programming (OOP), Application Development, Software Design, Scalability, File Management, Programming Principles, Maintainability, Data Structures, Debugging, Python Programming, JSON
Mixed · Course · 1 - 4 Weeks

University of Michigan
Skills you'll gain: C (Programming Language), Python Programming, Programming Principles, System Programming, Computer Programming, Unix, Computer Science
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Scripting, File Management, Scripting Languages, Data Structures, Development Environment, Computer Programming Tools, Integrated Development Environments, Computer Programming, Software Installation, Algorithms, Debugging
Beginner · Course · 1 - 3 Months

Skills you'll gain: Computer Graphics, 3D Assets, Video Game Development, Game Design, C# (Programming Language), Animations, Cross Platform Development, Object Oriented Programming (OOP), Program Development, Software Installation, Debugging, Computational Logic
Mixed · Course · 1 - 3 Months

Skills you'll gain: 3D Modeling, 3D Assets, Computer Graphics, Computer Graphic Techniques
Mixed · Course · 1 - 4 Weeks

Duke University
Skills you'll gain: User Interface (UI), Computational Thinking, HTML and CSS, Interactive Design, Web Development, Web Design, Javascript, Event-Driven Programming, Computer Programming, Algorithms, Image Analysis, Web Applications, Cascading Style Sheets (CSS)
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Prompt Engineering, Prompt Patterns, ChatGPT, Generative AI, Large Language Modeling, Responsible AI, AI Personalization, Mobile Development, Anthropic Claude, Artificial Intelligence, LLM Application, Software Development Tools, Software Testing, Apple iOS, Test Automation, Software Development, Machine Learning Methods, DevSecOps, AI Product Strategy, Artificial Intelligence and Machine Learning (AI/ML)
Advanced · Specialization · 1 - 3 Months

Johns Hopkins University
Skills you'll gain: HTML and CSS, Javascript, Responsive Web Design, Ajax, Front-End Web Development, Web Design, Web Applications, Hypertext Markup Language (HTML), Browser Compatibility, Web Development, Cascading Style Sheets (CSS), Usability, Cross Platform Development
Mixed · Course · 1 - 4 Weeks

Skills you'll gain: Object Oriented Programming (OOP), Cryptography, Encryption, Application Development, Software Design, Data Structures, Scalability, File Management, Machine Learning Algorithms, Public Key Cryptography Standards (PKCS), Databases, Python Programming, Maintainability, Natural Language Processing, Algorithms, Key Management, Machine Learning Methods, Software Installation, Programming Principles, Data Validation
Beginner · Specialization · 3 - 6 Months