Nearly everything below started as something a teacher told us was
missing, or getting in the way. Here is what we have done about it.
Last updated 18 August 2026
Week of 17 August
TeachersStudentsSchools
You saidEdexcel is the only board with turtle in its subset, and there was nothing in the course for it. If you teach 1CP2 there was a whole section of your specification we simply did not cover.
Turtle graphics, for Edexcel
Eight lessons covering every turtle command in Edexcel's subset, from your first line to a filled, coloured picture. The course is now 92 lessons, all free to read.
The topic starts with one turtle and one line and finishes with a scene that uses the lot. Along the way: turning and headings, drawing shapes with a loop and working the angle out as 360 divided by the number of sides, lifting the pen so you can move without drawing, filling shapes and the colours you are allowed to name, placing the turtle at a coordinate, and circles and arcs.
Every command in the subset is in there, and the checkpoint carries the whole list as a reference you can revise from. Code in the lessons runs and draws on the page, so nothing needs installing.
Every lesson says plainly who examines it. Turtle appears nowhere in OCR J277 or AQA 8525, so if that is your board the topic tells you it is there for interest and nothing in it can be asked of you. We would rather say that than let you spend an evening on something that cannot earn you a mark.
There are sixteen turtle challenges to go with it, seven of them new and written for the start of the topic, so each lesson hands you one to warm up on and one to stretch you.
You saidyour students needed a course they could work through on their own: something interactive that teaches programming properly from day one, not another worksheet.
A free Python course, 84 lessons long
We built a 13 topic Python course that takes a student from their very first line of code to searching, sorting and algorithm design. All 84 lessons are free to read.
There is nothing to install and nothing to set up. Students write code on the page and it runs there, so a locked-down school laptop is enough, and a student can carry on at home on a phone.
Each lesson does one thing. It explains an idea, shows a small example, warns about the mistake almost everyone makes, then asks the student to type something themselves. 96 of those exercises are marked automatically, and every topic ends with a checkpoint.
Below is a lesson from start to finish: what it teaches, code that runs on the page, an exercise marked as you go, a hint when you are stuck, and the checkpoint that closes the topic.
Thirteen topics, taken in order, with every lesson title visible before you startA lesson: what you will be able to do, the idea, then code that runs on the pageHard ideas drawn out. A binary search, one pass at a timeExercises are marked as you go, with the checks shownA hint for a student who is stuck, and the model answer when they need itEvery topic ends with a checkpoint that puts the whole thing togetherEach lesson hands off to real challenges from the library
Also in this release
Every code listing in a lesson runs, so a student can change an example and see what happens instead of reading it.
Lessons cite the spec point they teach, and each practice card links to the matching past-paper question.
Work written before signing in is carried across to the account rather than lost.
You saidyou wanted to know where a class actually is, rather than where the scheme of work says it should be.
A dashboard for how far your class has got
We built a grid of every student against every topic, so one screen tells you who has finished what, who has started and stopped, and who has not begun.
Set the lesson you have taught up to and the grid flags anyone who has fallen behind it, so the students worth chasing come to you instead of being buried in a list.
Students see the same thing from their side: a dashboard showing how far through the course they are and what comes next.
A tick means the student's browser reported that their answer matched the expected output. It is not a record of us re-running their program, and the page says so, because a teacher should know exactly what a tick is worth.
Also in this release
Lessons can be set as work in their own right now, not just challenges.
If you set a class a challenge it has already been given, you are told at the moment you assign it rather than after the lesson.
Student work and feedback are visible to the teachers of that class and to the student. Not to everyone else at the school.
You saidthe teacher screens were hard to find your way around: everything sat on one page, and some of it you could only reach by editing the address bar.
The teacher area, rebuilt around your classes
We rebuilt it so a class is somewhere you go into. Open a class and you get its own screen with the join code, the roster, its assignments and a way back out.
Why it was worth rebuilding rather than tidying: the old layout put every class on one page, which is fine with one class and unusable with six. A teacher with a full timetable could not look at one group without reading past the others.
Every screen now has its own address, so you can bookmark a class, open a gradebook in a second tab, and press the back button and have it do what you expect.
You saidthe hard part is explaining the ideas a static textbook cannot show: what a loop is actually doing, how an index counts, why a binary search halves the list.
Pictures for the ideas that will not sit still
We drew them. 62 diagrams across the course, made for these lessons rather than borrowed, and every one of them readable on a phone.
They are drawn as vectors rather than pictures of a screen, so they stay sharp on a projector and recolour themselves in dark mode instead of glowing white at a class with the lights off.
Here are nine of them.
Every part of a print statementA variable as a labelled boxHow if, elif and else choose a pathCounting backwards through a stringWhat a while loop actually repeatsOne pass of a bubble sortLinear search against binary searchFilling in a trace tableThe five flowchart symbols every board uses
You saidyour data protection officer needed to know that deleting something really deletes it, rather than hiding it.
When you delete a class, it is actually gone
We went through the deletion routine against what the privacy notice promises, found the gaps, and closed them.
Work, feedback, teacher notes and progress attached to a deleted class are now removed with it, including the rows that used to be left behind because nothing pointed at them any more.
A nightly job prunes anything past the retention window the privacy notice states, and records only that it ran and how many rows went. Never what they said.
You saidyou could not defend putting an AI tutor in front of a class unless you could see what it had said.
If you switch the AI tutor on, you can see how it was used
The tutor is off unless your school turns it on. If you do, the class teacher can read every conversation, and a student in distress is pointed to real help first.
Nothing here happens unless a school admin switches the tutor on, and switching it on asks you to name a safeguarding lead first.
Once it is on, a class teacher can read the whole conversation a student had with the tutor, and see when a student revealed a sample answer or opened a hint. It is on the student report, alongside their work.
If a message suggests a student is struggling with something far more serious than code, the tutor does not answer the question. It shows them Childline, Samaritans and Shout, and your named safeguarding lead is emailed straight away. That email says what kind of concern it is and who it is about, never the words the child wrote.
This is not a monitored service. Nobody here is reading these overnight, and the check can be wrong in both directions.
You saidplenty of schools are not permitted to use AI, and needed to be able to say so plainly rather than trust a setting buried in a class.
You decide whether AI is used at all
One setting for your whole school, in the Safeguarding panel. It starts at No AI at all, so nothing about your students is sent to OpenAI unless someone there turns it on.
There are three levels. On gives your students the AI tutor, Explain Code and written feedback when they press Check answer. Tutor off removes the tutor but keeps Explain Code, error help and the written feedback. No AI at all does what it says: nothing about your students leaves for OpenAI.
Your school starts at No AI at all, so nothing is sent unless you choose it. If your school does allow AI, a school admin can switch it on in the Safeguarding panel.
Marking is not affected by any of this. Check answer works out whether the program is right by comparing what it printed with what was expected, in our own code, so your students still get a real result and your gradebook still fills in. At the strictest level they simply do not get the written paragraph alongside it.
Turning the tutor on asks you to name a safeguarding lead first. If a student ever types something worrying, that is the person we email, and there is no point switching the tutor on before there is somebody to tell.
You saidthe library started too hard: you needed challenges covering the absolute basics for a class meeting Python for the first time.
19 challenges for a class that has never coded
We wrote 19 of them, pitched at printing a line and reading one input, so a first lesson has somewhere to start. Recently added challenges carry a NEW ribbon so you can find them.
You saidgetting a class started took an entire lesson: accounts made in advance, passwords printed out, and half the room locked out anyway.
A class signs in with the accounts it already has
We made it a class code. Students sign in with the Google or Microsoft account the school already gave them, and the code is spent the moment it is used.
This is the change that makes a whole class workable in one period. Every trial that quietly died died at account setup, so that is the part we removed.
Invited teachers can use single sign-on too, and creating a school now marks you as a teacher rather than leaving you on a personal account.
Also in this release
Joining is locked to your own email domain by default. You can turn it off, and the screen says plainly what that costs you.
Every student who joins through a class code is flagged as a child account.
You saidthe editor sometimes never loaded on the school network, and nobody could tell you why.
Code that runs on a filtered school network
We now serve Python and the editor from our own domain instead of a third-party CDN, so a filter that blocks anything unfamiliar no longer leaves a class staring at a blank page.
You saidthe A-level web technologies content needed somewhere students could actually build a page, not just read about one.
A real web editor, with live preview
We built a multi-file editor for HTML, CSS and JavaScript with the page updating as you type. Save it to your account, upload images, then share a link or let someone fork it.
Built for OCR H446 web technologies, but it is a general-purpose editor: anything you can make from static files, you can make here.
Projects autosave, so a lesson that ends abruptly does not cost a student their work.