>> 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.
