Git & GitHub●Web Application Basics●APIs●Databases●Server Basics●Programming Fundamentals●Python Basics●JavaScript Basics●HTML & CSS●The Command Line●How the Internet Works●Computer Science Basics●Linux Basics●Data Structures, Gently●Debugging & Problem Solving●Markdown & Technical Writing●Cloud & Deployment Basics●FastAPI●PostgreSQL●Redis●Celery●MongoDB●System Design●Low Level Design●Microservices●React●Vue.js●Micro Front-ends●Django●Web Servers (NGINX & Apache)●AI for Developers●ChatGPT & Claude for Coding●Prompt Engineering Basics●Build with the Claude API●Claude Code●Finance for Everyone●Freelancing●Digital Marketing●SEO●GEO — Generative Engine Optimisation●Social Media Marketing●Performance Marketing●PPC Ads●Google Ads●Google AdSense●Meta Ads●Ad Library Research●Biology: Advanced●Biology: Beginner●Biology: Intermediate●Canva Designing: Beginner●Chemistry: Advanced●Chemistry: Beginner●Chemistry: Intermediate●Communication Skills: Advanced●Communication Skills: Beginner●Communication Skills: Intermediate●Digital Entrepreneurship: Advanced●Digital Entrepreneurship: Beginner●Digital Entrepreneurship: Intermediate●History: Advanced●History: Beginner●History: Intermediate●Leadership Skills: Advanced●Leadership Skills: Beginner●Leadership Skills: Intermediate●Mathematics: Advanced●Mathematics: Beginner●Mathematics: Intermediate●Personal Branding: Advanced●Personal Branding: Beginner●Personal Branding: Intermediate●Physical Education: Beginner●Physical Education: Intermediate●Physics: Advanced●Physics: Beginner●Physics: Intermediate●Presentation Skills: Beginner●Presentation Skills: Intermediate●Project Management: Advanced●Project Management: Beginner●Project Management: Intermediate●Public Speaking: Advanced●Public Speaking: Beginner●Public Speaking: Intermediate●Sales and Negotiation: Advanced●Sales and Negotiation: Beginner●Sales and Negotiation: Intermediate●

Beginner · 6h 9m · 21 lessons

Programming Fundamentals

Learn to think like a programmer — one clear idea at a time.

What you'll learn

  • ✦Explain what a program is, and walk through how a computer runs your code one instruction at a time
  • ✦Store and reuse information with variables, and pick the right data type for each value
  • ✦Combine values into new ones with arithmetic, comparison and logical operators in expressions
  • ✦Make a program decide what to do next with if / else conditionals
  • ✦Repeat work automatically with for and while loops, without writing an infinite loop
  • ✦Package reusable logic into functions that take arguments and return a result
  • ✦Work with lists of data using arrays, and join, measure and slice text with strings
  • ✦Break a real problem into small steps with decomposition and pseudocode, and read an error message calmly
  • ✦Organize related data with objects, and explain why a variable isn't visible everywhere (scope)
  • ✦Read a gentle introduction to recursion, and apply clean-code habits so others can read your work

Part of these career paths

Certification projects

Build 3 projects to earn your certificate

Hands-on work that proves you can apply what you learned — part of the certificate requirements.

View projects →

Syllabus

Module 1 · 49m
How code works Free
What you'll be able to do
  • Can explain what a program is, in your own words, using the recipe analogy.
  • Can describe the difference between an interpreter and a compiler.
  • Can spot a syntax error, like a missing bracket or quote, and explain why the program stopped.
Module 2 · 1h 17m
Data & decisions Locked
What you'll be able to do
  • Can create a variable, assign it a value, and reassign it later.
  • Can pick the right data type (number, string, boolean) for a value and explain why mixing them up causes bugs.
  • Can write an expression using arithmetic, comparison and logical operators, and predict its result.
  • Can write an if / else if / else chain that runs the correct branch for a given condition.
Module 3 · 1h 10m
Repetition & reuse Locked
What you'll be able to do
  • Can write a while loop that repeats correctly and stops, with no infinite loop.
  • Can write a for loop and say exactly how many times its body will run.
  • Can define a function and explain the difference between defining it and calling it.
  • Can write a function that takes arguments, returns a value, and use that returned value.
Module 4 · 1h 18m
Collections & problem-solving Locked
What you'll be able to do
  • Can read and write values in an array using zero-based indexes, and loop over every item.
  • Can join, measure and read characters in a string.
  • Can break a problem into smaller steps and sketch the logic as pseudocode before coding.
  • Can read an error message, find the line it points to, and tell a syntax error from a logic error.
Module 5 · 48m
Organizing data & code Locked
What you'll be able to do
  • Can build an object with key: value pairs and read a value by its key.
  • Can explain why a variable declared inside a function isn't visible outside it.
  • Can write a nested loop and calculate how many times its inner body runs in total.
Module 6 · 47m
Levelling up Locked
What you'll be able to do
  • Can trace a simple recursive function and identify its base case.
  • Can rename a vague variable and split an over-long function to make code easier to read.
  • Can pick a sensible next step, a language and a first project, to keep learning after this course.

More Foundations courses