Blog Post

5 ideas for promoting student reflection

Image sources:


During the hustle and bustle of a hectic school day, it is easy to place our focus on the transmission of knowledge and forget the importance of structuring effective learning experiences for each student. When we are strapped for time, carving out space for constructive reflection can be the first thing to go. Research demonstrates that reflection is critical for helping our students achieve learning gains. Educational philosopher John Dewey writes that reflection, “emancipates us from merely impulsive and merely routine activity… It converts action that is merely appetitive, blind and impulsive into intelligent action.(1) Reflection is how we make meaning.

Here are a few fun ideas for promoting reflection and encouraging your computer science learners to think about their thinking:

  1. Rubber Duck Debugging. This is a method for debugging code by explaining it line by line to an inanimate object. It can be used successfully with students of all ages. Purchase some inexpensive rubber ducks for your classroom. Ask students to explain their ideas, algorithms, or code to a duck. In the process of articulating their solution or their stumbling blocks to the duck, students often find clarity. It may sound a little silly at first; this article explains the history and psychology behind the strategy. JV_January_3


  2. Say It in 6 [Words]. This is a quick and simple strategy you can use as an exit ticket or class warm-up. The idea is inspired by Six Word Memoirs. Ask students to explain a concept (binary numbers, for example) in exactly six words. This activity works well in pairs or small groups, and leads to a fun and engaging conversation as students share and compare their six words with each other.
  3. Program or Project Sprints. Informal programming (or project) sprints are a great way to help students articulate their thinking. As students are working on programs, problems, or projects, organize a sprint when you feel everyone could use an energizer or a break. Gather students in a standing circle and ask each student, pair, or team to share with specificity their accomplishments, their challenges, and their next steps.
  4. Ipsative Assessment. This is an interesting approach that helps a learner compare her current work with previous work. This shifts some of the assessment focus from how a student did to how she grew. One simple way to achieve this is to ask students to reflect on how they have incorporated previous feedback in their current work. In rubric-based assessments, a column (or row) can be added to include “incorporation of previous feedback.” More information about ipsative assessment is available here.
  5. Annotation & Journaling. When developing programs or algorithms, encourage students to use comments to explain their thinking. As students are developing their programs or projects, set aside time to talk with each student or have them journal. How might you improve upon this work? How is this similar to your previous work? How is it different? What surprised you about this work? What did you learn about yourself as you worked on this?” Edutopia has some great information on scaffolding student reflections.

What are your strategies for student reflection?

(1) Dewey, J. (1933). How We Think: A Restatement of Reflective Thinking to the Educative Process. Boston: D. C. Heath. (Original work published in 1910)


Jenn Vermillion is the Director of Innovative Learning at St. Catherine’s School, an independent school for girls age 3 through grade 12 in Richmond, VA. She teaches an introduction to computer science course for students in grades 9-12 and an 8th grade Creative Technologies course. She also coaches a 4th grade Robotics team and coordinates school-wide professional development. Jenn welcomes your comments and questions at