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

Editorial, not sponsored
Filters
Filters
    51 of 51 listed

    Filters need JavaScript to narrow the list; every course is shown below.

    Free Online Programming Courses
    # 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 · Intermediate · 9 weeks 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 · Beginner · 7 weeks 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 · 7 weeks 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 · Beginner · 9 weeks 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 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 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 · Beginner 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 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 · 14 weeks 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 freeCodeCamp Free IncludedCertificate included
    11 JavaScript Certification The second certification in freeCodeCamp's Full-Stack Developer curriculum and, at 235 blocks, its largest. freeCodeCamp 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 freeCodeCamp Free IncludedCertificate included
    13 Relational Databases Certification The fundamentals of relational databases, taught alongside the command-line tools developers use with them. freeCodeCamp freeCodeCamp Free IncludedCertificate included
    14 Back-End Development and APIs Certification This certification moves JavaScript to the server. freeCodeCamp freeCodeCamp Free IncludedCertificate included
    15 Full-Stack Developer Certification The capstone of freeCodeCamp's current curriculum. freeCodeCamp freeCodeCamp Free IncludedCertificate included
    16 Foundational C# with Microsoft Certification A certification developed with Microsoft and listed by freeCodeCamp under its professional certifications. freeCodeCamp 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 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 · 6.7 hours Microsoft Free NoneNo certificate 6.7 hours
    19 Code Yourself! An Introduction to Programming Code Yourself! Coursera · Beginner · 1 week 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 · Beginner · 6 weeks 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 · Beginner · 5 weeks 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 · Beginner · 5 weeks 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 · Intermediate · 6 weeks 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 · Beginner · 4 weeks 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 · 5.4 hours 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 · Intermediate · 17 hours 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 · Beginner · 11 weeks 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 · Beginner · 10 weeks 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 · Beginner · 3 hours IBM Free IncludedCertificate included Beginner 3 hours
    30 Information Security Certification A practical introduction to protecting people's information online, in three blocks. freeCodeCamp 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 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 · Beginner · 18 hours 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 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 · Beginner · 5 hours 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 · Beginner 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 · Beginner · 3 weeks 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 · Intermediate · 5 weeks 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 · Intermediate · 6 weeks 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 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 · Beginner · 3.2 hours 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 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 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 · Beginner · 5.6 hours 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 · Beginner · 1.8 hours 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 · Beginner · 5.8 hours 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 · Intermediate · 6 weeks 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 · Beginner · 8 weeks 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 · 9 weeks 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 · Intermediate · 7 weeks 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 · Beginner · 7 weeks 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 · Intermediate Harvard Free to audit PaidPaid certificate Intermediate
    Advertisement

    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.

    Advertisement