Free programming courses can help you learn coding languages like Python, JavaScript, and Ruby, along with foundational concepts such as algorithms and data structures. You can build practical skills in web development, software debugging, and creating applications, which are crucial for tackling real-world challenges.

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

Birla Institute of Technology & Science, Pilani
Skills you'll gain: C (Programming Language), Programming Principles, Computer Programming, Memory Management, Computational Thinking, Computer Systems, Data Structures, Algorithms, File I/O, Operating Systems, Computer Hardware
★ 4.5 (56) · Beginner · Course · 1 - 3 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: Memory Management, C (Programming Language), C and C++, C++ (Programming Language), Object Oriented Programming (OOP), Object Oriented Design, Programming Principles, Data Structures, Secure Coding, Algorithms, Software Design, Application Security, Other Programming Languages, Python Programming, System Programming, Computer Architecture, Computer Programming, Java, Performance Tuning, Numerical Analysis
★ 4.5 (246) · Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Python Programming, Computational Thinking, Programming Principles, Computer Programming, Object Oriented Programming (OOP), Program Development, Code Reusability, Data Structures, Data Processing, Data Manipulation, Development Environment
Beginner · Course · 1 - 3 Months

Skills you'll gain: Object Oriented Programming (OOP), Unit Testing, Test Driven Development (TDD), Test Script Development, Programming Principles, Software Testing, Data Structures, Python Programming, Program Development, Computer Programming, Development Environment, Debugging, Django (Web Framework), Functional Design, Package and Software Management, Cloud Hosting
★ 4.6 (1.8K) · Beginner · Course · 1 - 3 Months

Pearson
Skills you'll gain: System Programming, Rust (Programming Language), Data Structures, Memory Management, Relational Databases, Other Programming Languages, Databases, Data Access, C (Programming Language), Programming Principles, Application Development, Code Reusability, Object Oriented Programming (OOP), C++ (Programming Language), Interoperability, Systems Integration, File I/O, Command-Line Interface, Software Development, Data Import/Export
★ 3.9 (8) · Beginner · Specialization · 1 - 3 Months

Packt
Skills you'll gain: Python Programming, Development Environment, Debugging, Programming Principles, Data Structures, Computer Programming, Automation
Beginner · Course · 1 - 3 Months

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Go (Programming Language), File I/O, Data Structures, C and C++, Object Oriented Programming (OOP), Object Oriented Design, Programming Principles, Software Design Patterns, Debugging, Computer Programming, Unit Testing, C (Programming Language), Software Design, Program Development, Algorithms, Graph Theory, Software Testing, Computer Science, Computational Logic
★ 4.5 (9.6K) · Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: File I/O, Python Programming, Scripting, Programming Principles, Code Reusability, Scripting Languages, Computer Programming, File Management, Computational Logic, Data Structures, Context Management
Beginner · Course · 3 - 6 Months

Skills you'll gain: Software Installation, Python Programming, Data Structures, Data Processing, Programming Principles, Scripting Languages, Scripting, Development Environment, Computer Programming, Code Reusability, Functional Testing, Debugging, Problem Solving
Beginner · Course · 1 - 3 Months

Skills you'll gain: Object Oriented Programming (OOP), Object Oriented Design, C# (Programming Language), Debugging, Programming Principles, Computer Programming, Development Environment, .NET Framework, Microsoft Development Tools, Code Reusability, Microsoft Visual Studio, Program Development, Integrated Development Environments, Computer Programming Tools, Application Development, Data Structures, Application Frameworks, Software Installation, Problem Solving
Beginner · Course · 1 - 3 Months