Scratch2 - Step by Step - A Course in Scratch Programming
Scratch2 - Step by Step - A Course in Scratch Programming
SCRATCH 2
STEP BY STEP:
A COURSE IN SCRATCH
PROGRAMMING
LESSON PLANS
learnscratch.org
Scratch 2
Page 2
Lesson Layout
Scratch 2 - 2
Page 3
List of Lessons
TABLE
OF
Unit 1
Lesson
Lesson
Lesson
Lesson
Lesson
Lesson
1:
2:
3:
4:
5:
6:
CONTENTS
Move, Turn and Point . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Go and Glide, Changing Positions. . . . . . . . . . . . . . . . . . 8
Bouncing, Locating the Sprite. . . . . . . . . . . . . . . . . . . . 10
Changing Costumes . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Speaking, Thinking and Graphic Effects. . . . . . . . . . . . . 14
Size, Presence and Layers . . . . . . . . . . . . . . . . . . . . . . 16
Unit 2
Lesson
Lesson
Lesson
Lesson
Lesson
Unit 3
Lesson
Lesson
Lesson
Lesson
Lesson
12:
13:
14:
15:
16:
Unit 4
Lesson
Lesson
Lesson
Lesson
17:
18:
19:
20:
Unit 5
Lesson
Lesson
Lesson
Lesson
21:
22:
23:
24:
Scratch 2 - 3
Scratch 2
Page 4
Class Management
TIME SCHEDULE
This course has been designed so that each lesson will occupy
one meeting session with the students.
Once the tutorial has been reviewed, the activity of the student
will concentrate on mastering the new concepts presented.
Practicing with Scratch and exploring all the possibilities of the
new concepts learned is essential for a robust learning process.
The exercises proposed in the Extensions section are designed
to reinforce the learn-by-doing approach.
SCRATCH ACTIVITIES
After studying the tutorials the students will replicate on their
own Scratch environment the activities presented during the
lesson.
The students are encouraged to explore, beginning with the environment presented in the tutorials, all the possibilities open
by the newly learned concepts.
EXTENSIONS
The exercises presented in the Extensions section provide suggestions to develop and reinforce the knowledge and techniques learned in the tutorials.
They also provide a schedule support by allocation a variety of
work assignments for each lesson.
Scratch 2 - 4
Page 5
Class Management
DVD
WITH
COURSE MATERIALS
SOLUTIONS
TO
EXTENSIONS EXERCISES
ADDITIONAL COURSES
New courses using Scratch are being developed to be incorporated into the K-12 curriculum. Information on these courses
will be available at learnscratch.org.
Scratch 2 - 5
LESSON
Scratch 2
Page 6
Scratch 2 - 6
Page 7
PRACTICE
Scratch Activity: Reproduce the actions in the tutorial. Experiment with the size and direction of the steps and turns.
Scratch Activity: Reproduce the actions in the tutorial. Experiment with other directions and sprites.
CLOSING - ASSIGNMENTS
Review the main topics introduced in this lesson and discuss the
assignments proposed in the Extensions section.
EXTENSIONS
1. Experiment with step sizes: very small, small, larger, very
large.
2. Experiment with all ranges of turns.
3. Experiment by combining move and turn actions simultaneously.
4. Experiment pointing into all range of directions and to other
sprites.
5. Experiment combining all actions in this lesson.
Scratch 2 - 7
LESSON
Scratch 2
Go-&-Glide,
Changing Positions
Page 8
INTRODUCTION - REVIEW
This lesson presents the blocks that allow us to position immediately or smoothly our Sprite in a particular position within the
X-Y grid of Scratch. The position may be determined by a set of
x-y coordinates, the position of the mouse pointer or another
Sprite,. It also presents how to modify relatively or absolutely
the X and Y coordinates of the Sprite within the Scratch grid.
Scratch 2 - 8
Page 9
PRACTICE
Scratch Activity: Reproduce the actions in the tutorial. Experiment with the controls of the glide movements.
Scratch Activity: Reproduce the actions in the tutorial. Experiment by exploring the range of vertical and horizontal coordinates
CLOSING - ASSIGNMENTS
Review the main topics introduced in this lesson and discuss the
assignments proposed in the Extensions section.
EXTENSIONS
1. Experiment by exploring the range of vertical and horizontal coordinates.
2. Experiment with the controls of the Go and Glide and Change and
Set controls.
3. Experiment by performing equivalent movements of the sprite with
alternative controls.
4. Experiment by moving the sprite around the edge of the stage.
5. Experiment by moving the sprite over the vertical and horizontal
axes (x=0, and y=0)
Scratch 2 - 9
LESSON
Scratch 2
Bouncing,
Locating the Sprite
Page 10
INTRODUCTION - REVIEW
This lesson presents the programming block that allows us to
force a Sprite in motion to remain within the limits of the
Scratch grid by requiring it to bounce when it reaches one of
the edges of the Stage. It also introduces the programming
blocks that provide us with the three characteristics of the Motion of the Sprite: the x position, the y position, and its direction.
Scratch 2 - 10
Page 11
PRACTICE
Scratch Activity: Reproduce the actions in the tutorial. Experiment by modifying the settings and parameters used in the tutorial.
Scratch Activity: Reproduce the actions in the tutorial. Experiment by modifying the settings and parameters used in the tutorial.
CLOSING - ASSIGNMENTS
Review the main topics introduced in this lesson and discuss the
assignments proposed in the Extensions section.
EXTENSIONS
1. Experiment by having two sprites bouncing off the edges of the
stage.
2. Experiment by having tow sprites reporting their location and
direction.
3. Experiment by adding sounds when the sprite moves or
bounces.
4. Experiment by adding sounds when the sprite crosses some
thresholds.
Scratch 2 - 11
LESSON
Scratch 2
Page 12
Changing Costumes
INTRODUCTION - REVIEW
This lesson introduces the programming blocks that allow us to
select the next costume of the sprite or any of the its predefined costumes. It also introduces the programming block to
change the backgrounds.
Scratch 2 - 12
Page 13
PRACTICE
Scratch Activity: Reproduce the actions in the tutorial. Experiment by exploring the sprites and their costumes in the different Scratch libraries.
Scratch Activity: Reproduce the actions in the tutorial. Experiment by exploring the backgrounds and their costumes in the
different Scratch libraries.
CLOSING - ASSIGNMENTS
Review the main topics introduced in this lesson and discuss the
assignments proposed in the Extensions section.
EXTENSIONS
1. Experiment by applying the techniques of the tutorial to
other sprites.
2. Experiment by synchronizing changes of costumes and backgrounds.
3. Experiment by adding sounds when the sprite changes costumes.
4. Experiment by adding sounds when the background changes
costumes.
Scratch 2 - 13
LESSON
Scratch 2
Speaking, Thinking
and Graphic Effects
Page 14
INTRODUCTION - REVIEW
This lesson introduces the programming blocks that allow us to
display a speech or a thought bubble with its corresponding
message. The message is presented permanently or for a fix
duration of time. It also introduces the programming blocks
that allow us to set or change graphic effects applied to the
sprite. These effects include: color, fisheye, whirl, pixelate, mosaic, brightness and ghost.
Scratch 2 - 14
Page 15
PRACTICE
Scratch Activity: Reproduce the actions in the tutorials. Experiment by modifying the settings and parameters used in the tutorial.
CLOSING - ASSIGNMENTS
Review the main topics introduced in this lesson and discuss the
assignments proposed in the Extensions section.
EXTENSIONS
1. Experiment by having two sprites communicate in words and
thoughts.
2. Experiment by adding sounds when a sprite speaks or
thinks.
3. Experiment by applying multiple graphic effects to a sprite.
4. Experiment by adding sounds when graphic effects are applied.
Scratch 2 - 15
LESSON
Scratch 2
Size, Presence
and Layers
Page 16
INTRODUCTION - REVIEW
This lesson introduces the programming blocks that allow us to
set or change the size of the sprite, making it larger or smaller
than its initial size. It also introduces the programming blocks
that allow us to show the sprite on the Stage or to make it disappear from it, and how to move the sprite in front of the other
sprites, or to move it back one or several layers.
Scratch 2 - 16
Page 17
PRACTICE
Scratch Activity: Reproduce the actions in the tutorials. Experiment by modifying the settings and parameters used in the tutorial.
CLOSING - ASSIGNMENTS
Review the main topics introduced in this lesson and discuss the
assignments proposed in the Extensions section.
EXTENSIONS
1. Experiment by changing the size of two or more sprites at
the same time.
2. Experiment by making appear and disappear several sprites.
3. Experiment by controlling the layer relative position of several sprites.
4. Experiment by adding sounds as the sprite change sizes,
show or hide, or change layers.
Scratch 2 - 17
LESSON
Scratch 2
Page 18
Playing Sounds
INTRODUCTION - REVIEW
This lesson introduces the programming blocks
play one of the predefined sounds associated
and either continue with other actions or wait
the sound. It also introduces the control to stop
Scratch 2 - 18
that allow us to
with the sprite,
until the end of
all sounds.
Page 19
PRACTICE
Scratch Activity: Reproduce the actions in the tutorial. Experiment by exploring the sounds in the libraries of Scratch and by
recording your own sounds.
CLOSING - ASSIGNMENTS
Review the main topics introduced in this lesson and discuss the
assignments proposed in the Extensions section.
EXTENSIONS
1. Experiment by recording multiple sounds.
2. Experiment by having multiple sprites play multiple sounds.
3. Experiment by adding text and sounds to a simple story.
4. Experiment by having several sprites sing and play instruments together.
Scratch 2 - 19
LESSON
Scratch 2
Page 20
Playing Drums
INTRODUCTION - REVIEW
This Tutorial introduces the programming block that allows us
to select one among many drum sounds and to play it for a predefined duration.
Scratch 2 - 20
Page 21
PRACTICE
Scratch Activity: Reproduce the actions in the tutorial. Experiment by exploring the sounds in the libraries of Scratch and by
recording your own sounds.
CLOSING - ASSIGNMENTS
Review the main topics introduced in this lesson and discuss the
assignments proposed in the Extensions section.
EXTENSIONS
1. Experiment by playing multiple drums.
2. Experiment by playing sequences of drums.
3. Experiment by adding text when drum sounds are played.
4. Experiment by exploring the drum sounds in the Scratch libraries.
Scratch 2 - 21
LESSON
Scratch 2
Page 22
Playing Instruments
INTRODUCTION - REVIEW
This lesson introduces the programming blocks that allow us to
select one among many instruments and to play a selected note
for a predefined duration.
Scratch 2 - 22
Page 23
PRACTICE
Scratch Activity: Reproduce the actions in the tutorials. Experiment by exploring the sounds in the libraries of Scratch and by
recording your own sounds.
CLOSING - ASSIGNMENTS
Review the main topics introduced in this lesson and discuss the
assignments proposed in the Extensions section.
EXTENSIONS
1. Experiment by playing multiple instruments.
2. Experiment by playing sequences of instruments.
3. Experiment by adding text when instrument sounds are
played.
4. Experiment by exploring the instrument sounds in the
Scratch libraries.
Scratch 2 - 23
LESSON
10
Scratch 2
Page 24
Scratch 2 - 24
Page 25
PRACTICE
Scratch Activity: Reproduce the actions in the tutorials. Experiment by modifying the settings and parameters used in the tutorial.
CLOSING - ASSIGNMENTS
Review the main topics introduced in this lesson and discuss the
assignments proposed in the Extensions section.
EXTENSIONS
1. Experiment by drawing circles (use move and turn: Unit 1.)
2. Experiment by drawing rectangle (use move and set direction: Unit 1.)
3. Experiment by adding sounds as the pen draws.
4. Experiment by having two or more pens draw together.
Scratch 2 - 25
LESSON
11
Scratch 2
Pen Size,
Shade, Stamp
Page 26
INTRODUCTION - REVIEW
This lesson introduces the programming blocks that allow us to
set or change the shade of the pen. The shade scale ranges
from 0, very dark or black, to 100, very light. It also introduces
the programming blocks that allow us to set or change the pen
size. The scale of the size goes from 1 pixel to sizes larger than
the complete Stage. Finally it introduces how to stamp on the
Stage images of the sprite.
Scratch 2 - 26
Page 27
PRACTICE
Scratch Activity: Reproduce the actions in the tutorials. Experiment by modifying the settings and parameters used in the tutorial.
CLOSING - ASSIGNMENTS
Review the main topics introduced in this lesson and discuss the
assignments proposed in the Extensions section.
EXTENSIONS
1. Experiment by changing the size of the pen as it draws circles and rectangles.
2. Experiment by changing the shade of the color of the pen as
it draws circles and rectangles.
3. Experiment by performing stamping effects as those seen in
the tutorials.
4. Experiment by adding sound effects to the previous programs.
Scratch 2 - 27
LESSON
12
Scratch 2
Page 28
Scratch 2 - 28
Page 29
PRACTICE
Scratch Activity: Reproduce the actions in the tutorials. Experiment by modifying the settings and parameters used in the tutorial.
CLOSING - ASSIGNMENTS
Review the main topics introduced in this lesson and discuss the
assignments proposed in the Extensions section.
EXTENSIONS
1. Experiment by controlling actions using three different techniques.
2. Experiment by applying simultaneous controls to multiple
sprites.
3. Experiment by starting some actions and stopping others
with the same controls.
4. Experiment by adding sound effects to the previous programs.
Scratch 2 - 29
LESSON
13
Scratch 2
Page 30
Repeating Actions
INTRODUCTION - REVIEW
This lesson introduces the programming blocks that allow us to
repeat indefinitely a group of actions unconditionally or when a
condition, which is constantly checked, becomes true. It also
introduces the programming blocks that allow us to repeat a
group of actions a predetermined number of times, or until a
condition becomes true.
Scratch 2 - 30
Page 31
PRACTICE
Scratch Activity: Reproduce the actions in the tutorials. Experiment by modifying the settings and parameters used in the tutorial.
CLOSING - ASSIGNMENTS
Review the main topics introduced in this lesson and discuss the
assignments proposed in the Extensions section.
EXTENSIONS
1. Experiment by applying the techniques seen in the tutorials
to: two, three or more sprites.
2. Experiment by applying image effects to the previous programs.
3. Experiment by adding sound effects to the previous programs.
Scratch 2 - 31
LESSON
14
Scratch 2
Page 32
Broadcasting
INTRODUCTION - REVIEW
This lesson introduces the programming blocks that allows communication between sprites through messages which are broadcast by one sprite and received by all sprites.
Scratch 2 - 32
Page 33
PRACTICE
Scratch Activity: Reproduce the actions in the tutorials. Experiment by modifying the settings and parameters used in the tutorial.
CLOSING - ASSIGNMENTS
Review the main topics introduced in this lesson and discuss the
assignments proposed in the Extensions section.
EXTENSIONS
1. Experiment by creating two sprites (to draw circles and rectangles) controlled by the broadcast signal of a third sprite.
2. Experiment by creating a dialog between two sprites coordinated with broadcast signals.
3. Experiment by adding sound effects when the broadcast signals are sent and received.
Scratch 2 - 33
LESSON
15
Scratch 2
Page 34
Conditional Actions
INTRODUCTION - REVIEW
This lesson introduces the programming blocks that allow us to
implement a group of actions when a condition is true, or to select between two groups of actions depending on the state, true
or false, of a condition.
Scratch 2 - 34
Page 35
PRACTICE
Scratch Activity: Reproduce the actions in the tutorials. Experiment by modifying the settings and parameters used in the tutorial.
CLOSING - ASSIGNMENTS
Review the main topics introduced in this lesson and discuss the
assignments proposed in the Extensions section.
EXTENSIONS
1. Experiment by drawing circles when a condition is true (e.g.:
the sprite is touching the edge.)
2. Experiment by drawing rectangles or circles depending on
whether a condition is true or not (e.g.: the sprite is on the
right side of the stage - x is positive.)
3. Experiment by adding sound to the previous programs.
Scratch 2 - 35
LESSON
16
Scratch 2
Page 36
Stopping
INTRODUCTION - REVIEW
This lesson introduces the programming blocks that allow us to
stop the execution of a particular script or to stop the execution
of all scripts in all sprites of the project.
Scratch 2 - 36
Page 37
PRACTICE
Scratch Activity: Reproduce the actions in the tutorials. Experiment by modifying the settings and parameters used in the tutorial.
CLOSING - ASSIGNMENTS
Review the main topics introduced in this lesson and discuss the
assignments proposed in the Extensions section.
EXTENSIONS
1. Experiment by stopping the movement of the sprite when it
reaches the edge.
2. Experiment by drawing circles of different colors until the
color turns to white.
3. Experiment by moving two sprites and stopping them when
they collide.
4. Experiment by adding sound effects to the previous programs.
Scratch 2 - 37
LESSON
17
Scratch 2
Page 38
INTRODUCTION - REVIEW
This lesson introduces the programming blocks that allow us to
receive information on the location of the mouse, coordinates x
and y, and whether the mouse button is pressed down or not. It
also introduces the programming block that allows to receive
information on whether a particular key of keyboard is being
pressed down.
Scratch 2 - 38
Page 39
PRACTICE
Scratch Activity: Reproduce the actions in the tutorials. Experiment by modifying the settings and parameters used in the tutorial.
CLOSING - ASSIGNMENTS
Review the main topics introduced in this lesson and discuss the
assignments proposed in the Extensions section.
EXTENSIONS
1. Experiment by drawing shapes defined by the mouse cursor.
2. Experiment by playing sounds using the keyboard keys
(e.g.: asdf.)
3. Experiment by moving one sprite with the mouse and another with the arrow keys.
4. Experiment by changing the color of the background by
pressing keys.
Scratch 2 - 39
LESSON
18
Scratch 2
Touching, Over
Distance Reporting
Page 40
INTRODUCTION - REVIEW
This lesson introduces the programming blocks that allow us to
know whether the sprite is touching another sprite, the mouse
pointer or an edge of the Stage, a particular color, or if a color
of the sprite is touching another color. It also introduces the
programming block that allow us to know the current distance
from the sprite to another sprite or to the mouse pointer.
Scratch 2 - 40
Page 41
PRACTICE
Scratch Activity: Reproduce the actions in the tutorials. Experiment by modifying the settings and parameters used in the tutorial.
CLOSING - ASSIGNMENTS
Review the main topics introduced in this lesson and discuss the
assignments proposed in the Extensions section.
EXTENSIONS
1. Experiment by drawing circles when the sprite touches a
green path of color.
2. Experiment by playing sounds when the sprite touches another sprite.
3. Experiment by playing a warning sound when the sprite gets
to close to the edge.
4. Experiment by adding graphic or sound effects to the previous programs.
Scratch 2 - 41
LESSON
19
Scratch 2
Page 42
INTRODUCTION - REVIEW
This lesson introduces the programming blocks that allow us to
know the current value of the timer in seconds, and to reset the
timer. The timer starts running the moment we open or create
a new project. It also introduces the programming blocks that
allow us to determine the current volume of the sounds detected in the microphone, and whether this value is greater
than 30 on a scale from 1 to 100.
Scratch 2 - 42
Page 43
PRACTICE
Scratch Activity: Reproduce the actions in the tutorials. Experiment by modifying the settings and parameters used in the tutorial.
CLOSING - ASSIGNMENTS
Review the main topics introduced in this lesson and discuss the
assignments proposed in the Extensions section.
EXTENSIONS
1. Experiment by resetting the timer each time a moving sprite
bounces off the edge.
2. Experiment by microphone to move forward a sprite.
3. Experiment by using the timer to measure the time it takes a
sprite to move around the edges of the stage.
4. Experiment by using the microphone to change the color of
the sprite.
Scratch 2 - 43
LESSON
20
Scratch 2
Page 44
Variables
INTRODUCTION - REVIEW
This lesson introduces the programming blocks that allow us to
know the current value of the timer in seconds, and to reset the
timer. The timer starts running the moment we open or create
a new project. It also introduces the programming blocks that
allow us to determine the current volume of the sounds detected in the microphone, and whether this value is greater
than 30 on a scale from 1 to 100.
Scratch 2 - 44
Page 45
PRACTICE
Scratch Activity: Reproduce the actions in the tutorials. Experiment by modifying the settings and parameters used in the tutorial.
CLOSING - ASSIGNMENTS
Review the main topics introduced in this lesson and discuss the
assignments proposed in the Extensions section.
EXTENSIONS
1. Experiment by setting the color of the sprite using variables.
2. Experiment by drawing squares using variables.
3. Experiment by controlling the speed of a moving sprite using
variables.
4. Experiment by playing different sounds using variables.
Scratch 2 - 45
LESSON
21
Scratch 2
Arithmetic,
Random Numbers
Page 46
INTRODUCTION - REVIEW
This lesson introduces the programming blocks that allow us to
implement the arithmetic operations addition, subtraction, multiplication and division, both with integer and real numbers. It
also introduces the programming block that allows us to generate randomly a number in a range determined by its minimum
and maximum limits.
Scratch 2 - 46
Page 47
PRACTICE
Scratch Activity: Reproduce the actions in the tutorials. Experiment by modifying the settings and parameters used in the tutorial.
CLOSING - ASSIGNMENTS
Review the main topics introduced in this lesson and discuss the
assignments proposed in the Extensions section.
EXTENSIONS
1. Experiment by using variables and arithmetic operators to
draw circles of different sizes and colors.
2. Experiment by using variables and arithmetic operators to
move a sprite at different speeds.
3. Experiment by using random numbers to play computer generated melodies.
4. Experiment by adding image and sound effects to the previous programs.
Scratch 2 - 47
LESSON
22
Scratch 2
Page 48
Comparing Numbers
INTRODUCTION - REVIEW
This lesson introduces the programming blocks that allow us to
determine whether a number is less than, equal to, or greater
than a second number.
Scratch 2 - 48
Page 49
PRACTICE
Scratch Activity: Reproduce the actions in the tutorials. Experiment by modifying the settings and parameters used in the tutorial.
CLOSING - ASSIGNMENTS
Review the main topics introduced in this lesson and discuss the
assignments proposed in the Extensions section.
EXTENSIONS
1. Experiment by using variables and comparison of numbers to
change the background when the sprite moves close to the
edges (for example: distance = 40.)
2. Experiment by using variables and comparison of numbers to
play a sound when two moving sprites have the same vertical coordinate.
3. Experiment by using variables and comparison of numbers to
change the size of a sprite if it is smaller than a certain reference.
Scratch 2 - 49
LESSON
23
Scratch 2
Page 50
Logic Operations
INTRODUCTION - REVIEW
This lesson introduces the programming blocks that allow us to
implement the logic functions AND and OR between two boolean values, and the NOT function of a boolean value.
Scratch 2 - 50
Page 51
PRACTICE
Scratch Activity: Reproduce the actions in the tutorials. Experiment by modifying the settings and parameters used in the tutorial.
CLOSING - ASSIGNMENTS
Review the main topics introduced in this lesson and discuss the
assignments proposed in the Extensions section.
EXTENSIONS
1. Experiment by play a sound when two moving sprites touch
the edge of the stage.
2. Experiment by changing the background when one of two
sprites (or both) touch a read square in the middle of the
stage.
3. Experiment by adding graphic effects when the sprite is not
over a red color square in the middle of the stage.
Scratch 2 - 51
LESSON
24
Scratch 2
Page 52
Extra Operations
INTRODUCTION - REVIEW
This lesson introduces the programming blocks that allow us to
obtain the remainder of the division of two numbers, the absolute value of a number, or the closest integer to a number.
Scratch 2 - 52
Page 53
PRACTICE
Scratch Activity: Reproduce the actions in the tutorials. Experiment by modifying the settings and parameters used in the tutorial.
CLOSING - ASSIGNMENTS
Review the main topics introduced in this lesson and discuss the
assignments proposed in the Extensions section.
EXTENSIONS
1. Experiment by using variables and the modulo operator to
play different sounds according with the result of a division.
2. Experiment by using the absolute operator to have two
sprites jump the same height but move in opposite directions.
3. Experiment by using a variable and the round operator to
have the sprite move in discrete jumps.
Scratch 2 - 53
Scratch Courses
learnscratch.org