Optimizing the Struggle: Teaching Computer Science Authentically
We’ve all seen it — a class full of students who are melting down because a lesson became too complicated too quickly. It’s hard not to feel helpless when teaching a subject famous for weeding out all but the best and brightest.
But hope is not lost.
Here are some tips and tricks for keeping your classroom on track as you start down the computer science path, even when frustration grows uncomfortably high.
1. Don’t Keep Students in the Dark
It’s tempting to dive right in to lessons and hope for the best. Some take the opposite approach and spend an unwieldily amount of time trying to prepare the class for every tiny element in an effort to avoid frustration. Unfortunately, both tactics can lead to tragic reactions when students feel like they’ve hit a wall.
Try talking to your students about the emotional journey that is computer science. Let students know that frustration is a sign that they’re about to learn something, and without it, they can’t feel the pure joy of figuring something out. If students are prepared with the mental tools to deal with frustration, angst, and panic, they’ll have a much better time learning CS — and every other subject, too!
2. Consider Just-In-Time Resources
Often, when we try to pack too much education into too small of a space, eyes will gloss over and kids will tune out because they don’t understand why they need to know what they’re being taught.
It may be worth taking a different approach. Consider showing them only as much as they need to get started, then make a game out of figuring out where to go to get unstuck when they need to.
Have a pile of resources on a nearby shelf specifically curated for each group of lessons. Simple reference cards, worksheets, handbooks, and illustrations will make students feel like they’ve hit the jackpot if they find them just when they realized there was something they needed to learn.
3. Peer-to-Peer Advice is Best
Consider encouraging teamwork and answer sharing. The amount that students gain when working together and thinking through problems from other perspectives far outweighs what they lose by having to come up with solutions on their own.
A culture of idea sharing, peer explanation, and teamwork will lead to students who can authentically think through the steps they are taking, instead of students who need itemized step-by-step instructions to make anything functional.
Research shows that peers are often more effective at opening the eyes of a fellow student than a teacher can be.
Do you value giving students an honest, authentic computer science education? What are some of the practices that you’ve put into place in your own classroom? Comment below to let us know what you consider a “game changer” for your students.