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.

Microsoft
Skills you'll gain: Debugging, R Programming, Data Structures, Software Documentation, Programming Principles, Code Reusability, Development Environment, Data Manipulation, Computational Logic
★ 5 (6) · Beginner · Course · 1 - 4 Weeks
University of California, Santa Cruz
Skills you'll gain: Algorithms
★ 4.6 (798) · Intermediate · Course · 1 - 3 Months

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

Vanderbilt University
Skills you'll gain: File I/O, Matlab, Programming Principles, Computer Programming, Code Reusability, Computational Logic, Computer Science, Data Import/Export, Debugging, Computer Programming Tools, File Management, Data Structures, Data Persistence, Plot (Graphics), Problem Solving
★ 4.8 (18K) · Beginner · Course · 1 - 3 Months

Duke University
Skills you'll gain: Debugging, Java, Algorithms, Java Programming, Program Development, Statistical Analysis, Software Design, Computer Programming, File I/O, Data Processing, Data Manipulation, Data Analysis, Descriptive Statistics, Software Testing, Problem Solving
★ 4.6 (8.1K) · Beginner · Course · 1 - 3 Months

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

Skills you'll gain: COBOL (Programming Language), Mainframe Computing, IBM DB2, Debugging, Mainframe Technologies, Job Control Language (JCL), Software Development, Performance Tuning, Development Testing, Maintainability, IBM WebSphere MQ, Program Development, Programming Principles, Computer Programming, Code Reusability, File I/O
★ 4.6 (192) · Intermediate · Course · 3 - 6 Months

Heriot-Watt University
Skills you'll gain: Object Oriented Programming (OOP), Java, Java Programming, Computer Programming, Application Development, Program Development, Programming Principles, Computational Logic, Software Development, Software Development Life Cycle
★ 4.9 (8) · Beginner · Course · 1 - 4 Weeks

JetBrains
Skills you'll gain: Object Oriented Design, File I/O, Data Structures, Python Programming, Programming Principles, Code Reusability, Computer Programming, Scripting, Data Processing, Code Review, NumPy, Development Environment, Integrated Development Environments, Computational Thinking, Software Installation, Numerical Analysis
★ 4.9 (146) · Beginner · Course · 1 - 3 Months

Duke University
Skills you'll gain: Programming Principles, Algorithms, C (Programming Language), Computer Programming, Problem Solving
★ 4.7 (7.1K) · Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Video Game Development, Game Design, Development Environment, UI Components, Data Structures, Computer Programming, Programming Principles, Computational Logic
Beginner · Course · 1 - 3 Months