Live data from Hacker News

Teaching binary to 3rd Graders using the Socratic method

garlikov.com

1–10 of 38 posts

Re: Teaching binary to 3rd Graders using the Socratic method

#2
This is a great way to teach and Mr. Garlikov did an amazing job. It is hard work to "teach" this way because it requires student/teacher interaction (which is a lot harder than just standing there and lecturing). Coming up with the content is equally difficult.

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".

Re: Teaching binary to 3rd Graders using the Socratic method

#5
Reading this gave me a warm, fuzzy feeling.

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.

Re: Teaching binary to 3rd Graders using the Socratic method

#6
One day after a visit to the Computer History Museum, my SO and I got to see the live demo of the analytical engine they have there. We watched the gears turning and stopping to add up numbers, saw the complex mechanisms to handle carrying digits, and she asked me how this would work if it was binary and I just said "much more simply". Then she admitted that, even though she has been working as a developer and manager of developers for years, she never learned binary.

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.

Re: Teaching binary to 3rd Graders using the Socratic method

#7
Captivating. Understanding something by answering questions on your own (even if guided) always feels more like true understanding. But what happens when we come to a point that requires mental leap beyond what a student can do? Is there a set of problems, or a set of students that are more suitable for Socratic method (3rd graders seem to do just fine at it)? Or is there a set of teachers that are more adept to teaching this way? Please give your answers through questions only.

Re: Teaching binary to 3rd Graders using the Socratic method

#9
I learned how to count in binary using my fingers as digits probably about third grade. The pinkie is the 1. At that age, I thought it was pretty cool that I could count to 31 on one hand, and it stuck with me to this day. I'm sure I'll teach my son the same.

Re: Teaching binary to 3rd Graders using the Socratic method

#10
This is amazingly similar to Test Driven Development. In the purest form of TDD, you don't write a single line of code until you have a failing test. The failing test is the unanswered question. Then, you write the code that "answers that question." This means that each step of the way, you are confirming that prior principles are correctly understood by the human and the computer before building on those prior principles.

As the Agile theory puts it, this approach "maximizes feedback".

Post reply on HN