
Duke University
Skills you'll gain: Programming Principles, Algorithms, C (Programming Language), Computer Programming, Program Development, Problem Solving, Solution Design, Computational Logic
★ 4.7 (7K) · Beginner · Course · 1 - 4 Weeks

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Object Oriented Design, Software Design Patterns, Object Oriented Programming (OOP), Software Design, C (Programming Language), Algorithms, Memory Management, Graph Theory, Artificial Intelligence, Data Structures, Simulations
★ 4.5 (336) · Intermediate · Course · 1 - 3 Months

University of Washington
Skills you'll gain: Ruby (Programming Language), Other Programming Languages, Object Oriented Programming (OOP), Object Oriented Design, Computer Programming, Programming Principles, Functional Design, Computational Thinking, Code Reusability
★ 4.9 (463) · Mixed · Course · 1 - 3 Months

Skills you'll gain: File I/O, C and C++, Data Import/Export, C++ (Programming Language), Object Oriented Programming (OOP), Object Oriented Design, Data Validation, Programming Principles, Computer Programming, Data Integrity, Data Structures, Code Reusability, File Management, Memory Management, Software Documentation, Computer Science, Maintainability, Computational Logic, Data Storage
★ 4.6 (1.3K) · Beginner · Specialization · 3 - 6 Months

Peking University
Skills you'll gain: C (Programming Language), Programming Principles, Computer Science, Computer Architecture, Program Development, Memory Management, Computational Logic, Theoretical Computer Science, Computer Programming, Computer Hardware, Quantum computing
★ 4.8 (1.7K) · Mixed · Course · 3 - 6 Months

Dartmouth College
Skills you'll gain: Memory Management, C (Programming Language), Embedded Systems, Software Visualization, Computer Engineering, Embedded Software, System Programming, Computer Programming, Data Structures, Linux
★ 4.7 (66) · Beginner · Course · 1 - 3 Months

Skills you'll gain: Embedded Software, Embedded Systems, C and C++, C++ (Programming Language), Object Oriented Design, Object Oriented Programming (OOP), Development Testing, System Programming, C (Programming Language), Development Environment, Verification And Validation, Integrated Development Environments, Computer Programming Tools, Code Reusability, System Configuration, Peripheral Devices, Software Installation
Intermediate · Course · 1 - 3 Months

Coursera
Skills you'll gain: Data Science, Web Applications, Python Programming, Data Analysis, Programming Principles, Artificial Intelligence, Computer Programming, Game Design
★ 4.5 (2.2K) · Beginner · Guided Project · Less Than 2 Hours

University of London
Skills you'll gain: Debugging, Development Environment, Javascript, Computer Programming Tools, Computer Graphics, Software Development Tools, Computer Programming, Graphical Tools, Interactive Design, Human Computer Interaction, Data Management
★ 4.1 (932) · Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Memory Management, Computational Thinking
Intermediate · Course · 1 - 3 Months

Duke University
Skills you'll gain: C (Programming Language), Data Structures, C and C++, Programming Principles, Algorithms, Memory Management
★ 4.3 (349) · Beginner · Course · 1 - 3 Months

Peking University
Skills you'll gain: C# (Programming Language), Object Oriented Programming (OOP), C++ (Programming Language), Object Oriented Design, Microsoft Visual Studio, Computer Programming, Java, Extensible Languages and XML, Extensible Markup Language (XML), Event-Driven Programming, C (Programming Language), Programming Principles, User Interface (UI), Data Access, UI Components, Database Management, Network Model, Program Development, Data Structures, Computer Graphics
★ 4.5 (53) · Intermediate · Course · 3 - 6 Months