Visual Programming Via The Squeak Car Demo

Preview:

DESCRIPTION

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 - PowerPoint PPT Presentation

Citation preview

Visual Programming Via The Squeak Car Demo

Dan GrossmanUniversity of Washington

CS4HSAugust 6-8, 2009

2

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

3

“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)

4

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, …)

5

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

6

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

7

Outline

1. Paint a car; keep it

2. Use mouse and object viewer to move car

3. Skip saving/loading projects

4. Script circles/polygons (pen down)

5. Steering wheel connected to car

6. “Robot” car that follows the road

7. Car with random speed

8. (Time permitting, car that accelerates at each step)

8

Let’s go try it ourselves!!!

9

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

10

Outline

1. Paint a car; keep it

2. Use mouse and object viewer to move car

3. Skip saving/loading projects

4. Script circles/polygons (pen down)

5. Steering wheel connected to car

6. “Robot” car that follows the road

7. Car with random speed

8. (Time permitting, car that accelerates, at each step)

11

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

12

A ton of CS in there

• Script circles/polygons– Expressing repetitive tasks via an algorithm– Automating repetitive tasks– Approximations, derivatives, limits

13

A ton of CS in there

• Steering wheel– “Wires” for connecting outputs to inputs– Perspective and relative positions

14

A ton of CS in there

• Smart car– Feedback and control systems– Conditionals

15

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

16

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, …)

17

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?? )

18

So…

What in your courses could use something like this?

Recommended