# Computer Science Unplugged

>>Welcome to today’s Techtalk. We are very

pleased to have Professor Tim Bell from the Computer Science Department, the University

of Canterbury in Christchurch, New Zealand. Tim’s research interests include data compression,

computer science for children, which he’ll be talking to us about today and computers

and music. Tim recently completed–I think this is your last leg of your tour–a worldwide

tour, talking about his project Computer Science Unplugged. This is a project that seeks to

teach principles of computer science to–without using any computers. So, that is what we’re

here today. Please join me in welcoming Tim Bell.

>>BELL: Yup. Again, thank you very much. What–I mean, this–the day is just very quickly

run over some of the ideas that we’ve been working on with this unplugged project. I’ll

start with the demonstration just to give you an idea. Also, I suggest–so, I guess,

we have many–got engineers here today. Any sort of non-programming kind of people here

today? One and two, okay. I probably be going fairly quickly over some of the technical

concepts. Where it’s normally if I’m presenting this to people who aren’t engineers, we probably

spent–well, virtually three times as long on some of the concepts and dig in to another

data. But since you’ll be familiar with a lot of them, we’ll go a little bit faster.

And it’s all in the book, okay. You need three more, right. Okay. So, Greg has been helping

me out here with these black and white, squares which will be familiar to a lot of us as representing

the binary digits a little bit, fundamental units of everything that stored on the computer.

And when presenting this to young kids or even general public. I quite often start with

this demonstration where I’ve had–Greg, put up a random mixture of these binary digits

or bits. And I’m just going to add some extra ones to make it harder. And what we’re going

to do is a bit of–hopefully impressive magic trick with it. Running out of bits. There’s

some more here. Pick one in. Put one there. Okay. Now, actually, what I’m going to get–now

Greg is to simulate something going wrong on this digital data. So, it could be a CD

with a scratch blending on it by flipping over one of the bits. Okay. So, if you just

choose any bit and flip it over for me. Yup. Okay. You can try this at home. You know with

coins or cards or anything that’s got two sides. So, we got one flipped over. Just one.

Okay. It could trigger which one slipped there.>>Only one?

>>BELL: Just one. Yeah. One for everyone one. That’s right. And my job as a computer

scientist is to try and put this thing right. So, I think the one that you flipped over

might–I think that it be that one here. It was, okay. Thank you very much. And so, how

is it done?>>Parity.

>>BELL: Parity. Thank you. So, Greg had put down most of these cards here. And I put down

the extra parity ones, to make sure that number of white in each row was an even number. Okay.

So, there’s there, make it white to make it up to an even number. There’s four there.

So, I’ll leave that black because four is an even number. And down–same with the columns.

Three there so, need another white to make it an even number; 2, 3, 4, 5, 6. And 1, 2,

3, 4, 5. So, we need a white one there. And by the way, if you’re out at home that bottom

corner one will be correct for both the check program, the check columns. So, that’s a good

little check that–while you sort of talking and things you haven’t got one of them wrong

or at least you got two of them wrong. And they can be done with any sides obviously

and was–you can do it with coins or caps or whatever is at hand. But the whole point

of this unplugged thing is we take a concept like parity and we turned it into something

that’s kind of fun, maybe it’s big right there if we do it on tables with cards. And then

typically, would–yeah, would’ve start reasoning about it with kids. So, what happens beyond

this? What would happen if he’d flipped over two of them? Okay. And kids pretty soon work

out that if you flipped over two you can’t be sure exactly which pair had been flipped

over. So, if I say–if Greg had flipped over those two there. Then the fact that there’s

an odd number in each row and those rows and those rows, tells me that there’s something

wrong there and something wrong across there. But it could’ve been those two or it could’ve

been those two. Because when you flipped over one, it’s one row and one column that’s got

an odd number of white cards and let them see if therefore that you’d–that identify

the–exactly which one was flipped over. And so, then you one last trick of white–with

magic trick, you explain it to the audience and then you take it one step further and

say typically, I’d think get a kid to flipped over two. And I sometimes have an assistant

and the assistant will say “Oh, its ready now, Tim.” And–or it’s ready now. Okay. And

whether or not they use my name, it’s the one bit code to say whether it’s the top right-hand

one or the top left-hand one. Okay. And so, then you can get the right two. And leaves

almost a bit of puzzling to do. I had some long arguments with kids afterwards about

how it might have been done for doing two. So, it’s just a warm up to the general idea

of what we’re on about with this. And we started this. It sort of came from three things all

happening at the same time. Oh, we’ll move this over, thanks. So, one was–I was involved

in some music education and trying to communicate some of the boring subjects to kids. My kid

started school and they asked me to come and give a talk about computers and if you bring

along computer, it’s kind of a bit boring for the kids because they’ve seen computers

and what’s the big deal. And also we had a science [INDISTINCT] up in town. And they

were interested in displays and activities that would sort of show computer science to

kids. We can’t just put in a computer running software that they probably used at times.

So, what do you do? And I start looking how people popularized science topics. And a lot

of people who involved in popularization of science would take a topic that might not

