180 likes | 338 Views
Visual Programming Via The Squeak Car Demo. Dan Grossman University of Washington CS4HS August 6-8, 2009. This 120 minutes. 20 minutes: introduction “cooking-show demo” 50 minutes: paired up in the lab “trying it out” 50 minutes: recap concepts a demo I made in 10 minutes
E N D
Visual Programming Via The Squeak Car Demo Dan Grossman University of Washington CS4HS August 6-8, 2009
This 120 minutes • 20 minutes: • introduction • “cooking-show demo” • 50 minutes: paired up in the lab “trying it out” • 50 minutes: • recap concepts • a demo I made in 10 minutes • brainstorm
“Visual programming” • “Virtual worlds” for scripting, simulation, animation, building control systems, etc. • “Discovering” core math, science, and computer science with some “computer game” feel • Popular ones with amazing stuff: • Squeak Etoys, Scratch, Alice • Today: A demo for 11-year-olds • The point is the idea & approach • Not the specific content • (make up own or search web later)
Why? • Virtual scriptable worlds compared to real-world • Easier to control • Faster • Cheaper • As a result: More fun • Computational concepts without a CS class • Scripting • Modeling • Simulation • Feedback and control loops • Conditionals • (plus tons of useful math, probability, statistics, …)
Why me? • Computer science faculty since 2003 • Programming languages (ways to think about computation) • Believe “computational thinking” is essential for all college-prep high-school students • Not the same as programming class • I never programmed until college • But I’m not a high-school teacher • Show you Squeak; hope you think it’s useful
Cooking-show • 4x-speed version of what you’ll do in the lab • Feel free to play around also, but try to get through most of this • Step-by-step instructions in lab, so just “get a sense” here • By the way, I’m new to Squeak – you pick it up fast
Outline • Paint a car; keep it • Use mouse and object viewer to move car • Skip saving/loading projects • Script circles/polygons (pen down) • Steering wheel connected to car • “Robot” car that follows the road • Car with random speed • (Time permitting, car that accelerates at each step)
This 120 minutes • 20 minutes: • introduction • “cooking-show demo” • 50 minutes: paired up in the lab “trying it out” • 50 minutes: • recap concepts • a demo I made in 10 minutes • brainstorm
Outline • Paint a car; keep it • Use mouse and object viewer to move car • Skip saving/loading projects • Script circles/polygons (pen down) • Steering wheel connected to car • “Robot” car that follows the road • Car with random speed • (Time permitting, car that accelerates, at each step)
A ton of CS in there • Using mouse and object viewer to move car • State of a model • Multiple representations for viewing and controlling the model
A ton of CS in there • Script circles/polygons • Expressing repetitive tasks via an algorithm • Automating repetitive tasks • Approximations, derivatives, limits
A ton of CS in there • Steering wheel • “Wires” for connecting outputs to inputs • Perspective and relative positions
A ton of CS in there • Smart car • Feedback and control systems • Conditionals
A ton of CS in there • Random speed • Simulation of a random process for collecting statistics • A key alternative to mathematical analysis • So much faster than rolling real-world dice • Let me show you my “roulette car”… • In theory, analysis is more convincing • In practice, many people learn visually
Why? • Virtual scriptable worlds compared to real-world • Easier to control • Faster • Cheaper • More fun • Computational concepts without a CS class • Scripting • Modeling • Simulation • Feedback • Conditionals • (plus tons of useful math, probability, statistics, …)
Much, much more available • Plenty of online information, forums, etc. • Squeak Etoys school projects: • http://squeakland.org (not squeak.org) • Slightly newer version than we had in the lab • Try Showcase, then Showcase by Age • Actually, instead try out: • Scratch: http://scratch.mit.edu/ • Alice: http://www.alice.org/ • (what? and start over after 2 hours?? )
So… What in your courses could use something like this?