Dartmouth College
Skills you'll gain: Memory Management, Command-Line Interface, C (Programming Language), Linux Commands, Linux, Computer Programming Tools, Embedded Systems, File I/O, Embedded Software, Software Visualization, Programming Principles, Computer Engineering, C and C++, Linux Servers, Algorithms, Computer Programming, Software Documentation, Computer Science, Software Engineering, Debugging
★ 4.6 (440) · Beginner · Specialization · 3 - 6 Months
Skills you'll gain: Unified Modeling Language, File I/O, System Programming, Visual Basic (Programming Language), System Software, Hardware Architecture, Databases, Relational Databases, Algorithms, Computer Architecture, Network Security, Computer Hardware, SQL, Development Environment, Data Structures, Object Oriented Programming (OOP), Object Oriented Design, Program Development, Computer Programming, Microsoft Development Tools
★ 4.6 (169) · Beginner · Specialization · 3 - 6 Months

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), C and C++, Object Oriented Programming (OOP), Object Oriented Design, Programming Principles, Software Design Patterns, Computer Programming, Algorithms, C (Programming Language), Software Design, Program Development, Graph Theory, Code Reusability, Computational Logic, Artificial Intelligence, Data Structures, Memory Management, File I/O, Simulations
★ 4.5 (9.6K) · Beginner · Specialization · 3 - 6 Months

University of Michigan
Skills you'll gain: Object Oriented Programming (OOP), Object Oriented Design, Animations, Software Design, Data Structures, Visualization (Computer Graphics), Interactive Design, Programming Principles, Computer Graphic Techniques, Python Programming, Graphic and Visual Design, Event-Driven Programming, Digital Design, Simulations, Computer Graphics, Design, Graphical Tools, Game Design, Computational Logic, Computational Thinking
★ 5 (7) · Beginner · Specialization · 3 - 6 Months

Simplilearn
Skills you'll gain: Data Structures, C (Programming Language), C and C++, Programming Principles, Data Management, Memory Management, Algorithms, Computer Programming, File I/O, File Management, Other Programming Languages, Development Environment
★ 4.5 (24) · Beginner · Course · 1 - 4 Weeks

Duke University
Skills you'll gain: Debugging, File I/O, Memory Management, Programming Principles, Maintainability, Software Testing, Program Development, C (Programming Language), Algorithms, Test Planning, Simulations, Test Case, System Programming, Systems Development Life Cycle, Computer Programming, Data Structures, C and C++, Software Engineering, Problem Solving, Software Design
★ 4.6 (7.4K) · Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Object Oriented Programming (OOP), C++ (Programming Language), Data Presentation, Scientific Visualization, Application Development, Object Oriented Design, Data Visualization Software, Statistical Visualization, Plot (Graphics), Application Design, Visualization (Computer Graphics), Programming Principles, Data Visualization, Graphical Tools, C and C++, Computational Thinking, Computer Graphic Techniques, Program Development, Graphic and Visual Design, Software Visualization
★ 2.8 (6) · Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Video Game Development, Game Design, Development Environment, UI Components, Data Structures, Computer Programming, Programming Principles, Program Development, Application Development, Scripting Languages, Computational Logic, Human Computer Interaction, Data Management
Beginner · Course · 1 - 3 Months
University of California, Santa Cruz
Skills you'll gain: Programming Principles, Program Development, Computational Logic, Memory Management
★ 4.5 (6.8K) · Beginner · Course · 1 - 3 Months

Logical Operations
Skills you'll gain: Object Oriented Programming (OOP), Object Oriented Design, Data Structures, File I/O, Debugging, Data Processing, Application Development, Code Reusability, Maintainability, File Management, File Systems, Programming Principles, Computer Programming, Python Programming, System Configuration, Operating Systems, Software Development, Virtual Machines, Cross Platform Development
★ 4.5 (12) · Beginner · Specialization · 1 - 3 Months

Princeton University
Skills you'll gain: Programming Principles, Computer Programming, Object Oriented Design, Object Oriented Programming (OOP), Data Structures, Code Reusability, Java Programming, Java, Program Development, File I/O, Computational Thinking, Computer Science, Algorithms, Theoretical Computer Science, Animations, Simulations
★ 4.7 (1.4K) · Beginner · Course · 1 - 3 Months

Vanderbilt University
Skills you'll gain: File I/O, Code Reusability, Matlab, Computer Programming, Programming Principles, Program Development, Debugging, Mathematical Software, Development Environment, Computer Science, User Interface (UI), File Management, C (Programming Language), Data Structures, Computational Logic, Engineering Calculations, Plot (Graphics), Problem Solving
★ 4.8 (18K) · Beginner · Course · 1 - 3 Months