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.

The Hong Kong University of Science and Technology
Skills you'll gain: Computational Thinking, Animations, Video Game Development, Programming Principles, Computer Programming, Storytelling, Coordination
★ 4.4 (117) · Beginner · Course · 1 - 3 Months

Simplilearn
Skills you'll gain: Object Oriented Programming (OOP), Programming Principles, Code Reusability, Application Development, Python Programming, Computer Programming, Development Environment, Computational Logic, Integrated Development Environments, Software Installation
★ 3.6 (14) · Beginner · Course · 1 - 4 Weeks

Northeastern University
Skills you'll gain: Object Oriented Programming (OOP), Python Programming, Programming Principles, Computer Programming, Development Environment, Software Installation, Program Development
★ 4.1 (13) · Beginner · Course · 1 - 3 Months

Universidad ORT Uruguay
Skills you'll gain: Code Reusability, Video Game Development, Software Engineering, Program Development, Programming Principles, Software Testing, Software Development, Event-Driven Programming, Computer Programming
★ 4.8 (2.7K) · Beginner · Course · 1 - 3 Months

University of Michigan
Skills you'll gain: Debugging, Unit Testing, Relational Databases, Object Oriented Programming (OOP), Data Visualization, Web Scraping, Database Management, Scatter Plots, Data Structures, Data Manipulation, SQL, File I/O, Python Programming, Computer Programming, JSON, Application Programming Interface (API), Development Environment, Technical Communication, Program Development, Diversity and Inclusion
★ 3.9 (19) · Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Programming Principles, Software Visualization, Program Development, Theoretical Computer Science, Front-End Web Development, Software Development Tools, Java Programming, Build Tools, Debugging, Data Structures, Java, Requirements Analysis
Beginner · Course · 1 - 3 Months

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Software Design Patterns, Object Oriented Programming (OOP), Computer Programming, C (Programming Language), Algorithms, Memory Management, Graph Theory, Artificial Intelligence
★ 4.5 (337) · Intermediate · Course · 1 - 3 Months

Skills you'll gain: Memory Management, Program Development, Computer Programming Tools, Integrated Development Environments, Virtual Machines, Development Environment, Language Learning, Java Programming, Java, Identity and Access Management, Program Management
Intermediate · Course · 1 - 3 Months

Packt
Skills you'll gain: Ruby (Programming Language), File I/O, Object Oriented Programming (OOP), Ruby on Rails, Debugging, Test Tools, Application Design, Code Reusability, Software Documentation, Development Environment, Computer Programming, Programming Principles, Data Structures, Apple Xcode, Web Development, Software Installation, Technical Documentation, Package and Software Management, Command-Line Interface
★ 4.5 (19) · Intermediate · Specialization · 3 - 6 Months

University of Michigan
Skills you'll gain: Object Oriented Programming (OOP), Object Oriented Design, Animations, Data Structures, Interactive Design, Programming Principles, Graphic and Visual Design, Python Programming, Simulations, Computer Graphics, Design, Computational Logic, Computer Graphic Techniques, Creative Design, Computational Thinking, File I/O, Scripting, Algorithms
★ 5 (8) · Beginner · Specialization · 3 - 6 Months

École Polytechnique Fédérale de Lausanne
Skills you'll gain: Scala Programming, Data Validation, Object Oriented Programming (OOP), Build Tools, Programming Principles, Software Testing, Data Structures, Data Modeling
★ 4.6 (178) · Intermediate · Course · 1 - 3 Months

International Institute of Information Technology Bangalore
Skills you'll gain: File I/O, C (Programming Language), Memory Management, Programming Principles, Data Structures, Computer Programming, Problem Solving
★ 4.8 (8) · Beginner · Course · 1 - 3 Months