workshop using alice to stimulate learning in stem july 7, 2008 brenda parker computer science...
TRANSCRIPT
WorkshopWorkshopUsing Alice to Stimulate Using Alice to Stimulate
Learning in STEMLearning in STEM
WorkshopWorkshopUsing Alice to Stimulate Using Alice to Stimulate
Learning in STEMLearning in STEMJuly 7, 2008July 7, 2008
Brenda ParkerBrenda ParkerComputer Science DepartmentComputer Science Department
MTSUMTSU
July 7, 2008 Brenda Parker - Alice Workshop
2
Welcome
• MTSU• Computer Science Department• Computer Lab – KOM 360• Alice Workshop
July 7, 2008 Brenda Parker - Alice Workshop
3
Introduction• Introduce yourself to your
neighbor• Prepare to introduce your
neighbor to the class– Name– School– Interesting fact!
July 7, 2008 Brenda Parker - Alice Workshop
4
Rules• Feel free to take a break when
needed• Restrooms are out the door to
your left in the main hallway• Feel free to ask questions
July 7, 2008 Brenda Parker - Alice Workshop
5
Purpose of Workshop• Why is Computer Science Department
interested in an Alice Workshop for K-12 teachers?– We live in a technological age.– Tennessee is lacking in producing a
technological literate workforce!– Computer programs are everywhere– Programming is the new computer literacy!– Having a technology literate workforce will
be necessary for continued economic growth.
July 7, 2008 Brenda Parker - Alice Workshop
6
Purpose of Workshop• Indicate methods for improving
technological literacy in K-12 schools• Provide networking facilities among K-
12 educators and the Computer Science department at MTSU
• Show how the Alice tool can be used to improve K-12 education (math and science)
July 7, 2008 Brenda Parker - Alice Workshop
7
Purpose of Workshop• Why should we attempt to
improve technological literacy?– K-12 students MUST become more
computer literate to meet the technological demands of the future
July 7, 2008 Brenda Parker - Alice Workshop
8
Workshop Agenda• Short explanations on Alice will be
given• Practice sessions will be interspersed
during the day• Short test after each practice session• Participants will be asked to
demonstrate their creations
July 7, 2008 Brenda Parker - Alice Workshop
9
Part I – Alice BasicsAlice Workshop
• What is Alice?• Why use Alice?• Alice Basics – The Alice
Environment• Example Worlds• Alice Texts
July 7, 2008 Brenda Parker - Alice Workshop
10
What is Alice?• Software
– Free– Educational programming language– Named after Lewis Carroll’s Alice in
Wonderland– offered by Carnegie Mellon University– Download at http://www.alice.org
July 7, 2008 Brenda Parker - Alice Workshop
11
What is Alice?• Software
– uses a 3D programming environment – makes it easy to create an animation for
telling a story, playing an interactive game, or a video to share on the web.
– designed to be a student's first exposure to programming.
– allows students to populate a virtual world with objects (people, animals, vehicles, etc) and animate the objects
July 7, 2008 Brenda Parker - Alice Workshop
12
What is Alice?• Software
– Allows the creation of passive and interactive animations• Passive animations (watch the resulting
video)• Interactive animation (user participates
in the animation – game)
July 7, 2008 Brenda Parker - Alice Workshop
13
Why use Alice?• provides students with a fun way to
reinforce concepts studied in class• encourages creativity• promotes technological literacy• improves logical thinking• gives a gentle introduction to
programming( the new computer literacy)
July 7, 2008 Brenda Parker - Alice Workshop
14
Alice Basics• Environment• How to Create a Passive Animation• How to Create an Interactive
Animation
July 7, 2008 Brenda Parker - Alice Workshop
15
Object Tree
Details Panel Method Editor
Events Editor
July 7, 2008 Brenda Parker - Alice Workshop
16
EnvironmentObject Tree Window
• Lists the predefined objects in the world– Camera– Light– Ground
• Lists objects placed by the user– Penguin– Snowman
July 7, 2008 Brenda Parker - Alice Workshop
17
EnvironmentDetails Panel Window
• Shows information about selected object in the Object Tree
• Properties– Tell color, size, etc
• Methods– Each method does something (shows what the
object can do)– Penguin.flapWings
• Functions– Each function returns something
• Penguin’s width is 18.
July 7, 2008 Brenda Parker - Alice Workshop
18
Practice I1. Place USB drive into your computer.2. Open Alice3. Close the Welcome Window 4. Set defaults5. Click on an object in the Object Tree6. Examine the Properties, Methods and
Functions associated with the selected object
Practice I Test1.
C
D
A
B
Practice Test I2. What is the purpose of the “methods” tab? (1 pt)3. What is the difference between “methods” and
“functions”? (1 pt)4. Name a property of the ground object. (1 pt)5. Name a method listed for the camera object. (1
pt)6. Name a function listed for the light object. (1 pt)7. How do we select an object? (1 pt)8. In the above picture, which object is selected? (1
pt)
July 7, 2008 Brenda Parker - Alice Workshop
21
Alice BasicsHow to Create Passive
Animations• 4 Step Process to create an
animation– STEP 1: Choose a world– STEP 2: Choose objects for your world– STEP 3: Choose activities (methods)
for your objects– STEP 4: Play your animation
July 7, 2008 Brenda Parker - Alice Workshop
22
STEP 1Choose your world
environment
1.Click FileNew World
2.Click Templates
3.Click desired World
4.Click OPEN
July 7, 2008 Brenda Parker - Alice Workshop
23
STEP 2Choose Objects for your world
1. Click “Add Objects”
July 7, 2008 Brenda Parker - Alice Workshop
24
STEP 2Choose Objects for your world
2. Choose “Local Gallery”
ST
July 7, 2008 Brenda Parker - Alice Workshop
25
STEP 2Choose Objects for your world
3. Choose desired 4. Choose desired
gallery object
July 7, 2008 Brenda Parker - Alice Workshop
26
STEP 2Choose Objects for your world
5. Click “Add instance to World”
July 7, 2008 Brenda Parker - Alice Workshop
27
STEP 2Choose Objects for your
world
6. Name objects if desired!Right click on object in the object tree and choose rename
July 7, 2008 Brenda Parker - Alice Workshop
28
Step 2Choose Objects for your
world7. Position objects in your world
-Use “Click and Drag”
-Use sub-circuit buttons”
July 7, 2008 Brenda Parker - Alice Workshop
29
Step 2Add Objects to your
World8. Click when all objects
have been added and positioned.
July 7, 2008 Brenda Parker - Alice Workshop
30
Practice II1. Click FileNew World2. Choose Templates3. Choose a World4. Add Objects- Add at least 2 animals + 2
Nature5. Position Objects6. Rename objects, if desired7. Click DONE8. Save your world on your flash drive and call it
workshop1.a2w (FileSave World)
Practice II Test1. Name two classes found in the animal gallery. (1 pt)2. What is the first step in creating an animation in Alice? (1 pt)3. Name three types of worlds users may choose from when
creating an animation. (3 pts)4. What does “passive” animation mean? (1 pt)5. Explain how to rename an object.(1 pt)6. What do the following mouse controls buttons do? (3 pts)
7. What button should be pushed when all objects have been added and positioned? (1 pt)
8. How can you change the color of an object in your world? (1 pt)
July 7, 2008 Brenda Parker - Alice Workshop
32
Step 3Choose activities
(methods) for your objects
1. Click on desired object in the Object Tree.
2. Choose desired method from the list of Methods.
3. Drag the desired method to the Editor Window.
July 7, 2008 Brenda Parker - Alice Workshop
33
Step 3Choose activities
(methods) for your objects
1. Click on desired object in the Object Tree.
July 7, 2008 Brenda Parker - Alice Workshop
34
Step 3Choose activities
(methods) for your objects
2. Click METHODSand choose desired method from the Method List for that object.
July 7, 2008 Brenda Parker - Alice Workshop
35
Step 3Choose activities
(methods) for your objects
3. Drag the desired method to the Editor Window.
July 7, 2008 Brenda Parker - Alice Workshop
36
Step 4Play Animation
• Example Animationsedwards.htmlSnow_Man_Story.html
July 7, 2008 Brenda Parker - Alice Workshop
37
Practice III1. Click on one object2. Click and drag 2 methods for that
object to the Editor Window3. Click on another object4. Click and drag 2 methods for that
object to the Editor Window5. Play your video!6. Save your world!
Practice III Test1.When creating activities for the objects in your
world, you must first ___________________________. (1 pt)
2. Which tab in the Details Panel should be chosen when choosing activities for the objects in your world? (1 pt)
3. When choosing activities for your objects, you should drag the desired _____ from the ______________ to the ___________(3 pts)
4.. What button should be selected to actually see your animation? (1 pt)
5. How many methods can be placed in the Editor Window? (2 pts)
July 7, 2008 Brenda Parker - Alice Workshop
39
FYIIt is easy to create a picture from your
Alice world.How?1. Tell Alice where to save your picture
(FileEditPreferencesScreen GrabIndicate locationOK)
2. Click Play3. Click Pause4. Click Take Picture
July 7, 2008 Brenda Parker - Alice Workshop
40
Alice Texts• Dann, Wanda, Cooper, Stephen,
Pausch, Randy, Learning to Program with Alice, Pearson Prentice Hall
• Gaddis, Tony, Starting Out with Alice,Addison Wesley
July 7, 2008 Brenda Parker - Alice Workshop
41
Part II- Control StructuresAlice Workshop
• Do in order• Do together• Loop• Decision Structure
July 7, 2008 Brenda Parker - Alice Workshop
42
Control Structures
• Do in order– Instructions placed inside this
structure will be executed in the order that they appear
– Example:
July 7, 2008 Brenda Parker - Alice Workshop
43
Control Structures• Do in order
– Advantage• Easy to learn about sequential logic• Easy to delete a group of statements
July 7, 2008 Brenda Parker - Alice Workshop
44
Control Structures
• Do together– Allows multiple actions to occur at
the same time– Provides an interesting effect!– Example: 4 penguins form a chorus
line!
July 7, 2008 Brenda Parker - Alice Workshop
45
Control Structures• Loop
– Easy way to perform same instructions multiple times
July 7, 2008 Brenda Parker - Alice Workshop
46
Control Structures• If Else
July 7, 2008 Brenda Parker - Alice Workshop
47
Examplechorusline.a2wchorusline2.a2w
July 7, 2008 Brenda Parker - Alice Workshop
48
Practice IV1. Add two control structure to your
object2. Use Loop or Do together or Do in
order3. Save your video4. Play your video5. Save a picture, if desired!
Practice IV Test1. How do you change the default settings in Alice? (2 pts)2. What is the purpose of “Screen Grab”? (1 pt)3. Why would you want to change the default setting in
Alice? (1 pt)4. Name two advantages for using the “Do in order”
control structure. (4 pts)5. What is the purpose of the “Do together” structure? (1
pt)6. What is a “Loop”? (1 pt)7. Where on the Alice screen are the control structures
located? (1 pt)8. Name 4 control structures found in Alice. (4 pts)9. How do you save a picture of your world in Alice? (2
pts)10. When instructed to do so, where does Alice save a
picture of your world? (2 pts)11. When a world picture is saved, what file name is the
picture given? (2 pts)
July 7, 2008 Brenda Parker - Alice Workshop
50
LUNCH• KOM 321
July 7, 2008 Brenda Parker - Alice Workshop
51
Part II Advanced Concepts in Alice
• World Custom Methods• Manipulating the Camera• Event Programming
July 7, 2008 Brenda Parker - Alice Workshop
52
World Custom Methods• Created by the user• Used to break up large complex
methods into smaller more manageable methods
• Example: Our penguin world method was getting large – let’s divide it up!
July 7, 2008 Brenda Parker - Alice Workshop
53
Penguin Storyboard• 4 penguins bow• 4 penguins dance simultaneously• 4 penguins bow
Let’s create a method called bow and a method called dance
July 7, 2008 Brenda Parker - Alice Workshop
54
Custom World MethodHow to create and use Custom
World Methods1. Name the method2. Write the method3. Call the method
July 7, 2008 Brenda Parker - Alice Workshop
55
Custom World Method1. Name the method
1. Click on World in the Object Tree2. Click on create new method in the
World’s Details Panel3. Name the method
July 7, 2008 Brenda Parker - Alice Workshop
56
Custom World Method2. Write the method• Place desired methods in the new
method editor window• Example (use methods to lower
and raise the penguins’ heads)
July 7, 2008 Brenda Parker - Alice Workshop
57
Custom World Method3. Call the method.
Click on world
object and clickon world.myfirstmethod tab. Dragmethod to the editor window
July 7, 2008 Brenda Parker - Alice Workshop
58
Practice V1. Add a custom world method to your
Alice world.– Click world in the Object Tree– Click create new method– Name the method (give it a good name)– Write the method– Call the method from world.myfirstmethod
2. Play the new video3. Save the video
Practice V Test1.What is the difference between “primitive”
methods and custom methods? (1 pt)2. Give two reasons that custom methods are
often used in Alice, (4 pts)3. What is the name of the method that is
executed when your animation first begins? (1 pt)
4. What are the three steps for creating custom world methods? (3 pts)
5.What does “call” the method mean? (2 pts)6. How are custom methods “called”? (1 pt)
July 7, 2008 Brenda Parker - Alice Workshop
60
How to Create Interactive Animation
Event Programming• Interactive
– User participates while the video is playing
– When the user clicks mouse or presses a key, an event occurs.
• Example: Typing lesson (cat.a2w)
July 7, 2008 Brenda Parker - Alice Workshop
61
Event Programming1. Click “create new event” in the
Events Editor Window2. Choose desired event3. Create methods to handle each
event4. Play and save video
July 7, 2008 Brenda Parker - Alice Workshop
62
Example: cat.a2w
July 7, 2008 Brenda Parker - Alice Workshop
63
World.T method
July 7, 2008 Brenda Parker - Alice Workshop
64
Practice VI• Add an Event to your Alice world
– Create a new world method to be executed when the event occurs and name it properly
– Drag the instructions for the new method to the editor window
– Click “create new event” in the Events Editor window
– Choose desired event and make sure the new world method is called when the event occurs
• Play animation• Save and Play your animation
Practice VI Test1. What is the difference between “interactive” and
“passive” animations? (1 pt)2. Interactive animations are created in Alice creating a/an
___________.(1 pt). 3. _________________ run __________________ when certain
things happen like a key is pressed or the mouse is clicked. on an object.
4. Show the specific instruction that should be used for each of the following scenarios. (1 pt each)
a. We wish to move a penguin when a number is typed on the keyboard
b. We wish to move a penguin when the mouse is click on the penguin
c. We wish to allow the mouse to move the penguin d. We wish the arrow keys to move the penguin. e. Allow the mouse to control the camera location5. If we want a custom method called “jump” to be
executed each time the mouse is clicked on a penguin, what must we do first? (1 pt)
July 7, 2008 Brenda Parker - Alice Workshop
66
Part IIIUsing Alice in the
classroom• Advice• Math • Science
July 7, 2008 Brenda Parker - Alice Workshop
67
Part IIIUsing Alice in the
classroom• Advice
– Give VERY short lessons on Alice– Encourage lab time in pairs– Alice has excellent tutorials – Allow students to change previous worlds– Begin small
• Delay or omit custom functions• Do very little Control Structures• Event programming is more difficult
July 7, 2008 Brenda Parker - Alice Workshop
68
Part IIIUsing Alice in the
classroom• Advice After downloading Alice, change the default
setting, if desired . Click EDITPreferences on the menu
July 7, 2008 Brenda Parker - Alice Workshop
69
Part IIIUsing Alice in the
classroom• Advice – Changing Preferences
July 7, 2008 Brenda Parker - Alice Workshop
70
Part IIIUsing Alice in the
classroom• MATH - SCIENCE
– Display math/science question and allow users to answer the question (mathquiz.a2w and mathquiz2.a2w )
– Create conversations between objects (spacequiz.a2w)
– Create stories of famous mathematicians/scientists
July 7, 2008 Brenda Parker - Alice Workshop
71
mathquiz2.a2w• Creating a movie file with Alice
mathquiz2.avi
HINT: I used AviScreen Classic available from www.bobyte.com to produce the avi file!
July 7, 2008 Brenda Parker - Alice Workshop
72
Part IIIUsing Alice in the
classroom• Suggestions given by 8th Graders
– Book Reports– Use as a visual in their History Day projects– Create character education movies for
younger children– Create advertisements for school program
(fundraisers, field trips, special events)
July 7, 2008 Brenda Parker - Alice Workshop
73
Part IIIUsing Alice in the
classroom• Suggestions given by 8th Graders
– Any/all class projects (science, social studies, etc.)
– A new media for Art classes– Public service announcements (a way
to teach handbook rules)
July 7, 2008 Brenda Parker - Alice Workshop
74
Other Alice Features• Import sound into an Alice World• Export as a web page• Export as a movie• Record sound to be placed in the
animation• Create games• Move camera• Create Billboards
July 7, 2008 Brenda Parker - Alice Workshop
75
Part IVReferences
• http://aliceprogramming.net– Helpful information on Teaching with Alice
• http://alice.org– Download Alice
• http://visualization.sju.edu– Archive of Alice newsletters, grants, useful
information
July 7, 2008 Brenda Parker - Alice Workshop
76
Part IVReferences
• http://www.cs.duke.edu/csed/alice/– Workshop materials & tutorials
• http://www.cis.uab.edu/programs/alice-festival/– Alice Contest in UAB
July 7, 2008 Brenda Parker - Alice Workshop
77
Part IVReferences
• http://www-groups.dcs.st-and.ac.uk/~history/BiogIndex.html– Index of famous Mathematicians
• http://www.alice.org/kelleher/storytelling/index.html– Download StoryTelling Alice (appeals
to middle school students)
July 7, 2008 Brenda Parker - Alice Workshop
78
Part IVReferences
• http://www.cs.duke.edu/csed/des/demos/Animations.html– Screen shots of student Alice worlds
• http://www.cis.uab.edu/gray/Pubs/npr-4-3-07.mp3– Interview on NPR radio regarding UAB’s K-12
outreach efforts in Alabama (5 minute discussion on CS education, job market, Alice)
July 7, 2008 Brenda Parker - Alice Workshop
79
Part IVReferences
• Randy Pausch – Carnegie Mellon professor gives The Last Lecture with comments regarding Alice
• http://www.youtube.com/watch?v=ji5_MqicxSo
July 7, 2008 Brenda Parker - Alice Workshop
80
Class DemonstrationsVolunteers????
July 7, 2008 Brenda Parker - Alice Workshop
81
Evaluation and Door Prizes
Thank you for your support today! Hope you can use Alice to encourage technological literacy and at the same time reinforce topics discussed in your classroom.