be interesting. You go into a class and say, today we’re going to do statistics. And they

might not be that interesting. But if you say today, we’re going to lotto. Then suddenly,

it becomes a lot more interesting, which is just statistics with long notes, right? Well

today, we’re going to do viruses maybe not so interesting. But if you say, today, we’re

going to do snort. Then suddenly, it’s interesting. And there is one science festival I went to

where there was a talk that had snort on the title. And all the 10 to 12 year old boys

were going along to it. I mean, what could be more interesting. It was actually just

about viruses but then. Chemistry has it, you know publicized generally, using explosions,

okay. And the thing I’m worried that the next generation of chemist is probably going to

be a bunch of pirate maniacs because they’ve been to all these demonstrations using explosions.

With physics, pretty much the same, blowing things up, lightning and all that sort of

stuff. So, we’ve got this environment with all these scientific things that being popularized

with explosions and fancy things. But what do we do with computer science? And that’s

where the unplugged thing grew. And I meet with a few other people who are thinking like

this and we pulled ideas and tried them out over the years and gradually, put them together

into a bunch of things. So, first of all, there is a bunch of about 20 activities that

we have developed, which all have been tried and tested and work pretty well. And I’ll

show you a few of them so that next time, you’re ask to go and explained it to someone’s

class or some sort of situation where the people [INDISTINCT] and computers, you might

be able to use some of these. There’s also two books that we have developed. And one

of them is a bit more technical. The other one is design for elementary school teachers

that sort of age group and that sort of background. And they have all the handouts, some music,

activities on them and follow up and explanations about how all these things work. There’s a

show that we have developed and generally, this is being run in the middle of winter

in New Zealand in June. And it’s been sold out. Lots of people come along to it. I think

actually, when I see the computer science and the title–I think that we’re going to

show them how to stop, you know, the computer from crushing or something like that. But

from the surveys, we found out that they actually get a lot out of it. These are website. And

I’ll give the URL for that at the end. And a lot of these things are available directly

on the website. There’s a bunch of videos. And if it–one I just–so, we’re working on

a new set of videos. But I’ll just give you an idea what we’re on about with a video and

other activity. This is available on video.google.com. The computer science unplugged.

>>Welcome to computer science unplugged.>>BELL: Okay.

>>These are a series of [INDISTINCT]>>BELL: We’ll play that out in–it’s just

a three minute video. There’s actually three videos there. We’re hoping to make a whole

series of them, illustrating all of the activities. This particular one is not the one I was going

to show it. She just count the dogs. Let’s just skip to sorting networks. Okay, so it

goes through and explains how a lot of the output you see on computers are sorted with–or

sorted by name or age or arrival of an email date or page rank or whatever it is. And,

this is a parallel sorting algorithm. And what’s happening here is we have this chart

on the ground and two children follow along the arrows or the lines. When they meet, they

compare their numbers and this–the smaller number goes out the left-hand line, the larger

goes out the right-hand line. And so this is a parallel sorting network. We get three

comparisons happening at once. It’s sort of conveying the idea of parallelism; the idea

that we want to get this as fast as possible, get as much parallelism as possible. And they

can now sort it which is kind of fun, actually. Then we get to bigger numbers and it makes

a pattern. Then we can develop bigger sorting networks. When we did this video, I’ve had

a great idea at the end, to just throw them all up in the end. And in three seconds later,

I realized it wasn’t such a great idea but it made a good video. The–so with the sorting

network, you can start talking to the kids about–okay, we’re going to–what so we have

to sort eight things, you know, what sort of sorting network would you have. We start

off with three and two and easy ones like that. And then we can talk about parallelism

and how wide can it be, why can’t–you know, if you got six values being sorted, why can’t

it be more than three comparisons wide and all that sort of thing. All right. So, we’ve

got videos. We’ve actually done some outdoor events. This particular illustration here

is “myths in the park”. A bit of not theory on this particular case, which is not directly

computer science but–in the background, that orange on the ground there is actually a sorting

network as well. We have an event–public event. People could come along to the park

and do myths, and including for the computer science. That’s–the biggest sorting network

of Dan is 50. So, if anyone ever does more than 50 people sorting, you can let me know

and we’ll put it up on the webpage. And we built a new building at a university not too

long ago. And as part of the landscaping, we put in the computer science garden. So,

in this garden, you might notice that there are seven bridges. And when I have a bunch

of school kids coming out and they’re getting a bit rowdy in the classroom, we go outside

and tell them to solve the “seven bridges problem.” So, they have to cross every bridge

exactly ones. And it can’t be solved. So, that’s used to give me a good break from the

kids while I ran around trying to solve it. And then when they get suspicious and saying

it can’t be solved, then, we try and get them to, you know, prove it, you know. And some

of them actually manage to reason through–say, the reason is that because the degree of the

nodes is too many with an odd degree on it, right? And, then I use that language. But

they manage to reason that you need to have an even number of bridges and things like

that. At least some of them do. This is the show. That handsome dude there is Arnold the

“Wonder Parrot”, actually. And Arnold tends out to be the star of the show. Small, fluffy

