Dartmouth College
Skills you'll gain: Command-Line Interface, C (Programming Language), Linux Commands, Linux, Embedded Systems, File I/O, Embedded Software, Software Visualization, Programming Principles, Computer Engineering, Linux Servers, File Systems, System Programming, Algorithms, Computer Architecture, Computer Programming, Software Documentation, Computer Science, Software Engineering, Debugging
Beginner · Specialization · 3 - 6 Months

The University of Edinburgh
Skills you'll gain: Game Design, Software Engineering, Programming Principles, Software Development, Software Design, Computer Programming, Computational Thinking, Debugging, Algorithms
Beginner · Course · 1 - 3 Months

Duke University
Skills you'll gain: Debugging, File I/O, Programming Principles, Maintainability, Software Testing, Program Development, C (Programming Language), Algorithms, Simulations, System Programming, Computer Programming, Data Structures, Software Development, Software Engineering, Command-Line Interface, Development Environment, User Interface (UI), Solution Design, Problem Solving, Software Design
Beginner · Specialization · 3 - 6 Months

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

Rice University
Skills you'll gain: Computational Thinking, Event-Driven Programming, Algorithms, Combinatorics, Graph Theory, Programming Principles, Application Development, Object Oriented Programming (OOP), Data Structures, Probability, Bioinformatics, Interactive Design, Program Development, Big Data, Python Programming, Data Analysis, User Interface (UI), Machine Learning Algorithms, Theoretical Computer Science, Computer Programming
Beginner · Specialization · 3 - 6 Months

National Taiwan University
Skills you'll gain: Programming Principles, Computer Programming, C (Programming Language), Data Structures, Computer Science, Algorithms, Computational Logic, Functional Specification, Command-Line Interface, Debugging, Data Validation
Mixed · Course · 1 - 3 Months

Skills you'll gain: Program Development, Programming Principles, Python Programming, Computer Programming, Computational Thinking, Problem Management, Data Structures, Integrated Development Environments, Debugging, Development Environment
Beginner · Course · 1 - 3 Months

University of Michigan
Skills you'll gain: Unified Modeling Language, JSON, Object Oriented Programming (OOP), File I/O, Software Design, Debugging, Object Oriented Design, Data Processing, Web Scraping, Unit Testing, Programming Principles, Program Development, Python Programming, Data Import/Export, Restful API, Image Analysis, Data Manipulation, Jupyter, Computer Programming, Data Structures
Beginner · Specialization · 3 - 6 Months

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Go (Programming Language), File I/O, Data Structures, Object Oriented Programming (OOP), Software Design Patterns, Debugging, Computer Programming, Unit Testing, Programming Principles, Algorithms, C (Programming Language), Integrated Development Environments, Graph Theory, Software Testing, Artificial Intelligence, Integration Testing, Software Design, System Design and Implementation, Game Design
Intermediate · Specialization · 3 - 6 Months

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

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

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Go (Programming Language), File I/O, Data Structures, Object Oriented Programming (OOP), Programming Principles, Software Design Patterns, Debugging, Computer Programming, Unit Testing, Algorithms, C (Programming Language), Integrated Development Environments, Graph Theory, Software Testing, Artificial Intelligence, Integration Testing, Software Design, System Design and Implementation, Software Documentation
Intermediate · Specialization · 3 - 6 Months