Day 1

Session 6: Problem Solving and Debugging

45 minutes

discussion-based

Purpose

This session is intended to introduce participants to the Guide to Debugging as a resource for supporting students in the process of debugging. Participants will have the opportunity to practice debugging skills using strategies from the Guide to Debugging.

Objectives

  • Locate and utilize the Guide to Debugging as a resource
  • Practice the debugging process
  • Identify strategies to use to support students in the debugging process

Supplies & Prep

Room Setup:

  • Participants are in groups of two (same groups as the previous session)

Facilitator Supplies:

Teacher Materials:

Agenda

Opening Activity (16 minutes)

Practice Debugging (14 minutes)

Reflection (12 minutes)

Transition (3 minutes)

Facilitation Guide

Opening Activity (16 minutes)

(1 minute) Opening Remarks

Remarks

As you likely noticed in the model lesson, as we begin adding more complexity to our programs in Game Lab, more opportunities for bugs arise. One common barrier to supporting students during a programming unit is knowing how to support them effectively when they encounter bugs while programming. After lunch we will transition more fully to looking at the curriculum, but first we dig deeper into the process of debugging in order to equip ourselves to effectively support students during the debugging process. We will also explore the role of the teacher in guiding students through the debugging process.

(7 minutes) Read the Guide to Debugging

  • Direct participants to the Guide to Debugging on the CSD curriculum landing page
  • Give time for participants to read and process the document
  • Warn participants that this is their first look at the document. They are not expected to master the concepts in this document upon first glance. This time is intended for them to familiarize themselves with the resource in order to be able to reference it appropriately during the following activity.

(4 minutes) Reflect and Discuss

In the model lesson we just completed, which of the steps from this guide did you find yourself taking when you encountered issues or bugs?

  • (2 minutes) share with your partner
  • (2 minutes ) whole group share out

(3 minutes) Show Debugging Video

Show the "How to Debug" video to the whole group.

(1 minute) Transitional Remarks

Teaching Tip

When learners complete the bug report in their journals, they are creating a resource that will be able to reference later if they encounter a similar bug. (Role of the Teacher: Help students organize their new knowledge in a way that can be accessed as a resource later)

Remarks

You will now have the opportunity to practice debugging with a partner. One partner will be the driver and one partner will be the navigator. The navigator should use the debugging guide as a resource to guide the debugging process. The driver will take direction from the navigator in making modifications to the Game Lab code. I will keep time and let you know when it is time to switch roles. For each bug, you will complete a bug report in your journal. Both the driver and the navigator should complete the bug report in his or her individual journal.

Practice Debugging (14 minutes)

Teaching Tip

Circulate the room and support participants as needed (be careful not to fix the bug for them, instead help them work through the process of debugging) Keep time (roles should change halfway through the activity) Keep Moving (It is important for the participants to see that the teacher plays an active role during a programming unit.) * Challenge participants that move through the activity to think through how they might create a culture of debugging in their classroom. It is important that every participant is successful at debugging at least one of the examples before you move on to the reflection. Support participants as needed.

  • Participants work in pairs to complete the bug examples. One partner will be the driver and one partner will be the navigator. The navigator should use the debugging guide as a resource to guide the debugging process. The driver will take direction from the navigator in making modifications to the Game Lab code. Participants will switch roles every 4 minutes. (The last round will only be two minutes).
  • Participants should complete a bug report for at least one example bug. This should be done in their journal. Each participant should write a bug report in their individual journals.

Facilitator Note The bug report worksheet is linked on the second page of the "Guide to Debugging." Have participants navigate to this document from the link within the guide to ensure participants know where this resource is located for future use.

Reflection (12 minutes)

(4 minutes) Pair Programming and Debugging

  • (1 minute) Journal: How does pair programming support the process of debugging?
  • (3 minutes) Table Talk: Discuss the journal prompt as a table. The facilitator should circulate and listen in. If large scale clarification is needed, the facilitator can bring the group together to discuss.

(4 minutes) Debugging Resources

  • (1 minute) Journal: If a student has gone through the entire debugging process and still has not been successful in finding and fixing a bug, what additional resources and supports can you use to guide your student?

Discussion Goal

It is important that participants leave this session feeling confident in their ability to guide students through the debugging process even if they are new to CS. This prompt is an opportunity to remind participants that they are a part of a larger CS community with extensive knowledge and resources.

  • (3 minutes) Whole Group Share Out: During this time, the facilitator should project the group notes document and write ideas directly into the document.

(4 minutes) Role of the Teacher

  • (1 minutes) Journal: What is the role(s) of the teacher in the debugging process?
  • (3 minutes) Whole Group Share Out: As participants share out with the whole group, the facilitators adds to the “Role of the Teacher” poster from the opening session.

Transition (3 minutes)

(2 minutes) Set the Stage for Curriculum Exploration

Teaching Tip

If there is only one facilitator, and there is a concern about the level of support that will be needed during the exploration, you might select to have all participants explore the same group of lessons. In this case, select lessons 7,8, and 9.

Remarks

After lunch, you will have the opportunity to further explore lessons in Unit 3. The goal of this time is for you to have a space to explore the curriculum in a way that meets your individual needs. There are two tracks of suggested lessons. One track is for teachers that are new to CS or do not feel comfortable with Game Lab. The second track is for teachers that are more comfortable with both CS and Game Lab. The session is designed for you to explore three different lessons. There is time built in for you to reflect on how you will implement each lesson in your classroom. While the goal is to expose you to multiple lessons, the more important goal is that you have the space to explore in a way that makes sense for their needs. If you choose to spend the entire time on one lesson, you will be given the opportunity to do so. However, we will still stop periodically to discuss classroom implementation of these lessons. In order to make the most out of these discussions, you should sit with a group of people that will explore the same units that you plan to explore.

Facilitator Note: Survey the room to determine levels of comfort. Next, designate areas of the room that will explore the same lessons during the exploration after lunch. Instruct participants to move the area that meets their comfort level during the break.

(1 minute) Lunch Time Announcements