Explaining few-shot prompting in Scratch

January 20th, 2026

In this post, I want to share a recent worksheet I wrote for Machine Learning for Kids. It is a hands-on project to give students an insight into an aspect of prompt engineering with language models.

Students create a Scratch project with four sprites.

They start things off by writing an English sentence which goes to their first sprite.

The first sprite waits to be given an English sentence, and uses a language model to translate it into French.

The second sprite waits to be given a French sentence, and uses a language model to translate it into German.

The third sprite waits to be given a German sentence, and uses a language model to translate it into Chinese.

The fourth sprite waits to be given a Chinese sentence, and uses a language model to translate it into English.

This is then received by the first sprite, and the process continues again.


screen recording of the Scratch project on YouTube

Because the translations aren’t 100% perfect, like the famous children’s game, the text passed between the sprites gets further and further from the student’s starting sentence.

I’ve been kicking around this idea for a few months, but it didn’t work well with the groups that I tried the early project incarnations with. I think it’s in a better state now, so I’ve added the worksheet to the site.

The project has given me a chance to introduce a range of different ideas…

Read the rest of this entry »

Improving support for older computers and mobile devices on Machine Learning for Kids

January 16th, 2026

In this post, I want to share some changes I’ve been making to how I train models in Machine Learning for Kids.

Read the rest of this entry »

2025 Year In Review

January 14th, 2026

Every site does a “Year In Review” nowadays. I know some people find them a creepy reminder of how much data is collected about us, but I love them. Quantified self plus pretty infographics? How could I say no?

For 2025, I collected some of my favourites:

Read the rest of this entry »

2025 in gaming (Nintendo)

January 13th, 2026

Another gaming end of year recap – this time from Nintendo.

I thought I was finished with these 2025 year in reviews, with Spotify Wrapped first out of the gate on 3rd December.

It looks like Nintendo like to do things different – and published theirs on 13th January!

Read the rest of this entry »

Flink SQL examples with click tracking events

January 12th, 2026

In this post, I introduce a few core Flink SQL functions using worked examples of processing a stream of click tracking events from a retail website.

I find that a practical, real-world (ish) example can help to explain how to use Flink SQL in a way that abstract descriptions, such as processing coloured blocks sometimes doesn’t quite achieve.

I’ll use this post to give examples of my most-used Flink SQL functions, in the context of a retail scenario: a stream of events from customers on the website for a clothing retailer.

Note: I used Event Processing to create the flows, as the assistants in the canvas helped me create examples quickly. Everything I’ve created is standard Apache Flink SQL, so you don’t need to have Event Processing to try these examples.

Read the rest of this entry »

Explaining role prompting in Scratch

January 11th, 2026

In this post, I want to share a recent worksheet I wrote for Machine Learning for Kids. It is a hands-on project to give students an insight into an aspect of prompt engineering with language models.

Students create a Scratch project that lets them have a conversation with a small language model. They try to have the same conversation multiple times, and they set up the Scratch project so that adds a short role instruction to the context at the start (e.g. “Answer like a pirate”).

The instruction changes how the model answers, and students have to try and work out from the responses they get from the model which persona has been selected.


screen recording of the Scratch project on YouTube

By repeating the activity several times, they should notice something important: the same language model gives very different answers to the same questions, just because of a small change in the instructions. This observation is the key lesson here.

Read the rest of this entry »

2025 in music (last.fm)

January 3rd, 2026

Spotify has data for most music I choose to listen to – on my computer, my phone, in the car, on smart speakers, etc. So Spotify’s end of year review is more complete.

Last.fm only has data for music I listen on my laptop, but I prefer their end of year reports for the amount of geeky detail they go into!

They have two Year In Review options: a page of graphs, and a more infographic/animation-focused report.

Read the rest of this entry »

2025 in beers (Untappd)

January 2nd, 2026

Untappd is a site for tracking beers that you drink. Their end of year review is called Recappd – this is mine.

Read the rest of this entry »