Raspberry Pi · one hour a week · 36 sessions
A year of Sunday hours: from typing his first command to building something the house actually uses. Built for a curious ten-year-old and the father sitting next to him.
A curriculum is easy. Keeping a ten-year-old coming back for forty weeks is the hard part, and it is decided almost entirely by how the hour is run rather than what is in it.
krishna-pi is his in a way
that raspberrypi never will be.
~/lab forever, including the
broken ones. In month nine he will open session three's code and laugh at it, and that
is the moment he understands he has actually travelled somewhere.
Each term is nine sessions and ends in a demo to the family. The arc runs outward — from the screen, to pictures, to games, to the house itself. Colours are the jumper wires you will be holding by term four.
The fourth column is for you, not him — it is what is actually being taught underneath the fun. Knowing it is what lets you improvise when the session goes sideways, which it will.
Goal: he can move around a Linux machine by typing, and he believes the computer is on his side.
| № | Session | What he builds | The idea underneath |
|---|---|---|---|
| 01 | Naming day | The Pi says something ridiculous out loud, in a voice he picks | A computer is a thing you instruct, not a thing you click |
| 02 | Where am I? | His own ~/lab folder, one sub-folder per project | The filesystem is a house with rooms; pwd tells you which room |
| 03 | Writing things down | A letter to himself in nano, to be opened in one year | Files are just text; editors are not magic |
| 04 | Move, copy, destroy | A backup of the whole SD card, made together | Some actions cannot be undone — so make undo yourself |
| 05 | The computer as helper | Counts the words in his own letter; finds a word in a huge file | Small tools joined by a pipe beat one big tool |
| 06 | Absurdly large numbers | Python as a calculator: 2**1000, printed in full | Powers; and the visceral fact that the machine is fast |
| 07 | Boxes with names | A program that asks your name and answers back | Variables and input — the program now depends on a human |
| 08 | Doing it again | The 7 times table. Then every table, 1 to 20, in one second | Loops; multiplication as repeated addition made literal |
| 09 | Demo · first light | One LED, wired and blinking, shown to the family | Code can leave the screen. This is the hook for the whole year |
Goal: mathematics stops being worksheet material and becomes the thing that makes the picture come out right.
| № | Session | What he builds | The idea underneath |
|---|---|---|---|
| 10 | The turtle | A square. Then a square that is wrong, and fixing it | Instructions have an order and the order is visible |
| 11 | The 360 rule | Triangle, pentagon, decagon — then a "circle" with 360 sides | Turn = 360 ÷ sides. A circle is a polygon that gave up |
| 12 | Loops inside loops | A flower made of forty rotated squares | Nesting: the inner loop finishes before the outer one moves |
| 13 | Chance and colour | Art that comes out different every single run | Randomness; the same program need not give the same answer |
| 14 | Finding any spot | His name written in dots at exact coordinates | The x–y plane, and negative numbers arriving as a place |
| 15 | Naming a piece of work | def house(size) — then a whole street of them | Functions: teach the machine a word, then use the word |
| 16 | Kolam generator | A rangoli pattern built from rotation and symmetry | Rotational symmetry — the maths already in the doorway at home |
| 17 | Ten thousand dice | A bar chart of dice rolls, drawn by the turtle | Probability: rare at ten throws, dead flat at ten thousand |
| 18 | Demo · print it | His best piece, printed on your printer, framed, on the wall | The work is real enough to hang up |
Goal: he can write a program that makes decisions, keeps score, and that someone else wants to play twice.
| № | Session | What he builds | The idea underneath |
|---|---|---|---|
| 19 | Higher or lower | A guessing game — and then beating it in 7 guesses out of 100 | if/else, and halving the search each time. A deep idea, early |
| 20 | Until it's right | The game keeps asking, and counts how many tries it took | while loops; a program that waits for a human |
| 21 | Many things at once | A family quiz with ten questions in a list | Lists and indexing — one name holding many values |
| 22 | A window and a sprite | Pygame Zero: something on screen that the arrow keys move | The game loop — sixty tiny redraws every second |
| 23 | Walls | The sprite can no longer escape off the edge | Bounds checking; comparing a position to a limit |
| 24 | Touching and scoring | Catch the falling thing. A number goes up | Collision as arithmetic; state that survives between frames |
| 25 | Losing | Sound, three lives, and a game-over screen | A game you cannot lose is not a game |
| 26 | Making it harder | Speed rises with score; a title screen with his name on it | Difficulty as a variable — design, not just code |
| 27 | Demo · game night | Everyone plays. High scores written on paper and kept | He built the thing the family is doing tonight |
Goal: something he wrote is still running on Wednesday afternoon when nobody is watching it.
| № | Session | What he builds | The idea underneath |
|---|---|---|---|
| 28 | The breadboard | Three LEDs, correctly resisted, under his control | Circuits, and why the resistor is not optional |
| 29 | A button | Press it, the light comes on. Release, it goes off | Input from the world, not from the keyboard |
| 30 | Counting in twos | Four LEDs counting 0 to 15 in binary | Number bases. The single best hour in the whole year |
| 31 | Making a noise | A buzzer playing a tune he chooses | Frequency and ratio — why doubling the number is one octave |
| 32 | A sensor that means something | A moisture probe in the tulsi pot, printing a real number | Measurement: the number is about the actual world now |
| 33 | Deciding | Dry soil lights a lamp. Watered, it goes out | Thresholds — where does "dry" begin, and who decides? |
| 34 | While we sleep | A cron job that runs at 6 a.m. without him | Programs outlive the session that started them |
| 35 | The house project | One chosen build, done properly and mounted in place | Finishing — the least practised and most valuable skill |
| 36 | Demo · he teaches you | He runs the hour. You are the student, and you ask real questions | If he can teach it, he owns it. This is the actual final exam |
You said fundamentals, and this is where they hide. None of it is presented as maths — it arrives as the reason the picture came out wrong.
360 ÷ sides. He will never again wonder what an exterior angle is, because a wrong one is visible as a broken shape.
Minus fifty is not an abstraction; it is fifty steps to the left of the middle of the screen.
A loop that runs seven times is what seven times something means, spelled out.
Ten rolls look random. Ten thousand look flat. The law of large numbers, seen rather than stated.
Guessing a number in 1–100 in seven tries. The first genuinely powerful algorithm he will meet.
Four LEDs, sixteen states. Binary as a physical fact sitting on the table in front of him.
Double the frequency, go up one octave. Music turns out to have been arithmetic the whole time.
Choosing where "dry" starts is judgement, not calculation — an early taste of modelling.
The split is not by difficulty. Teach the things that are frightening or need two pairs of hands; leave him the things that reward wandering off.
sudo, rm, or a wire in itOrdered by when you will actually need it. Nothing here is required to start — session one needs only the Pi you already have running.
| Item | When | Why this one |
|---|---|---|
| The Official Raspberry Pi Beginner's GuideGareth Halfacree · Raspberry Pi Press | Free PDF | Mostly for you. Raspberry Pi Press publishes it as a free PDF; buy the paperback only if you would rather flip pages. Covers the OS, the desktop and the basics you will be asked about. |
| Python for Kids, 2nd editionJason R. Briggs · No Starch Press | Now | The spine of terms one to three, and genuinely readable by a ten-year-old alone. Its turtle and game chapters line up almost exactly with the syllabus above. |
| Secret CodersGene Luen Yang & Mike Holmes · six volumes | Now | A graphic novel series, not a textbook — a mystery story in which the puzzles happen to be programming. This is the excitement purchase. Bedtime reading, zero adult involvement. |
| CamJam EduKit #1LEDs, resistors, buzzer, breadboard, wires | Now | Built for precisely this and costs very little. You need it by session nine. In India look at Robu, Robocraze or ThinkRobotics; any equivalent starter kit with a breadboard, jumper wires, 330 Ω resistors and a handful of LEDs will do. |
| GPIO ribbon breakoutCable + breadboard adapter | Now | Underrated. It moves the pins off the Pi and onto the breadboard, so a mis-wire costs a jumper rather than the board, and he can point at labelled pins instead of counting them. |
| A second SD cardSame size as the working one | Now | The permission to break things. With a clone on the shelf, session four's rm conversation becomes a demonstration rather than a warning. |
| projects.raspberrypi.orgRaspberry Pi Foundation | Free | Hundreds of structured, illustrated projects at three difficulty levels, printable as they stand. Let him pick from here whenever a session finishes early. |
| The MagPiMonthly · free PDF back catalogue | Free | Not for teaching — for wanting. Leave issues lying around and let him find the build that makes him ask. |
| Coding Games in PythonDK | Term 3 | Heavily illustrated, project-per-chapter, and it matches term three almost session for session. DK's layout suits a child working semi-independently better than a wall of text. |
| CamJam EduKit #2Sensors: temperature, light, motion | Term 4 | Needed from session thirty-two. Add a cheap soil-moisture probe separately for the tulsi project. |
| Lauren IpsumCarlos Bueno | Anytime | A fairy tale in which the magic is computer science, and there is not a line of code in it. Good for the weeks when he is tired of screens. |
| CODE, 2nd editionCharles Petzold | For you | Too hard for him now and worth every hour for you — it builds a computer from a torch and a wire. Read it this year, hand it to him at fourteen. |
| A proper keyboardFull-size, positive key travel | Now | He is going to type for forty weeks on it. A keyboard he enjoys pressing is a real, unglamorous contributor to whether this works. |
Paper next to the machine is doing something a browser tab cannot: it is available while both hands are busy, and it does not tempt anyone into a different window.
Twenty terminal commands, one line each, in a single column. Nothing else. Replace it in term four with a longer one he helps write.
Date · what we built · what broke · what I want to try next. He fills it in, in pen, in the last four minutes. After a year it is the best thing either of you owns from this.
Printed below. You will reach for it every single session from twenty-eight onward.
SyntaxError, NameError, IndentationError, command not found, Permission denied — five lines, plain English. Turns panic into lookup.
Thirty-six numbered squares, four colour bands, one tick per session. Visible progress is disproportionately motivating at ten.
A printed protractor circle marked at 360÷3, ÷4, ÷5, ÷6, ÷8, ÷10. He puts the turtle's pen on it and predicts the shape before running.
A printed breadboard grid. He draws the circuit in pencil before touching a wire — the single habit that prevents most frustration.
Slightly over-formal, signed by you, dated. Deeply uncool and quietly treasured.
Curiosity is the easy part; you already have it. Forty weeks of sustained curiosity is an engineering problem, and these are the levers that actually move it.
The first ten minutes of session one should make him laugh, not teach him anything.
cowsay, figlet, sl, fortune, and a speech
synthesiser saying something mildly cheeky in his sister's name. Every one of these is a real
command doing a real thing, so nothing is wasted — but what he remembers is that the terminal
is where the funny stuff lives.
The moisture sensor is in the tulsi pot, not "a plant". The alarm plays the song Amma likes. The quiz is about people at the dinner table. Abstract projects are for adults who have already decided to care; a ten-year-old needs a face attached.
Somewhere around session four, with the clone safely made, let him run something destructive and watch the machine stop working. Then restore it in ten minutes. A child who has seen a computer broken and mended is permanently harder to frighten, and will experiment far more freely for the rest of the year.
Nine sessions, then a real audience — grandparents on video call included. Knowing an audience is coming changes what he is willing to push through in week seven.
The Pi is his. His login, his password, his hostname, his folder names, his terrible variable names. You are a guest at his machine, and you should occasionally ask permission out loud, because he will notice.
Around term three he will want to build something far beyond him — a full 3D game, a robot. Do not talk him down. Break off the smallest true piece of it, build that this Sunday, and say plainly that the rest is next year's. Ambition is not the problem; it is the fuel.
Session thirty-six is him teaching you, for real, with you asking real questions and getting things wrong. Nothing else you can do in this year will tell him as clearly that he has actually become someone who knows something.
Starting is the hardest part, so here it is decided for you. Do not prepare anything beyond having the Pi on and a terminal open.
Sit him in the chair, you beside him — not in front. Say one sentence: "This one is yours, and today we are going to make it talk."
Install and run the joke commands together. He types every character, including the mistakes. When something fails, read the error aloud and fix it in front of him.
espeak, then let him spend a full five minutes finding the silliest voice settings. This looks like time-wasting. It is the hook.
Change the hostname to whatever he chooses. Reboot. Watch the prompt come back with his name on it. This is the moment of ownership.
mkdir ~/lab. One folder inside it, named by him. Write the first line of the logbook, in pen.
Call whoever is in the house. He runs it himself and explains it himself. You say nothing at all during this part.
"Next Sunday we find out where everything on this machine actually lives." Close the laptop while he still wants another ten minutes.
# installing the fun bits — he types this, you read it out
sudo apt update
sudo apt install -y cowsay figlet lolcat sl fortune espeak
# now the good part
cowsay "Krishna is in charge now"
figlet KRISHNA | lolcat
fortune | cowsay
espeak -s 130 -p 40 "Hello. I am your computer. Please do not spill juice on me."
# naming day — replace krishna-pi with whatever he picks
sudo hostnamectl set-hostname krishna-pi
sudo reboot
# after the reboot, his own room on the machine
mkdir ~/lab
cd ~/lab
mkdir session-01-naming-day
pwd
Print this one. Pin 1 is the corner nearest the SD card slot, and the numbers run in two columns down the board — odds on the inside edge, evens on the outside.
| 3V3 | 1 | 2 | 5V |
| GPIO2 · SDA | 3 | 4 | 5V |
| GPIO3 · SCL | 5 | 6 | GND |
| GPIO4 | 7 | 8 | GPIO14 · TXD |
| GND | 9 | 10 | GPIO15 · RXD |
| GPIO17 | 11 | 12 | GPIO18 · PWM |
| GPIO27 | 13 | 14 | GND |
| GPIO22 | 15 | 16 | GPIO23 |
| 3V3 | 17 | 18 | GPIO24 |
| GPIO10 · MOSI | 19 | 20 | GND |
| GPIO9 · MISO | 21 | 22 | GPIO25 |
| GPIO11 · SCLK | 23 | 24 | GPIO8 · CE0 |
| GND | 25 | 26 | GPIO7 · CE1 |
| GPIO0 · ID_SD | 27 | 28 | GPIO1 · ID_SC |
| GPIO5 | 29 | 30 | GND |
| GPIO6 | 31 | 32 | GPIO12 · PWM |
| GPIO13 · PWM | 33 | 34 | GND |
| GPIO19 | 35 | 36 | GPIO16 |
| GPIO26 | 37 | 38 | GPIO20 |
| GND | 39 | 40 | GPIO21 |
Do not mention any of this to him yet — but it is worth knowing where the road goes, because it changes how you teach year one.
Flask on the Pi, a page on the home wifi that shows the tulsi's moisture. His first server.
A Pi camera, time-lapse of a plant growing over a month, stitched into a video. Patience as a technique.
Around twelve, when losing work has finally hurt enough to make version control feel like a rescue rather than a chore.
A microcontroller with no operating system underneath. Where he finds out what the Pi was hiding from him.
The strongest year-two project is one where a person who is not in the family asks him for something and then uses it.
What a server is, what an IP address is, and the first real conversation about what happens when a machine of his is reachable from outside the house.