Free online programming courses with certificates: which ones cost nothing to earn
Many of the 51 courses in the table above issue a certificate at no cost; the cases split three ways.
Free, verifiable certificates: freeCodeCamp, CS50, IBM and AWS
freeCodeCamp charges nothing for its curriculum, its exams or its certificates. Each certification in the Full-Stack Developer curriculum, from Responsive Web Design and JavaScript to Python and Back-End Development and APIs, asks for five required projects before its exam, and passing publishes a certificate at a public URL that shows your name and completion date. Foundational C# with Microsoft is likewise free to earn.
Harvard's CS50 courses are free through cs50.harvard.edu, and a score of at least 70% on the graded work earns a free CS50 Certificate at a unique URL. That covers CS50x, CS50P, CS50 SQL, CS50 Web, CS50 R and CS50 Scratch. The same courses on edX are free to audit with a paid verified certificate, $219 for CS50x.
IBM's Cognitive Class courses, such as Python for Data Science and Docker Essentials, state that a certificate of completion is offered and that learning there is free of charge. The Amazon Q Developer readiness path on AWS Skill Builder ends in a knowledge badge claimed through Credly, at no cost.
Paid certificates on audit tracks and free platforms
Courses on edX are free to audit for a limited period, with graded work and the certificate on the paid track: HTML5 and CSS Fundamentals at $249, Programming for Everybody at $59, Introduction to Web Accessibility at $99 and Berkeley's Introduction to Python at $200. Harvard's Data Science: R Basics and Using Python for Research are edX-only, at $219 and $249. MIT's 6.00.1x audit includes the whole course, with the certificate track at $149.
On Coursera, Learn to Program: The Fundamentals and Code Yourself! are free in full with a paid certificate whose price is not shown until you enrol, and Alison's Introduction to Python is free to study with a paid Alison Certificate or a free Learner Record.
Full courses with no certificate at all
MIT OpenCourseWare, Stanford Engineering Everywhere, Princeton, Khan Academy, Microsoft Learn and free Udemy courses give you the teaching and no credential. Princeton states that no certificates or credentials are offered for its open courses, and Microsoft Learn's trophies are not certificates.
Learn to code for free with no experience: which course to start with
The first course depends on whether you want one language, a full introduction to computer science, or a way in without typing code.
Harvard free programming course: CS50x or CS50P
CS50x runs eleven weeks at 10 to 20 hours a week and starts in C before moving to Python, SQL and web technologies, ending with a final project of your own design. CS50P, ten weeks at 3 to 9 hours a week, stays in Python throughout, covering functions, loops, exceptions, unit tests, regular expressions, classes and files; Harvard points people who want computer science fundamentals rather than one language back to CS50x.
Free coding courses for beginners in Python, in the browser
Michigan's Programming for Everybody is written for people with no background at all; its homework runs in the browser, so you can do it on a phone or a public computer, over seven weeks at 2 to 4 hours a week. Toronto's Learn to Program: The Fundamentals is scheduled at three weeks and takes you from variables and functions to files, tuples and dictionaries. IBM's Python for Data Science, at 18 hours, adds Pandas and NumPy for anyone heading toward data work.
Without typing code
CS50 Scratch (nine weeks) and Edinburgh's Code Yourself! (one week) teach functions, loops, conditions and variables by snapping blocks together, and Khan Academy's computer programming course has you drawing shapes and animations in JavaScript from the first lesson.
Free web development course options, from a first page to full stack
freeCodeCamp's curriculum is the complete route: Responsive Web Design for HTML and CSS, JavaScript, Front-End Development Libraries for React and TypeScript, Python, Relational Databases for SQL, PostgreSQL and Bash, and Back-End Development and APIs for Node and Express, with the Full-Stack Developer exam available once all of them are earned.
The World Wide Web Consortium's own courses on edX cover the same ground in shorter units: HTML5 and CSS Fundamentals (six weeks at 4 to 6 hours a week), CSS Basics, JavaScript Introduction and, for those already writing HTML and JavaScript, HTML5 Coding Essentials and Best Practices. CS50 Web takes the server side further with Django, React and APIs over nine weeks, and expects CS50x or experience in some language first.
How to learn to code for free past the basics
Past the basics the listed courses divide into algorithms, databases and tools. Princeton's Algorithms, Part I and Part II use Java implementations with weekly programming assignments; MIT's Introduction to Algorithms 6.006 is proof-oriented and assumes a language already; Stanford's Algorithms: Design and Analysis, Part 1 covers big-oh notation, divide and conquer and graph search over six weeks. Stanford's SEE sequence, CS106A in Java then CS106B in C++, is a full first year with assignments and exams.
For databases, CS50 SQL (seven weeks) starts with SQLite and ends with PostgreSQL and MySQL, and SQL and Relational Databases 101 from IBM takes 5 hours. For tools, GitHub Foundations covers Git, pull requests and Codespaces in 6 hours 42 minutes, and Docker Essentials is 3 hours of labs.
Neighbouring pages
Courses built around one language sit on the free online Python courses page, and the theory beneath programming on free online computer science courses. The Harvard free certifications page lists the CS50 courses by credential, and Is a freeCodeCamp certificate worth it? looks at how employers read them.