[Edu-sig] python for kids...
Laura Creighton
lac at openend.se
Sun Nov 11 17:53:35 CET 2007
In a message of Sun, 11 Nov 2007 11:09:47 EST, Jay Bloodworth writes:
>On Sat, 2007-11-10 at 19:04 -0600, Michael Tobis wrote:
>> I agree that the concept of a "variable" is deeply unpythonic in most c
>ontexts.
>>
>
>But it's pretty darn programmatic. I think overemphasizing python idiom
>and ontology in a first programming course is a mistake. Variables,
>subroutines, loops, conditionals - these are a few of my favorite
>things.
>
>I've never really taught programming, but my intuition, based on ten
>years experience teaching algebra and prealgebra to middle school
>students, is that they will "get" the idea of variables with any
>reasonable explanation: boxes, labels, names, whatever. Certainly, many
>will have difficulty understanding scoping, reference vs. value, deep
>vs. shallow copies, etc., but these are concepts that are fundamentally
>more subtle and challenging, and most adults must work to wrap their
>heads around them as well.
>
>I'm going to go a little further out on a limb here and offer a theory
>and a prediction to test it, that I'd appreciate it if anyone who has
>taught programming to 10-15 year old can respond to: Regardless of how
>they are taught, kids first mental model of a variable is something
>like: "a value the program needs to change". Hence they will be
>uncomfortable and may resist understanding when a variable is used to
>name a constant value.
>
>jay
Your limb is creaking :-)
Younger ones are happy with the notion that 'a variable is a handle'.
As in 'an avatar for posting to a fora is a handle'.
At least the 12-13 year olds I taught were. And constants was easy,
it was the opposite, that they could vary that confused them. But
that may say more about how I presented the idea than anything
about what is easier for 12 year olds to grasp. I think its all
how I taught them. We're making online text based games. Everybody
know what an avatar is.
Laura
More information about the Edu-sig
mailing list