Students will be able to...
- Define and identify "blocks," "scripts," "sprites," and "the stage" in SNAP.
- Write simple SNAP programs
- Describe what simple SNAP programs do without executing the code
-
Lab 1.1 handout (Welcome to SNAP!) (Download in Word) (Link to PDF)
-
Ensure that all classroom computers can access http://snap.berkeley.edu/run.
-
Read through the lab so that you are familiar with the requirements and can assist students as needed
Duration | Description |
---|---|
Day 1 | |
5 minutes | Welcome, attendance, bell work, announcements |
10 minutes | Introductory discussion |
10 minutes | Lab walkthrough |
20 minutes | "Welcome to SNAP!" Lab activity |
10 minutes | Demonstrate turn-in procedures and wrap-up |
Day 2 | |
5 minutes | Welcome, attendance, bell work, announcements |
10 minutes | Review from yesterday |
30 minutes | Continue lab |
10 minutes | Debrief, turn-in, and wrap-up |
Zoom Blocks are a useful tool to increase the readability of code in Snap. To access the Zoom Blocks feature, simply go up to settings in the upper right, and select the second option in the list, Zoom Blocks. Once selected, an interface pops up which allows you to increase the zoom on your code and shows you a preview.
-
Day 1
-
Introductory discussion
- Review the definitions of "algorithm" and "program" developed in lesson 0.2
- algorithm: a complete, well-defined sequence of steps for completing a task or solving a problem
- program: a sequence of instructions or steps, written in a language that can be understood by a computer, that will be used by the computer to complete a task or solve a problem
- Review the definitions of "algorithm" and "program" developed in lesson 0.2
-
Activity Walkthrough
- Work through Lab 1.1 up through part 3 (scripts) as a class.
- Point out key aspects of SNAP in each section, including:
- the sections of the window in part 1
- block shapes and color-coding of categories in part 2
- simply draw attention to the different shapes at this point; their meanings will be covered as each block type is introduced
- the "drag-and-drop" nature of the language
- running blocks/scripts by clicking on them
- Ensure that all students are able to create an account and save their work, as describe in the preamble of the lab
- Allow students a few minutes to develop their own answers to each of the questions and activities before discussing as a group
- Point out key aspects of SNAP in each section, including:
- Work through Lab 1.1 up through part 3 (scripts) as a class.
-
Activity
- Individually or in pairs, have students continue working through the "Welcome to SNAP" lab activity. Students should answer all questions and complete all activities and turn them in using your chosen turn-in procedure.
- For written questions, either have students hand-write answers and turn in the hard copies or set up an electronic submission system of some kind.
- For SNAP programs, including the Kaleidoscope program, students should save the program to the cloud and share a link with you
- Students should aim to get through at least part 6 by the end of Day 1
- Throughout the period, you can pause class to discuss each numbered part of the lab before moving on
- Circulate while students are working and try to judge when the majority of the class has finished each part
- Try to check in at least every 10 minutes
- Individually or in pairs, have students continue working through the "Welcome to SNAP" lab activity. Students should answer all questions and complete all activities and turn them in using your chosen turn-in procedure.
-
Turn-in procedures
- Demonstrate the turn-in procedure you will use for student work throughout the semester, and have students follow along to turn in their work from the lab.
- Ensure that each student is able to turn in their work before the class period ends.
- Demonstrate the turn-in procedure you will use for student work throughout the semester, and have students follow along to turn in their work from the lab.
-
-
Day 2
- Review
- Go over answers to the questions from the parts of the lab completed on day 1 (ideally, at least through part 6)
- Include the parts completed as a class (parts 1-3)
- Ask questions along the way to assess students' understanding of concepts. These questions can include:
- Naming the parts of the SNAP window
- Defining "block," "reporter," "script," etc.
- Describing the coordinate system used in SNAP
- Go over answers to the questions from the parts of the lab completed on day 1 (ideally, at least through part 6)
- Continue lab
- Students should continue working through the lab, aiming to finish all parts by the end of the day
- As before, students should turn in all answers using your chosen turn-in procedure.
- Pause class at least once to verify understanding of parts 7 and 8 before students move on to the Kaleidoscope program
- Judge the appropriate time based on observing student progress, but ensure that you break in with at least 10 minutes remaining so students have enough time to work through the program
- Students should continue working through the lab, aiming to finish all parts by the end of the day
- Debrief and wrap-up
- Discuss the challenges in the Kaleidoscope program
- Ask students how the challenges were similar to or different from those they encountered when playing LightBot in Lesson 0.2
- If time allows, ask one or two students to demonstrate their programs and describe their code
- Remind students of the turn-in procedures discussed yesterday and ensure all students are able to turn in their work
- Discuss the challenges in the Kaleidoscope program
- Review
####Good for Classroom Instruction
- BJC Video Suggestion: BJC Lecture 2: 3D Graphics
- Procedural Based Motion (Lab 1.1): 16:56-20:00
- For students that finish the lab early, encourage them to add more advanced features to their Kaleidoscope program, exploring parts of SNAP not covered in the lab.
- Students that are struggling with the lab can be paired up and/or receive individual instructor attention to help them through the activity.
- No parts of this lab can be easily skipped without impacting learning objectives, so provide as much support or scaffolding as you can to ensure all students are able to complete the lab. Add days to the lesson if needed.