Archive for the ‘kids’ Category

I-Spy (using Watson services from Scratch projects)

Wednesday, February 22nd, 2017

It’s half-term week, so that means more time for geekiness with the kids.

This is something Grace made this week: a game of “I spy” built using Scratch, that uses the Watson Vision Recognition API to let the game dynamically pick objects that it recognises in photos, so you can then make guesses.

Apart from being a fun game to make in it’s own right, I wanted to share why I particularly think it’s useful to be able to use Watson API’s from Scratch projects.

Screen Shot 2017-02-22 at 13.43.53

(more…)

Owlbot: Faith’s first chatbot (and barcamp)

Sunday, November 13th, 2016

For her talk at Barcamp Southampton yesterday, Faith did a presentation on owls, together with a chatbot she trained to answer questions about owls.

I’ve brought Grace to a couple of barcamps with me before: Barcamp Berkshire and Barcamp Bournemouth. But this was Faith’s first time.

She decided that she wanted to do a talk on owls. That wasn’t a big surprise… she’s a little bit obsessed with owls.

Some of Faith's owls

(more…)

Machine learning “Top Trumps”

Saturday, October 1st, 2016

A simple demonstration of machine learning to let a child train a computer to play Top Trumps

I’ve been talking for a while now about how we introduce the idea behind machine learning to school kids. I’ve given several talks about it but I’ve also tried out a couple of approaches to it.

Now I’m trying out another: training a machine learning bot how to play Top Trumps.

I’ve put a demo at toptrumps.eu-gb.mybluemix.net.

screenshot

What is this?

It’s basically Top Trumps: that card game I used to play as a kid where you choose one of the attributes on a card, and if it beats the other player you get their card. Except it’s online, and you’re playing against a computer.

But the computer hasn’t been given any strategies on how to play, and has to learn from the player.

Initially, it makes random choices, but it learns from playing against the player. The more turns it plays, the more training it gets, which it uses to make predictions of which choice would give it the best chance of winning. (more…)

A night at the museum

Thursday, August 25th, 2016

I shared this at the time on twitter, and then went off on holiday. Now we’re back, I thought it’s worth sharing a little more.

I took Grace and Faith to the Natural History Museum in London, and we had a sleepover! It’s something they do for kids aged 7-11, called Dino Snores for Kids.

(more…)

Watson Rock, Paper, Scissors

Sunday, June 26th, 2016

A simple hands-on activity to let kids train a machine learning classifier to be able to play Rock, Paper, Scissors.

Screen Shot 2016-06-26 at 13.59.20

I’ve written and spoken before that I think we should do more to introduce children to the idea of machine learning. And I’ve tried introducing my two kids to it, such as by making a Code Club-style game with them: we built a system to play Guess Who, that they trained both to understand what you say and to recognise the characteristics of faces from photos.

This weekend, we tried out another idea – Rock, Paper, Scissors from a web app, using the web cam to see your moves, and training a system to recognise your hand signs.

DSC06146

(more…)

An introduction to machine learning with Guess Who

Thursday, February 18th, 2016

I tried introducing my two kids to machine learning by helping them make a game this week.

In this post, I’ll try and explain why, how we did it, and how it went. And if you make it all the way to an end, I’ve got some videos and a link to a demo to show you what we made.

Why

I think we need to introduce the basic concept of machine learning to children.

I think the current approach to introducing coding using things like Scratch aren’t enough. This isn’t to say Scratch isn’t great (I’ve been running a Code Club every week for the last couple of years, delivered almost entirely using Scratch, so I’d be the last person to say it isn’t a fantastic tool). It lets you snap together blocks representing actions to teach the programming mindset of getting a computer to do something by you breaking the task down into a series of steps.

I think we need to add to this with something that introduces the model of machine learning – getting a computer to do something by training it with examples of doing that task.

I’ve been saying this for a while – I gave a talk about it at an education conference last year, I’ve written about it here before, and it was the theme of a lecture I gave at a science society in London last month.

This week is half-term and I have the week off work, so I thought I’d finally spend a bit of time trying it out by experimenting on my own two daughters (Faith and Grace, who are aged 7 and 11).

In Code Club, I mostly try to introduce programming concepts by helping the kids to create games. Sticking with what seems to work, I’ve helped them to make a game by training an ML system how to play it.

(more…)

Recycling: a Scratch game for Code Club

Sunday, April 19th, 2015

Grace and Faith have been helping me work on a new project for Code Club. It’s not quite finished yet (Excuse: Thanks to the holidays, it’s still over a week till my next Code Club class!), but it’s close enough that I thought it’s worth sharing the work-in-progress.

The basic idea (more than a little inspired by an old Mega Drive game we’ve played) is that you have to catch falling bits of rubbish and put them in the correct recycling bin.

A playable version is embedded here if you’re using a Flash-friendly browser. Press the green flag to start, use the arrow keys to run left and right, and press the space bar to throw what you’re carrying. (If the embed isn’t working, you can also get to it on the Scratch website.)

I’ve started writing up how we made it, using Code Club’s lesson format tool. (A tool that reads Markdown with a few Code Club-specific extras).

The write-up is still a little rough around the edges, but the source for what we’ve got so far is on github.

And I’ve used lesson_format to create HTML and PDF versions in the Code Club style.

Parsing roman numerals with Python

Sunday, November 2nd, 2014

Or… how I managed to make some of Grace’s maths homework into another Code Club session

IMG_0355 Grace had some maths homework to do this weekend, converting a bunch of roman numerals into normal numbers.

Being an interfering sort of parent, I got her to show me what she’d done when she finished.

I could see that she’d gotten a lot of them wrong. She had missed the subtraction you’re supposed to do when a large value follows a smaller value.

I’m a big fan of rubber duck problem solving, but she hadn’t spotted that she’d gone wrong. I decided to try something similar.

(more…)