
Scrimba
Skills you'll gain: Object Oriented Programming (OOP), File I/O, Data Structures, Python Programming, Programming Principles, Computer Programming, Computational Logic, Software Engineering, Performance Tuning, Web Development, Performance Testing, Web Development Tools, Debugging, Software Development
★ 4.6 (64) · Beginner · Specialization · 1 - 4 Weeks

Skills you'll gain: Algorithms, Graph Theory, Data Structures, C++ (Programming Language), C and C++, Programming Principles, Computer Programming, Object Oriented Programming (OOP), Theoretical Computer Science
★ 4.6 (16) · Intermediate · Specialization · 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

Skills you'll gain: Data Structures, Graph Theory, Algorithms, Java, Java Programming, Data Management, Secure Coding, Theoretical Computer Science, Programming Principles, Other Programming Languages, Performance Tuning
★ 3.6 (13) · Intermediate · Specialization · 1 - 3 Months

Stanford University
Skills you'll gain: Data Structures, Graph Theory, Algorithms, Bioinformatics, Theoretical Computer Science, Social Network Analysis, Network Analysis, Network Routing, Computational Thinking, Mathematical Theory & Analysis, Analysis, Computer Science, Probability & Statistics, Probability, Design Strategies
★ 4.8 (6K) · Intermediate · Specialization · 3 - 6 Months

The Hong Kong University of Science and Technology
Skills you'll gain: Cryptography, Algorithms, Encryption, Theoretical Computer Science, Combinatorics, Arithmetic, Applied Mathematics, Logical Reasoning
Beginner · Course · 1 - 3 Months

Skills you'll gain: File I/O, Object Oriented Programming (OOP), Object Oriented Design, Code Reusability, Python Programming, Programming Principles, Data Dictionary, Computer Programming, File Systems, Data Structures, Computational Logic, Command-Line Interface, Data Cleansing, Functional Design, Scripting, Package and Software Management, Development Environment, File Management, UI Components, Verification And Validation
★ 4.8 (59) · Beginner · Specialization · 3 - 6 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

Skills you'll gain: Data Structures, Algorithms, Javascript, Code Reusability, Programming Principles, Development Environment, Computer Programming, Application Programming Interface (API), Debugging, Hypertext Markup Language (HTML), HTML and CSS, Theoretical Computer Science, Computational Thinking, Performance Tuning, Data Management, Cascading Style Sheets (CSS)
Beginner · Specialization · 1 - 3 Months

Skills you'll gain: Swift Programming, Apple iOS, iOS Development, Unit Testing, Apple Xcode, Development Testing, Authorization (Computing), Test Case, Mobile Development, Software Testing, Object Oriented Programming (OOP), Data Structures, Object Oriented Design, Application Development, Functional Design
★ 4.7 (92) · Intermediate · Course · 1 - 4 Weeks

Princeton University
Skills you'll gain: Theoretical Computer Science, Data Structures, Computer Science, Computer Architecture, Computer Systems, Algorithms, Computer Programming, Computational Logic, Java Programming, Computer Hardware, Scalability
★ 4.7 (762) · Intermediate · Course · 1 - 3 Months

Skills you'll gain: Data Structures, Algorithms, Python Programming, Computer Programming, Computational Thinking, Data Processing, Data Analysis Expressions (DAX), Data Analysis
Intermediate · Course · 1 - 3 Months