Free Online Programming Courses
- 51 courses
- 40 free
- 11 free to audit
- 21 with a free certificate
Sources: freeCodeCamp, Harvard, edX, IBM and more · Verified
A free programming course teaches you to write instructions a computer can run: variables, control flow, functions, data structures, and how to find and fix your own mistakes. Beginner courses usually pick a single language and stay with it; intermediate courses turn to web development, object-oriented design, algorithms or working with data. Programming is a subject where fully free courses with free certificates are common. Non-profit coding curricula are free in full, project-based, and issue verifiable certificates at no cost. Some university introductions are also free in full, including a free certificate on the university's own site, while the same course on edX is free to audit with a paid certificate.
Company academies publish free tutorials tied to their own tools. When reading a syllabus, look for the language and version, for the proportion of exercises to video, for projects you can show later, and for whether an editor or environment is provided in the browser. Programming suits career changers, students who want to test the subject before choosing a degree, analysts who need to automate work, and anyone curious about how software is built. Python and computer science have their own pages on this site: the former for courses built around that language, the latter for the theory that sits beneath programming.
Our three picks
Filters
| # | Course | Provider | Cost | Certificate | Level | Duration | Open |
|---|---|---|---|---|---|---|---|
| 1 | CS50's Web Programming with Python and JavaScript CS50's Web Programming with Python and JavaScript continues from CS50x into building and deploying web applications. | Harvard | Free | IncludedCertificate included | Intermediate | 9 weeks | |
| 2 | CS50's Introduction to Databases with SQL CS50's Introduction to Databases with SQL teaches relational databases from the ground up. | Harvard | Free | IncludedCertificate included | Beginner | 7 weeks | |
| 3 | CS50's Introduction to Programming with R CS50's Introduction to Programming with R teaches programming through R, the language widely used for statistical com… | Harvard | Free | IncludedCertificate included | — | 7 weeks | |
| 4 | CS50's Introduction to Programming with Scratch CS50's Introduction to Programming with Scratch teaches the fundamentals of programming through Scratch, the block-ba… | Harvard | Free | IncludedCertificate included | Beginner | 9 weeks | |
| 5 | CS106A - Programming Methodology Programming Methodology is Stanford's introductory programming course, released in full on Stanford Engineering Every… | Stanford | Free | NoneNo certificate | — | — | |
| 6 | CS106B - Programming Abstractions Programming Abstractions is the second course in Stanford's CS106 sequence, taught here by Julie Zelenski and publish… | Stanford | Free | NoneNo certificate | — | — | |
| 7 | Computer Science: Programming with a Purpose Computer Science: Programming with a Purpose is Robert Sedgewick and Kevin Wayne's introductory programming course, b… | Princeton | Free | NoneNo certificate | Beginner | — | |
| 8 | CS107 - Programming Paradigms Programming Paradigms is Jerry Cain's Stanford course on how different languages think, published in full on Stanford… | Stanford | Free | NoneNo certificate | — | — | |
| 9 | Software Construction in Java 6.005.1x Software Construction in Java is the first of a two-course MITx sequence on writing good software with moder… | MIT | Free | NoneNo certificate | — | 14 weeks | |
| 10 | Responsive Web Design Certification freeCodeCamp's entry point to web development and the first certification in its current Full-Stack Developer curricu… | freeCodeCamp | Free | IncludedCertificate included | — | — | |
| 11 | JavaScript Certification The second certification in freeCodeCamp's Full-Stack Developer curriculum and, at 235 blocks, its largest. | freeCodeCamp | Free | IncludedCertificate included | — | — | |
| 12 | Front-End Development Libraries Certification The third certification in freeCodeCamp's Full-Stack Developer curriculum covers the libraries developers use to buil… | freeCodeCamp | Free | IncludedCertificate included | — | — | |
| 13 | Relational Databases Certification The fundamentals of relational databases, taught alongside the command-line tools developers use with them. | freeCodeCamp | Free | IncludedCertificate included | — | — | |
| 14 | Back-End Development and APIs Certification This certification moves JavaScript to the server. | freeCodeCamp | Free | IncludedCertificate included | — | — | |
| 15 | Full-Stack Developer Certification The capstone of freeCodeCamp's current curriculum. | freeCodeCamp | Free | IncludedCertificate included | — | — | |
| 16 | Foundational C# with Microsoft Certification A certification developed with Microsoft and listed by freeCodeCamp under its professional certifications. | freeCodeCamp | Free | IncludedCertificate included | — | — | |
| 17 | Computer programming - JavaScript and the web This Khan Academy course teaches programming through eight units built around the browser. | Khan Academy | Free | NoneNo certificate | — | — | |
| 18 | GitHub Foundations Part 1 of 2 GitHub Foundations Part 1 of 2 is a Microsoft Learn learning path that introduces Git and GitHub from scratch. | Microsoft | Free | NoneNo certificate | — | 6.7 hours | |
| 19 | Code Yourself! An Introduction to Programming Code Yourself! | Coursera | Free | PaidPaid certificate | Beginner | 1 week | |
| 20 | HTML5 and CSS Fundamentals HTML5 and CSS Fundamentals is the World Wide Web Consortium's own introductory course on building web pages, offered… | edX | Free to audit | PaidPaid certificate | Beginner | 6 weeks | |
| 21 | JavaScript Introduction JavaScript Introduction is W3C's beginner course in the language that adds interactivity to web pages, developed with… | edX | Free to audit | PaidPaid certificate | Beginner | 5 weeks | |
| 22 | CSS Basics CSS Basics is a World Wide Web Consortium course on edX about styling web pages with CSS, taking pages, as the page p… | edX | Free to audit | PaidPaid certificate | Beginner | 5 weeks | |
| 23 | HTML5 Coding Essentials and Best Practices HTML5 Coding Essentials and Best Practices is W3C's intermediate HTML5 course on edX. | edX | Free to audit | PaidPaid certificate | Intermediate | 6 weeks | |
| 24 | Introduction to Web Accessibility Introduction to Web Accessibility is the World Wide Web Consortium's foundation course on making websites and apps us… | edX | Free to audit | PaidPaid certificate | Beginner | 4 weeks | |
| 25 | Amazon Q Developer Knowledge Badge Readiness Path The Amazon Q Developer Knowledge Badge Readiness Path is a ten-training Skill Builder learning plan of 5 hours 25 min… | AWS | Free | IncludedCertificate included | — | 5.4 hours | |
| 26 | Application Security for Developers and DevOps Professionals Application Security for Developers and DevOps Professionals, course code CS0201EN, is an intermediate Cognitive Clas… | IBM | Free | IncludedCertificate included | Intermediate | 17 hours | |
| 27 | CS50's Introduction to Computer Science CS50x is Harvard's entry-level course in computer science and programming, open to people with or without prior codin… | Harvard | Free | IncludedCertificate included | Beginner | 11 weeks | |
| 28 | CS50's Introduction to Programming with Python CS50P teaches programming through Python alone, for people with or without prior experience. | Harvard | Free | IncludedCertificate included | Beginner | 10 weeks | |
| 29 | Docker Essentials: A Developer Introduction Docker Essentials: A Developer Introduction, course code CO0101EN, is a compact, lab-driven introduction to containers. | IBM | Free | IncludedCertificate included | Beginner | 3 hours | |
| 30 | Information Security Certification A practical introduction to protecting people's information online, in three blocks. | freeCodeCamp | Free | IncludedCertificate included | — | — | |
| 31 | Python Certification freeCodeCamp's current Python certification, one of the six that make up its Full-Stack Developer curriculum, teaches… | freeCodeCamp | Free | IncludedCertificate included | — | — | |
| 32 | Python for Data Science Python for Data Science, course code PY0101EN and long known as Python 101, is Cognitive Class's entry-level Python c… | IBM | Free | IncludedCertificate included | Beginner | 18 hours | |
| 33 | Scientific Computing with Python Certification A project-led Python course in which every concept is taught by building something. | freeCodeCamp | Free | IncludedCertificate included | — | — | |
| 34 | SQL and Relational Databases 101 SQL and Relational Databases 101, course code DB0101EN, is a short introduction to querying data with SQL and to the… | IBM | Free | IncludedCertificate included | Beginner | 5 hours | |
| 35 | Introduction to Python A first Python course that avoids local installation: the instructor uses the online tool Repl.it so you can run code… | Alison | Free | PaidPaid certificate | Beginner | — | |
| 36 | Learn to Program: The Fundamentals Learn to Program: The Fundamentals is the University of Toronto's introduction to programming in Python, hosted on Co… | Coursera | Free | PaidPaid certificate | Beginner | 3 weeks | |
| 37 | Algorithms, Part I Algorithms, Part I is the first half of Robert Sedgewick and Kevin Wayne's Princeton course on the algorithms and dat… | Princeton | Free | NoneNo certificate | Intermediate | 5 weeks | |
| 38 | Algorithms, Part II Algorithms, Part II continues Robert Sedgewick and Kevin Wayne's Princeton course and focuses on graph- and string-pr… | Princeton | Free | NoneNo certificate | Intermediate | 6 weeks | |
| 39 | AP®︎/College Computer Science Principles Khan Academy's AP/College Computer Science Principles course follows the topics of the AP CSP curriculum across ten u… | Khan Academy | Free | NoneNo certificate | — | — | |
| 40 | Get Started with Python Programming: Part 1 - Fundamentals This learning path is the first half of Microsoft's two-part introduction to Python programming. | Microsoft | Free | NoneNo certificate | Beginner | 3.2 hours | |
| 41 | Introduction to Algorithms 6.006 is MIT's introductory algorithms course, and the spring 2020 edition taught by Erik Demaine, Jason Ku and Justi… | MIT | Free | NoneNo certificate | — | — | |
| 42 | Introduction to Computer Science and Programming in Python 6.0001 is MIT's fall 2016 half-semester introduction to programming for students with little or no prior experience… | MIT | Free | NoneNo certificate | — | — | |
| 43 | Learn Python for Total Beginners A longer introduction to Python that works through the language's building blocks in order and then puts them to use… | Udemy | Free | NoneNo certificate | Beginner | 5.6 hours | |
| 44 | Python for Absolute Beginners – A Free 2-Hour Crash Course This short course takes a complete beginner from installing Python to writing small scripts. | Udemy | Free | NoneNo certificate | Beginner | 1.8 hours | |
| 45 | Query and modify data with Transact-SQL This learning path teaches Transact-SQL, the dialect of SQL used by SQL Server and Azure SQL, from the first SELECT s… | Microsoft | Free | NoneNo certificate | Beginner | 5.8 hours | |
| 46 | Algorithms: Design and Analysis, Part 1 Algorithms: Design and Analysis, Part 1 is Tim Roughgarden's StanfordOnline course on edX, the first half of a two-pa… | Stanford | Free to audit | PaidPaid certificate | Intermediate | 6 weeks | |
| 47 | Data Science: R Basics Data Science: R Basics is the first course in HarvardX's Professional Certificate in Data Science and introduces the… | Harvard | Free to audit | PaidPaid certificate | Beginner | 8 weeks | |
| 48 | Introduction to Computer Science & Programming Using Python 6.00.1x is the MITx Online version of MIT's introductory programming course, the first of a two-course sequence that… | MIT | Free to audit | PaidPaid certificate | — | 9 weeks | |
| 49 | Introduction to Python Introduction to Python is a seven-week BerkeleyX course taught by lecturer Michael Ball and forms part of UC Berkeley… | UC Berkeley | Free to audit | PaidPaid certificate | Intermediate | 7 weeks | |
| 50 | Programming for Everybody (Getting Started with Python) Programming for Everybody (Getting Started with Python) is the University of Michigan's first Python course on edX, w… | edX | Free to audit | PaidPaid certificate | Beginner | 7 weeks | |
| 51 | Using Python for Research Using Python for Research is aimed at people who have finished an introductory Python course and want to apply the la… | Harvard | Free to audit | PaidPaid certificate | Intermediate | — |
Programming courses by provider
Questions about free programming courses
Which programming language should I learn first?
Python is the usual recommendation for a first language because its syntax is forgiving, and JavaScript if your goal is web pages. The language matters less than finishing a course and building something with it.
Do free programming courses give free certificates?
Many do. Non-profit coding curricula and some university introductions issue free verifiable certificates, while audit tracks on platforms charge for theirs. The certificate column on this page shows which applies.
How much mathematics do I need to start programming?
Very little for beginner courses; arithmetic and logical thinking are enough. Algorithms, graphics and machine learning courses assume more, and the mathematics page lists courses to fill those gaps.