2023 ASEE Annual Conference & Exposition

Rock, Paper, Scissors, Code! Laying a Foundation for Writing Algorithms (Resource Exchange)

Presented at Pre-College Engineering Education Division (PCEE) Technical Session 12: Resource Exchange

This ~50 minute decontextualized introductory coding activity will challenge students’ critical thinking, communication, and collaboration skills while developing a robust understanding of the foundations of algorithms (sequence, selection, and repetition). First, students individually develop written instructions for how to play “Rock, Paper, Scissors.” Next, students swap instructions with a partner and attempt to play the game exactly as written. Inevitably, students will have issues with instructions (e.g., unclear, not repeatable) and will work together to develop improved game instructions. Throughout this lesson, the instructor will utilize effective questioning strategies to help students develop conceptual understanding of algorithms, sequencing, selection, and repetition by connecting concepts back to their Rock, Paper, Scissors instructions. After these concepts are developed as a whole class, small groups rotate instructions and help one another critique and modify instructions, promoting collaboration and exchange of ideas. Finally, students will apply their understanding of the foundations of algorithms by developing algorithms for a well-known game of their choosing. In addition to coding concepts, the instructor will incorporate Nature of Engineering ideas (e.g., Engineering solutions may vary as there may be more than one solution to the same problem). Instructors should actively evaluate student understanding through effective questioning throughout the activity and can use the final application (new game write-up) as an assessment of conceptual understanding. This activity is structured using the Learning Cycle and involves small group and whole group discussions. Goals for students include critical thinking and problem-solving, communication and collaboration, as well as a deep understanding of the foundations of algorithms (i.e.,sequence, selection, and repetition). This introductory activity can be utilized for middle or high school students to teach foundational coding concepts.

Authors
Download paper (1.67 MB)

Are you a researcher? Would you like to cite this paper? Visit the ASEE document repository at peer.asee.org for more tools and easy citations.