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.

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

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

Student Instructions

The fish is getting dizzy!

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

View on Code Studio

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

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

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

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.

Cross-curricular Opportunities

This list represents opportunities in this lesson to support standards in other content areas.

Common Core English Language Arts Standards

L - Language
  • 4.L.6 - Acquire and use accurately grade-appropriate general academic and domain-specific words and phrases, including those that signal precise actions, emotions, or states of being (e.g., quizzed, whined, stammered) and that are basic to a particular topic (e.g
SL - Speaking & Listening
  • 4.SL.1 - Engage effectively in a range of collaborative discussions (one-on-one, in groups, and teacher-led) with diverse partners on grade 4 topics and texts, building on others’ ideas and expressing their own clearly.
  • 4.SL.1.a - Come to discussions prepared, having read or studied required material; explicitly draw on that preparation and other information known about the topic to explore ideas under discussion.
  • 4.SL.4 - Report on a topic or text, tell a story, or recount an experience in an organized manner, using appropriate facts and relevant, descriptive details to support main ideas or themes; speak clearly at an understandable pace.
  • 4.SL.6 - Differentiate between contexts that call for formal English (e.g., presenting ideas) and situations where informal discourse is appropriate (e.g., small-group discussion); use formal English when appropriate to task and situation.
W - Writing
  • 4.W.6 - With some guidance and support from adults, use technology, including the Internet, to produce and publish writing as well as to interact and collaborate with others; demonstrate sufficient command of keyboarding skills to type a minimum of one page in a

Common Core Math Standards

MP - Math Practices
  • MP.1 - Make sense of problems and persevere in solving them
  • MP.2 - Reason abstractly and quantitatively
  • MP.5 - Use appropriate tools strategically
  • MP.6 - Attend to precision
  • MP.7 - Look for and make use of structure
  • MP.8 - Look for and express regularity in repeated reasoning

Next Generation Science Standards

ETS - Engineering in the Sciences
ETS1 - Engineering Design
  • 3-5-ETS1-1 - Define a simple design problem reflecting a need or a want that includes specified criteria for success and constraints on materials, time, or cost.
  • 3-5-ETS1-2 - Generate and compare multiple possible solutions to a problem based on how well each is likely to meet the criteria and constraints of the problem.