"Scratch is designed to help young people (ages 8 and up) develop 21st century learning skills. As they create Scratch projects, young people learn important mathematical and computational ideas, while also gaining a deeper understanding of the process of design."
http://info.scratch.mit.edu/About_Scratch,retrieved Dec.16, 2008
Learn 21st Century Skills
Collaboration
Background
What are learning games?
Videos
Scratch in 30 seconds
Scratch, Media Lab Video
How can Scratch help you & your students make learning games?
- Purpose to teach not entertain
- Teach subject
- Expand concepts
- Understand historical event or culture
- Learn skill as they play
- Create games, animations and interactive stories.
- Learn to program using blocks.
- Use it as a means of creative expression.
- Experience authentic project based learning.
"Digital-learning game" as: ...acquisition of knowledge as its own end and fosters habits of mind and understanding ...useful within an academic context."
Klopfer, Osterweil, & Salen (2009)
Moving Learning Games Forward
http://en.wikipedia.org/wiki/Educational_game
Scratch
Developed by the Lifelong Kindergarten research group at the MIT Media Lab
Video Game Design with Scratch
Additional Skills
Information & Communication Skills
Objectives
Design
- imagining, creating, evaluating, remixing
- learn to select, create, manage multiple forms of media
- create media to creatively & persuasively express themselves
Problem Solving
The World of Unlimited Possibilities
- identifying, formulating, decomposing, debugging
- To develop skills in digital media & programming
- To acquire problem solving & logical thinking
- To learn not only to interact but to also create with the computer.
Computational & Mathematical Concepts
Social-emotional Skills
multi-threaded
- collaborating, sharing, persevering, reflecting
GUI based programming
Thinking
- sequence, iteration, conditionals
- coordinates, variables, random numbers
- event handling, data structures
- threads, synchronization, randomness
Higher-Order
Lower-Order
"As a teacher I, allow exporation as I guide, challenge, inspire my students."
-Ms. I
Interface
- combine facts
- synthesize ideas
- conclude/interpret
- recite facts
- previously aqcuired knowledge
- For MAC: Open Scratch.app
- For PC: Open Scratch.exe
Blocks
presented by Sophia I.
Is Scratch Right for You?
Technology/Computer Science Teacher
Advantages
snap together to create
Disadvantages
- Encouraging right-brain development
- Student’s own their learning
color-coded subcatagories
build your program here
- Can only share through their site
Scripts
Sprites have
1. costumes
2. scripts
Dynamic programming
Change it on the fly
Java vs. Scratch
Copy Script.
what does it do?
How many hours have you spent looking for that missing semi-colon?
class Hello {
public static void main(String [] args) {
System.out.println("hello, world!");
}
}
Let's compare!
Design Process
New Idea
Programming Languages
Re-design It
Working prototype
Programming Concepts
tell computer what to do!
Giving computer step by step instructions to complete a task. (i.e. following a recipe)
Statements
Basic instructions appear in all languages:
commands or instructions
directives that tell computer to do something
Get user feedback
- move/turn/point/go
- glide/set/change
- say/think/wait
- play/stop
Input
Test it
- (get input from the user)
Debug it
Output
- (display data to user on a monitor)
Math
- (perform basic math operations)
+ - * /
Build your own Game
Participants follow along as we build a simple learning game based on ideas and concepts presented.
Conditional Execution
- (check for conditions & execute sequence of statements)
Steps to Create Game
Repetition
- (perform a sequence of statements repeatedly)
Planning
Programming Concepts
Resources
Conditionals
Loop
http://scratch.mit.edu/download
Download Scratch (free, Mac/PC):
Determine
- purpose
- design
- win/lose conditions
executes statement multiple times
http://info.scratch.mit.edu/sites/infoscratch.media.mit.edu/files/file/ScratchReferenceGuide14.pdf
determines
- # of times something happens
- length of something
- when something happens
- forever
- forever if
- repeat
- repeat 10
- repeat until
http://www.nebomusic.net/scratch.html
Programming Concepts Defined
http://info.scratch.mit.edu/sites/infoscratch.media.mit.edu/files/file/ScratchProgrammingConcepts-v14.pdf
Drawing Sprites
Student Work
- Create Costumes, Stand & Walk
- Create/Import background
- Create 3 objects(balls)
http://scratch.mit.edu/galleries/view/67304
Gaming History
Events
Threads
- when flag clicked
- when key pressed
- when sprite clicked
Steps to Create Game
1975 Atari Pong
- Nolan Bushnell and Ted Dabney
- Set starting conditions
- Add key movements
- Add show/hide on items
- Set counter variable
- Set win/lose conditions
Adding Scripts
1978 Space Invaders
Rise of the Video Game
The Discovery Channel
Contact Info
1980 Pac-man
Programming Concepts
non-violent
Questions??
Evaluation Form
Variables
Please take a moment to complete the evaluation form.
Atari 2600 - 1st cartridge-based home video system
Thank you for attending this workshop.
http://tiny.cc/-eval
Keeping Score
placeholder for a value
(i.e. “x” in algebra)
2 Types
- Keep playing & adjusting scripts as you see fit.
Testing
score
Local
- belong only to a specific spriteGlobal
- shared by all sprites
Boolean Expressions
Numbers
can be true/false
- touching
- mouse down?
- key pressed?
test condition
- some # is less than another # or it's false.
Anatomy of a Script
if False continue normal flow
It's not just about programs working but rather working *efficiently.*