Lesson 6: Swimming Fish with Sprite Lab

Overview

In this lesson, students will learn about the two concepts at the heart of Sprite Lab: sprites and behaviors. Sprites are characters or objects on the screen that students can move, change, and manipulate. Behaviors are actions that sprites will take continuously until they are stopped.

Purpose

This lesson is designed to introduce students to the core vocabulary of Sprite Lab, and allow them to apply concepts they learned in other environments to this tool. By creating a fish tank, students will begin to form an understanding of the programming model of this tool, and explore ways they can use it to express themselves.

Agenda

Warm Up (10 min)

Bridging Activity

Main Activity (20 min)

Wrap Up (15 min)

View on Code Studio

Objectives

Students will be able to:

  • Define “sprite” as a character or object on the screen that can be moved and changed.
  • Create new sprites and assign them costumes and behaviors.

Preparation

  • Play through the puzzles to find any potential problem areas for your class.
  • Make sure every student has a journal.

Links

Heads Up! Please make a copy of any documents you plan to share with students.

For the Teachers

Vocabulary

  • Behavior - An action that a sprite performs continuously until it’s told to stop.
  • Sprite - A graphic on the screen with a location, size, and appearance.

Introduced Code

Support

Report a Bug

Teaching Guide

Warm Up (10 min)

Introduction

Today students will learn how to work with sprites in Sprite Lab.

Display: Pull up a previous puzzle from Code.org, ideally one containing a "main character" like Scrat from Ice Age or one of the Angry Birds.

Discuss: Let the students know that this character on the screen is a "sprite." It is a graphic that is controlled by a program. In this lesson, students will have the opportunity to choose their own sprites to control.

Bridging Activity

This demostration and discussion can help students make the connection from the previous unplugged lesson "Simon Says" into the new Sprite Lab environment.

Swimming Fish Teacher Sandbox

Content Corner

Sprite Lab works differently in some ways from the other online tools in the course. Most importantly, all code runs in order and immediately unless attached to an event block. Telling a sprite to begin and start the same behavior won't result in any observable effect because there is no time between each action.

If students bring up time, such as making a behavior happen for a set duration, it can be helpful to reframe things by asking "When should the behavior stop?" Programs like this will rely on events to make things start and stop as desired.

Using a projector, show the sandbox level to your students. The goal is to make connections to the previous lesson and show them some of the unique ways that Sprite Lab works. Model writing a few programs and ask students to share their observations.

  • What blocks would we need to connect to make the tumbleweed spin?
  • What would happen if we told the sprite to begin two behaviors at once?
  • Will the sprite ever stop these behaviors on its own?
  • If we want the sprite to stop a behavior when we click it, how might we do that?

Before heading into the Main Activity, introduce or review today's lesson vocabulary.

Main Activity (20 min)

Online Puzzles

Goal: Today, students will be programming their own Fish Tank. They’ll begin by learning how to put some sprites on the screen, then they will make them move. Finally, they’ll customize their fish tank to add whatever creatures and objects they want.

Teaching Tip

Encourage students with questions/challenges to start by asking their partner. Unanswered questions can be escalated to a nearby group, who might already know the solution. Have students describe the problem that they’re seeing:

  • What is it supposed to do?
  • What does it do?
  • What does that tell you?

Transition: Move students to their machines. Encourage students to follow the instructions for each puzzle. Help them realize that this is a creative activity, intended to help them learn Sprite Lab. It is not an assessment activity of any sort.

Wrap Up (15 min)

Journaling

Having students write about what they learned, why it’s useful, and how they feel about it can help solidify any knowledge they obtained today and build a review sheet for them to look to in the future.

Journal Prompts:

  • What was today's lesson about?
  • How do you feel about today's lesson?
  • How did it feel to make a scene that was more creative?
  • Was it difficult to finish a lesson where there was no clear "right" and "wrong"?
  • Introducing Sprite Lab
  • 1
  • (click tabs to see student view)
  • Prediction
  • 2
  • (click tabs to see student view)
View on Code Studio

Student Instructions

Make a prediction: What do you think will happen when you run this code?

  • Mini-Project: Swimming Fish
  • 3
  • 4
  • 5
  • (click tabs to see student view)
View on Code Studio

Teaching Tip

This lesson contains a mini-project called Swimming Fish. This progression may feel very different from what has come earlier in the course for you as well as your students. These levels have some new characteristics you may want to explore before starting.

  • The code your students write in one level will automatically transfer over to the other levels. This allows them to build gradually and iterate on their ideas as they learn.
  • These levels allow for more open-ended creativity. Empower your students to determine for themselves when they have completed each task. There is no one right answer!
  • Example solutions are available for this step of the progression which can be viewed by opening the teacher panel to the right.

This level will validate a student’s code by checking that the following conditions have been met:

  • Student must have at least one fish sprite with an active behavior.

Student Instructions

Let's make a fish tank!

Change the tumbleweed sprite into any kind of fish by clicking the sprite picker block.

Be sure to also update this sprite's costume in the add behavior block.

View on Code Studio

Teaching Tip

This lesson contains a mini-project called Swimming Fish. This progression may feel very different from what has come earlier in the course for you as well as your students. These levels have some new characteristics you may want to explore before starting.

  • The code your students write in one level will automatically transfer over to the other levels. This allows them to build gradually and iterate on their ideas as they learn.
  • These levels allow for more open-ended creativity. Empower your students to determine for themselves when they have completed each task. There is no one right answer!
  • Example solutions are available for this step of the progression which can be viewed by opening the teacher panel to the right.

This level will validate a student’s code by checking that the following conditions have been met:

  • Students must have at least one fish sprite with an active behavior.
  • The fish sprite needs to move left and right. This can be done by changing its behavior to swimming left and right.

Student Instructions

The fish is getting dizzy!

Change the fish's behavior so that it swims left and right.

View on Code Studio

Teaching Tip

This lesson contains a mini-project called PROGRESSION NAME. This progression may feel very different from what has come earlier in the course for you as well as your students. These levels have some new characteristics you may want to explore before starting.

  • The code your students write in one level will automatically transfer over to the other levels. This allows them to build gradually and iterate on their ideas as they learn.
  • These levels allow for more open-ended creativity. Empower your students to determine for themselves when they have completed each task. There is no one right answer!
  • Example solutions are available for this step of the progression which can be viewed by opening the teacher panel to the right.

This level will validate a student’s code by checking that the following conditions have been met:

  • Student must change the background to something other than white.

Student Instructions

Our fish tank needs some water!

Use the set background color block to make the background any color. We recommend blue!

  • How to Make a Sprite
  • 6
  • (click tabs to see student view)
  • Mini-Project: Swimming Fish (continued)
  • 7
  • 8
  • (click tabs to see student view)
View on Code Studio

Teaching Tip

This lesson contains a mini-project called Swimming Fish. This progression may feel very different from what has come earlier in the course for you as well as your students. These levels have some new characteristics you may want to explore before starting.

  • The code your students write in one level will automatically transfer over to the other levels. This allows them to build gradually and iterate on their ideas as they learn.
  • These levels allow for more open-ended creativity. Empower your students to determine for themselves when they have completed each task. There is no one right answer!
  • Example solutions are available for this step of the progression which can be viewed by opening the teacher panel to the right.

This level will validate a student’s code by checking that the following conditions have been met:

  • Student must create exactly two unique sprites, and one must be a fish.

Student Instructions

The fish is adventurous and wants to meet new creatures in the sea. Add another sprite to the fish tank. This sprite can have any costume other than the one you use for your fish!

View on Code Studio

Teaching Tip

This lesson contains a mini-project called Swimming Fish. This progression may feel very different from what has come earlier in the course for you as well as your students. These levels have some new characteristics you may want to explore before starting.

  • The code your students write in one level will automatically transfer over to the other levels. This allows them to build gradually and iterate on their ideas as they learn.
  • These levels allow for more open-ended creativity. Empower your students to determine for themselves when they have completed each task. There is no one right answer!
  • Example solutions are available for this step of the progression which can be viewed by opening the teacher panel to the right.

This level will validate a student’s code by checking that the following conditions have been met:

  • Each sprite must have an active behavior.

Student Instructions

What do you want your fish’s new friend to do?

Add a behavior and watch them go!

  • Free Play
  • 9
  • (click tabs to see student view)
View on Code Studio

Teaching Tip

This lesson contains a mini-project called Swimming Fish. This progression may feel very different from what has come earlier in the course for you as well as your students. These levels have some new characteristics you may want to explore before starting.

  • The code your students write in one level will automatically transfer over to the other levels. This allows them to build gradually and iterate on their ideas as they learn.
  • These levels allow for more open-ended creativity. Empower your students to determine for themselves when they have completed each task. There is no one right answer!
  • Example solutions are available for this step of the progression which can be viewed by opening the teacher panel to the right.

Student Instructions

We've added a lot of new blocks to the toolbox.

Play with them to make your fish tank special!

Standards Alignment

View full course alignment

CSTA K-12 Computer Science Standards (2017)

AP - Algorithms & Programming
  • 1B-AP-12 - Modify, remix or incorporate portions of an existing program into one's own work, to develop something new or add more advanced features.