🌟 Book a FREE demo class today — No credit card needed   •   Live 1-to-1 coding & maths classes for kids aged 6–16   •  🌟 Book a FREE demo class today — No credit card needed   •   Live 1-to-1 coding & maths classes for kids aged 6–16   •  🌟 Book a FREE demo class today — No credit card needed   •   Live 1-to-1 coding & maths classes for kids aged 6–16   •  🌟 Book a FREE demo class today — No credit card needed   •   Live 1-to-1 coding & maths classes for kids aged 6–16   •  
Parent Guide

What Does a First Coding Class Actually Look Like?

Minute by minute through a first lesson, in a blocks room and a Python one, including the part where the program breaks and nobody panics.

by Coach MikeAug 26, 20267 min read
In this article
  1. Minutes 0 to 6: nobody writes anything
  2. Minutes 6 to 18: one line that does something
  3. Minutes 18 to 34: it breaks
  4. Minutes 34 to 55: make your own
  5. What you can do this week
  6. Final thought

Parents almost never ask me this one directly. They ask whether their child will keep up, or whether an hour is long enough, and underneath both is the question they have not got a picture for: what actually happens in there?

So here is the hour, in order, with the timings I actually teach to.

I have written it for a nine-year-old's first Python lesson, and at each stage I have said what the six-year-olds in a blocks room are doing instead, because the shape is the same and only the surface differs.

The part that surprises parents is in the middle, and it is the part I would not cut for anything.

Minutes 0 to 6: nobody writes anything

The first six minutes have no code in them at all, and parents watching sometimes wonder when we are going to start.

We are starting. Py the turtle turns up, there is a small problem that needs solving, and the child is asked what should happen first. That is it. No syntax, no vocabulary, no screen sharing.

The reason is simple. A child who has spent five minutes wanting a robot to walk in a square has a reason to type, and the reason is what makes the line stick.

In the blocks room this looks nearly identical. Cody wants a patch of seabed marked out, and the six-year-olds argue about what she should do first. Same five minutes, same argument, no keyboard involved.

Here is the whole hour before we go further. Note the size of the fifth step. That is where this is heading, and everything before it exists so your child gets there with somebody sitting beside them.

A child who types before they want something is copying. A child who wants something first is programming.
What a first coding class looks likeSeven steps running top to bottom: meet Py, ask a question, write one line, run it, it breaks, fix it, and make your own. The it breaks step is drawn much larger than the others and filled in a warm colour, because it is the centre of the lesson rather than a mishap.Meet PyAsk a questionWrite one lineRun itIt breaksFix itMake your ownThe big one is not a mishap. It is the lesson.
Every first lesson runs this way. The big step is the point of it.

Minutes 6 to 18: one line that does something

Now the child types. Not a program. One line, and it does something immediately.

It runs, a word appears, and the child has made a computer say something they chose. That gap between typing and result has to be under ten seconds in a first lesson, which is most of why we do not open with theory.

Then a second line goes in with the child's own name in it, because a program with your name in it belongs to you in a way a worksheet exercise never does.

In the blocks room the equivalent is dragging a say block onto the cat and clicking the green flag. The cat says something the child wrote. Identical feeling, no typing, and honestly a slightly better version of the moment because it arrives faster.

By minute eighteen there is a working two-line program on screen and nobody has said the word string yet. They meet it later, once there is something for it to attach to.

This is where it starts, and the child picks what goes inside the brackets:

The first line anyone types
print("Hello!")

Minutes 18 to 34: it breaks

This is the centre of the lesson, and the part I would defend hardest to a parent watching through a doorway.

We break the program. On purpose, while I am sitting right there.

Usually I do not even have to engineer it. A child types a capital P, because every other piece of software they have ever touched does not care, and Python answers with this:

NameError: name 'Print' is not defined

The first time a child sees a red message, they look at me rather than at the screen. That look is the entire reason we do this in minute twenty rather than letting it happen alone at home on a wet evening.

So we read it together. Not fix it. Read it. What does it say the problem is? Which word is it complaining about? Where is that word on your screen? The child finds the capital P themselves roughly nine times in ten, fixes it, and the thing runs.

What they have actually learned is not about capital letters. It is that a red message is a sentence addressed to them with the answer inside it. Children who learn that in lesson one are much harder to discourage later, which is the whole of my child says I'm bad at coding.

There is a longer argument for why reading and repairing code is the half of this job that keeps its value, and we made it in what is left for your child to learn.

The blocks room breaks too, and it needs teaching just as deliberately. A six-year-old uses forever where they meant repeat ten, and the sprite sails off the edge and never comes back. Nothing turns red and nothing explains itself, so we trace the script from the green flag with a finger until we find the block that lied. Same skill, harder to spot, which is exactly why blocks teachers do not skip it either.

Minutes 34 to 55: make your own

The last third is not more teaching. It is the child turning the program into something nobody asked for.

They change the number. They change the words. Somebody makes it print a hundred times and the class laughs. Somebody makes it mildly rude, which I allow within reason, because a child testing the edges of a system has understood that there is a system.

Nobody leaves with the same thing as the child next to them. That is the measure of whether the hour worked, more than anything they can recite afterwards.

Here is roughly where an hour lands, though no two of them come back identical:

Where an hour usually ends up
name = input("What is your name? ")

for i in range(3):
    print("Hello " + name + "!")

What you can do this week

If your child has a first class coming up, none of this needs preparation from you.

The third one matters more than it looks, because the answer tells you whether the hour did its job.

  • Tell your child beforehand that the program is meant to break, and that breaking it is the good part.
  • Do not sit behind them for the whole hour. Come in for the last ten minutes, when there is something of theirs to show.
  • Afterwards ask what went wrong, not what they made. A child who can answer that had a good lesson.

Final thought

The honest summary is that a first class is about twelve minutes of instruction and forty-five minutes of a child finding out that a computer does exactly what it is told, which is both less and considerably more than most parents expect.

Nobody leaves knowing Python. Everybody leaves having fixed something, and that is the thing we actually care about, because it is the habit that decides whether there is a second year.

If you are weighing up whether your child should start in blocks or in Python, the signals are in 7 signs your child is ready to move beyond blocks. And for what to ask afterwards, without needing any code yourself, we listed the questions in you don't need to know Python to support a child learning it.

Or stop reading about it and book the hour. It is free, there is no card, and your child will have broken something and fixed it before you have finished your tea.

Keep reading

More from the blog

View all posts

Need help choosing a course? Chat with us on WhatsApp! 👋