top of page

Can you make a sandwich?

Computers are dumb. We really need to explain everything to them, without taking anything for granted. Here’s an exercise you can try with your children.

We need:

  • two (or more) people

  • two slices of bread

  • a tub or packet of butter

  • a knife

  • a sandwich filling (a slice of ham, say)

One person will give instructions to the other on how to make a sandwich. The person making the sandwich needs to pretend (and this is not easy) that they have no idea on how to make a sandwich. The person giving the instructions needs to give clear instructions without taking anything for granted. I suggest the person making the sandwich reads on first, before trying the exercise. If doing this exercise as a parent and child pair, I recommend the parent is the person making the sandwich and the child giving the instructions.

Sandwich maker, please read on:

Even for a young child, making a sandwich involves steps we take for granted. If the sandwich maker had to follow the instructions without using prior knowledge on making sandwiches, a number of ‘errors’ will occur. Here are some possible ones, and you will be able to think of more once you get the hang of the exercise. This makes the exercise fun for the children too:

  • You might be told to put the butter on the bread: the correct response to this is to take the whole tub of butter and place it on the slice of bread. To us humans it’s obvious what this means, but there’s a lot we’re taking for granted with the instruction “put butter on bread”

  • The response to the above might be: “Ah, in that case spread the butter on the bread” to which the ‘logical’ response would be to either try to spread the whole tub on the bread or to stick your fingers in the butter and spread on the bread with your hands. “Use a knife, pick some butter with the knife” are instructions that are required for someone (a computer) with no knowledge of sandwich making.

  • If buttering both sides of the bread, instructions need to be given to flip one slice over before placing it on the other to finish the sandwich, otherwise the ‘logical’ response would be to place the bread with the buttered side facing upwards.


Python Coding for Young People


Codetoday Unlimited is for the curious teenager or preteen keen to learn proper Python coding. Stephen's courses start from the basics and carry on to intermediate and advanced levels.

Python Coding for Adults

The Python Coding Place is Stephen's platform full of courses and other resources for beginners and intermediate learners. The focus is on clarity and Stephen's unique communication style.

bottom of page