- MCP server with stdio transport for local use - Search episodes, transcripts, hosts, and series - 4,511 episodes with metadata and transcripts - Data loader with in-memory JSON storage 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
331 lines
20 KiB
Plaintext
331 lines
20 KiB
Plaintext
Episode: 1259
|
|
Title: HPR1259: Cyanide Cupcake and Klaatu
|
|
Source: https://hub.hackerpublicradio.org/ccdn.php?filename=/eps/hpr1259/hpr1259.mp3
|
|
Transcribed: 2025-10-17 22:33:24
|
|
|
|
---
|
|
|
|
Hi everyone, welcome to Hacker Public Radio.
|
|
This is Clat 2, and with me is...
|
|
Sinite Cupcake.
|
|
And we're here to talk about something that I think I'd heard of before, but something
|
|
that you Cupcake had sort of brought to my attention, and it's called Scratch.
|
|
So what is Scratch?
|
|
Scratch is a lot of things.
|
|
It's a gooey interface that pretty much teaches coding to children, and they can start
|
|
as young as eight.
|
|
And it also, like, that you create things like video games, you can use it as a paint
|
|
tool and create animations, or moving sprites that you can use in other projects.
|
|
The cool thing about Scratch is that it's sort of almost a puzzle piece.
|
|
It's a visual programmer, so you've got, like, these little puzzle pieces that you can
|
|
move around to create your different code.
|
|
Yeah, so, like, the code block categories you have, like, motion, control, like, when do
|
|
you start, when do you stop the different scripts?
|
|
Look, sensing, sound, and operators and variables.
|
|
So there's...
|
|
It's introducing children to the coding language and, like, how to put everything together
|
|
without them actually happening to know the code off the top of their head, like, this
|
|
is what I write here to make this happen.
|
|
It uses predetermined blocks that you can sometimes modify, but for the most part, they're
|
|
already presented for the top.
|
|
Yeah, do you get a lot done with just the preset blocks?
|
|
If someone was going to look at this or have their kid or their classroom look at this,
|
|
how would they start out with Scratch?
|
|
What kind of projects are you seeing being made?
|
|
Well, the first thing is a really simple game where you just have a sprite, which is your
|
|
character, have him move across the screen, walk back and forth, make it so that he bounces
|
|
against the wall, so he's not just walking off the screen forever.
|
|
I guess the first thing that you could do is have a very simple game where your sprite,
|
|
which is your character.
|
|
You have your sprite walk and walk using your arrow keys, so they're very, very simple,
|
|
and then you can also, like, start to add more steps to that, so you want to be able
|
|
to control him walking.
|
|
Well, now maybe you want to add a second sprite that's an object, and that object could
|
|
be something that the sprite needs to obtain, and then, so you figure out how to make
|
|
the sprite obtain that object.
|
|
Then you can go on to another level, and you can build upon that and then create a counter
|
|
or a timer, so you maybe need to collect the object that your sprite's collecting.
|
|
So many times within a certain minute to win the game, you can create winnable games.
|
|
That's another really great thing about Scratches.
|
|
You can start off very, very basic, but then you can build upon those first projects that
|
|
you made.
|
|
I have a project that started out as a monkey collecting bananas, and that was my first
|
|
Scratch project, and then kids helping me do this game and create this game, and they
|
|
would come over and they would be like, well, why don't you have the monkey collect green
|
|
bananas, and the green bananas are with one point, and then the really yellow bananas
|
|
are with two points, because those taste better.
|
|
Oh, oh, oh, and maybe Miss Cupcake, maybe you could go and you could have a squishy brown
|
|
banana, and that could be negative points.
|
|
That's cool.
|
|
I had this really simple game, but then I could add all these other elements to make it
|
|
more complicated, and then eventually I added a timer, and it's a playable game.
|
|
For those counters, like when you're collecting the prizes or getting hit by the bad guy,
|
|
how do you do that?
|
|
Do you implement, is that introducing kids to variables, or are there functions, especially
|
|
for scorekeeping or what?
|
|
You're introducing kids to variables.
|
|
You set a variable, and like in this one game, I have the variable is prize, like every
|
|
time you collect the prize, you get another point.
|
|
And so I get introduced to kids to variables, and also I have this dungeon crawler, and
|
|
so in this dungeon crawler that I have two things, I have a good guy, well, I have my good
|
|
guy who's traveling through the dungeon.
|
|
I also have bad guys who are moving back and forth between certain areas, and I'm sure
|
|
you guys have all seen dungeon collars before, and know how they work.
|
|
So you have your hero, your good guy sprite, so my hero who's a knight, and he's traveling
|
|
exploring the dungeon and collecting different prizes, which give him XP points.
|
|
And then there's also bad guys that are also moving through the dungeon, but only in certain
|
|
sections.
|
|
They're not just wandering around aimlessly.
|
|
And whenever your hero touches a bad guy, he loses some XP.
|
|
This was kind of tricky to figure out, because whenever the hero was walking every single
|
|
time he would hit the bad guy, he would lose points.
|
|
Even if it was in the same time, as you're continuing walking past the bad guy, it would
|
|
still just keep deducting points, and all of a sudden you'd be like negative 100.
|
|
So what had to happen with that was there had to be, we have two things, there's an invisible
|
|
variable called damage, and then there's the XP.
|
|
So you have to, if touching hero, set damage to one, and then wait until the bad guy sprite
|
|
is not touching hero, then you set the XP to equal XP minus the variable of damage.
|
|
And then you set damage back to zero.
|
|
So next time you hit damage, you're not incrementing and losing like two, and then three.
|
|
That's great.
|
|
Because I mean that, so in your monkey project, for instance, the concept really didn't
|
|
even apply, because it was like, hey, you hit the rotten banana and you, the rotten banana
|
|
disappears.
|
|
Right.
|
|
And you, you are left with negative one like point or whatever.
|
|
It happens immediately.
|
|
Yeah.
|
|
Whereas in this, you want the bad guy to stay on the screen, but you obviously like you
|
|
said, don't want it to keep reducing your health or XP, whatever, forever.
|
|
So yeah, that's really cool.
|
|
So it's teaching kids not only about variables, but really kind of how to think around some
|
|
of these weird issues that will pop up when you're programming, you know, it's like different
|
|
situation.
|
|
You have to think differently about how to get the same, what looks like the same result,
|
|
but it's actually a different, you know, it's a different process.
|
|
Right.
|
|
I actually just kind of like ties into that in two ways.
|
|
One, I meet with a lot of other educators, especially I don't teach in like in an elementary
|
|
school.
|
|
I teach in like a program that goes into schools and also has onsite programs in the building
|
|
that I work in.
|
|
But I interact with a lot of teachers who are like traditional like English teachers, math
|
|
teachers.
|
|
And they want to start introducing programming and coding to children, but they don't
|
|
know how.
|
|
And the thing I keep hearing adults saying is, well, we don't know it, like we didn't
|
|
go to school for program.
|
|
Like I'm an English teacher.
|
|
I know, you know, literature and Shakespeare and I don't know anything about coding.
|
|
Like how can I possibly introduce this to my classroom?
|
|
And that's the thing I think a lot of adults are afraid of.
|
|
That's not the way it is at all, with programs like Scratch especially.
|
|
It's very easy to introduce not just the students, but also yourself to developing like
|
|
the mindset of how to program and it's okay to not have all of the answers.
|
|
For my class is like I try to approach it as not this is how you do it and here's why,
|
|
but instead having the kids look at it and say, okay, why do you think it does this?
|
|
Like I want you to tell me what comes next.
|
|
I want you to tell me like why you're getting this result.
|
|
Why doesn't this work?
|
|
So asking the questions before providing the answer, where normally we teach the opposite
|
|
direction, like we give kids the answers and we tell them how it all works and then we
|
|
give them the test to where they have to actually show that they learned it.
|
|
So it's learning from like a different perspective.
|
|
Yeah.
|
|
And it's a lot more interactive way of learning too, I think.
|
|
Yeah.
|
|
I think it really engages children.
|
|
Personally, I'm a hands-on learner.
|
|
Like I could sit there and listen to somebody lecture about a program like Scratch or an
|
|
editing program for hours, you know, and it doesn't sink in until I actually get my hands
|
|
on a keyboard and I'm playing around with it.
|
|
That's whenever it's like, oh, I understand.
|
|
And so I think that this is perfect for learners that learn in that way.
|
|
And I think that even if you're not a learner that learns that way, you'll still be able
|
|
to get it.
|
|
So because like the answers are produced eventually, but it's more of like a thought process
|
|
than just here they are.
|
|
Well, I think that's an interesting point because two things came to mind.
|
|
One is that I think that's how life is anyway.
|
|
Right.
|
|
You know, life is very rarely a step-by-step process solving problems.
|
|
Not paying by numbers?
|
|
Yeah.
|
|
I find not so much.
|
|
But and neither is programming really.
|
|
Like if you think about it, I mean, there are certain things, yeah, every client or whatever
|
|
is going to want the same thing and there are drop-in solutions.
|
|
But I mean, more often than not, it's not like that.
|
|
It's like like the monkey and the dungeon crawler example, like to us, it looks like the
|
|
same thing.
|
|
You hit a bad guy.
|
|
You get decremented.
|
|
But in actuality, if you look at the code, it's a completely different process.
|
|
So that's a really, I mean, if you teach kids, hey, this is how you take away points, then
|
|
they're going to walk away with that lesson and think that every time they want something
|
|
to happen, it needs to be that way.
|
|
And then they'll find out, oh, that's not correct.
|
|
I have to come out with a workaround.
|
|
So teaching kids, yeah, sort of from the other end of things, it's kind of, it's a lot more
|
|
realistic so that when they sit down, they know that they're not, it's not just dropping
|
|
in certain code blocks, it's, you have to really think about it and know your toolset
|
|
and then just start building it up from, well, scratch.
|
|
That was a really bad joke.
|
|
That wasn't a joke.
|
|
That was my product tie-in.
|
|
Ah, okay.
|
|
Something I'd like to mention about that actually is, we, me and Clatchu, actually went to go
|
|
see Mitch Resnick, who was on the, he was the head of the creative team, the creative scratch.
|
|
And he had this really great quote that I'm going to look up here, hold on one second.
|
|
So the quote is from a 11 year old boy who uses scratch.
|
|
And he says, I love scratch.
|
|
Wait, let me rephrase that.
|
|
Scratch is my life.
|
|
I have made many projects.
|
|
Now I have what I call a programmer's mind.
|
|
That is where I think about how anything is programmed.
|
|
This has gone from toasters, car electrical systems, and so much more as a 11-year-old
|
|
already considering himself to be a programmer and to be thinking in those unique ways where
|
|
you're really looking at the problems and the solutions and not just like, I know that
|
|
this is what I was told.
|
|
And this is the answer.
|
|
The 2 plus 2 was 4 because they told me.
|
|
Yeah.
|
|
And it's kind of interesting, I think, because when I saw scratch, I was super impressed,
|
|
but I was also a little bit puzzled because it was only at least what I thought I could
|
|
only see like 20 different programmer puzzle piece blocks, you know, and I was like, well,
|
|
how could we possibly, how can we do these things that we want to do with just this finite
|
|
set of pieces?
|
|
But then as we kept using it, it became apparent that you can use all those puzzle pieces
|
|
in really creative ways, even though it seems like you've got this set of tools and
|
|
it's only that set, you can assemble them in any way you want, and you come up with
|
|
like really interesting like outside of the box kinds of solutions.
|
|
And you can put things inside of other things.
|
|
Yeah, you know, and it's almost restrictive in a way because you only have this certain
|
|
set of like what we would call modules or functions, but actually you can use them in so
|
|
many different ways and it really does encourage you to think much more creatively than what
|
|
I think you're used to in a lot of other situations.
|
|
Another cool thing about Scratch is their online network.
|
|
They have kind of like a social networking site almost.
|
|
You can upload your projects to the Scratch website, upload your projects to the Scratch
|
|
website, and you get like adult uploading things for their students, you get like just
|
|
people like kids who work on this and they're just about time uploading it, and you get
|
|
adults uploading things too.
|
|
So you can share your work with others and show them what you've done.
|
|
People can comment on your work giving you tips on how to improve it or you know like
|
|
what they like about it, what they don't like about it.
|
|
But the best thing about the Scratch network I think is the fact that you can look at
|
|
everybody else's code.
|
|
Right.
|
|
If you upload your project to the Scratch website next to it, they will automatically put
|
|
a little button that says like this project has four sprites and ten like ten scripts.
|
|
You click download and then you can open it up in your Scratch program and you can play
|
|
around with it.
|
|
You can see like there was this one game, it was a Pac-Man game and you go in and see
|
|
like how they made like all the different sprites move and like what variables they used
|
|
and like how they laid it out.
|
|
So like if you want to create something and you're not sure how, you can search for what
|
|
you think you're looking for and there's probably already a program that's used that
|
|
and you can look at the script.
|
|
Also that means you can build upon everybody else's work.
|
|
So kind of like I said like you can have a very simple sprite that just walks and then
|
|
you can like build upon it, same sort of thing.
|
|
You can download somebody else's like if you like their sprite, you can download it
|
|
from their website, put it in yours and that's the whole open source idea is what they're
|
|
fostering here and like with creative comments and everything too.
|
|
And I think especially for teaching that to kids, that's like really awesome.
|
|
Like telling them like they're not stealing anything that you're done like because you
|
|
always hear with kids like I also teach animation and I always hear he stole my idea.
|
|
Like I was going to do pirates and it's like well, that's not just your idea.
|
|
You can do something completely unique based off of the same concept and scratch really
|
|
encourages that and that's a really great way to teach the idea that like people can
|
|
share and explore and grow together and use similar ideas but still end up with completely
|
|
different projects.
|
|
Once again when we went to go see Mitch Resnick, he talked about that there's this one girl
|
|
my red Neptune and she, she really likes to draw.
|
|
So she's been doing scratch for many years so she creates beautiful drawings and scratch
|
|
and she would like to use sprites and stuff that were animated and other users would ask
|
|
like well, I really like that cat you did, I want a unicorn for my next game.
|
|
Could you create a unicorn for me?
|
|
And she would be like yeah, so she would create an upload different sprites for other users.
|
|
So once again collaborating.
|
|
So she kind of found a niche of her, she would be the go to artist.
|
|
Right.
|
|
And then it grew even from that though because then she started uploading tutorials that
|
|
she created and scratched showing other people how to draw.
|
|
So then she became not just like before she was just providing a service to other people.
|
|
Now she's actually teaching other people how to do what she does.
|
|
Yeah.
|
|
And that's just like mind blowing to me that like it's it's collaborating and it's also teaching
|
|
kids to teach each other which is really really awesome because whenever you start to like
|
|
you can know something but until you start to teach it you don't really realize that
|
|
you do know it and it's never really questioned that you know it.
|
|
But once you start teaching that's like a great way to be like I do know this skill and
|
|
I can share it with other people.
|
|
What platform is scratch available for all three operating systems.
|
|
So Linux, Mac and yeah, yeah, so anybody can use it.
|
|
They're also coming out with a new right now it's like still in beta but they're coming
|
|
out with a new version it's scratch 2.0 and I think it's supposed to be unveiled before
|
|
the summer.
|
|
I'm hoping so because that's whenever my classes are running be nice to use the latest
|
|
program they have.
|
|
We'll have a link to the show in the show notes to the scratch project but what is the
|
|
URL just for people who don't want to be bothered to go look it up.
|
|
The URL is just scratch.mit.edu.
|
|
Okay.
|
|
By the way, this was created at MIT, I haven't mentioned that before.
|
|
Also too.
|
|
I mentioned before about the really great rich online community and I got kind of carried
|
|
away because I'm very excited about it which is really great but I also want to mention
|
|
too because I'm an educator that there's also a website called Scratch Ed and it's scratch
|
|
pretty much a scratch.media.mit.edu and this is like where the educators go and hang
|
|
out so there's like other people post their lesson plans.
|
|
If you have a question or want to share something with somebody there's forums and like they're
|
|
really rich like people are constantly communicating with each other on their.
|
|
So if you're an educator and you're interested in learning this or if you want to teach it
|
|
to your kid at home I would definitely check out the scratch ed website because I think
|
|
that also has lots of resources and lesson plans and everything.
|
|
Yeah and actually I built installers for scratch as well as squeak which scratch runs
|
|
in for Slackware so if you're using that go to slackermedia.info slash Slack builds.
|
|
URL's everywhere.
|
|
Come to cupcake and clad twos.
|
|
URL in poor yeah.
|
|
It's a great, great little program it's really, it's really fun to use.
|
|
It's amazing I think to see people use it too.
|
|
You can sit people down in front of it and they almost teach it to themselves.
|
|
It's one of those things that you can really get started with with almost no introduction
|
|
and like you've already said even if you're just a lone person you have no other resources
|
|
go to the scratch website.
|
|
There's like a bunch of example projects like a million of them so you can learn and
|
|
you always can learn from the code that exists there.
|
|
I actually learned scratch from a group of 8 to 10 year olds and they they had learned
|
|
it they were in fourth grade and they had learned it in their fourth grade class in school
|
|
and it was over a week at summer camp and they told me about it and I was like well I
|
|
was looking into getting into this anyway downloaded the project and then sat there at
|
|
lunch and snack break and the kids would like lean over my shoulder and they would tell
|
|
me what to do and they would offer suggestions.
|
|
So 8 year olds, kids as young as 8 taught this program and I mean that's empowering
|
|
for them and it was also very exciting for me to be learning from somebody so much younger
|
|
than me and seeing how well they really truly knew this program and they had only had
|
|
it like a little bit at school.
|
|
It's not like it's like a full scratch course at their elementary school and they already
|
|
knew it very very well so I think it's very easy to pick up and then later translate into
|
|
real like programming languages that you know the traditional like Python and what not
|
|
so yeah.
|
|
Cool.
|
|
That's scratch.
|
|
Go check it out everybody.
|
|
You have been listening to Hacker Public Radio or Hacker Public Radio does our, we
|
|
are a community podcast network that releases shows every weekday Monday through Friday.
|
|
Today's show like all our shows was contributed by a HBR listener like yourself.
|
|
If you ever consider recording a podcast then visit our website to find out how easy
|
|
it really is.
|
|
Hacker Public Radio was founded by the digital dot pound and the economical computer
|
|
cloud.
|
|
HBR is funded by the binary revolution at binref.com, all binref projects are proudly sponsored
|
|
by Lina pages.
|
|
From shared hosting to custom private clouds, go to Lina pages.com for all your hosting
|
|
needs.
|
|
On list otherwise stasis, today's show is released on the creative commons, attribution,
|
|
share a like, free dose of license.
|