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.

Chegg Skills
Skills you'll gain: Pseudocode, Python Programming, Programming Principles, Program Development, Data Structures, Data Storage, Computational Logic, Computational Thinking, IT Automation, Code Reusability, Computer Programming, Back-End Web Development, Debugging, Problem Solving, Data Management
Beginner · Course · 1 - 4 Weeks

Microsoft
Skills you'll gain: Git (Version Control System), GitHub, Version Control, Debugging, Object Oriented Programming (OOP), Unit Testing, Development Testing, Test Case, Programming Principles, Data Structures, Software Development Tools, Algorithms, Maintainability, Python Programming, Software Development, Package and Software Management, Computer Programming, Development Environment, Code Reusability, Scripting
★ 4.5 (614) · Beginner · Course · 1 - 3 Months
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 (453) · Beginner · Specialization · 3 - 6 Months

Edureka
Skills you'll gain: File I/O, C# (Programming Language), Object Oriented Design, Object Oriented Programming (OOP), Data Persistence, .NET Framework, Integrated Development Environments, Code Reusability, Programming Principles, Debugging, Program Development, Development Environment, Software Development, Mobile Development, Unit Testing, Git (Version Control System), Version Control, GitHub, Web Development, Problem Solving
Beginner · Course · 1 - 4 Weeks

The University of Edinburgh
Skills you'll gain: Video Game Development, Game Design, Program Development, Software Engineering, Programming Principles, Animation and Game Design, Software Development, Event-Driven Programming, Computer Programming, Computer Programming Tools, Code Reusability, No-Code Development, Computational Thinking, Algorithms, Animations
★ 4.7 (4K) · Beginner · Course · 1 - 3 Months

Microsoft
Skills you'll gain: Microsoft Visual Studio, R (Software), Debugging, R Programming, Data Structures, Microsoft Development Tools, Software Documentation, Programming Principles, Statistical Programming, Program Development, Code Reusability, Development Environment, Data Manipulation, Computational Logic, Software Installation
★ 5 (6) · Beginner · Course · 1 - 4 Weeks
Skills you'll gain: Unified Modeling Language, File I/O, System Programming, Visual Basic (Programming Language), Database Management, System Software, Hardware Architecture, Databases, Relational Databases, Algorithms, Computer Architecture, Network Security, Computer Hardware, Development Environment, Data Structures, Object Oriented Programming (OOP), Object Oriented Design, Program Development, Computer Programming, Microsoft Development Tools
★ 4.6 (175) · Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Java Programming, Development Environment, Program Development, Computer Programming, Programming Principles, Data Structures, Java, Integrated Development Environments, Maintainability, Code Reusability, Memory Management, Computational Logic, Debugging, Software Installation, Command-Line Interface, Problem Solving
Beginner · Course · 3 - 6 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, Programming Principles, Test Case, Software Documentation, Development Environment, Integrated Development Environments, Computer Programming, Data Structures, Apple Xcode, Web Development, Software Installation, Technical Documentation, Computational Thinking
★ 4.5 (19) · Intermediate · Specialization · 3 - 6 Months
University of California, Santa Cruz
Skills you'll gain: Algorithms
★ 4.6 (797) · Intermediate · Course · 1 - 3 Months

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

University of California, Santa Cruz
Skills you'll gain: File I/O, Debugging, Go (Programming Language), Programming Principles, C (Programming Language), Program Development, Data Structures, Computer Programming, C and C++, Algorithms
★ 3.9 (10) · Beginner · Course · 1 - 3 Months