First, thanks to everyone so far for the responses on this. I appreciate the caliber of the dialog on this list. It has been very helpful.
On Sun, Dec 20, 2009 at 8:27 AM, john_perry_usm <john.pe...@usm.edu> wrote: > > > > 4. In a computational age, it is more important to grasp relations > > between concepts than to memorize particular formulas. Better to > learn how > > to analyze a concept as a set of inter-related concepts. Example - > the > > quadratic formula. > > Yes to the first, but an emphatic no to the example. > > First, the quadratic formula isn't really that hard to memorize. > Sure, I agree. And not only that, I also think they should be able to derive it from scratch. However, in reality, wow ... there are some kids who really can get how to think about it that way, but the problem in so many cases is all they WANT is to be told is what to 'memorize' ... for a test. It's so sad. So a huge issue is how to get them to reason. Finding things they can do without getting frustrated and quitting, but things that are educationally significant. I found that having them practice creating lists of ordered pairs for a function and a domain via list comprehension very good for that. Simple enough, yet challenging enough for most of them. And close enough to the pure algebra itself that no one can argue that I'm teaching 'Python' or 'Sage' rather than 'math'. Those can be very frustrating kinds of discussions. It's so bizarre trying to do this in a culture that considers this stuff as something 'outside' of math. Perhaps it's because of the resistance I've experienced that I gravitated toward the Papadimitrious quote. : ) But yes, pure CS is a subset of mathematics as a whole. > However, a more conceptually > > valuable expression might be to express it as h +/- r, where h =axis > of > > symmetry, and r = distance to the roots. > > I don't see how technology will help here; it isn't hard to draw this > on the board, or on a sheet of paper. > Oh sure, I agree with that. Sometimes it's sufficient and even better to just hastily scrawl something that kind of resembles a parabola, just to empahsize that we're talking in general terms. The point I'm trying to develop here isn't so much the issue of using Sage to create visuals but the issue of thinking in terms of functional decompositions. Instead of seeing something like the quadratic formula as just a set of symbols in a kind of bizarre arrangement, students can hopefully learn to think of the formula as a set of related ideas, such as an axis_of_symmetry() +/- distance_to_roots(). The distance_to_roots function could be composed using a discriminant function, etc. It's definitely the case that something like the quadratic formula would normally not require such elaborate treatment if we're just going to use it as is for solving quadratic equations. But perhaps modeling a concept like that through a very simple suite of interacting functions, each of which performs a unique task and can be used independently, could give students a sense for how programs get constructed, plus give them a better grasp of what the formula is saying in the first place. I guess I should also say that something like h +/- r would not be meant as a replacement of the traditional formula. Sure, they'd still need to internalize the traditional formula. But creating a suite of simple functions like that would be easy enough but also challenging enough for most of them, plus these functions could then easily be configured with @interact. Another example of what I'm trying to get at with this 'functional decomposition' theme: standard deviation. We can define standard deviation as: def stdev(L): return sqrt(variance(L)) def variance(L): return mean(squares(deviations(L))) def deviations(L): return [(x - mean(L)) for x in L] def squares(L): return [x^2 for x in L] def mean(L): return sum(L)/len(L) We are not just blindly coding the typical formula for standard deviation here. It's a concept map, and it works! (It's also the population rather than the sample formula, but that's easily adjusted.) I've been using that little suite when we study standard deviation, and they are able to latch onto phrases like 'Variance is the mean of the squared deviations'. I think this is better than trying to memorize a bunch of greek symbols. I also know that the language R is built into Sage. I haven't explored that yet, but even with that available, I think this kind of little functional analysis of the concept is good to understand. > 6. There is always a tension between the use of calculators and > 'showing > > ones work'. Kids hate having to write it all out if the calculator > has > > already done it. All kinds of discussions go on about how 'much' work > needs > > to be 'shown'. All of this becomes irrelevant if we instead focus on > the > > 'work' being a functional decomposition of a problem or a concept. If > one > > does ones 'work' correctly, the 'work' will then work for you! You > can use > > it! > > I don't think the discussion becomes irrelevant at all. It will always > be relevant because different people are interested in different > aspects of a problem. > Right, I don't mean to say that discussion of the problem becomes irrelevant or even that written discussion is irrelevant. I mean that certain kinds of arguments will become irrelevant. I'm trying to get at another sense for what it means to 'show one's work'. If one's work is to construct a set of functions that will solve a problem, then one's work works! It could make the discussion of 'showing work' more meaningful. Instead of writing the math out by hand and using the calculator to handle the grunt work, I'd rather throw away the calculator and focus on how to get the kids to construct, articulate, a computational analysis of a situation. Another example of how computational thinking can make the math more meaningful - the very concept of specifying the domain of a function. Kids hate it and think it's just a formality, and usually that's how it's treated. But in a computational sense, if you're not careful about your domain, your function can blow up! This is what establishing pre-conditions is all about. Thanks again for the dialog on this. - Michel -- You received this message because you are subscribed to the Google Groups "sage-edu" group. To post to this group, send email to sage-...@googlegroups.com. To unsubscribe from this group, send email to sage-edu+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/sage-edu?hl=en.