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.

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
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, Algorithms, C (Programming Language), Programming Principles, Computer Programming, Graph Theory, Code Reusability, Memory Management, Data Structures, File I/O
Intermediate · Course · 1 - 3 Months
University of California, Santa Cruz
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Video Game Development, Game Design, Development Environment, UI Components, Data Structures, Computer Programming, Programming Principles, Program Development, Application Development, Scripting Languages, Computational Logic, Human Computer Interaction, Data Management
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
Beginner · Specialization · 3 - 6 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
Beginner · Specialization · 1 - 3 Months

Vanderbilt University
Skills you'll gain: File I/O, Code Reusability, Matlab, Computer Programming, Programming Principles, Program Development, Debugging, Mathematical Software, Development Environment, Computer Science, User Interface (UI), File Management, C (Programming Language), Data Structures, Computational Logic, Engineering Calculations, Plot (Graphics), Problem Solving
Beginner · Course · 1 - 3 Months

University of California, Santa Cruz
Skills you'll gain: Go (Programming Language), Data Structures, Object Oriented Design, Object Oriented Programming (OOP), Computer Programming, Unit Testing, Algorithms, C (Programming Language), Software Testing, Computer Science, Code Reusability, Graph Theory, Software Design
Intermediate · Course · 1 - 3 Months

Microsoft
Skills you'll gain: Version Control, GitHub, Debugging, Git (Version Control System), Unit Testing, Data Structures, Python Programming, Software Testing, Scripting, Code Reusability, Computer Programming, Web Development, Algorithms, Jupyter
Beginner · Course · 1 - 3 Months

University of Michigan
Skills you'll gain: C (Programming Language), Programming Principles, C and C++, C++ (Programming Language), Algorithms, Memory Management, Data Structures, Other Programming Languages, Numerical Analysis
Intermediate · Course · 1 - 4 Weeks

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, Scripting, Functional Design, Software Installation
Beginner · Course · 1 - 4 Weeks
University of Toronto
Skills you'll gain: Functional Design, Programming Principles, Debugging, File I/O, Software Documentation, Python Programming, Computer Programming, Program Development, Technical Documentation, Integrated Development Environments, Data Structures, Development Environment
Beginner · Course · 1 - 3 Months