Four computational thinking strategies for building problem-solving skills

Algorithmic design – Creating steps and rules to solve problems

Most problems require students to employ multiple strategies. Julie Evans, CEO of the education nonprofit Project Tomorrow, illustrated that point by asking participants in one session to draw a cat in less than 30 seconds. No two drawings looked exactly alike, but the participating educators had to quickly break down a mental image of a cat into important parts, such as tail and spines (decomposition). They threw away unnecessary data; For example, a cat can be depicted by drawing its head and body or just its face (abstraction). And they envisioned and executed steps to get a complete drawing (algorithmic design) from a blank page.

Brian Cox, who works at the Georgia Department of Education to expand computer science education, offered practical and educational reasons for the merger. Not all schools offer computer science and even schools that do, Not all students take that class. For elementary school teachers, stand-alone computer science lessons can feel like just one more thing to add to an already packed curriculum. “Integration is less disruptive,” Cox said. He added that integration mirrors how computational thinking happens in real-world fields such as medicine, automotive, law and sports.

Over the past two years, Project Tomorrow has trained 120 New York City elementary school teachers to integrate computational thinking into their classrooms. In an example of a second and third grade writing unit, students wrote a realistic fiction story and created a movie to bring the story to life. This may sound like a pretty simple language arts project, but according to Project Tomorrow instructional coach David Gomez, the difference was in method. Instead of being told how to write a realistic fiction story, students created an algorithm for the process, including steps such as creating a pretend character, giving the character a name, imagining the setting, and so on. In this example and others, Gomez says algorithms help students recognize the steps they are following during a task and increase their awareness of their work process.

Gomez works with teachers to help students recognize when they use other computational thinking strategies. For example, a second grade teacher used a poster with sticky notes for students to reflect Any strategy they’d use on various topics throughout the day.

Evans said she likes hearing kids identify negotiation strategies with each other. He asked “Have you tried abstraction?” Heard questions like, “Why not? Pattern recognition?” from students chatting with classmates. “Those little tykes in second grade are already building their problem-solving muscles, and they’ve got the vocabulary to be a sustainable skill for the future,” she said.

Formulating computational problems

Not every question or problem is computational. Carolyn Sykora, senior director of the ISTE Standards Program, shares three characteristics that teachers can use to identify a computational problem:

  • It is open-ended with multiple possible solutions. “How can we design a car to get from point A to point B?” An example that meets this criteria, where “How does a self-driving car work?” A knowledge based question.
  • It requires the use or collection of information. Data is not just numbers. It could be, for example, a line of a poem or a note of a musical composition.
  • It includes an opportunity to create a method or algorithm. In some cases, such as an engineering challenge, it is easy to identify where this opportunity will arise. But often it is not so obvious. “Sometimes you don’t understand where algorithm design comes into play until you decompose your problem,” Sykora said.

Using these features can help teachers rethink the curriculum instead of trying to add something new. “We have tried and true lessons that we want our kids to learn,” Sykora said. The next step is to look at those lessons and ask, “How can we take something that is knowledge-based and turn it into a computational problem?”