animals will always upstage. Here, he got in as a gag because of the parroty trick.

Okay. But it tends out [INDISTINCT] they like all sort of things, but the one thing that

almost everyone liked was Arnold, the Wonder Parrot. The books that I’ve talked about–I’ve

heard a lot of people ask to translate them into their own language. And so, in fact,

the Korean version of it has just come out and you can order it as to [INDISTINCT] as

you want. And there is two Chinese versions, traditional and simplified Chinese and production.

And there’s even a Swedish version underway. And in fact, there’s actually about ten languages,

one or another person. I just got a request three days ago to–for a Turkish–to do a

Turkish translation. Fair enough. If you really want, there’s actually an Uzbek translation

underway. So, I got an email from Uzbekistan where an aid agency was working with kids

and they wanted to do computing in the schools, but there’s no computers. And so, this was

great because they could do it without computers, that they wanted to translate into Uzbek.

So, cool. So, I’ve talked about the “parrotism”. Let me talk a bit about what the goals are,

in case they’re not obvious. So, the first one is I want to communicate to people what

computer science really is, because, I think a lot of the people–if you ask a bunch of–especially

sort of, 12 year old, 13 year old kids, this is where they’re making decisions about what,

you know, career, direction I want to take. If you ask them what computer science does

on, they may talk about programming or talk about perhaps working on your own, maybe working

long hours in the web, sort of thing. And well, some of those things might be as big

to being a computer scientist for some people. A lot of it, of course, involves team work,

logical thinking and a whole lot of other schools. And sometimes people get counseled

against doing computer science because they are good at working in teams and relating

to people and so on. And we want to try and communicate a lot of those sort of ideas.

I want to reach minority groups, you know, and disadvantaged groups. And I’ve talked

about making it available for people who don’t have access to computers. But also a really

big minority in computer science, of course, is woman. And generally, the kind of environment

that is in schools for using computers is one that’s probably doesn’t always appeal

to women. And you have a lot of these puzzles and interactive team games and that sort of

stuff do. And the problem solving kind of side of it does. So, sort of, by then saying,

you have to learn programming, and then we might lead you to computer science. It’s like

you can do some computer science. And by the way, if you want to do it on a computer, you

might need to learn programming to do that. We obviously want to create interesting computer

science especially the demand for computer science graduates is increasing rapidly. The

supply is decreasing rapidly. And I think a lot of companies are getting very worried

about the supply and demand situation. We use it to promote our own courses. If we’re

invited to go to a school, then this is–gives us a tool to actually interact with kids.

And especially, when we try to influence decision makers, kids making decisions about their

futures, but teachers and parents have a big influence, you know; the parents read the

newspaper, they hear about job losses and outsourcing and things like that. They have

an influence on their kids. And likewise, teachers, you know, they might say, “Well,

you like working on your own and you don’t like communicating with people and all that

sort of stuff, why didn’t you do computer science.” We really want to try and get the

message across to some of those people that, in fact, maybe it involves more than just

the [INDISTINCT] thing. And we have fun. Maybe that one should be first. In terms of who

this is being–the audience that we’re delivering this to, I talked about the family shows that

are really popular and which is, probably, more entertainment than education. But, you

can do a lot of these things, and some of the kids will get something out of it in other

words. Others will just enjoy it and that’s okay. School classes, we can actually sit

down and do exercises and do a more thorough job of looking at some of the concepts. School

assemblies, we have large groups of kids together. Sometimes, they get together once a week or

something. And you might have 500 kids there. Some of these are quite good in the large.

So a lot of these activities are very big and theatrical, and that makes them easy to

deliver in that sort of situation. In New Zealand, at least, we have quite a strong

movement called “SeniorNet”, which is senior citizens who have typically board a computer

so that they can send email to their grandchildren. And then they discovered that they need computer

support. And they get together and help each other with their computers. And generally,

they’re very capable people but they’re completely new to computers. And give them–people to

give them talks and so on. And I found that a lot of these illustrations are very useful

in the talks. They get them very well. And it’s even been used in a trial. In fact, one

of the–one of the methods–so, that compression is near that I’ve worked on. And one case

whereas an expert witness, there was a method that involved LZ coding. And at that time,

when there’s this million dollar–multi million dollar [INDISTINCT] going on, my son was writing

out a story. And he got a bit lazy. And instead of writing out the word, he would sort of

find the word, use the word before and put a little arrow pointing back at it. And I

was sort of going to tell him off. And then I suddenly realize that, in actual fact, what

he was doing was LZ compression. So, what we’ve got here is [INDISTINCT] missing and

to fill that one. And what I’ve done is I followed that arrow there to where it’s occurred

before and, so we can fill in all of that text just by following the arrows. And then

here, we’ve got a really big chunk of text. And we follow the arrow back to where it is

and get a big chunk. And now, the system has kind of learned that big chunk. And they can

replace it like that. So, simply [INDISTINCT] LZ compressions. Sometimes it’s called [INDISTINCT]

zip, gzip, and ping, and gif, and a whole lot of situations. But it’s–we can setup

this worksheet for kids to work on, and then we can give them some text and they can try

