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 > contexts. >
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 _______________________________________________ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig