Devlin is a good mathematician. However, he keeps on repeating that he is not a K-12 teacher and so can't offer advice as to how to teach at that level. But he does offer lots of advice about what shouldn't be taught. So in that sense he is a tease and a provocateur.

sharing (partitioning) (eg. 20 apples put into 5 bags, how many apples in each bag?)

Of these possible interpretations, research has shown that multiplication as repeated addition and division as sharing appear to be widely understood by primary aged children. However, as the examples above show, understanding the meaning of multiplication is more complex (Nunes and Bryant, 1996) and difficulties with fully understanding multiplication and division persist into secondary school (Hart, 1981)

There is evidence that such early ideas - multiplication as repeated addition and division as sharing - have an enduring effect and can limit children's later understanding of these operations. For example, understanding multiplication only as repeated addition may lead to misconceptions as "multiplication make bigger" and "division makes smaller" (Hart 1981, Greer 1988) ....

Language is important here as different expressions will greatly influence children's solution methods. For example, interpreting 52 x 3 as "52 times 3" or "52 lots of 3" may lead to a less efficient calculation method then reading the symbols as "52 multiplied by 3" or "3 fifty-twos"

3 comments:

I recall slaving with the multiplication tables in grade school; it's one of my earliest memories of school and it's one of the most unpleasant memories of school. It was simple rote memorization and it took a while for that to work for my brain. A few students picked it up right away but most had a challenge with it.

In recent years I've been delving deeper into the universe of maths taking it further than I've ever traveled before; yet it's taken starting over again from all the basics.

One of the more intriguing books that I've read is "Negative Math", by By Alberto A Martínez, that explores what our "asymmetric number system" would be like if it were symmetric with a negative times a negative were a negative number rather than a positive number. It really shows how much of the way we perceive numbers and math is a human construction and that there are other math valid systems "out there" waiting to be discovered/invented.

"When you think about it, negative numbers don't actually exist in any real sense you can't have a basket holding negative 4 apples. In fact you can never have less than nothing of anything. One way out is to think of negative numbers as involving some sense of direction. For example, −3 could be thought of as corresponding to taking 3 steps to the left on a number line. Alternatively, owning negative £5 could be thought of as being in debt £5 to your bank. But in these senses, it is the positive number which is the actual quantity, with the sign nothing more than a symbol denoting a process to perform on the quantity, such as "move left" or "owed". In this way, positive numbers are "more real" than negatives." Review of Negative Math.

Getting into it further the reviewer notes: "Martínez goes on to compellingly demonstrate how many of the assumptions of algebra were simply historically decided as "just so". For example, why should the product of two negative numbers arbitrarily switch to being a positive number? Why is −4 + −4 = −8, but −4 × −4 = 16? There is an asymmetry in "standard" algebra, biased against negative numbers. Martínez shows how an alternative algebra can be invented, changing the "laws" of maths to develop a completely new system, just as the mid−1800s saw the invention of new non−Euclidean geometries. For example, you can rewrite the standard rule to demand that the product of two negatives is itself a negative. Thus the uneasy problem of imaginary numbers has been simply wiped out the root of −9 is just −3. Martínez tests other consequences of the made−up rules, leading us on an exploration of his new algebra. This isn't just an academic exercise though; a different system devised by Hamilton, called quaternions, evolved into the vector algebra that is now used extensively by physicists to describe the real world in another way."

Now certainly any advanced mathematician may be familar with the arbitrarily human created aspect of our number system and that we could just as easily have had a different number system, this would have been nice to have known when learning math. Rather than all aspects of math being "truth" or "one way" it turns out that there are other ways that are valid too.

Powerful stuff. This notion of different systems of created knowledge systems forms that back bone of advanced systems thinking in information science and many other sciences. It's a potent multi-perspective way of approaching problems and their interactions with solutions that address them.

Our number systems are made up. Powerful stuff.

-4 * -4 = -16 can be revolutionary.

With regards to Smalltalk it's interesting how the world too a hold of "objects" yet seemed to drop the ball on "messages". Really Smalltalk is a "message passing" system more than an object system. Thinking about messages as opposed to objects seems to make a difference when I work with teams in development and refinement of systems. When you get down to it all messages are protocols between objects even if all you are doing is sending one message. It's the interaction of these message sequences that proves most useful in combination with the state and state transitions that occur within the interconnected object graphs. It's also important to teach that the messages travel through the interconnections between these messages. In short messages travel along the interconnections between the nodes in the object graph. Teaching messages is important as they provide the dynamic life of a system while the object state provides the structure. In addition it's all static unless there is a CPU process running. In short to have objects you need messages and a process (at least one).

