Skip to main content
Usable Knowledge

Getting Unstuck

Five tips from kids on how teachers can push through the challenges of coding
Photo of Assistant Professor Karen Brennan

When Assistant Professor Karen Brennan talks with teachers about how to get started with computer programming in K-12 classrooms, the most common concern she hears is, “What do I do if my students get stuck on a really hard problem? What if I don’t know the answer?”

As Brennan told her audience at the Harvard Graduate School of Education’s Bold Ideas & Critical Conversations event on September 19, the challenge of “getting unstuck” is something she thinks about a lot. She wants to transform attitudes about computers and computer science — to encourage students and teachers to see themselves as active creators, not passive consumers, of computer technology, and to show how computing can be a powerful means of self-expression and problem-solving.

They can get started, she says, by using a simple programming language called Scratch, developed at MIT. In 2009, Brennan formed an online gathering place called ScratchedEd to support teachers in learning to use Scratch in their classrooms. With more than 14,000 members, ScratchEd is a place where teachers can exchange stories and resources and get advice.

But in conversations with teachers over the years, Brennan kept hearing about their fear of getting stuck in an intractable programming problem. So she decided to survey young people who were using Scratch largely at their own initiative, without much support from teachers or parents, and ask how they handled tough problems that cropped up in their own coding projects. She asked them what advice they had for teachers about how to “get unstuck.”

Kids’ Advice on Solving Hard Programming Problems:

  1. Read through your code. “It sounds obvious, but a surprising number of kids would just throw out their projects if they didn’t work. Over time, kids realized that they needed to be more analytical and critical about their work,” Brennan says.
  2. Experiment with your code. If you can’t find the source of the problem, tinker.
  3. Look for examples. Kids can use the rich online community in the Scratch site — home to more than 6.3 million projects — to find examples of what they want to do and build something new.
  4. Work with someone else. Kids learned that they could build more together than they could individually, Brennan says.
  5. Be persistent. All of the kids she surveyed talked about the challenges and the great satisfaction that comes with programming, Brennan says. They also learned when it was time to take a break.

The Takeaway:

Brennan says that the takeaway for teachers is that “students don’t need you in the way you think they need you. They don’t need you to have every solution.” In a creative computing environment, teachers and students are collaborating and facing the unknowns together, she says. It’s OK — in fact, it’s a good thing — for educators to “embrace the vulnerability of not knowing.”


Get Usable Knowledge — Delivered
Our free monthly newsletter sends you tips, tools, and ideas from research and practice leaders at the Harvard Graduate School of Education. Sign up now.

Usable Knowledge

Connecting education research to practice — with timely insights for educators, families, and communities

Related Articles