University of California, Santa Cruz
Skills you'll gain: Programming Principles, Software Documentation
Beginner · Course · 1 - 3 Months

University of Michigan
Skills you'll gain: C (Programming Language), C++ (Programming Language), Object Oriented Programming (OOP), Data Structures, Programming Principles, Algorithms, Computer Programming, Software Design, Application Security, Other Programming Languages, Python Programming, Java Programming, System Programming, Computer Architecture, Performance Tuning, Unix, Computer Science, Debugging
Intermediate · 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

Skills you'll gain: Object Oriented Programming (OOP), Unit Testing, Test Driven Development (TDD), Programming Principles, Software Testing, Data Structures, Python Programming, Program Development, Computer Programming, Development Environment, Integrated Development Environments, Debugging, Algorithms, Django (Web Framework), Cloud Hosting
Beginner · Course · 1 - 3 Months

University of Pennsylvania
Skills you'll gain: File I/O, Matplotlib, Object Oriented Design, Java, Object Oriented Programming (OOP), Data Analysis, Unit Testing, Pandas (Python Package), Java Programming, Eclipse (Software), Application Development, Data Visualization, Data Structures, Data Science, Data Cleansing, Debugging, Programming Principles, Computer Programming Tools, Python Programming, 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

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), Program Development, Integrated Development Environments, Graph Theory, Software Testing, Artificial Intelligence, Integration Testing, Software Design, Software Documentation
Intermediate · Specialization · 3 - 6 Months

University of Michigan
Skills you'll gain: C (Programming Language), Programming Principles, C++ (Programming Language), Algorithms, Data Structures, Other Programming Languages, System Programming
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Data Persistence, File I/O, C (Programming Language), Debugging, Computational Thinking, Programming Principles, Program Development, Application Design, Command-Line Interface, Algorithms
Mixed · Course · 1 - 4 Weeks

University of London
Skills you'll gain: Pseudocode, C++ (Programming Language), Object Oriented Programming (OOP), C and C++, File I/O, Object Oriented Design, Integrated Development Environments, Computer Programming, Development Environment, Programming Principles, Debugging, Data Structures, Program Development, Algorithms, Interactive Design, Model Evaluation, Software Engineering, Test Data, Data Validation, Command-Line Interface
Build toward a degree
Intermediate · Specialization · 1 - 3 Months

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
Beginner · Course · 1 - 4 Weeks
University of California, Santa Cruz
Intermediate · Course · 1 - 3 Months