Posts Tagged ‘scratch’

Building a Question Answering game in Scratch

Saturday, April 17th, 2021

I added a new project worksheet to Machine Learning for Kids today.

It has step-by-step instructions for how to make a quiz show game in Scratch that uses a machine learning model to understand questions on any topic the student chooses, and find the answer in Wikipedia pages.

It’s a fun little project, super simple to make, and works surprisingly well. It doesn’t get every question right, but it does a lot better than I expected.

I don’t normally write blog posts when I write new ML for Kids worksheets, but this one was a bit interesting.

(more…)

Machine learning workshop for school teachers

Friday, April 2nd, 2021

This week I ran a remote workshop for school teachers about machine learning and artificial intelligence. It was organised with University College London as part of a series of activities they are running to celebrate the CS Expo: 40+ years of UCL Computer Science.

It was quite a long session, as we wanted it to be a hands-on practical CPD (Continuing Professional Development) workshop rather than just me giving a short talk. In the 90-minute workshop, we made two separate AI projects, which was a chance to see and contrast a few different approaches.

(more…)

Introducing ‘Machine Learning for Kids’ to teachers

Thursday, December 17th, 2020

I gave a short talk about Machine Learning for Kids last week as part of an online conference run by Somerset eLIM. Here’s the recording.


youtu.be/8St1REZbE5w

I started with a couple of definitions, then demonstrated a variety of projects that I’ve seen primary school students make, and finally walked people through a hands-on demo so they could try it out for themselves.

Running TensorFlow models in Scratch

Thursday, November 19th, 2020

I gave a short presentation today to explain how you can use TensorFlow machine learning models in the student block-based coding platform, Scratch.

This post has the recording of my presentation, and I’ve put some notes (all the stuff I meant to say but forgot!) and screenshots below.


recording at https://youtu.be/qHKwtefn21w

I demonstrated three things:

  1. Using your own TensorFlow models in Scratch
  2. Using pretrained models in Scratch
  3. Creating TensorFlow models in Teachable Machine and using them in Scratch

(more…)

Geo-spatial data in Scratch

Wednesday, November 13th, 2019

In this post, I want to share a random thing I made in Scratch this week, and ask for suggestions of what I could do with it.


Click for larger version

I get a lot of emails from teachers and coding groups asking for help with Scratch projects. They’re normally small or specific questions – asking for help figuring out a bug in a Scratch project or how to get something working.

But this week I got a more challenging email. It asked for a way to show a map in Scratch, and use a Scratch script to plot points on the map, given coordinates in latitude and longitude.

I agreed to give it a try. (Details for how to access it below.)

(more…)

NASA Space Apps Challenge at Hursley

Sunday, October 20th, 2019

This weekend was NASA Space Apps Challenge again – a weekend space-themed hackathon organised by NASA. It runs around the world, and this year IBM Hursley hosted one again.

I was in a small team with Faith. There were a variety of challenges to choose from and we chose Orbital Scrap Metal which was about educating the public about orbital debris, or space junk – explaining what it is, where it comes from, and the potential impact it has.

We created a game to help kids learn about space debris while playing. It’s fun, educational, and is all driven by real live data about space debris – each time you play, you interact with different real debris items.

(more…)

The Scratch coordinate system

Tuesday, July 23rd, 2019

In Scratch 3, the stage in the top right where your sprites live is implemented as an HTML canvas. Unfortunately the internal coordinate system used by Scratch logically to maintain state, and the coordinate system used by HTML canvases both work very differently.

For some of the Scratch blocks I’ve written for Machine Learning for Kids, I need to be able to convert between coordinates and sizes between the two different coordinate systems.

For example, my ML blocks can let a student use an image classifier they’ve trained to recognise what is on the background behind a certain Sprite in their project. To do that, the backdrop image block needs to:

  1. get the location of the Sprite (which will be returned using the Scratch coordinate system)
  2. get the image data of what is rendered on the canvas at that location (using HTML canvas APIs – using the HTML coordinate system)

I couldn’t find a way to convert between the two documented anywhere, and it was a tiny bit fiddly, so I’m documenting it here for the next time I need it!

(more…)

How to increase your social impact

Sunday, June 16th, 2019

This is a talk I gave at an event about how we are able to make a social impact through volunteering and community projects.

I’ve written before about how I made Machine Learning for Kids. But this talk had a different focus.

For this presentation, I looked to see if there are any general lessons that could be learned from my experience, to let me offer a little advice for people working in large companies like IBM about how to increase the impact of their volunteering efforts.

(more…)