Skip to content

For the grown-ups in the room

Teaching with it.

Two audiences, one page. If you're a parent or a teachersitting beside a curious learner, start at the top. If you're weighing this up for aclassroom, course or club, the second half is for you. Everything here is free and openly licensed — and the honest details, including what setting up actually involves, are below.

Parents · teachers

Sitting beside a learner

You don't need to be a programmer to help. Here's what a child or student actually does, why it's substance rather than screen-filler, and what you'll need to get going.

What they actually do

They build real, finishable games on classic machines — the Commodore 64, ZX Spectrum, Amiga and NES — and in doing so learn how a computer really works underneath. Not drag-and-drop blocks, not a sandbox app: actual code that runs on a real (emulated) machine.

Why it's substance, not screen-filler

The games are the sugar. The real subject is how computers think — instructions in order, a variable that remembers, a loop, a decision. It's computational thinking, taught from the machine up, and it stays useful long after any single game is finished.

Self-paced and free

There's no account to create, no ads, no paywall, and nothing to pay — ever. Learners go at their own pace, one small step at a time. You can sit alongside and learn together; thefoundations start from absolutely nothing, in plain terms first.

An honest word on setting up

It isn't quite "nothing to install". To run the examples you need a free emulator on the computer (such as Fuse or VICE). To build the code yourself you add a small toolchain — one command with Docker, or native tools if you prefer. Two machines (the C64 and the Amiga) also need their original ROMs, which you provide. It's a short, well-documented setup that a non-programmer can follow — see the setup guide for the exact steps.

A good first move: read the foundations together, then pick a machine from the systems. The about pageexplains the why behind all of it.

Schools · colleges · institutions

Adopting it for a course

Everything is free and openly licensed, so you can use it as-is, fork it, or adapt it to your own scheme of work. Here's the real structure, how to sequence it, and an honest statement of what exists today.

How the curriculum is structured

  • Foundations — a language-neutral introduction to general programming (sequence, variables, loops, decisions, debugging), shown running in Sinclair BASIC. The universal first step, before any specific machine.
  • Platform tracks — each machine offers a gentle on-ramp: BASIC where the machine had it, assembly for the metal. (Some, like the Amiga, offer more than one entry point.)
  • Modules — each module teaches a buildable game, with a "Meet the Machine" primer module first.
  • Units — the individual steps inside a module, each adding one technique with working code you can build and run.

A sensible sequence

  1. Start true beginners with the Foundations — it assumes no prior coding at all.
  2. Choose a platform. Home computers can begin in BASIC and graduate to assembly once the ceiling is felt; consoles such as the NES go straight to assembly, still game-first.
  3. Work through the modules in order — the "Meet the Machine" primer first, then the games — and the units within each module in turn.

There are no fixed unit or game counts to hit. The bar is on technique and quality, not quantity — adopt as much or as little as fits your course.

The licences

The prose is Creative Commons (CC-BY); the code is MIT, public on GitHub. Use it, fork it, adapt it — with attribution. There's no licence fee and no per-seat cost. More on the licences and the why →

Honest scope today

Four platforms — the Commodore 64, ZX Spectrum, Amiga and NES — have complete on-ramps you can teach from now. A wider catalogue of machines is mapped and planned, but not yet written; please don't assume the whole catalogue is teachable.

What "adoption" looks like

This is an open, structured course rather than a shrink-wrapped, drop-in pack. There's no polished teacher's bundle yet — what there is is the curriculum itself, freely adaptable. Adopt what's here as-is, or fork it and shape it to your scheme of work.

Setting up a room

Each learner needs a free emulator to run programs, and the build toolchain (Docker, one command, or native tools) to compile their own code. The C64 and Amiga need their original ROMs, which the institution provides. Full steps are on the setup guide.

Browse what's available in the systems, read the licences on the about page, and if you'd like to improve a lesson or help bring a machine to the curriculum, the contribution flow is open.