University of California, Santa Cruz
Skills you'll gain: Go (Programming Language), Data Structures, C and C++, C (Programming Language), Programming Principles, Object Oriented Programming (OOP), Debugging, C++ (Programming Language), Computer Programming, Unit Testing, Integrated Development Environments, Computer Science, Pseudocode, Command-Line Interface, Algorithms, File Systems, Integration Testing, Software Design
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Object Oriented Programming (OOP), C++ (Programming Language), Data Structures, Software Design Patterns, Programming Principles, File Management, Algorithms, Simulations
Advanced · Course · 1 - 4 Weeks

École Polytechnique Fédérale de Lausanne
Skills you'll gain: Object Oriented Programming (OOP), C++ (Programming Language), C and C++, Object Oriented Design, Computer Programming, Software Design Patterns, Programming Principles, Debugging
Intermediate · Course · 1 - 3 Months

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

University of Geneva
Skills you'll gain: Data-oriented programming, Computational Thinking, Operating Systems
Intermediate · Course · 1 - 3 Months

Universidade de São Paulo
Skills you'll gain: Debugging, Computational Thinking, Programming Principles, Data Structures, Computer Programming, Program Development, Integrated Development Environments, Computer Science, Python Programming, Algorithms
Beginner · Course · 1 - 3 Months

University of London
Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), Computer Programming, Interactive Design, Program Development, Command-Line Interface
Build toward a degree
Intermediate · Course · 1 - 4 Weeks

Universidade de São Paulo
Skills you'll gain: Model View Controller, Unified Modeling Language, Object Oriented Programming (OOP), Software Design Patterns, Software Design, Java Programming, Computer Programming, Debugging, Software Architecture, Programming Principles, Other Programming Languages, Prototyping
Intermediate · Course · 1 - 3 Months
University of Michigan
Skills you'll gain: Programming Principles, Computer Programming, Python Programming, Software Installation, Computational Thinking, Development Environment
Mixed · Course · 1 - 3 Months

University of Illinois Urbana-Champaign
Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), Object Oriented Design, Development Environment, Engineering Software, Computer Programming, Data Structures, Debugging, Program Development
Intermediate · Course · 1 - 4 Weeks
University of California, Santa Cruz
Skills you'll gain: C (Programming Language), C++ (Programming Language), Debugging, Computer Programming, Data Structures, Object Oriented Programming (OOP), Command-Line Interface, File Systems
Intermediate · 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