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.

Duke University
Skills you'll gain: User Interface (UI), Computational Thinking, HTML and CSS, Interactive Design, Web Development, Web Design, Javascript, Event-Driven Programming, Computer Programming, Algorithms, Image Analysis, Web Applications, Cascading Style Sheets (CSS)
Beginner · Course · 1 - 4 Weeks
Rice University
Skills you'll gain: Event-Driven Programming, Application Development, Interactive Design, Graphical Tools, User Interface (UI), Animation and Game Design, Programming Principles, Computer Graphics, Python Programming, Game Design, Computer Programming
Mixed · Course · 1 - 3 Months

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), Object Oriented Design, Algorithms, C (Programming Language), Programming Principles, Computer Programming, Graph Theory, Data Structures
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, Programming Principles, Scripting, Computer Programming, Web Development, Algorithms, Program Development, Development Environment, Scripting Languages, Integrated Development Environments, Object Oriented Programming (OOP), Jupyter
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, Graph Theory, Artificial Intelligence, Data Structures, Game Design
Intermediate · Course · 1 - 3 Months
École Polytechnique Fédérale de Lausanne
Skills you'll gain: Scala Programming, Programming Principles, Object Oriented Programming (OOP), Functional Design, Software Design Patterns, Computer Programming, Data Structures, Integrated Development Environments, Javascript, Algorithms, Computational Thinking
Intermediate · Course · 1 - 3 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, Debugging
Build toward a degree
Beginner · Course · 1 - 4 Weeks
Codio
Skills you'll gain: Apache Maven, JSON, JUnit, Java Programming, Java, Restful API, Integrated Development Environments, Programming Principles, Package and Software Management, Data Structures, Object Oriented Programming (OOP), Network Protocols, Unit Testing, Style Guides
Intermediate · Course · 1 - 4 Weeks

Duke University
Skills you'll gain: Event-Driven Programming, Animation and Game Design, Game Design, Storyboarding, 3D Assets, Programming Principles, Computer Graphics, Computer Programming, Scripting
Beginner · Course · 1 - 3 Months

University of California, Santa Cruz
Skills you'll gain: Debugging, Go (Programming Language), C (Programming Language), Integrated Development Environments, Data Structures, File Systems, Computer Programming, Algorithms
Beginner · Course · 1 - 3 Months

Dartmouth College
Skills you'll gain: C (Programming Language), Software Documentation, Programming Principles, Computer Programming, Embedded Software, Human Computer Interaction, Debugging, Development Environment, Engineering Calculations
Beginner · Course · 1 - 3 Months
University of California, Santa Cruz
Skills you'll gain: C (Programming Language), C++ (Programming Language), Debugging, Computer Programming, Data Structures, Object Oriented Programming (OOP), Command-Line Interface, File Systems
Intermediate · Course · 1 - 3 Months