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: Node.JS, Restful API, Database Design, Front-End Web Development, React Redux, Ajax, Database Development, Database Application, Server Side, Back-End Web Development, NoSQL, Javascript, Full-Stack Web Development, React.js, Performance Tuning, API Design, Data Structures, MongoDB, Debugging, JavaScript Frameworks
★ 4.4 (1.5K) · Beginner · Specialization · 3 - 6 Months

Rice University
Skills you'll gain: Data Visualization Software, File I/O, Data Visualization, Plot (Graphics), Statistical Visualization, Package and Software Management, Python Programming, Data Cleansing, Programming Principles, Data Processing, Data Persistence, Data Mapping, Data Manipulation, Code Reusability, Data Dictionary, Development Environment, Data Access, Computational Logic, Data Wrangling, Data Analysis
★ 4.7 (4.4K) · Beginner · Specialization · 3 - 6 Months

University of Michigan
Skills you'll gain: Database Design, SQL, MySQL, HTML and CSS, PHP (Scripting Language), Relational Databases, JSON, Database Management, jQuery, Hypertext Markup Language (HTML), Javascript and jQuery, Ajax, Database Software, Databases, Data Modeling, Database Application, Database Development, Debugging, Web Applications, Javascript
★ 4.7 (9.4K) · Intermediate · Specialization · 3 - 6 Months

KodeKloud
Skills you'll gain: Back-End Web Development, Go (Programming Language), Data Structures, Data Store, Data-oriented programming, Computational Logic, Scripting, Programming Principles, Computer Programming
Intermediate · Course · 1 - 4 Weeks

University of California, Irvine
Skills you'll gain: Linux, Linux Commands, Operating Systems, Embedded Software, Integrated Development Environments, File Systems, Internet Of Things, Command-Line Interface, Development Environment, System Configuration, Embedded Systems, Computing Platforms, Python Programming, OS Process Management, User Interface (UI), Computer Hardware, File Management, Scripting Languages, Programming Principles, Computer Programming
★ 4.7 (2.8K) · Mixed · Course · 1 - 4 Weeks
LearnQuest
Skills you'll gain: Java Programming, Spring Framework, Java, File I/O, Object Oriented Programming (OOP), Object Oriented Design, Java Platform Enterprise Edition (J2EE), Programming Principles, Software Design, Computer Programming, Application Frameworks, Data Structures, Software Installation, Virtual Machines, Code Reusability, Web Development, Package and Software Management, Memory Management, Computational Logic, Development Environment
★ 4.6 (2.8K) · Intermediate · Specialization · 3 - 6 Months
University of Michigan
Skills you'll gain: Web Scraping, Restful API, Web Services, JSON, Extensible Markup Language (XML), Network Protocols, Extensible Languages and XML, Application Programming Interface (API), Data Access, Hypertext Markup Language (HTML), Python Programming, Software Installation, Development Environment
★ 4.8 (45K) · Beginner · Course · 1 - 3 Months
University of California San Diego
Skills you'll gain: Design Research, Interaction Design, User Experience Design, Statistical Analysis, Usability, Experience Design, UI/UX Research, User Experience, Ideation, User Interface (UI), Graphic and Visual Design, Experimentation, Interactive Design, Human Computer Interaction, A/B Testing, Human Factors, Collaborative Software, Telecommuting, R Programming, Storyboarding
★ 4.5 (4K) · Intermediate · Specialization · 3 - 6 Months
University of Michigan
Skills you'll gain: Database Design, Data Store, Database Software, Relational Databases, SQL, Databases, Data Visualization Software, Web Scraping, Data Modeling, Object Oriented Programming (OOP), Data Processing, Python Programming, Application Programming Interface (API)
★ 4.8 (22K) · Beginner · Course · 1 - 3 Months
Skills you'll gain: Threat Modeling, Threat Management, Vulnerability Management, Cyber Threat Intelligence, Security Awareness, Cybersecurity, Vulnerability Assessments, Threat Detection, MITRE ATT&CK Framework, Data Security, Cyber Security Strategy, Cyber Risk, Authorization (Computing), Malware Protection, Authentications, Security Controls, Risk Management Framework, Identity and Access Management, Data Management, Cryptography
★ 4.8 (4.2K) · Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Integrated Development Environments, Development Environment, Java Programming, Computer Programming Tools, Software Development Tools, Program Development, Java, Debugging, Programming Principles, Code Reusability, Software Installation, Computer Programming, Object Oriented Programming (OOP), Computational Thinking, Data Structures, Computational Logic
Beginner · Course · 1 - 4 Weeks
Dartmouth College
Skills you'll gain: Memory Management, Command-Line Interface, C (Programming Language), Linux Commands, Linux, Computer Programming Tools, Embedded Systems, File I/O, Embedded Software, Software Visualization, Programming Principles, Computer Engineering, C and C++, Linux Servers, Algorithms, Computer Programming, Software Documentation, Computer Science, Software Engineering, Debugging
★ 4.6 (451) · Beginner · Specialization · 3 - 6 Months