and see how many things they can replace with where they have occurred before and so on.

Because, the real LZ methods don’t use arrows. They use two numbers right when it sees how

far back the arrow points and how many characters it’s pointing at. Somehow, we’ve removed all

the zeros from these slides. So, let me just put them in. In fact, so it’s 10 minutes and

that’s 30 minutes. So, let’s continue with the scene here. So, we have to show you that

is–can I give you of sort of a ten-minute Science seemed to sort of show, you know,

with the slide, you know, 3 o’clock this afternoon. There will be a show in the auditorium and

we’ll explain some concepts from Computer Science [INDISTINCT] about a one-hour show

which is the one that we run as part of this mid-winter festival. Usually more than about

an hour we find that no matter how much fun the kids are having they tend to lose concentration

after about that long. With a new–all of these things there’s always a balance between

entertainment and education level. And sometimes I think it’s important not to get too hanged

up on trying to educate people about every fine detail but let them just enjoy it and

think through the concepts on their own. But generally I’m trying to provide some sort

of follow up and these follow up material on the internet too. So, for example for the

Parity one that we did before we were looking–that’s basically a Modular 02, area correction [INDISTINCT]

sum, Okay? Just adding things up Module 02 and then we can follow on to other area of

correction codes. So, for example ISPN numbers, the last digit of an ISPN number is a check

digit. Did you know what modulus the check digit on ISPN is?

>>Eleven.>>BELL: Eleven, yeah. Okay. So, it’s Modular

11 which means those numbers between zero and ten. And if it’s a ten, the digit that

is used to represent is an X. So, in principle one in every eleven of the books in your library

will have an X as a check digit. And it just means that’s a number 10. Okay. And we give

the kids the formula for the check digit and they can go to the library and check that

they all add up. And, you know, what would happen if the digit was typed in incorrectly?

What would happen if two of them were swapped around and they can experiment with all of

those little things. Another really important principle I think with most of the kids is

to get the answers from them. So, for example with the parity thing there, I mean, I–we’ll

explain this parity because most of the audience know what parity is. But with the kids, you’d

set to get them to count the how many what’s squeeze they’re out of it to figure out if

it’s an even number that figure out that there’s an odd number for themselves. And what I want

to communicate there is that they probably act capable of figuring out these concepts

from Computer Science for themselves. And if they can figure out that concept maybe

they’ll go and to deal with some of the problems that we haven’t solved. Well another problem

with education I think is that because it has to be tested. We tend to have a Science

book that contains everything they need to know about Science. They’d learn it all and

if they can get all that right. Then they passed the test. But in actual faith there’s

more in science that we don’t know of them but we do know, right? And the more we find

out the more we find out what we don’t know. And it’s the same in Computer Science. I mean,

there’s lots and lots of problems that we don’t know how to solve [INDISTINCT]. There’s

lots of things that we’re still trying to do. And that’s what I guess keeps us Computer

Scientist some business. But I think a lot of children and the general public would see

that the main events is that Computer Science is can be get from, you know, three Gigahertz

machines to six Gigahertz machines or something like that. But one of–let’s say for example

NP completeness right under the biggest questions in Computer Science. You can deal with quite

easily because it’s about exponential explosion. And it’s kind of humorous, right? You can

take a small problem like Math coloring or what, interpreting cells, Math problem or

something like that. And kids seemed realized that these things are really intractable with

these just two many things to try out. And they can wait out how long it would take if

you could do a million or billions operations if you see [INDISTINCT]. The whole infeasibility

of these problems becomes a bit pretty obvious and because that solved problems like the

parity one, the one we’re trying to think. Well, maybe if they get the Math right and

they work on it they’ll be able to solve some of the other hard problems that we’re trying

to deal with as Computer Scientists. I just run through a couple of the activities that

we’ve developed. Um, just to give you a bit more of a feel for things. Binary numbers

turns out to be a lot of fun and I guess moderately simple concept but very fundamental to everything

that happens on Computer Science because everything is just bits. And these two main ways that

I presented, one is getting a bunch of kids up in front of the class as I illustrated

here. And each one has a dot or number of dots on their card. It’s either visible or

not visible. In fact there is a black and white card because it corresponds to the black

and white that we had on the parity. Okay. So, you get them. One my colleagues does this

way where each card–so each child holds a card and now they had to hand it up or they

held a hand up to which means the audience can kind of read things up a bit more easily.

But either way you get this binary numbers that’s 10101 there. Now, to decode that binary

number you don’t even need to be able to add. You just need to have it count up to 21. And

I [INDISTINCT] there’s 21 dots on the–on the picture. Now, making reasons with the

kids like, well, is there another way that we could have done 21. That card with 16 dots

on it. What if–if that wasn’t showing we can’t possibly get 21. So, we have to had

the 16 and you kind of developed the [INDISTINCT] over them for completing it and so on. Incidentally,

it’s–just giving out the cards has been [INDISTINCT] give out the one card and then the two cards

and ask them what comes next. They’ll figure it out for yourself thing. Normally they’ll

three, put out the four. No explanation but then typically kids will either say six for

