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: Debugging, Program Development, Data Structures, Python Programming, Scripting, Programming Principles, Computer Programming, Scripting Languages
Beginner Ā· Course Ā· 1 - 3 Months

Universidad Nacional de Colombia
Skills you'll gain: Program Development, Computer Programming, Computational Thinking, Logical Reasoning
Intermediate Ā· Course Ā· 1 - 3 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

University of California, Irvine
Skills you'll gain: Embedded Software, Embedded Systems, Debugging, C (Programming Language), Electronic Components, Computer Hardware, Integrated Development Environments, Programming Principles, Computer Programming, Electronics Engineering, Program Development, Development Environment, Digital Communications, Open Source Technology
Mixed Ā· Course Ā· 1 - 4 Weeks

Skills you'll gain: Musical Composition, Music, Computer Programming, Program Development, Programming Principles, Python Programming
Beginner Ā· Guided Project Ā· Less Than 2 Hours

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

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: User Experience Design, User Interface and User Experience (UI/UX) Design, User Experience, Design Research, Linux Commands, User Centered Design, Debugging, User Interface (UI), UI Components, Software Versioning, Software Visualization, Web Content Accessibility Guidelines, Pseudocode, JavaScript Frameworks, Javascript, Web Applications, Cascading Style Sheets (CSS), Unit Testing, Application Development, API Design
Build toward a degree
Beginner Ā· Professional Certificate Ā· 3 - 6 Months

Skills you'll gain: Grafana, Visualization (Computer Graphics), Real Time Data, Computer Vision
Intermediate Ā· Course Ā· 1 - 3 Months

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

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