Another installment of my Hong Kong presentation titled 'Why Computational Thinking matters.' This is where my head is these days in figuring out how computers relate to what we do in class. My view is that activities like the one I describe in the video is more active than the way we (and I include myself in this group) usually attack word problems as part of our sequence.

Help me flesh this out. I think there's a lot here.

The strongest aspect of this is how much the programming helps develop the other meaning of variable, expressing relationship. Variable as unknown is much more accessible to students. But the programming is much more conducive to input-output thinking, which is so key for continuing on in math. I really think there's something here.

The example suffers a bit from simplicity: hopefully some student will think a number + 3 x number is 4x number. Answer must be 1284/4. Or if doing guess and check would be using number sense to guess 100 first or after 1 or...

Excellent discussion!

As a computer scientist, I can't say much about teaching algebra per se. But I have thought a good bit about computational thinking. Here goes...

When I try successive guesses to solve this problem, I'm looking at it as search. (In computer science, we'd call this "uninformed search".) Formulating a problem as search takes some skill and practice; in this case, here's what I might think. First, I'd ask whether adding 1 to the guess of the first number moves me closer to a solution. (Yes.) Second, I'd ask whether this adding 1 step will stop on a solution if it exists, or if it might jump over it. (Unclear, but it could in principle be in the problem statement.) I might then try it.

And then I'd think, "Could I get to a solution faster if I took bigger jumps?" This would mean thinking about how far away I am from a solution, judging by the ratio of the two numbers I have at any point. I might add an adjustable increment to the first number, depending on how far away I am from a solution.

And then I might think about when I should use one algorithm rather than the other... (This last piece isn't needed for algebra, but it's basic computer science.)

There's a lot of conceptual background that someone needs to have to apply computation to even a simple problem. I think it's worthwhile; there's a lot of richness in computational thinking. Unfortunately, the thinking process I've laid out assumes that someone is *already* comfortable with algebra, as well as with the ideas of algorithms, searching, and so forth. Oh, well.

I'll apologize for the plug, but I talk about these sorts of things in Computing for Ordinary Mortals (Oxford, 2012), a popular science book that gives a basic introduction to computational thinking.

Not much else to add except that your questions resonated with me, and I am forwarding the video to colleagues. I have the same philosophical struggles and have worked with my middle school students on computerized approaches as well as algebraic reasoning... but I am struggling with the process, and I am more or less working on an island as I try to sort it out.

I think you have a really good argument here, and one I have presented before myself. I'm going to be presenting on technology in math in a couple of days, and I hope you don't mind if I use your example in my presentation (with appropriate reference of course).