the next one. You know, 1, 2, 4, 6. And then they’ll realized that, no, 8, is the next

thing in the pattern and usually you get up about a thousand and 24 before they kind of

run out of steam. It can also just be done on disc so we could give the kids a set of

cards. And each one can play around with the cards and try to get the right number of dots

showing. Just things that maybe obvious to us but are there–is there more than one way

to represent the number five? Okay. What’s the smallest number? Generally, they’ll say

one and then after look [INDISTINCT] they’ll say zero. What’s the largest number? The idea

that the largest number is you double the biggest card and subtract one. All those sort

of patterns that come up with the powers of two. What would the card be, you know, if

I card deal on the table. How many dots and typically they’ll say, “Well, maybe it’s 0

or maybe it’s a -1.” And eventually someone will reason that it’s actually got half a

dot on it. A picture you got to see the cards and they got a half dot and a quarter dot

and so on. And can [INDISTINCT] a fictional binary numbers. Then moving from that unto

just my so called ASCII code which [INDISTINCT] that, how would you decode these as characters.

And again, kids will figure out for themselves that you should use a code something like

that on there. And then introduce the idea of modems communicating using beeps and we

use a low beep and beep for zero and beep for one. Okay. SO, I’ll send you a message.

I should be able to figure this out. So, left to right is the ones in zeroes. So, that’s

beep as zero and beep as one. Okay. Beep, beep, beep, beep, beep, beep. What would be

the–Yup, H, yup. Here we go. And here’s the next letter. Beep, beep, beep, beep, beep,

beep. All right. Okay. And that’s my [INDISTINCT] institute okay? High. And then we can talk

about how, you know, the modem it’s actually go a little bit faster than there and they

make awful sounds and so on. Did it at one school and the kids who went out into the

playground afterwards and were communicating to each other like this because it’s actually–it’s

a simply enough code that you can kind of memorized most of it to work it out and you

hit as you go along. And look [INDISTINCT] just what we’re getting carried away of coding

here. So, base 1 coding we generalized from base 2 to base 1. Okay. Where each places

was one time as much as the previous place. So, here’s the numbers one, two, three, four

five using just one digit. And, you know, where else is that used Telemax, counting

on your fingers, call telephones and you go, tic, tic, tic, tic. And most important application

of this coding and you’ll use a birthday cake. And in fact one of my friends went to a birthday

party with ahead a hundred candles on the cake. And you’re probably aware that as you

get one more candles on the cake its gets more, more dangerous because you kind of get

this up [INDISTINCT] from the flames and this particular occasion actually the cake turned

into a molten ball of wax and set light to the ceiling and that was either the party

they had to get the fire brigade in. Computer Science is so risky. Each candle can either

be lit or not lit. Okay. Okay. So, with five candles, what’s the biggest number we can

do is 31. Okay. In fact, the sum went on 64 is much more significant because that’s when

you need one each of the candle on your birthday cake right there. Also, fingers instead of

just count one to five on one hand. Each finger can be either up or down, right? So, it’s

one, two, three, four, you have to be careful with four, five, seven, eight and so on. If

you realize in New York I find out that the taxi drivers used a digital communication

system. I was driving around New York and they gave me guidance on what I should be

doing using digital signals usually the number four. So, you know, like don’t slow down for

an orange light. That red light doesn’t mean you should be stopping. Let’s just keep moving

here and sort of missed, just like that. Okay. Image compression, for this one, what we do

this is–someone said this is made of a can of beer. But it’s actually spray paint can.

Actually I didn’t–I didn’t bring a spray can with me today because I just got of the

airplane, but I was giving this talk awhile ago and I saw someone the previous night and

they asked if I want anything, I said “Yes, I need a spray can” for this and a pack of

matches for the birthday cake. And they went into a gas station at 10 o’clock at night

and asked for a can of spray paint and a pack of matches which I–you try that if want to

have fun. What we do is–he’s Arnold again. Arnold. Is the feature in the show. So, we

look at how Arnold–how the image of Arnold is coded using pixels. We can talk about how

pixels are just paint by numbers, I mean, it relates back to the bits, and the more

bits you have the more accuracy of how the image you have and so on. But this particular

code here that I’m using is a run-length code and it’s the one that’s use in fax machines

and it’s got the zeroes, it’s missing, you know, it’s missing a couple of key ones here.

And what it represents is the first formings that we’ve got for–it’s strictly black and

white because it’s a fax four white pixels followed by 11 black pixels followed by two

white pixels. And that is the image that I’ve started to do here. So we’ve got four white

pixels 11 black, two white and so on and we’ve just got the last three lines left to do and

at this point we pull out the spray can and have a giant [INDISTINCT] and print pixels

in effect. So, I have a little mask, you know, this we’ll use for spraying pixels through.

If you’re trying this at home, practice first because of it’s a wee bit [INDISTINCT] to

get nice even pixels but it is possible. Now you could do that just using a Power Point

presentation but it’s–there’s a whole of drama when you get out the spray can and you

get out the–and there’s lots of fumes as well by the way. But, it’s–in fact one of

