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.

Rice University
Skills you'll gain: Apache Kafka, Apache Spark, Apache Hadoop, Distributed Computing, Dataflow, Java Programming, Java, Middleware, Data Structures, System Programming, Scalability, Programming Principles, Servers, Application Frameworks, Debugging, Algorithms, Performance Tuning, Network Protocols, Computer Science
Intermediate · Specialization · 3 - 6 Months

Rice University
Skills you'll gain: Dataflow, Java, Programming Principles, Application Frameworks, Algorithms, Performance Tuning, Computer Science
Intermediate · Course · 1 - 3 Months

University of Michigan
Skills you'll gain: UI/UX Research, User Experience, User Centered Design, Interaction Design, Prototyping, Usability Testing, Usability, Design Thinking, Human Computer Interaction, Human Factors, User Interface (UI) Design, Ideation
Beginner · Course · 1 - 3 Months

Microsoft
Skills you'll gain: Web Scraping, Data Structures, Git (Version Control System), Generative AI, Version Control, Matplotlib, Plotly, DevOps, Agile Methodology, Web Development, Data Ethics, Flask (Web Framework), Data Visualization, Scripting, GitHub, Debugging, Data Cleansing, Data Analysis, Automation, Cloud Computing
Beginner · Professional Certificate · 3 - 6 Months

University of London
Skills you'll gain: Responsive Web Design, HTML and CSS, Web Design, Human Computer Interaction, Interaction Design, jQuery, Bootstrap (Front-End Framework), Hypertext Markup Language (HTML), User Experience Design, User Accounts, MongoDB, User Experience, Wireframing, Web Applications, Full-Stack Web Development, Interactive Data Visualization, JavaScript Frameworks, Web Development Tools, User Interface (UI), Javascript
Beginner · Specialization · 3 - 6 Months

Birla Institute of Technology & Science, Pilani
Skills you'll gain: Java Programming, Object Oriented Programming (OOP), Programming Principles, Computer Programming, Data Structures, Software Engineering, Unit Testing, Debugging, OS Process Management, File Management, Performance Tuning
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: 3D Modeling, 3D Assets, Animation and Game Design, Autodesk, Visualization (Computer Graphics), Computer Graphics, Computer Graphic Techniques
Mixed · 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

Skills you'll gain: 3D Modeling, Computer Graphics, Visualization (Computer Graphics), Computer Graphic Techniques, Virtual Environment, Color Theory
Mixed · Course · 1 - 4 Weeks

Skills you'll gain: Jest (JavaScript Testing Framework), Web Development Tools, Javascript, Unit Testing, Web Applications, Object Oriented Programming (OOP), Scripting Languages, Event-Driven Programming, Node.JS, Scripting, JSON, Computer Programming, Data Structures, Debugging, Package and Software Management, Program Development, Front-End Web Development, Functional Design
Beginner · Course · 1 - 3 Months