As a math teacher, I spent a lot of time thinking about how I should best introduce topics to students. Do I give my students highly structured problems to tackle step-by-step or do I give them something more open-ended and let them discover a solution? I found that both approaches worked well, but it depended on the prior knowledge of my students. For example, if I was teaching my students about linear equations, I could begin with different introductory lessons:
- Break students up into groups and give each group an action figure and a bag of rubber bands. Give them graph paper and a prompt to tie rubber bands to the action figure and drop it down a stairwell. Have them record the number of rubber bands on the x-axis vs the distance fallen on the y-axis. Ask them to figure out a relationship between the number of rubber bands attached to the action figure and how far action figure drops.
- Explain concepts of slope and y-intercept, giving students techniques to calculate both values. Then have students calculate the slope and y-intercept of various lines and graph lines based on given slope and y-intercept
The second lesson may not have been very exciting for my novice students. But by the end of the lesson, they all felt much more confident about their understanding of the topic. Many actually preferred a more structured introductory approach when I polled them at the end of the unit. The more experienced students were not engaged at all, though. Their cognitive load was way too low. Since they already had the basic skills and understood the main ideas of linear equations, the structured problems just felt like busy work, and they became bored and disruptive.
My teaching became much better when I was able accommodate both groups simultaneously with problems that were appropriate to their prior experience.
For example, one of our video game design projects, Spaceship Captains, leads novices through several structured problems that involve the programming concept of loops. Novices receive successive small problems that build on each other, like 'use a forever loop to get the spaceship to turn right'. By the end of the lesson, students who have never seen a loop before will have practiced using loops in multiple contexts and in a non-repetitive environment. On the other hand, more experienced students might get a more comprehensive problem statement, like 'keep score based on the number of asteroids you shoot,' or 'figure out a way to add a second player to the game'. Instead of practicing how to create a loop, experienced students work on the higher level problem of when loops should be used. It takes a lot more work to design each project, but the payoff in having a multi-level classroom where all students are engaged is absolutely worth it.