I've met a number of professional programmers who have learned objects and worked with object oriented technologies for years yet didn't have a basic comprehension of the process/verb side of what goes on in a dynamic application or system. Working with them to grow their understanding, to alter their internal map of object+message+process systems has made a difference. One result was way better interaction in the team as people who comprehend the technology differently were able to communicate and understand each other better.

"Alan Kay has argued that message passing is a concept more important than objects in his view of object-oriented programming, however people often miss the point and place too much emphasis on objects themselves and not enough on the messages being sent between them." - Message Passing - WikiPedia.

Quoting Alan Kay:

Folks --

Just a gentle reminder that I took some pains at the last OOPSLA to try to remind everyone that Smalltalk is not only NOT its syntax or the class library, it is not even about classes. I'm sorry that I long ago coined the term "objects" for this topic because it gets many people to focus on the lesser idea.

The big idea is "messaging" -- that is what the kernal of Smalltalk/Squeak is all about (and it's something that was never quite completed in our Xerox PARC phase). The Japanese have a small word -- ma -- for "that which is in between" -- perhaps the nearest English equivalent is "interstitial". The key in making great and growable systems is much more to design how its modules communicate rather than what their internal properties and behaviors should be. Think of the internet -- to live, it (a) has to allow many different kinds of ideas and realizations that are beyond any single standard and (b) to allow varying degrees of safe interoperability between these ideas.

If you focus on just messaging -- and realize that a good metasystem can late bind the various 2nd level architectures used in objects -- then much of the language-, UI-, and OS based discussions on this thread are really quite moot. This was why I complained at the last OOPSLA that -- whereas at PARC we changed Smalltalk constantly, treating it always as a work in progress -- when ST hit the larger world, it was pretty much taken as "something just to be learned", as though it were Pascal or Algol. Smalltalk-80 never really was mutated into the next better versions of OOP. Given the current low state of programming in general, I think this is a real mistake.

I think I recall also pointing out that it is vitally important not just to have a complete metasystem, but to have fences that help guard the crossing of metaboundaries. One of the simplest of these was one of the motivations for my original excursions in the late sixties: the realization that assignments are a metalevel change from functions, and therefore should not be dealt with at the same level -- this was one of the motivations to encapsulate these kinds of state changes, and not let them be done willy nilly. I would say that a system that allowed other metathings to be done in the ordinary course of programming (like changing what inheritance means, or what is an instance) is a bad design. (I believe that systems should allow these things, but the design should be such that there are clear fences that have to be crossed when serious extensions are made.)

I would suggest that more progress could be made if the smart and talented Squeak list would think more about what the next step in metaprogramming should be -- how can we get great power, parsimony, AND security of meaning?

Cheers to all,

Alan

While I agree with Alan about message passing I'm not so sure I agree about the boundaries between regular programming and meta programming is such a clear boundary in all cases that should be avoided. Often applications and systems can blur said boundaries especially when applications take on some of the qualities of Integrated Development Systems. The explosion of Programming Expression Grammars (PEGs such as OMeta) is a case in point. Domain Specific Languages with their own unique syntax can facilitate the integration of meta capabilities into applications and systems. It's a new frontier.

Teaching "meta" may be another of these important knowledge atoms to teach early.

Hi Bill. I found this post real interesting. I was having dinner with some people recently and we got to talking about tech interview questions. One of them was "Show me how you would represent 10 (in decimal) in base -2". I had to think about that one for a minute, and then it started coming to me. Using traditional algebra, as your post put it, if we consider what the digits in the number represent, a solution starts to emerge. I leave it as an exercise to the reader. :)

I hadn't thought about it before, but the article makes a good point about multiplication and division. The lie is put to "multiplication makes bigger" and "division makes smaller" when children get to arithmetic with fractions. When I got into fractions as a kid I was a little confused along these lines, but it didn't take long for me to learn the rules for it for some reason. I think I just saw fractions as different entities from integers and real numbers, and so figured they had different rules as well.