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.
LearnQuest
Skills you'll gain: Java Programming, Spring Framework, Java, Eclipse (Software), Object Oriented Programming (OOP), Object Oriented Design, Integrated Development Environments, Development Environment, Java Platform Enterprise Edition (J2EE), Software Design, Software Installation, Computer Programming, Programming Principles, Program Development, Virtual Machines, Web Development, Debugging, Package and Software Management, Data Structures, File Management
Intermediate · Specialization · 3 - 6 Months

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 California San Diego
Skills you'll gain: Unit Testing, Growth Mindedness, Data Structures, Graph Theory, Event-Driven Programming, Social Network Analysis, Interactive Data Visualization, Java, Java Programming, Network Analysis, Object Oriented Programming (OOP), Technical Communication, User Interface (UI), Object Oriented Design, Computer Programming, Willingness To Learn, Adaptability, Performance Tuning, Algorithms, Problem Solving
Intermediate · Specialization · 3 - 6 Months

Meta
Skills you'll gain: React Native, iOS Development, Core Data (Software), Restful API, Version Control, Apple iOS, UI/UX Research, Usability Testing, Apple Xcode, Data Structures, Swift Programming, Jest (JavaScript Testing Framework), User Interface (UI), Unix Commands, Git (Version Control System), Persona (User Experience), GitHub, Interaction Design, Mobile Development, Javascript
Build toward a degree
Beginner · Professional Certificate · 3 - 6 Months

Skills you'll gain: Software Development Life Cycle, Open Web Application Security Project (OWASP), Containerization, Istio, Software Architecture, Node.JS, Application Deployment, Restful API, Kubernetes, Database Design, Cloud-Native Computing, Responsive Web Design, NoSQL, OpenShift, Git (Version Control System), Ajax, Grafana, Javascript, Azure DevOps, Engineering Software
Beginner · Professional Certificate · 3 - 6 Months

Dartmouth College
Skills you'll gain: C (Programming Language), Embedded Systems, Computer Engineering, Embedded Software, System Programming, Computer Science, Computer Programming, Operating Systems, Visualization (Computer Graphics), Data Structures, Linux
Beginner · Course · 1 - 3 Months

Skills you'll gain: 3D Modeling, 3D Assets, Computer Graphics, Visualization (Computer Graphics), Virtual Environment
Intermediate · Course · 3 - 6 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: Prompt Engineering, Software Development Life Cycle, Cloud-Native Computing, Software Architecture, Hibernate (Java), Database Design, Responsive Web Design, Docker (Software), Containerization, Git (Version Control System), GitHub, Object Oriented Programming (OOP), Microservices, CI/CD, Restful API, Java Programming, Engineering Software, Version Control, Database Management, Software Design
Beginner · Professional Certificate · 3 - 6 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: C++ (Programming Language), Object Oriented Design, Object Oriented Programming (OOP), Debugging, Computer Programming, Programming Principles, Maintainability, Data Validation
Intermediate · Course · 1 - 4 Weeks