the things about all of these in some ways it’s just [INDISTINCT] Computer Science. It’s

actually just doing it with real things instead of a keyboard and a bunch of pixels on the

screen. And I think for some learners that’s really important. Like there are some people

like to hear it, some people like to read it, others like to actually experience it

and it can make it more memorable. That’s the final picture by the way which if we zoom

out, in fact that’s the original one that it was taken from. So, it’s a coffee cup which

of course is very relevant in computer science [INDISTINCT] Okay. Information Theory or Shannon

Theory. So, like a challenge how are we going to do this? This is a retro fitted activity

and one of the things that tends out to be really good for this is the game of 20 questions

or basically I’m going to give you yes or no answers. So, I’m thinking of a number between

1 and a 100. You can ask any question you want but I’ll give you a yes-no answer. So,

what question do you want to ask?>>How many questions do we get?

>>BELL: You can have as many as you want actually.

>>Is it greater than 50?>>BELL: Okay. Is it greater than 50 is the

question. The answer is no. Okay.>>[INDISTINCT]

>>BELL: Okay. Yeah. Okay. I’ll put you out of–it was 27 by the way. Okay. Just–yeah.

Okay. And I was doing this the other day and someone said is it less than 50? And I said

yes. And then someone else said is it a 100? Okay. And, well, exactly, which actually it

was great illustration of information theory because what is the probability that I’m going

to say no to that is answer? A 100%, right? You know that’s less than 50 so the answer

to is it a 100 a 100% probability of that message. What’s the information content, how

much more do you know now that I’ve told the answer? Zero. Hundred percent probability,

zero information. Okay. That’s Information Theory. That’s what it’s about. It’s the relationship

between probability and information content. So, all right. Okay. Here’s another one. I’m

thinking of a number. I’m not telling you anything about the range now. What question

do you want to ask?>>Is it an integer?

>>BELL: Okay. It’s an integer. It’s a positive integer I’ll tell you that.

>>How many bits in its binary representation, yes or no.

>>BELL: It’s a yes or no question. Okay. So, how many bits in its binary representation?

But then you could guess each others bits using yes or no questions, right? Yeah. Okay.

And–which actually is equivalent to saying is it less than two, is it less than four,

is it less than eight, and so on. And that is actually quite a legitimate way of representing

arbitrarily large numbers and there are other ways of doing it too. Generally after doing

this we can come down to looking at a decision tree so, if I tell you I’ve got a number between

zero and seven, then possibly the first question you would ask is, “Is it greater than or equal

to four?” And suppose I was thinking of the number five, I would end up saying yes, no,

yes. Two points to make here. First of all, the yes, no, yes is just the 1 0 1 that we

were doing with binary before. Okay. So, the path down the tree is the binary number. But

the other one is that if you and I were identical twins like we were computer programs that

always did the same thing because the same computer program will generally do the same

thing. Then I can anticipate what your question will be and so, I can just say, “Oh, the answer

to a question was no, ye, yes.” Okay. And that’s how a lot of data compressions work

is that they anticipate what the questions are going to be and they just see out the

answers to those questions. Now this is a trivial sort of coding, to saying that everything

is equally likely but suppose now we’ll guess a sentence. So, I’m thinking of a sentence.

What’s the first letter?>>Is it Q?

>>BELL: Is it Q? No.>>W?

>>BELL: It’s not W.>>Is it E?

>>BELL: It’s not E.>>S?

>>BELL: Not S.>>T?

>>BELL: T, thank you. Okay. That cost you five bits of information. Okay. Five zeors

and ones. So, five yes’s and a no. Okay. What’s the next letter?

>>H-E>>BELL: H and then E. Anyways. Okay. Cost

you one bit each to get that information. Okay. What’s the next letter?

>>Space?>>BELL: Space. No.

>>R?>>BELL: Oh, very good. Okay. Two bits. Higher

information content okay because there was a bit of surprise there, a lower probability.

What’s the next letter?>>T?

>>BELL: T.>>Space?

>>BELL: Space.>>[INDISTINCT]

>>BELL: Oh. It’s just like working with the kids. The kids are great though. I mean, one

of the things about working with kids–space [INDISTINCT] okay, for those who didn’t hear–is

that they don’t mind asking all sorts of questions and they don’t mind saying, “But you told

us something else before,” and in fact once or twice we’ve actually discovered things

that we haven’t thought of because, you know, the kids challenge you on stuff. One of my

colleagues was doing something with cryptography, you know, using envelopes and messages inside

envelopes and someone had well, got it wrong basically and put the wrong things in the

wrong envelopes and it still worked. And afterwards they looked at it and they realized that in

fact the system that people have been using for cryptography didn’t rely on it’s matching

up to where exactly to still have a high strength of encryption. And so it published a paper

about it. And–that’s one nice thing about working with kids, they don’t mind asking

questions. I appreciate that question too. What have we got? T-H-E-R-E space. What’s

the next character?>>I?

>>BELL: I. very good.>>S?

>>BELL: S.>>Space.

>>BELL: Space.>>A?

>>BELL: Not A.>>N?

