More on problem solving

I did a little reading on teaching problem solving.  As nicole pointed out in her comment to my last post, it might be necessary to be explicit about the steps involved in solving problems.  Those steps might include defining the problem (i.e., what are you trying to do), breaking the problem into smaller steps (especially important for programming), propose possible solutions based on what you already know, and try those solutions.

One of the things I haven’t done enough of is getting students to start with pseudocode, which would break their problems into manageable parts.  Now that we’re into bigger projects, this might be especially useful.  Asking questions along the way like, “How would you do x?” (x being something they know how to do) would also help.  And I do some of that, but I know how frustrating that can be, and frankly, there’s often not time to do that.

But I can try to keep teaching the process.  As I know myself, it can take time to feel confident in your problem solving skills.

4 Replies to “More on problem solving”

  1. In his really interesting text on teaching science in higher ed, Frederick Reif looks at teaching procedure as bifurcated, either linear sequence of steps or hierarchical — the latter (on pp. 108-109) really is focused on sub-problems (or subroutines/modules). The first is the step-by-step handout, useful for an example. The second is focused on key checkpoints of the modules/routines. As you might imagine, Reif strongly pushes the reader towards the second as encouraging flexibility in problem-solving. But it might make better sense to think about a progression of problem-solving skills, from working out one problem algorithmically (step-by-step) to seeing the algorithm example as just that — a sample of a solution — and then slowly working to independence.

    The book itself is very thought-provoking, if dense. Frederick Reif, Applying Cognitive Science to Education: Thinking and Learning in Scientific and Other Complex Domains (MIT Press, 2008)

  2. My daughter and I were discussing your previous post, and she said one of her teachers had complained about kids not being willing to ask questions (because they want to pretend they know it all). She then questioned the “google” answer idea, because she thought the kids would be mislead (or given answers) instead of giving the “hints” that guide without giving away the discovery (that is the goal of daughter’s inquiry-based school).

    I saw the issue play out in the “four-fours” problem in math. The math teacher gave them hints (in the form of mathematical operations to consider/think about). But, if you google the problem, you get answers.

    I bring up the conversation because when I read your first post, and the kids waiting for answers constantly, I was completely on the same page with you — at the next levels (university/graduate school/employment), supervisors need students who will find answers for themselves, and not be crippled waiting for answers from others. But, the conversation with daughter made me realize there were some other goals in education (“learning”) and that they may have conflicting solutions.

  3. Interesting, bj. I agree, the goal of education is learning, but more importantly, the goal is learning to learn, or learning how to find the answers and not just memorizing things. I guess I’m trying to get them to learn what the right questions even are, so they can ask themselves the questions and try to draw on what they already know. Often, when I say to a student, “remember when we looped through lists?” They’ll say no, and then I’m stuck because the process they’re doing works exactly the same way. Much of what I do, even in regular old tech classes, involves repeating an action in a different context. A simple example: File–>Save or File–>Open. I can’t tell you how many 6th graders don’t remember those simple things from program to program. Or adults, for that matter. Or, to use a more complex example, that students can’t transfer a grid to a graphics program. Grids, to them, are for math, for graphing equations on, or for labeling a chart, not for positioning and moving objects. So, they see something like “Change x by -5” as a code block and they have no idea that moves an object to the left. I thought that by connecting what they’re doing to what they’ve already done–in math or science–that that would make it easier for them to learn in a new context. What I’m finding, though, is they can’t always make that leap. So maybe it’s not exactly a problem-solving issue, but a knowledge transfer issue.

Comments are closed.