๐ป
Coding
Make games, animations and apps โ learn to think like a coder.
79 lessons
๐งธ Early Years
Ages 4-6
๐คGiving Instructions to a RobotAn early-years coding lesson for ages 4-6: learn how to give clear step-by-step instructions to a robot, why order matte๐ฅPatterns and CodingA warm early-years coding lesson about patterns: spot, copy, and make patterns with colors, shapes and sounds, and see h๐ขSequences: Putting Steps in OrderAn early-years coding lesson on sequences: learn how computers do steps in order, why the order matters, and practice wiโก๏ธSequencing with ArrowsAn early-years coding lesson on sequencing with arrows: use up, down, left and right arrows to guide a character step by๐งญUnplugged Coding: Coding Without a ComputerA fun early-years lesson on unplugged coding: learn to code with no screen using arrows, steps and simple games. Build r๐What Is an Algorithm?A simple coding lesson for ages 4-6: learn what an algorithm is, how it is a list of steps in order, with everyday examp๐ปWhat Is Coding?A friendly first coding lesson for ages 4-6: learn what coding is, how computers follow instructions, and why code is li
๐ Primary
Ages 7-10
โA Quiz Game in ScratchA step-by-step primary lesson on building a quiz game in Scratch: ask questions with the ask block, check the answer wit๐ฌAnimations and Costumes in ScratchA step-by-step primary lesson on animation in Scratch: how costumes make a sprite seem to move, switch costumes in a loo๐Coordinates and Movement in ScratchA clear primary lesson on coordinates and movement in Scratch: understand the x and y grid, move sprites with go to and ๐Cybersecurity and Strong PasswordsA coding lesson for ages 7-10: learn what cybersecurity means, why strong passwords matter, how to make one, and simple ๐Debugging: Finding MistakesA primary-school coding lesson on debugging: learn what a bug is, why code goes wrong, and easy steps to find and fix miโ๏ธDrawing with the Pen in ScratchA step-by-step primary lesson on the Pen blocks in Scratch: add the Pen extension, pen down and up, set pen colour and s๐ขEvents and Buttons in ScratchA primary-school coding lesson on Scratch events: learn how hat blocks start code when you click the flag, press a key, ๐Flowcharts and PseudocodeA coding lesson for ages 7-10: learn how flowcharts and pseudocode help you plan a program before you code it, with shap๐ฑGetting Started with ScratchA beginner Scratch coding lesson for kids ages 7-10: learn what Scratch is, how to snap blocks together, move a sprite, ๐งฑIntroduction to Block CodingA friendly primary lesson on block coding: learn how drag-and-drop blocks work, the main block types, why blocks snap to๐ฎMaking a Game in ScratchA step-by-step primary lesson on making your first game in Scratch: move a sprite, catch falling objects, keep score wit๐งฉMaking a Maze Game in ScratchA step-by-step primary lesson on making a maze game in Scratch: draw a maze, move a sprite with arrow keys, stop at wall๐Making Decisions with IfA primary-school coding lesson on if statements: learn how code makes choices using if, else, and conditions, with Scrat๐ตMaking Music in ScratchA step-by-step primary lesson on the Music blocks in Scratch: add the Music extension, play notes and drums, set the tem๐คScratch vs Text CodingA friendly primary lesson comparing block coding in Scratch with text coding like Python: what is the same, what is diff๐ฅ๏ธThe History of ComputersA coding lesson for ages 7-10: travel through the history of computers, from counting tools and giant machines to the ph๐ขVariables and Score in ScratchA step-by-step primary lesson on variables in Scratch: make a variable, set and change a score, show it on the stage, re๐ฆVariables: Boxes for InformationA primary-school coding lesson on variables: learn how a variable is a labeled box that stores information, how to chang๐What Is a Program?A clear primary lesson explaining what a computer program is: a list of instructions a computer follows in order. Real e
๐ฌ Middle
Ages 11-13
๐กBroadcasting Messages in ScratchA step-by-step middle-school lesson on broadcasts in Scratch: how 'broadcast' and 'when I receive' let sprites talk to e๐งฎBuilding a Calculator in PythonBuild a working calculator in Python step by step: read numbers with input, do the four operations, handle the divide-by๐ฏCloning Sprites in ScratchA step-by-step middle-school lesson on clones in Scratch: how 'create clone', 'when I start as a clone', and 'delete thi๐งฉCreating Custom Blocks in ScratchA middle-school Scratch coding lesson on custom blocks: learn to make your own blocks with My Blocks, add inputs, avoid ๐จCSS Colours and FontsA friendly middle-school lesson on CSS colours and fonts: set text and background colours with names, hex and rgb, choos๐งฉFunctions: Reusable Blocks of CodeA middle-school coding lesson on functions: learn how to define and call functions, pass arguments, return values, and wโฉ๏ธFunctions That Return ValuesUnderstand how Python functions return values: the difference between return and print, capturing results in variables, ๐ขHow Computers Store Data (Binary)Discover how computers store everything as binary: bits and bytes, why machines use only 0s and 1s, how numbers, letters๐ง How the CPU WorksMeet the CPU, the brain of the computer: learn the fetch-decode-execute cycle, what registers and the clock do, how bill๐How the Internet WorksHow the internet works explained simply: IP addresses, packets, servers and clients, DNS, and what happens when you open๐HTML Forms and InputsA clear, hands-on lesson on HTML forms and inputs for middle-school coders: build a form with text boxes, email fields, ๐ท๏ธIntroduction to HTML TagsA beginner-friendly introduction to HTML tags: headings, paragraphs, links, images, lists and the page skeleton. Learn h๐Lists and ArraysLearn what lists and arrays are: how computers store many values in one place, how to add, read, and change items by the๐Loops: Making the Computer RepeatA middle-school coding lesson on loops: learn what loops are, how for and while loops work, why they save time, and see ๐ฎMaking a Platformer in ScratchA step-by-step middle-school lesson on building a platformer in Scratch: left and right movement, gravity, jumping with ๐ณNested Loops and PatternsA middle-school coding lesson on nested loops: learn how a loop inside a loop works, why the inner loop runs fully for eโ๏ธPython Comparison and LogicLearn Python comparison and logic: ==, !=, <, >, the True and False booleans, and the and, or, not operators. Build cond๐Python For LoopsLearn Python for loops: loop over lists and strings, use range() to count, build running totals with an accumulator, and๐Python: if, elif, elseMaster Python decisions with if, elif and else: comparison operators, branching, why elif beats stacked ifs, chained conโจ๏ธPython Input and OutputLearn Python input and output: print() with sep and end, reading text with input(), converting strings to numbers with i๐Python Lists in DepthGo deeper with Python lists: indexing, slicing, append, insert, remove, sort and reverse, len, and looping with for. Mas๐Python Loops and ListsCombine Python loops and lists: use a for loop to visit every item, build lists, count and total values, and use range()๐ขPython Numbers and MathLearn Python numbers and math: integers, floats, the arithmetic operators, floor division, modulo, exponents, operator o๐Python While LoopsMaster Python while loops: how a condition controls repetition, updating the loop variable, avoiding infinite loops, bre๐ฒRandom Numbers and Games in PythonMake Python games unpredictable with the random module: use randint, choice, shuffle and random to roll dice, pick cardsโ๏ธWorking with Text and StringsLearn how to work with text and strings in Python: create strings, join them, slice them, change case, find and replace,๐งนWriting Clean Code and CommentsLearn to write clean Python code: clear variable names, helpful comments and docstrings, avoiding repetition with functi
๐ Teen
Ages 14-18
๐บ๏ธA Text Adventure Game in PythonBuild a text adventure game in Python: design rooms with dictionaries, move the player with input, track inventory and w๐Build a Simple Web Page with HTMLA teen HTML tutorial: build your first web page from scratch. Learn tags, headings, paragraphs, links, images, and listsโBuilding a Quiz App in PythonA teen-friendly Python project: build a working quiz app from scratch using variables, lists, dictionaries, loops, condiโ
Building a To-Do List AppA step-by-step teen project: build a working to-do list app with HTML, CSS and JavaScript. Add tasks, store them in an a๐Conditionals in PythonMaster conditionals in Python: if, elif, and else, comparison and logical operators, and nested conditions. Make your pr๐CSS Flexbox BasicsA practical teen tutorial on CSS Flexbox: turn a container into a flex container, control direction, justify-content, al๐Dictionaries in PythonLearn dictionaries in Python: store data as key-value pairs, look up and update values, loop over items, and avoid KeyErโจIntroduction to JavaScriptAn introduction to JavaScript: variables, data types, functions, conditionals, arrays, and making web pages interactive ๐ณJavaScript and the DOMLearn how JavaScript and the DOM work together: select elements, change text and styles, respond to clicks with event li๐ฑ๏ธJavaScript Events and ClicksA practical teen tutorial on JavaScript events: listen for clicks and other user actions with addEventListener, write ev๐JavaScript Loops and ArraysA clear teen tutorial on JavaScript loops and arrays: store lists of values, read them by index, and process every item ๐จJavaScript Variables and FunctionsA teen-friendly JavaScript tutorial on variables and functions: declare with let and const, work with strings and number๐ก๏ธPython Error Handling (try/except)Learn Python error handling with try and except: catch exceptions, handle specific error types, validate user input, and๐งฉPython Functions and ParametersMaster Python functions and parameters: define functions with def, pass arguments, use default and keyword parameters, r๐งทPython Tuples and SetsLearn Python tuples and sets: immutable tuples, tuple unpacking, returning multiple values, plus sets for unique items a๐ขPython Turtle GraphicsA teen-friendly Python tutorial on turtle graphics: draw shapes and patterns with a virtual pen, use loops and functions๐Reading and Writing Files in PythonLearn to read and write text files in Python: open files safely with the with statement, use read, readlines and write, ๐ฑResponsive Web Design BasicsA teen-friendly tutorial on responsive web design: use the viewport meta tag, relative units, flexible layouts with flex๐Sorting and Searching AlgorithmsLearn the classic sorting and searching algorithms: linear vs binary search, bubble and selection sort, how Big-O descri๐จStyling Web Pages with CSSLearn CSS to style web pages: selectors, colors, fonts, spacing with the box model, and layout basics. Make plain HTML l๐Using Python Libraries (modules)Learn how Python libraries and modules work: import the standard library, use math, random, datetime and statistics, pic๐Version Control with Git: The BasicsGet started with Git version control: understand repositories, the staging area, commits, and a clean workflow. Learn in๐๏ธWhat Are Data Structures?Explore data structures in computer science: arrays, linked lists, stacks, queues, hash tables, and trees. Learn how eac๐What Is an API?A clear teen explainer on APIs: what an Application Programming Interface is, how requests and responses work, what JSON๐Working with CSV Data in PythonRead and write spreadsheet-style data in Python with the csv module: parse rows, use DictReader and DictWriter, total a ๐Your First Python ProgramA teen-friendly Python tutorial: write your first program, use print, variables, input, and basic math, and understand h