>>BELL: Not N. Oh, sorry, it’s N, yeah. Very good. I used to be able to get that quickly.

And we’ve got this idea that some letters have high information content some have don’t,

so. And one of the illustrations in the textbook is if you said “Today I got to ride to school

on a spaceship,” low probability high information content. And for those of us who’re really

interested of course we’ve got the negative logarithmic relationship between them. I wouldn’t

normally get into that with elementary school kids. Okay. Basically there’s a lot of math

and number stuff in there but there’s a lot more of computer science in there and human-computer

interaction I think is really important area that we miss out on and quite often illustrate

this with the Stroop effect in psychology. Someone to put up a word and you just kind

of call out what color is the word is written out. Not the word but the color that it’s

written on. Here we go.>>White.

>>BELL: The color’s black. Okay. In new Zealand we call this black. Okay. Just humor me here.

Okay. Next color.>>Red. Blue. Red. Yellow. Green. Black.

>>[INDISTINCT] my glasses [INDISTINCT]>>BELL: Okay. Yeah. Okay. He’s got the idea.

So, you take your glasses off. It’s actually a lot easier. Yeah. And so on. We can do it.

What’s this got to do with computers and there’s lots of examples where this comes up but one

that every kid has probably come across is if you view Microsoft Windows, you’re looking

at the screen what’s the written on then back and that you press to stop the computer?

>>Dell.>>BELL: Dell. Yeah. Okay. And, you know,

who thought it was kind of strange that you press the Start button to stop the computer

and most of them will say “Everyone knows you press Start to stop the computer,” and

point out the first thing in the Start is to Shut Down or Log Off or something like

that. And that off or restarts the computer and so on. Now that’s not a big deal. People

got used to it and it’s a kind of culture thing around that in fact with almost any

audience you can demonstrate [INDISTINCT] ever been frustrated by a computer. Has anybody

ever found a [INDISTINCT] message that tells them not to do what they need to do, you know,

that sort of thing. And, well, in fact quite as safe as anyone of you have felt angry of

your computer, okay, and the violent thoughts towards the computer. And this is my solution

here by the way. This is the stop button. And you cannot–you can’t discuss about–you

know, this new interface would probably confused people on that sort of thing. So here’s a

very familiar if not out-dated error message which sees, you know, it’s either of this

problem or this problem. I’m not going to tell you which one. Okay. Now, let’s just

have some fun here today. But I will tell you the solution, all right. Replace the disk.

And what happens if you replace the floppy disk, you get the same error message. Okay.

That’s like the printer is not working check the printer cable and try again. Then the

result printer not working and check the printer. And what you find as most people have learned

to disbelief error messages or as soon as it comes up or click the okay or the cancel

button or whatever didn’t [INDISTINCT] it gets people thinking about interfaces and

pops the idea of that we need to think a little bit or more about the person using the interface.

That’s one of my favorites, so, yeah. Cannot delete the file, delete some files and try

again. Okay. And actually, I mean, you can talk about what actually might caused that

kind of problem. Taking it, unplugged away from the computer, so here’s an illustration.

This is a road in New Zealand. If you go across the west coast you come across this round

about or roadway. And what you’ll notice is someone has put a roadway line right to the

middle and it really is, a roadway line right to the middle of it. And when–as you approach

the intersection you notice that there’s actually something like 14 signs which really says

a bad design means to you. They have lots of documentation. All right. This is my favorite

one. This is a road and a rail bridge shared. It’s the road that have to give way by the

way. My favorite one is assigned for the cyclist. Okay. It’s a little bit backward in New Zealand

but we do have our ton bits of road. In terms of activities for kids, we’ve got a thing

with designing doors and figuring out, you know, what the affordances are on the doors.

And especially what getting across to kids, the idea that the system is the machine and

the user that, you know, rather than a really good system isn’t just the box that goes really

well, but it’s this thing here, the user plus the machine and if we have to understand this

part of the system and how it works. And maybe we need people who know a little bit about

psychology and sociology and team work and interaction and all that kind of thing to

be designing the stuff that people were going to use which is news to a lot of kids. Okay.

I think, actually, that’s probably, you know, I’ll just do a sorting. So one of the activities

with sorting we have balance scales and a whole lot of weights that look identical,

so–anyway you can compare them as by balancing them and, of course, they completely simulates

the situation you’ve got on the computer with a binary comparisons. It’s pretty easy to

get kids to figure out selection sort. You know, trying to find the heaviest one and

then put that aside. Find–seeking the heaviest and put it aside and so on. But you can even

do a quick sort, you know, just a pick away at random and divide them in the small ones

and the bigger ones and then, of course, they’ll deal with those. And let’s talk about Bozosort

which if you haven’t come across it, it’s basically mix them all up and find out if

they’re sorted and if they’re not mix them all up and try again and see if they sorted,

which, of course, has some exponential complexity and it’s about–it takes a long time, especially

if you got one kid trying to do it that way while someone else is using Quicksort. Okay.

All right. And now I’ll show you the sorting network. I think that’s probably everything

enough to give you flavor of what the things are about. There’s a whole bunch of activities

