Teaching binary to 3rd Graders using the Socratic method
garlikov.com
garlikov.com
When we got home I got out a pad and pencil and got her to write down 0, then 1, then asked her, if you only had two digits, what would come next? Tentatively she wrote 1 0. THen I asked her to add 1 to it. We more or less carried on the way this transcript went, except instead of using aliens with two fingers I introduced AND, OR and XOR 'boxes' that 0s and 1s go in and come out. I hadn't planned any of this but by the end of it she was just about drawing the circuit diagram of a full adder with carry bit.
I'm sort of thrilled to see that what I was doing is precisely the socratic method. I love teaching, never really did much of it until I gave a course in Unix and shell scripting at an old job but for a week I had more energy at work than I ever did just programming or in meetings.
1024 (or 1023), surely?
Difference Engine, no?
I can't imagine trying to teach 3rd graders binary using a standard method - I even have peers in college that struggle with it. Probably because it was just taught to them as something different - this weird language computers use, instead of them developing an intuitive sense for it. But whenever I try to explain it to them, or anyone else, I always try and explain it as "just like decimal, exactly what you already know."
The Socratic method really is much more interesting and captivating for students. For example, Walter Lewin's physics lectures (Which are well worth watching, even if you're not taking a physics class), which I'm currently watching to "supplement" my actual physics class in which the professor stares at the board and rambles.*
*Not to say that his lectures are the Socratic method - that's probably not feasible with a lecture hall of hundreds of students. But the way he teaches makes you feel like you're discovering everything again along with him.
But it there are so many more things students learn using this method.
One is they learn how to create new ideas from existing ones: "inventing". It really gets me when I hear people tell kids "don't re-invent the wheel".
This is how our brains are wired to work: the more places we can cross-reference the material from, the more likely we can "derive" it again quickly even if we can't memorize it.
"shut up/memorize it/some things just are" kills the intention to learn faster than a speeding bullet to the brain.
My wife homeschools, and the math curriculum she uses uses a very similar method from the beginning.
My daughter knows "12" as "One-ten two" and "33" as "three-ten three" and says it that way. She also knows those mean twelve and thirty-three, but for the purposes of the math program she uses the place terminology.
We can only hope that it will give her a better understanding of what's going on than pure memorization, and the jury's out until she's older, but it's a fascinating way to teach.
I sometimes wish we were all born with eight or sixteen fingers, but that's just the CS/EE bias in me talking.
By the way, "one-ten-two" and "three-ten-thee" is literally how the Chinese would pronounce their numbers (一十二,三十三). In a way I think it's helped me understand place values earlier.
Teaching my then 4yo the decimal system I dropped in some binary, in a similar way to this class - except for him we called it "robot language". He knew it from watching a few (PG!) episodes of Futurama. Hey, if Bender talks it then it's cool and that's enough to spark some interest.
I try to get him to interpret 12 as "one ten and two ones" or "one ten and two more" and say then they we just call it 12. In the same way 1100 in robot language is "one 8, one 4 and 0 twos and 0 ones".
When I'm president of the world number-names are up for reform!
I think my wife and I use that teaching method quite naturally. I'm never inclined to just give our children the answer; they only learn when they arrive at the answer themselves.
Anyway do you know of other books, on any topic, that use the socratic method?
As a side note, having read (and re-read) all of Plato's dialogues and many from Xenophon, Socrat became incredibly real and life-like to me. Xenophon's dialogues are far from being as good as Plato's, but the Socrat character really is somehow the same.
(I already knew binary, because I was programming on an 8-bit box.)
The hard part about teaching is recognizing when you've introduced a large leap for a good percentage of the class.
There's a famous math story that goes:
"A professor was at the chalkboard writing up a proof for his class. At one point he comes to a portion of the proof and says, 'And it's obvious this must be X'. At which point he pauses, the class waiting. Stares at the board for a minute. Then leaves the class without saying a word. He returns fifteen minutes later, continuing, 'Yes, it's obvious this must be X'."
Everything that we know can be broken down into "basic" atoms which cannot be broken down further, but are so tiny the can be learned quickly, or things built up bit by bit, which can be explained given enough time. Even things like "capital cities and states" can be taught by asking how things get named and who names them and who would name something the way they did, giving a bit of historical background etc.
As the Agile theory puts it, this approach "maximizes feedback".
But just to nitpick, he did actually tell them plenty of things, it was not just questions.
2 Examples:
> Could it be because we have 10 fingers?
> No, only to you guys, because you were taught it wrong [grin] -- to the aliens it is two. They learn it that way in pre-school just as you learn to call one, zero [pointing to "10"] "ten". But it's not really ten, right? It's two -- if you only had two fingers.
Not a criticism, just a nitpick.