Scratch Programming Guide
Scratch Programming Guide
org:
An Educator's Guide to Scratch Programming
Table of Contents
Introduction ..........................................................................................................................................2
About................................................................................................................................................2
Underlying Philosophy................................................................................................................3
Why use Scratch ?............................................................................................................................4
What can I do with Scratch ?............................................................................................................5
etting Started.............................................................................................................................!
"asic S#ills............................................................................................................................................$
Sca%%olding Acti&ities
..........................................................................................................................................................$
'ow to sca%%old learning with Scratch(........................................................................................$
)reati&e Acti&ities..........................................................................................................................*4
)ulti&ating )reati&ity(...............................................................................................................*4
"rainstor+ing Strategies(...........................................................................................................*5
,acilitating )ollaboration...............................................................................................................*!
-n&iron+ents that support Scratch collaboration(.....................................................................*!
Progra++ing S#ills.............................................................................................................................*$
Proble+ Sol&ing.............................................................................................................................*$
.hin#ing through proble+s........................................................................................................*/
A strategy %or proble+ sol&ing with Scratch.............................................................................20
-1ploring +ultiple solutions......................................................................................................2*
.ips %or %acilitating +ultiple solutions.......................................................................................2*
2earning %ro+ Pro3ects...................................................................................................................22
-1peri+enting with pro3ects......................................................................................................22
4odi%ying pro3ects.....................................................................................................................23
)oding )hallenges..........................................................................................................................25
)o+pleting code........................................................................................................................25
)orrecting code..........................................................................................................................2$
Ad&anced Acti&ities........................................................................................................................2/
Predicting output........................................................................................................................2/
"lac#5bo1 acti&ities...................................................................................................................30
)urriculu+ Integration........................................................................................................................3*
.echnology Integration...................................................................................................................3*
Integration Ideas.............................................................................................................................33
Sub3ect speci%ic ideas(................................................................................................................33
Pro3ect -1a+ples.......................................................................................................................35
Scratch Pro3ect 6ubrics...................................................................................................................35
)reating a class generated Scratch 6ubric.................................................................................3!
An e1a+ple o% a class generated Scratch rubric(.......................................................................37
6e%erences...........................................................................................................................................3$
Introduction
About
This guide was created by Julian Screawn. It was created in conjunction with my
master's project, which is a guide to Scratch programming for educators. The
purpose of the guide is to enable Scratch educators:
To create environments where students can have opportunities to develop
Scratch usage and programming sills.
To e!plore the ways in which Scratch can be used as a tool to enhance the
teaching"learning process across the curriculum.
Scratch supports the development of #$st century learning sills such as critical
thining, problem solving, communication, collaboration, creativity and
innovation.
The guide will be targeted at teachers %&rade ' and up( who wish to use Scratch
as a tool for helping students develop these #$st century sills. It is hoped that
the guide will be helpful to technology teachers and subject teachers who wish to
e!pand their tools for teaching and integrating technology.
)ontent for the guide is based on both research and my own personal
e!periences as a Scratch educator.
Underlying Philosophy
*ne of the main goals of the Scratch program designers was to facilitate learn by
designing.
+earning by design :
&ives students greater sense of control and responsibility for the learning
process.
,ncourages creative problem"solving.
-llows for the designing of projects that are interdisciplinary%art,
technology, math, and sciences(.
.elps ids learn to put themselves in the minds of others, since they need
to consider how others will use the things they create.
/rovides opportunities for reflection and collaboration.
Sets up a positive"feedbac loop of learning, where students can build on
ideas.
%0esnic,n.d.(
This approach to learning and teaching is inspired by the constructivist and
constructionist theories of learning and education. 1ost activities recommended
in this guide are based on the constructivist approach to learning.
Why use Scratch ?
$. Supports the development of #$st century learning sills. -ccording to
the Scratch developers, Scratch supports the nine types of #$st century
learning sills identified by the /artnership for the #$st )entury
%http:22www.p#$.org( 3these sills include: thining creatively,
communicating clearly, analy4ing systematically, collaborating effectively,
designing iteratively, and learning continuously.
%0us,0esnic,5 1aloney,n.d.(.
#. Supports the development of programming sills by maing programming
more engaging and accessible for children, teens, and others. -ccording to
the 6ational 0esearch )ouncil%60)(%$777(, algorithmic thining and
programming is a #$st century sill to be learned by all students.
'. It's a tool used for teaching and learning across the curriculum. -ccording
to )roo, %#887( Scratch offers the teacher an opportunity to embed the
computer into everyday school activities by getting the class to develop
sills in digital literacy related to a variety of curriculum topics.
9. It's free. Si!ty"three percent of the teachers surveyed by /:S
+earning1edia %#8$#( stated that limited budget for technology adoption
was the biggest barrier to accessing technology in the classroom.
What can I do with Scratch ?
-ccording to the Scratch homepage,
Scratch is a programming language that maes it easy for users
to create their own interactive stories, animations, games, music,
and art "" and share their creations on the web.
;hen students design projects with Scratch they develop fluency with digital
technology using the sills that will be needed for the #$st century.
,!amples:
Simulations: demonstrate concepts by imitating something that is done in
reality. <or e!ample a probability simulation, such as a coin or dice toss
e!periment. See video http:22www.scratchprogramming.org2video.php=vid>#'
for a probability demonstration.
1ultimedia: create interactive pu44les, ?ui44es, demonstrations and class
presentations. See video http:22www.scratchprogramming.org2video.php=vid>#9
for a ?ui4 demonstration.
1usic: create interactive instruments, music videos, or games that prompt
students to play notes in the correct order. See video
http:22www.scratchprogramming.org2video.php=vid>#@ for a sa!ophone
demonstration.
-rt: create interactive and non"interactive art projects. See video
http:22www.scratchprogramming.org2video.php=vid>#A for a 1ath -rt
demonstration.
Storytelling and Journals: create interactive stories or animations to support
students narrative and creative writing sills. See video
http:22www.scratchprogramming.org2video.php=vid>#B for an interactive story
demonstration.
0ole play:role play real world professions, for e!ample pretending to be a
game designer and design a new game.
Getting Started
Start Here
6ew to Scratch
<rom the Scratch website:
$. Cownload Scratch:
http:22info.scratch.mit.edu2ScratchD$
.9
#. 0ead the Scratch introductory
guide:
http:22info.scratch.mit.edu2sites2info
scratch.media.mit.edu2docs2Scratch
&ettingStartedv$9.pdf
'. See Scratch introduction videos:
http:22info.scratch.mit.edu2EideoDTut
orials
,!perienced Fser
9. -ll videos and activities that were created for
this guide are associated with a dodge ball game
that was created in Scratch. It is recommended
that users spend some time reviewing the dodge
ball game before reading through this website
guide. To download the dodge ball game:
http:22www.scratchprogramming.org2documents2Codge
ball.sb
Tip: If you wish to have Scratch open while viewing the scaffolding G.ow toG
videos on this site then split your screen between Scratch and your web browser.
How to split your screen:
Mac users: http:22www.ehow.com2howDH@77#77Dsplit"screens"macboo.html,
Windows users: http:22www.ehow.com2howDB#A87$ADsplit"screen"pc"monitor.html.
The screen can also be resized manually.
Basic Si!!s
Sca""o!ding Acti#ities
+ie training wheels computer scaffolding enables learners to do
more advanced activities and to engage in more advanced
thining and problem solving than they could without such help.
%60), #888, p.#$9(
*ne of the best ways to introduce Scratch is to give students a set of fun
challenges that scaffold their learning of basic concepts and sills.
-ccording to %-lber,#8$$( GScaffolding is breaing up the learning
into chuns and then providing a tool, or structure, with each
chunG %par. #(.
How to scaffold learning with Scratch:
Start with an interesting level appropriate Scratch game,animation or
project and brea it up into chuns%challenges or e!plorations(.
/rovide support %teacher does student watches2helps( and a challenge
%student does teacher watches2helps( for each chun.
)reate objectives for each chun.
)hallenges can be completed individually, in pairs or groups.
<or e!ample:
Students will create the dodge ball game below with Scratch.
6otes:
,ach challenge should be designed to introduce a new sill or concept.
)hallenges should be se?uenced from the easy to more difficult in a way
where they build on each other to complete a project %game, animation,
story, etc.(.
)hallenges don't always necessarily need to be done in order.
Solutions to challenges may differ.
The following table breas the dodge ball game up into learning chuns:
Chunk Support Challenge
Screen
/osition
Introduce:
/osition on the
screen.
/osition
variables.
Iy coordinate
&et the cat to say its screen
address%position( using the following
blocs:
system.
Cirected
numbers.
.ow to video:
http:22www.scratchpro
gramming.org2video.ph
p=vid>$
Eideos:
)hallenge:
http:22www.scratchprogramming.org2vi
deo.php=vid>A
Solution:
http:22www.scratchprogramming.org2vi
deo.php=vid>B
Cirection
Introduce:
Sprite
Cirection.
1easurement
of angles.
*utcomes of
the random
data process in
Scratch.
.ow to video:
http:22www.scratchpro
gramming.org2video.ph
p=vid>#
&et the cat to say its current direction and
position. The direction should be random.
-dd the following blocs to the screen
position solution:
Eideos:
)hallenge:
http:22www.scratchprogramming.org2vi
deo.php=vid>H
Solution:
http:22www.scratchprogramming.org2vi
deo.php=vid>7
1ovement Introduce:
The three
motion blocs:
go to, glide and
move.
&et a ball to start at the middle top of the
screen and fall to the bottom, and then
bounce bac up again. Fse these blocs:
.ow to video:
http:22www.scratchpro
gramming.org2video.ph
p=vid>'
Eideos:
)hallenge:
http:22www.scratchprogramming.org2vi
deo.php=vid>9
Solution:
http:22www.scratchprogramming.org2vi
deo.php=vid>@
0andom
1ovement
6o support re?uired.
&et the ball to move unpredictably around
the screen. -dd these blocs:
Eideos:
)hallenge:
http:22www.scratchprogramming.org2vi
deo.php=vid>$8
Solution:
http:22www.scratchprogramming.org2vi
deo.php=vid>$$
<ollowing the
mouse cursor
6o support re?uired. .ave the cat sprite follow the mouse
cursor around the screen. )hoose one
bloc from 1otion and add this bloc:
Eideos:
)hallenge:
http:22www.scratchprogramming.org2vi
deo.php=vid>$9
Solution:
http:22www.scratchprogramming.org2vi
deo.php=vid>$'
Sensing
Introduce:
The touching
color bloc.
.ow to video:
http:22www.scratchpro
gramming.org2video.ph
p=vid>$#
&et the game to stop and have the cat
say Ggame overG when the ball touches
the cat.Fse these blocs:
Eideos:
)hallenge:
http:22www.scratchprogramming.org2vi
deo.php=vid>$A
Solution:
http:22www.scratchprogramming.org2vi
deo.php=vid>$@
:roadcasting
Introduce:
:roadcast
bloc.
:roadcast and
wait bloc.
The differences
between the
two broadcasts.
:roadcast a game over message when the
cat gets hit by the ball. The cat should
should receive the message that it sends,
and then change to a new costume. -dd
these blocs to the cat script:
Eideos:
.ow to video:
http:22www.scratchpro
gramming.org2video.ph
p=vid>$B
)hallenge:
http:22www.scratchprogramming.org2vi
deo.php=vid>$H
Solution:
http:22www.scratchprogramming.org2vi
deo.php=vid>$7
:roadcasting
in -ction
6o Support re?uired.
:roadcast a game over message when the
cat gets hit by the ball. The stage should
receive the message, and then change to
a game over bacground. -dd the
following blocs to the stage script:
Eideos:
)hallenge:
http:22www.scratchprogramming.org2vi
deo.php=vid>#8
Solution:
http:22www.scratchprogramming.org2vi
deo.php=vid>#$
$reati#e Acti#ities
Fnlie many traditional programming languages, Scratch is relatively easy to
picup and learn by both students and teachers. The nature of Scratch is self
learning. -ccording to the creators of Scratch:
G- ey design goal of Scratch is to support self"directed learning
through tinering and collaboration with peersG %1aloney, 0esnic,
0us, Silverman, ,astmond, #8$8, p. $(.
The design of Scratch enables tinering and e!perimenting which often results in
a few students ?uicly becoming Scratch e!perts3 teachers can then utili4e these
e!perts as peer tutors.
Cultivating Creativity:
In order to stimulate motivation, teachers should encourage students to
e!periment with Scratch tools and create projects %game, animation, art,
etc.( of their own preference.
Teachers should first introduce the tools of Scratch through scaffolding
activities.
*nce students have some basics down they should be free to show off their
creativity and tae their projects further by tinering and collaborating with
others locally %in their classroom( or globally %Scratch learning"sharing
community website(.
Tae away the scaffolding as students become more able to problem"solve
and create their own projects of preference.
-fter the completion of scaffolding activities students should be provided
with an opportunity to tae their projects further. In order to get ideas
flowing and to motivate students it is best to first brainstorm ideas.
Brainstorming Strategies:
Civide students into pairs or small groups and get them to thin about ways
to further develop the game. Then collect and discuss ideas as a class or
have each group present their ideas.
.ave students search the internet for ideas, a great starting point is the
Scratch website %http:22scratch.mit.edu2(. Students can browse projects
uploaded to the site to get new project ideas and learn new programming
techni?ues.
Set a brainstorming time limit.
,ncourage remi!ing or building on one another's ideas
<or e!ample:
*n the scaffolding activities page a basic dodge ball game was created. Ideas for
further developing the dodge ball game could include:
-dding more balls for the cat to dodge.
-dding a survival time feature.
-dd another level with a different bacground.
-dd sounds to the game.
;atch a video containing additions to the dodge ball game at:
http:22www.scratchprogramming.org2video.php=vid>##
%aci!itating $o!!aboration
The idea of creativity should not always be thought of as a single student thought
process. )reativity also taes place in a social conte!t.
G-n idea or product that deserves the label 'creative' arises from
the synergy of many sources and not only from the mind of a
single person. It is easier to enhance creativity by changing
conditions in the environment than by trying to mae people thin
more creativelyG %)sis4entmihalyi, $77A, p. $(.
Environments that support Scratch collaboration:
The Scratch website: the Scratch designers emphasi4ed sharing and collaboration
when they created the Scratch community website3 Gthe Scratch *nline
)ommunity maes programming more engaging by turning it into a social
activityG %1onroy".ernande4 5 0esnic, #88H, p.@8(. *n the site members can:
/ost projects and get project ideas from other uploaded projects.
Cownload and remi! other student projects.
<orm online design teams3that is wor on projects with other members
around the world.
*ffer and get help from other members through forums.
*ffer and receive feedbac on projects and ideas.
0ate projects and offer up challenges.
The classroom: a similar collaborative environment can be created in the
classroom by:
/roviding students with project feedbac strategies. <or e!ample giving
students a project feedbac handout that helps to guide them in giving
feedbac.
)reating feedbac teams.
.aving students share their projects on the school networ or have them
create multiple copies of their projects for sharing.
)reating design teams for collaboration on projects.
<or e!ample:
The Jigsaw collaborative or cooperative techni?ue can be used to
perform appropriate programming activities within Scratch.
%Theodorou 5 Jordai, #8$8(.
The Jigsaw techni?ue is described in $8 easy steps at the Jigsaw.org website.
*utlined below is an implementation of this techni?ue using a Scratch project
e!ample. In the jigsaw groups, students will share nowledge and then wor on
the Scratch game dodge ball.
$. Civide students into jigsaw groups.
#. -ppoint one student from each group as the leader.
'. Civide the project into segments, similar to what was done in the
scaffolding activities. <or e!ample: Screen /osition, Cirection, 1ovement,
Sensing, and :roadcasting.
9. -ssign each student to learn one segment.
@. &ive students time to research and tiner with their segment to become
familiar with it.
A. <orm temporary Ge!pert groupsG by having one student from each jigsaw
group join other students assigned to the same segment. &ive students in
these e!pert groups time to discuss the main points of their segment and to
rehearse the demonstrations they will mae to their jigsaw group.
B. :ring the students bac into their jigsaw groups.
H. -s each student to present her or his segment to the group. ,ncourage
others in the group to as ?uestions for clarification.
7. <loat from group to group, observing the demonstrations. If any group is
having trouble %e.g., a member is dominating or disruptive(, mae an
appropriate intervention
$8. -t the end of the demonstrations, get students to wor on the dodge
ball game individually,in pairs or in small groups. Students can see help
from e!perts or the teacher as they wor on their projects.
%-ronson, #88H(
Programming Si!!s
Prob!em So!#ing
The Scratch programming languages was designed for educational use, to support
the constructionist approach to learning which encourages creative problem"
solving. Students will be problem solving as soon as they load up Scratch.
-lthough, Scratch programming facilitates higher order thining such as problem
solving sills, teachers can provide instructional support to students, to help them
thin through difficult programming problems. This can involve having students
create algorithms, that is the breaing down of problems into smaller sub"
components, and e!ploring multiple solutions to problems.
hin!ing through problems
&etting students to master the process of thining through programming
problems and determining the best method of solving each problem is made
easier with Scratch. *ne of the advantages Scratch has over traditional
programming languages is its ability to easily allow users to visuali4e the results
of their programming %solutions to problems( on the screen.
Scratch simulates traditional programming, by providing learners with a simple
visual drag"and"drop user interface. This visual nature of Scratch allows students
to test different ideas or approaches to a problem and to more easily learn what
wors and what does not.
The results of a study on the effects of simulation games on the learning of
computational problem solving demonstrated that simulation games are an
effective approach to assisting novice programmers to learn computation problem
solving sills3 the study found that Gsimulation games based on /aperts'
constructionism may improve problem solvingG %)hen")hung, Kuan":ang, 5 )hia"
;en, #8$$, p. $7$A(.
;hen applying )onstructivist learning theory to problem solving within Scratch,
students should:
)reate their own algorithms for solving Scratch programming problems.
They should not to be taught one specific algorithm, for e!ample long
division.
:e encouraged to discuss, reflect on, and demonstrate strategies for
problem solving.
Solve problems collaboratively.
/roblem solve in authentic conte!ts.
" strategy for problem solving with Scratch
$. &ive students an opportunity to practice writing and developing their own
algorithm %solutions( on paper first.
#. -s a class discuss, demonstrate and reflect on different solutions.
'. 6e!t have students develop a visuali4ation of their solution with Scratch.
This could be a simulation, a game, or an animation. This can be done in
small groups.
<or e!ample:
.ow to mae a cup of tea
$. In small groups as students to write out on paper a set of instructions to
describe how to mae a cup of tea. Tell them that the computer needs to
now in detail every step.
#. -s a class, as students to share their instructions and note any
differences or omissions.
'. Ciscuss the problems involved in creating an algorithm %set of
instructions(
9. 6e!t have students develop a visuali4ation of their solution to the
problem in Scratch. This could be a simulation, presentation, a game, or an
animation.
See a video e!ample of a presentation solution to the cup of tea algorithm at:
http:22www.scratchprogramming.org2video.php=vid>'$
-lthough this is an easy e!ample, it is important to stress the need for
instructions to be precise. Kou can get students2groups to write algorithms for
other students2groups to follow and test out. This activity will reinforce the need
for precision in algorithms.
E#ploring multiple solutions
Students should learn that there are many different ways to program games,
simulations and animations. Students should be encouraged to e!plore different
solutions3 this will help strengthen both their problem solving and programming
sills, and give them confidence in creating their own algorithms %solutions(.
-ctivities that e!plore multiple solutions allow students to see other ways of doing
things, enabling them to construct new meanings through the conte!t of their
own e!perience%Cabbagh, #88@(. 1oreover, the e!periencing of different
perspectives is necessary for the development of problem solving abilities,
creativity and advanced mathematical thining.%+eiin, +evav";aynberg,
&urevich, 5 1edniov, #88A(.
ips for facilitating multiple solutions
)hallenge students to discover multiple approaches and2or solutions to
programming problems.
Share student solutions.
.ave students download and e!plore similar projects2solutions from the
Scratch website.
&earning "rom Pro'ects
E#perimenting with pro$ects
*bjective: enable students to better understand the role of programming
constructs.
Students are ased to wor with a completed project and e!periment with specific
blocs %programming constructs( from the code of the program. This
e!perimentation could include changing the position of the blocs, or changing
the value of some variables3 it enables students to gain a better understanding of
the roles of specific constructs. %Jordai, #8$#(.
This e!ercise allows for the scaffolding of basic computer programming
constructs. It is a good way to start the learning of programming constructs, as
the e!ercise does not re?uire students to build programs or algorithms.
<or e!ample:
In the above code e!ample students can e!periment with the code as follows:
,nter different random angles to which the ball can turn. This helps
students understand the concepts of direction and randomness.
)hange the number of steps the ball moves. This helps students better
understand speed and movement.
0emove the Gif on edge, bounceG bloc and observe the changes.
0eplace the G<oreverG control construct with a G0epeatG construct. .elps
students to understand the differences between the constructs G0epeatG
and G<oreverG.
%odifying pro$ects
*bjective: enable students to e!pand on, or use previously ac?uired
programming nowledge to modify projects.
The idea is to have students use previously ac?uired nowledge to modify Scratch
projects by producing a different result or output. The benefit of this activity is
that students can be
Gsheltered by the conte!t of the already woring project in order
to appropriately face the challenges of its modificationG %Jordai
1.,#8$#, p.9(.
<or e!ample:
Codge ball game:
In the above e!ample students can modify the dodge ball game so that the game
ends when the cat touches the ball as opposed to the ball touching the cat.
The above code modification enables students to:
:uild on, or apply their nowledge of sensing.
-c?uire a better understanding of the importance of coding for specific
objects3 that is students must move the game over script from the cat to
the ball in order to mae the modification wor.
.elp students understand the concept of duplicate code3 that is reducing
code repetition. Students will reali4e that putting the game over script on
the cat object as opposed to the ball will result in code repetition whenever
a new ball is introduced.
$oding $ha!!enges
Scratch provides students with the chance to correct their programming attempts
through trial and error in a visual environment3 this maes it easier for learners
to develop coding sills. The coding activities listed below can be used to
challenge students and help them develop coding sills. -lthough these coding
activities are normally created by the instructor they can also be created by the
students to challenge each other.
Completing code
*bjective: enable students to reflect on and apply Scratch programming
nowledge and sills to complete incomplete code in a woring project.
Tae a woring project and remove some of the code, then give students an
opportunity to complete the project, that is fill in the missing code. Students
should be able to see the output of the woring project3 students can use the
woring output along with the incomplete code as a guide to completing the code.
%Jordai, #8$#(.
<or novice programmers, the programming blocs needed to complete the project
and produce the correct output can be provided by the instructor. That is students
are re?uired only to assemble the blocs in the correct se?uence. <or a more
difficult challenge the students must choose the correct blocs themselves to
complete the code.
%i#ing code
*bjective: enable students to reflect on, and apply Scratch programming
nowledge and sills to re"arrange mi!ed code.
Tae a woring project and mi!"up some of the code, then give students an
opportunity to arrange the code so that it produces the correct output. Students
should be able to see the correct output on the screen beforehand.
This activity along with the completing code activity can be used to scaffold the
learning of computer programming3 these activities are easier because students
do not have to develop the code themselves, they are given the blocs and only
have to e!periment until they find the appropriate se?uence of commands that
produces the correct output. %Jordai, #8$#(.
<or e!ample:
Correcting code
*bjective: enable students to develop an awareness of programming errors
commonly made in Scratch by novice programmers.
Students should be given a bloc of code that contains an error3 that is producing
incorrect output. This error should be reflective of a common error that is usually
made by novice Scratch programmers.
Cemonstrate to students the correct output and then as them to correct the
error3 this activity is more difficult as students have to find specific mistaes
included in the given code and also to mae corrections so that it produces
correct output. %Jordai, #8$#(.
It is best to start with simple errors and wor to more difficult challenges as
students become more proficient.
<or e!ample:
)ommon error: Students often get confused with the differences between the
GbroadcastG and Gbroadcast and waitG blocs.
Codge ball game:
Ad#anced Acti#ities
The advanced activities listed below are important as they help to
develop advanced thining sills. These sills, such as problem"
solving and decision maing are important for both the personal
and professional life of students. %Cabbagh, #88@(.
Predicting output
*bjective: enable students to synthesi4e all Scratch programming nowledge and
sills to predict programming outcomes.
1aing predictions is a difficult tas, it re?uires that students have reached an
operative level of development %/iaget( and have an understanding of all the
Scratch programming constructs %Jordai,#8$#(. In order to mae predictions
students should be able to use abstract thining for solving problems and have
the ability to imagine the outcome of particular actions. <or e!ample:
Codge ball game:
Blac!&bo# activities
*bjective: enable students to synthesi4e all Scratch programming nowledge and
sills to formulate code for a particular outcome.
Students are ased to develop the code for a particular output as it runs in the
Scratch output window. +ie predicting outcome this activity re?uires higher level
sills, lie Gthining sills such as reversible thining, analytical and synthetic
thining, as well as reflection, prediction, hypothesis generation and e!plorationG
%Jordai, #8$#, p.9(.
<or e!ample: The output for the dodge ball game now has two additional
components, both e!tra lives and levels. +ooing at the output students should be
able to produce the code.
Codge ball game:
$urricu!um Integration
(echno!ogy Integration
Integrating technology into the curriculum is more than just learning basic
computer sills, how to use the internet, or how to use software programs.
Students need to use technology for accomplishing goals and solving real world
problems in a way that is similar to how these sills are being used in a real world
setting.
GTechnology integration means viewing technology as an
instructional tool for delivering subject matter in the curriculum
already in place.G %;oodbridge, #889., par. '(
Students become active learners and develop their problem solving, critical"
thining, and creativity sills when creating Scratch projects. Teachers must move
from traditional teaching methods to engaging students in problem"based or
project based learning which is student"centered.
<or e!ample:
In the table below is a model for Scratch Integration3 it is an application of the
The -pple )lassrooms of Tomorrow %-)*T( stages of technology integration.
These stages help teachers to integrate technology into teaching and learning.
Stage Examples of what teachers do with Scratch
,ntry
+earn the basics of using Scratch. <or teachers, learning
Scratch can be done in conjunction with the teaching of
Scratch during computer class.
-doption
Fse Scratch to support traditional instruction. Teachers can
create Scratch presentations used to illustrate an instructional
idea, or Scratch simulations can be used to demonstrate
concepts. Scratch made ?ui44es can be used for assessment.
-daptation
Start having students use Scratch more fre?uently in other
subject areas other than computer class. <or e!ample simple
multimedia presentations, lie storytelling in ,nglish class.
-ppropriation
- focus on cooperative, project"based, and interdisciplinary
wor using Scratch. Students can collaborate in small groups
to design a Scratch project on a given topic, using materials
they research and provide. <or e!ample, in social studies
students can use Scratch in the classroom for projects
illustrating their points of view.
Invention
There should now be a shift from teacher"centered instruction
to student"centered instruction. ,ssentially Scratch becomes a
tool that students can choose to use for accomplishing tass,
solving problems, and constructing nowledge in all subject
areas.
(Apple Computer, Inc., !!"#
Integration Ideas
Scratch projects:
can be used by educators to support curricular objectives in academic
subjects across the curriculum.
can involve the incorporation of more than one subject area of the
curriculum.
Sub$ect specific ideas:
Art
Scratch supports the arts by enabling students to create projects that include
elements of music, design, drawing, and dance. - virtual museum is a good
e!ample of a way to e!plore -rt with Scratch.
- virtual museum is a collection of digital information resources3 that is
essentially a collection of anything that can be put into digital format.
They were first used in ,ducation as an alternative to written art
history reports3 they can also used to further students nowledge
of curricular objectives in academic subjects in addition to art
%Jeeler, n.d.(.
;ith Scratch students have the ability to mae virtual museums even more
interesting and interactive, while developing their programming sills. See an
e!ample of a virtual museum at: http:22www.scratchprogramming.org2video.php=
vid>#H. 6ote: Kou can use templates of completed museum projects and have
students re"mi! them.
Mathematics
Scratch can be used to support the teaching and learning of the elementary
maths curriculum covering areas lie algebra, numbers, shapes and space,
measures and data. .ave students create projects which support concepts,
content and sill development3 Scratch projects can be used to simulate real
world problems. See video of a fraction filler project which is both an e!ample of
a 1athematics project that supports sill development and an e!ample of real
world problem to which fractions can be applied, at:
http:22www.scratchprogramming.org2video.php=vid>#7
Language Arts
In +anguage -rts there are many opportunities for improving student writing
through the use of Scratch. :y creating animations or interactive stories learners
can develop their grammar, storytelling and creative writing abilities. Students
can also develop their public speaing sills by presenting their animated stories
to the entire class.
Students also develop their multimedia sills by drawing characters for their
stories, downloading and editing images that they find on the Internet, and
importing or recording sounds or music for their stories.
To create animation stories students can first build stories using
storyboards%se?uence of drawings with dialogue or story( and then convert them
into animations. ;ith Scratch Gsay and thin commandsG, students can easily
create written speech bubbles for their story characters. Students can even create
interactive stories by using the Scratch Gas commandG which prompts users to
enter dialogue.
Stories are also a great way to further students nowledge in other curricular
areas. See a video e!ample of a story created by a $#"year"old boy in :angalore
who was studying the layers of the ,arth in school at:
http:22www.scratchprogramming.org2video.php=vid>'8
Pro'ect E)am*!es
There are many e!amples of subject specific project galleries available on the
Scratch website. Just search the site. :elow are but a few e!amples, note you will
leave this site when you clic on the lins below:
/rojects in Science http:22scratch.mit.edu2galleries2view2$@88'
1ath /rojects http:22scratch.mit.edu2galleries2view2A9#'
:est Science %Jids( http:22scratch.mit.edu2galleries2view2'A997
Journalism projects http:22scratch.mit.edu2galleries2view2B@$#
Interactive 0eading /roject http:22scratch.mit.edu2galleries2view2A$A@7
:oo 0eports and /rojects http:22scratch.mit.edu2galleries2view27B8A
+earning +anguages http:22scratch.mit.edu2galleries2view2A8@'H
Scratch Pro'ect +ubrics
/roject rubrics outline the criteria used to evaluate student wor. - Scratch
project rubric can be generated by the teacher or together with students. 0ubrics
are easy to use and helpful:
Tools for both teaching and assessment.
In allowing students to become more thoughtful when judging the ?uality of
their own Scratch projects and other Scratch projects.
In reducing the amount of time spent evaluating student wor.
In allowing teachers to evaluate students of all abilities including students.
who are gifted and those with learning disabilities.
In e!plaining evaluation to students.
%&oodrich, $77B(
Creating a class generated Scratch 'ubric
$. &et students to chec out projects on the Scratch website and identify
what ?ualities made for a good project. It is easy to find the good and bad
projects because statistics are ept for each uploaded project. - popular
project will have lots of love"its, re"mi!es and downloads. -t the Scratch
website view featured Scratch projects at:
http:22scratch.mit.edu2channel2featured
#. Together with students list some of the characteristics of a good project.
<or e!ample some of the good project ?ualities: the project wors well,
easy to use, easy to understand, creative, fun to play, funny, cool, advanced
scripts, cool sprites and bacgrounds, creative drawings, and creative
stories.
'. Fse student feedbac to create categories for evaluation. <or e!ample
project design2creativity, user friendliness, programming, bacgrounds and
sprites.
9. )ome up with different levels of ?uality. <or e!ample: e!cellent, good,
average and needs more wor.
@. )reate the rubric eeping in mind discussions of common problems and
the ?ualities of good and not so good projects.
A. Fsing the freshly created rubric, chose several projects and evaluate
them in groups or as a class.
%&oodrich, $77B(
-n e!ample of a class generated Scratch rubric:
Excellent Good Average
Needs more
work
/roject
Cesign2
)reativity
/roject is very
creative and
clearly
demonstrates
uni?ue ideas.
;ell written
advanced
design.
)reative and
has a uni?ue
design.
Somewhat
creative and
uni?ue ideas.
Some project
design may
have been
copied from
other
projects.
/roject
incomplete.
Fser
friendliness
/roject is
e!tremely user"
friendly.
/roject is
user friendly
and easy to
understand.
/roject is not
so user"
friendly,
some parts
are not easy
to
understand.
/roject is not
user friendly.
Cifficult to
understand
what it does
or how to use
it.
/rogramming
%Scripts(
Scripts are all
woring, very
well designed
and using
advanced
programming
techni?ues.
Student has
very good
understanding
of scripts.
-ll scripts are
woring and
the student
understands
all the
scripts.
Scripts may
have some
errors and do
not wor
perfectly.
Student does
not
understand
some of the
scripts.
Scripts do not
wor.
:acgrounds
and Sprites
-re all named
properly, and
very well
designed. They
fit together very
well maing the
project loo lie
an advanced
design.
-re all
named
properly and
blend nicely
together to
enhance the
project
design.
Some have
not been
named and
do not blend
well into the
project.
They have not
been named
correctly.
They are
designed
poorly and
distract from
the project
design.
+e"erences
-lber 0.%#8$$(. Si! scaffolding strategies to use with your students. 0etrieved
*ctober #'rd, #8$# from:
http:22www.edutopia.org2blog2scaffolding"lessons"si!"strategies"rebecca"alber
-pple )omputer, Inc. %$77@(. )hanging the conversation about teaching, learning,
5 technology: - report on $8 years of -)*T research. )upertino, )-: -pple
)omputers, Inc.
-ronson, ,.%#88H(. Jigsaw classroom. 0etrieved *ctober #$, #8$#, from
http:22www.jigsaw.org2.
)hen")hung +., Kuan":ang )., 5 )hia";en ..%#8$$(. The effect of simulation
games on the learning of computational problem solving, )omputer and
,ducation, vol. @B, pp. $78B"$7$H, #8$$.
)roo, S.J. %#887(. ,mbedding scratch in the classroom. 0edware 0esearch
+imited. 0etrieved *ctober ##nd, #8$# from:
http:22scratch.redware.com2content2embedding"scratch"classroom
)sis4entmihalyi, 1., %$77A(. )reativity: <low and the /sychology of Ciscovery
and Invention. .arper)ollins /ublishers, Inc.
Cabbagh, 6. %#88@(. /edagogical models for ,"+earning: - theory"based design
framewor. International Journal of Technology in Teaching and +earning, $%$(,
pp. #@"99.
$oodrich, H. !!%. &nderstandin' rubrics. (ducational )eadership "* (*#: *+
%. ,etrie-ed .o-. *, /0/,
1rom:http:22learnweb.har-ard.edu2alps2thin3in'2docs2rubricar.htm
Jeeler ).%n.d.(. ,ducational virtual museums developed using powerpoint. )hristy
Jeeler's .omepage. 0etrieved 6ovember 'rd, #8$#, from:
http:22christyeeler.com2,ducationalEirtual1useums.html
Jordai 1.,%#8$#(. Civerse categories of programming learning activities could be
performed within Scratch. /rocedia "Social and :ehavioral Sciences 9A, $$A#"AA.
+eiin 0., +evav";aynberg -., &urevich I. 5 1edniov +. %#88A(. Implementation
of multiple solution connecting tass: Co students' attitudes support teachers'
reluctance= <ocus on learning problems in mathematics, #H%$(, $"##.
1aloney, J., 0esnic, 1., 0us, 6., Silverman, :., ,astmond, ,. %#8$8(. The
scratch programming language and environment. Transactions on )omputer
,ducation $8%9(, $"$@
1onroy".ernande4, -., 5 0esnic, 1. %#88H(. ,mpowering ids to create and
share programmable media. Interactions, $@%#(, @8"@'.
6ational 0esearch )ouncil %$777(. :eing fluent with information technology.
;ashington, C):6ational -cademy /ress.
6ational 0esearch )ouncil %#888(. .ow /eople +earn: :rain, 1ind, ,!perience,
and School. ;ashington, C): 6ational -cademy /ress.
/:S +earning1edia %#8$#(. 6ational /:S survey finds teachers want more access
to classroom techL/ress releaseM. 0etrieved on *ctober $$th , #8$# from:
http:22www.pbs.org2about2news2archive2#8$#2teacher"survey"fetc2
0esnic, 1. %n.d.( +earning by Cesigning. 0etrieved *ctober #$st, #8$#, from
http:22info.scratch.mit.edu2,ducators
0us,6.,0esnic, 1.,5 1aloney,J.%n.d.(. +earning with scratch:#$st century
learning sills. 0etrieved *ct. $#, #8$# from 1.I.T., +ifelong Jindergarten &roup
;eb site:
http:22info.scratch.mit.edu2sites2infoscratch.media.mit.edu2docs2Scratch"
#$st)enturySills.pdf
Theodorou, ). 5 Jordai, 1. %#8$8(. Super 1ario: a collaborative game for the
learning of variables in programming. IJ-0, #%9(, pp. $$$"$$H.
;oodbridge, J. %#889(. Technology integration as a transforming teaching
strategy. Technology and +earning. 0etrieved 6ov. $st, #8$# from:
http:22www.techlearning.com2features288'72technology"integration"as"a"
transforming"teaching"strategy29$AB8