Tuesday, October 11, 2016

Reading, Writing, and Programming: Mitch Resnick at TEDxBeaconStreet

ook place in May a couple years ago it
was a saturday afternoon in May and I suddenly realize that the next day was
mothers died and I had gotten anything
my mom from others died so i started thinking about what should i get my mom
from others died and i thought about it had an idea
I thought why don't I make her an interactive mother's day card using the
scratch software that been developing with my research group at the MIT Media
Lab with scratch
we developed it so the people could easily create their own interactive
stories and games and animations and then share their creations with one
another before making my own mother's day card
I thought it would take a look at the scratch website
that's an online community where people can share their scratch projects with
one another
you know over the last several years to bit about 3 million projects that have
been shared on the scratch website so kids around the world ages eight and up
have shared their projects and I thought well I wonder if of those three million
projects where anyone else is thought to put up Mother's Day cards
so in the search box i typed in mothers died and I was surprised and delighted
to see a list of dozens and dozens of mothers day cards that show for the
scratch website
many of them just in the past 24 hours by procrastinators just like myself so I
started taking a look at them
I so one of them that featured a kitten and her mom and wishing her mom mother
happy mothers die and the Creator very you considerably offered a replay for
her mom
another was an interactive project where would you move the mouse over the
letters of happy mom day
it reveals a special you know happy Mother's Day slogan to them to the
mother in this one
the Creator told a narrative about how she had googled to find out when
Mother's Day was happening and then once you found out when Mother's Day was
happening she delivered a special Mother's Day greeting of how much he
loved her mom
so as I saw these projects i really enjoyed look at these projects and
interacting with these projects in fact I liked it so much that instead of make
my own project i sent my mom links to about a dozen of these projects and
actually she reacted exactly the way that I hope that she would she went back
to me and she said I'm so proud to have a son
they created a software that allowed these kids to make Mother's Day cards
for their mothers
so my mom was happy and that made me happy but actually i was actually even
happier for another reason i was happy because these kids were using scratch
just in the way that we had hoped that they would that is they created their
interactive mother's day cards you can see that they are really becoming fluent
with new technologies
you know what do I mean by fluence I mean that they were able to start
expressing themselves and to start expressing their ideas you when you
become fluent with language it means you can write an entry in your journal or
tell a joke to someone or write a letter to a friends and it's similar with new
technologies you buy that by writing by creating these interactive mother's day
cards
these kids were showing that they were really fluent with new technologies
but maybe you won't be so surprised by this because you a lot of times people
feel that young people today can do all sorts of things with technology we all
of us have heard young people refer to as digital natives but actually I'm sort
of skeptical about this term i'm not so sure we should be thinking of young
people as digital natives when you really look at how is it that young
people spend most of their time using new technologies
you often see them in situations like this or like this and there's no doubt
that young people are very comfortable and familiar
browsing and chatting and texting and gaming that doesn't really make you
fluent so young people today have lots of experience and lots of familiarity
with interacting with new technologies a lot less so of created with new
technologies and expressing themselves with new technologies
it's almost as if they can read but not right with new technologies and I really
interesting how can you help you will become fluent
so they can write with new technologies and that really means that they need to
be able to write their own computer programs or code
so an increasingly people are starting to recognize the importance of learning
to code
you know in recent years have been a hold hundreds of new organizations and
websites that are helping out people learn to code
you look online you'll see places like Codecademy and events like coderdojo and
sites like girls who code or black girls code is if the everybody is getting into
the act
you know just at the beginning of this year at the turn of the new year new
york city mayor michael bloomberg you made a new year's resolution that he was
going to learn to code in 2012
a few months later the country of estonia decided that all of its first
graders should learn to code and that triggered debate and in UK about whether
all the children there should learn to code
now for some of you when you hear about this might seem sort of strange about
everybody learning to code when many people think of coding they think of it
as something that only a very narrow sub community of people are going to be
doing and they think of coding looking like this
and in fact if this is what coding is like it will only be a narrow
subcommittee of people with special mathematical skills and technological
background that code
the coding doesn't have to be like this let me show you about what it's like to
code and scratch it scratch to code you just snap blocks together in this case
you take a move block
snap it into a stock those stocks of blocks control the behaviour of the
different characters in your game of your story in this case controlling the
big fish after you created your your program you can click on share and then
share your project with other people so that they can use the project and start
working on the project as well of course making a fish game isn't the only thing
you can do with scratch of the millions of project the scratch website there's
everything from animated stories to school science projects to anime soap
operas
- virtual construction kits to recreation of classic video games to
political opinion polls to trigonometry tutorials to interact of artwork
add yes interactive mother's day cards so I think you serve jose so many
different ways that people can express themselves using this to be able to take
their ideas and share their ideas with the world and it doesn't just stay on
the screen you can also code to interact with the physical world around you
here's an example from hong kong for some kids made a game and then both
their own physical interface device and had a late sensor the light sensor
detects the whole on the board so they moved the physical saw the light sensor
protects the hole and controls the virtual saw this on the screen
this is an example from a new version of scratch that will be releasing
in the next few months and we're looking again to serve be able to push you in
new directions
here's an example uses the webcam as i move my hand
I could pop the balloons or i can move the bug
so it's a little bit like Microsoft Kinect where you interact with gestures
in the world but instead of just playing someone else's game you get to create
the games the same way that this uses the camera to get information into
scratch
you can also use the microphone here's an example of a project using the
microphone and it's a game with the characters are controlled by this sound
is coming into the microphone so I'm going to let all of you control this
game using your voices
as kids are creating projects like this
they're learning to code but even more importantly their coding to learn
because as they learn to code it enables them to learn many other things
opens up many new opportunities for learning again is useful to make an
analogy to reading and writing when you learn to read and write it opens up
opportunities for you to learn so many other things when you learn to read
you can then read to learn as the same thing with coding if you learn to code
you can code to learn that some of the things you can learn to sort of obvious
you learn more about how computers work but that's just where it starts when you
learn to code it opens up for you to learn many other things
let me show you an example here's another project and i saw this when I
was visiting one of the computer clubhouses these are after school
learning centers that we helped start that help young people from low-income
communities learn to express themselves creatively with new technologies and
when I went to one of the clubhouse is a couple years ago I saw a 13 year old boy
who is using our scratch software to create a game somewhat like this one and
he was very happy with this game and proud of his game but also he wanted to
do more
he wanted to keep score this is a game where the big fish eat the little fish
but he wanted to keep score
so the each time the big fish eats a little fish the score would go up and it
would keep track and he didn't know how to do that so I showed him
it is scratch you can create something called a variable
I'll call its core and that create some new blocks for you to create some new
blocks and also creates a little scoreboard to keep track of the score
so each time I click on
change score in increments the score
so I showed this to the clubhouse member let's call it Victor and Victor when he
saw that this block would let him increment the score he knew exactly what
to do
he took the block and he put it into the product into the program
exactly where the big fish eat the little fish so then each time the big
fish eat the little fish
you will increment the score the score will go up i want and he saw this and he
was so excited he reached his hand out to me and he said thank you thank you
thank you
and what went through my mind was how often is it the teachers are thanked by
their students for teaching the variables
it doesn't happen in most classrooms but that's because in most classrooms where
kids learn about variables here they don't know why they're learning it's
nothing that really they can make use of when you learn ideas like this and
scratch
you can learn it in a way that's really meaningful and motivating for you
so his kids like Victor are creating projects like this
they're learning important concepts like variables but that's just the start
as Victor worked on this project and created the scripts
he was also learning about the process of design
how to start with a glimmer of an idea and turn it into a fully-fledged
functioning project you like you see here so he was learning many different 2
core principles of design about how to experiment with new ideas how to take
complex ideas and break them down into simpler parts
how to collaborate with other people on your projects about how to find and fix
bugs when things go wrong
how to keep persistent and to persevere in the face of frustrations when things
aren't working well
now those are important skills that aren't just relevant for coding the
relevance for all sorts of different activities
now who knows that victor is going to grow up and become a programmer or
professional computer scientist is probably not so likely
regardless of what he does he'll be able to make use of these design skills they
learned
regardless of whether he grows up to be a marketing
manager or mechanic or community organizer that these ideas are useful
for everybody
again it's useful to think about this analogy with language when you become
fluent with reading and writing up
you know it's it's not something that you're doing just become a professional
writer
very few people become professional writers what is useful for everybody to
learn how to read and write again the same thing with coding most people won't
grow up to become professional you know your computer scientists are programmers
with those skills of thinking creatively reasoning systematically working
collaboratively skills you develop when you code and scratch are things that
people can use
no matter what they're doing in their work lives and it's not just about your
work life
Cody can also enable you to you express your ideas and feelings in your personal
life
let me end with just one more example so this is an example that came from
after I'd sent the mothers day cards to my mom she decided that she wanted to
learn scraps
so she made this project for my birthday which is in june and sent me a happy
birthday scratch card
now this project is not going to win any prizes for design and you can rest
assured that my 83 year old mom is not training to become a professional
programmer computer scientist but working on this project enable her to
make a connection to someone that she cares about enabled her to keep on
learning new things and continue to practice your creativity and developing
new ways of expressing herself
so you know as we take a look at we see that Michael Bloomberg is learning to
code
all the children of estonia learn to code even my mom has learned to code
don't you think it's about time that you might be thinking about learning to code
thanks very much