there. And the goal of the project is just to make this available for people to use,

so a lot it is on our websites. There’s a book that’s about a much more complete list

and we’re just starting off a new project where we’re going to have more videos and

get lots of people contributing ideas for this but we’ll only put them up if they’re

being tested and we know that they actually work well. It’s very easy to come with things

that don’t quite work and vice versa. Actually, one of the activities that goes down incredibly

well is one with–the story line is there’s a bunch of pirates offering a commuting service

between these islands, okay, as they do. And they don’t publish a map, so you go to an

island and you have to say I want to take ship A or ship B and we actually have adults

posted around the building or even around the premises and the kids have to run up to

an adult and–who’s an island and they’ll say, ” I’ll take B.” And they say, “Well,

you have to go over there.” And they race over there and find out where they go. And

then after awhile they realized they should be drawing a map of this and then they realized

they should actually be labeling them with As and Bs, so, because they get sent back

to where they start and so on. And the goal is to get to Treasure Island. And it’s adventure

to get there and the first [INDISTINCT] wins and all that sort of thing. And then we can

start talking about–well, what would happen if instead of islands and so on, I just represent

the map with circles and arrows and supposed that’s the island that you started and I’m

gonna represent treasure island over here with a double circle and we’ll label the map

like that and we can start reasoning about what would actually get you to the treasure

island. Okay, otherwise known as the exiting state. And kids don’t need to be too old.

It didn’t take so very well but they can figure out what it is. And then that begin relates

back to the parroty thing, right, because the exit–well, in this case the treasure

island means that there’s an error that identifies rules and you’ve got an error of the As and

Bs of blacks and whites. Okay. But then in the book, we’ve got things like [INDISTINCT]

that can be constructed by following around these finite state machines. And another exercises,

interfaces, so we can get someone’s digital watch with let’s say three buttons on it and,

you know, we take it a pile basically. So you’re watch is showing the time. And if you

press button A then probably it will be showing a stop watch. Oops. And if you press button

A again and maybe it’s going to let you set the time, and if you press button B here and

what happens–and so on. And we put together this finite state machine that explains the

interface on the watch. And generally it’s moderately complicated and it helps them to

understand that the interface isn’t just the bunch of buttons and like, you know, is–are

we going to use beige buttons today or green buttons or whatever or are we going to put

the okay button to the left or the right of the cancel button. But in actual fact that

this machine hidden under the surface that the user has to try and understand. And I’ve

got some finite state machines like microwave ovens and one of the video recorder. A video

recorder has just got dozen of states and lines going everywhere and it sort of makes

it obvious why so many peoples video recorders are flashing 12 o’clock because, you know,

the sequence you have to navigate your way through in the same way that they had to find

the way the treasure island. Okay. It’s a hidden finite state machine. They have to

try and find their way through it. And mostly we don’t bother reading the map or the documentation

and try to find the way through it. Okay. So that’s the taste of Computer Science Unplugged.

That’s the kind of things we’re on about. Always kindle your ideas, things that you

might have done as illustrations that work really well or activities and also comments.

Anyone that has done some of these things, we’ll track them out. And people always come

of new materials and new ideas perhaps to deal with them and so on. And I want to try

and click that together and make it available for general use. So, on that note, thank you

very much for your time. And if you do want a copy of the book, email me and I’ll give

a free one, PDF. Yeah.>>Any questions or…

>>So just–these are really cool stuff. Are other people doing those kind of like math

or chemistry and going to this extent and having this kind of manual or…

>>BELL: Oh, I get you. Are the math’s and chemistry people making manuals and so on?

There are–there are–especially, for physics and stuffs there are books about–there’s

a whole field called the public understanding of science. And the journals for public understanding

of science and so on, but computer science has tend to be pretty–too busy sort of, you

know, doing the stuff to write some of those–these things down. Yeah. But there are–yeah. And

this is also quite of a bit a math stuff too. There’s a math websites and things like that.

Yeah.>>At what age–how young are the kids when

they can sort of start to interact with this sort of understanding.

>>BELL: How young are they when they can start to interact? Some of these activities

often was like four-year-olds, mainly just sort of I can say are done with four year

olds. But, you see, I’ve done it quite so with four year olds. Okay. Because when you

think about it what’s–and if you got a bit of patience what required is not that high

if you got someone who can cope with a few instructions. And but I also use them like

with me university classes just as a one-minute illustration. You know like maybe at the start

or in the middle or something right there and especially something that I can say I’ve

done this with four year olds. So you guys, you know, should have no problem with it.

The age group that’s really important for us to aim is like 11 or 12 or 13 because that’s

when they’re about to bring some bridges. Like they might decide that they hate math

and they’re just going to do well enough to get through in it. And so I want to get them

excited at their and think, yeah, that’s what I want to do. I better get my math stronger,

that sort of thing. Yeah.>>Okay. That’s it.

>>BELL: Okay. Thank you.

When he talked about teaching kids, what age is he referring to? Is it 7 year olds?

comic sans ftw

Is this person talking alone?

nice, I love Computational Thinking