SPAM-MED: Re: Time to upgrade my technique...

Ken Ray kray at sonsothunder.com
Wed Jun 11 13:11:59 EDT 2008


> at least as coping with variables goes. I usually
> start with the "buckets" image, move onto fields
> ("visible buckets") and then try variables ("invisible
> buckets").

For kids (and anyone else, I'd imagine), I've found that it's best to use
real-world metaphors that mean something to them. Perhaps it's a cultural
thing, but sometimes I'll use video games as an example, since most of the
kids I've encountered have wanted to learn programming because they'd like
to create their own video games.

I ask them to imagine their favorite first person shooter game, and imagine
that as they progress through the game they get to pick up new weapons. As
they gather weapons, the game needs to keep track of all the weapons they've
gathered. But if it were to display everything they pick up, the screen
would be overly cluttered and confusing, so it only displays their active
weapon and all the other weapons are hidden from view, but you know they are
there because you picked them up in your travels. Also, you can pause the
game and go to a screen where you see your weapon inventory.

Well, fields are like the weapon that's displayed on screen, variables are
the weapons in inventory that you can't see during normal game play, and the
debugger lets you see your "inventory" of variables while you're
programming.

In addition to this being an "a-ha!" moment, it also begins to connect them
with the programming "consciousness" around video game development.

People are more receptive when (a) they are invested in the conversation in
some way, and (b) are spoken to with concepts that are relevant to their
current frame of reference. So the first step is trying to find a common
frame of reference for the students (whether they be adult or not), and then
tailor the conversation from there. Or at least that's what's worked for
me...

Ken Ray
Sons of Thunder Software, Inc.
Email: kray at sonsothunder.com
Web Site: http://www.sonsothunder.com/





More information about the use-livecode mailing list