MyCS�Summer Institute
Day #4 - June 9th, 2016
Expanding Computer Science Education to ALL Students
Welcome!
Please sit by people you don’t know well (yet). Switch up the seating arrangements!
Enjoy some breakfast
and get to know your teammates.
We will start at 9 AM.
2
Expanding Computer Science Education to ALL Students
CS is Changing Everything
3
Expanding Computer Science Education to ALL Students
Icebreaker: Concentric Circles
Form two concentric circles (same number in each). Face one person in the other circle.
Discuss a focus question with �each person. Then, rotate.
4
Expanding Computer Science Education to ALL Students
“Magic” Binary Cards
There is a great explanation for how this works in this Scratch project.
5
Expanding Computer Science Education to ALL Students
Survey
Feedback
6
Expanding Computer Science Education to ALL Students
Survey Feedback
7
Expanding Computer Science Education to ALL Students
Survey Feedback
Worked Well:
8
Expanding Computer Science Education to ALL Students
Survey Feedback
To Adjust:
9
Requests:
Expanding Computer Science Education to ALL Students
Yesterday’s Reflection
10
Expanding Computer Science Education to ALL Students
Goals for the Week
Scratch / CS concepts / pedagogy
11
Expanding Computer Science Education to ALL Students
Today’s Agenda
+ Best Practices
12
conceptual focus:
sensors, input/output, abstraction, decomposition
Expanding Computer Science Education to ALL Students
Reviewing Our Norms
13
Expanding Computer Science Education to ALL Students
CS Pedagogy
14
Expanding Computer Science Education to ALL Students
Students learn at different rates. They also come into technology with vastly different skills. Trying to keep everyone on the same page will alienate both the bottom third and top third of learners. Take the pressure off of everyone by having a list of “approved” activities to focus on when they’ve finished their class exercise.
15
Expanding Computer Science Education to ALL Students
2) Frequent Breaks
Teachers are used to helping their class get very focused and encouraging students to work quietly until an activity is done. In computer science, students often benefit from small and frequent breaks, even if it’s just switching to a new activity for a few minutes. Try having a student write a sentence or two about what they’re trying to do, or keep a notebook, like a biologist or chemist might.
16
Expanding Computer Science Education to ALL Students
3) Collaborate
It’s really hard for a programmer to “cheat”. Collaboration is a requirement out in the real world. This means helping one another solve problems, researching issues on the Internet, and looking at what others have done in similar situations. The only bad method is claiming another’s work as your own.
17
Expanding Computer Science Education to ALL Students
4) Don’t Be a Know-It-All
We often think that being a teacher means being an expert. In computer science, it’s really much more important to be a cheerleader. Let the students know that it’s possible for them to quickly become better at this than you are. Foster determination. Encourage students to monitor themselves, and find answers for one another. Let them figure things out for themselves, then let them teach you.
18
Expanding Computer Science Education to ALL Students
Growth Mindset & Grit
19
Expanding Computer Science Education to ALL Students
Debugging Strategies
20
How do we help students develop grit to solve problems?
How do we help them develop stronger debugging skills?
Expanding Computer Science Education to ALL Students
You don’t have to know everything!
21
Expanding Computer Science Education to ALL Students
This will be frustrating at times.
Expanding Computer Science Education to ALL Students
How Students Ask for Help
1) Try it yourself three times
2) Ask your elbow partner
3) Ask your table partners
4) Ask the teacher
5) Ask an expert (or someone else)� [teacher is not last line of defense]
Expanding Computer Science Education to ALL Students
How Students Ask for Help
24
Expanding Computer Science Education to ALL Students
Red/Green Cards
25
Expanding Computer Science Education to ALL Students
Finch Robots
26
Expanding Computer Science Education to ALL Students
Finch Robots!
27
Please contribute to our Padlet:
Shoutkey.com/evil
Expanding Computer Science Education to ALL Students
Getting Started with the
Finch Robot
Version 1.0 - 9/8/14
Why Finch Robots?
What’s that?
Things to Remember
Recommended: use Chrome
The Chrome browser supports an app that is attached to the user (Google account), rather than downloaded to the computer.
Get it here: goo.gl/L5ySZV
To Open Scratch X on a Chromebook
Option 1:
Click the Apps Icon in the Browser Bar
Option 2:
Click the Search Icon in the lower lefthand corner.
Stan the Man...
Finch Functionality
Motor Commands
Move Finch left:__ right:__
Sets the power to the left and right wheels. The range is -100 to 100.
For example Move Finch Left: 100 Right: 0 (100 is full forward),
-100 Right: -100 is full backwards.
LED Commands (Roy G Biv!)
Finch LED color R:__ G:__ B:__
Sets the color of the Finch's beak, the R, G, and B arguments control the intensity of the red, green, and blue elements in the Finch's beak. The range is 0 to 100 for each color.
Sound Commands
Finch buzz at __Hz for __ms
Plays the Finch's buzzer with a sound of the frequency specified for the time specified. Range is 20 to 20,000 for frequency.
Note: 1,000 ms is equal to 1 second
Sensing Commands - Part 1
Finch temperature
Returns the current temperature in Celsius.
Finch left light and right light:
Returns the intensity of light hitting the left or right light sensor. The values are in a range from 0 to 100 where 0 is total darkness and 100 is saturation of the sensor.
Finch left and right obstacle:
These are boolean or predicate blocks, returning true if an object is 1-4" from the sensor and false otherwise.
Sensing Commands - Part 2
Finch X/Y/Z Acceleration
Returns the current g-forces measured along the Finch's X (beak to tail), Y (wheel to wheel), and Z (top to bottom) axes.
Range is -1.5 to 1.5 gees.
Finch Orientation
Returns the current orientation of the Finch.
Possible responses are: level, upside down, beak up, beak down, left wing down, right wing down, and in between.
Experienced Finch Users...
Which Finch Functions worked and which didn’t (or were memorably difficult?)
Finch Activity Resources
Recommended: use Chrome
The Chrome browser supports an app that is attached to the user (Google account), rather than downloaded to the computer.
Get it here: goo.gl/L5ySZV
Shoutkey.com/coconut
Intro Finch Programming Activities
Activity 1:
Activity 2:
Activity 3:
Activity 4:
Activity 5:
Task #1 - Starting & Stopping
Find the Move Finch block and add in values of 100 for left and right. Click the block What happens?
Add the Stop All block to stop your Finch from moving.
Try experimenting with other numbers in the Move Finch block. Can you get the Finch to move left, right and backwards?
CHALLENGE: Can you control the Finch Robot’s movement using the arrow keys?
Task #2 - Changing Beak Colors
Find the Finch LED Color block and add in values of 100 for R, G and B. Click the block. What happens?
Try experimenting with other numbers in the Move Finch block. What colors do you get if you only put 100 in the R, G or B?
What happens if you place a Pick Random (under operators) block in each of the three sections?
CHALLENGE: Can you get the Finch to produce each of the colors of a rainbow?
Task #3 - Beep, Beep!
Find the Finch buzz block. What happens when you click it? What happens if you replace the 500ms with 1000ms?
Try experimenting with other numbers in the Hz block. What do you notice when you have a lower number compared to a higher number?
CHALLENGE: Can you get the Finch to play a song?
Hint: You’ll need to use multiple blocks and the Wait __ secs block between each Finch buzz.
Task #4 - Light Detection
Find the Finch left light and Finch right light blocks. What happens when you click them?
Borrow a flashlight from your teacher and shine it on one of the light sensors on the Finch? How does the number change? What are the lowest and highest numbers you can produce?
CHALLENGE: Can you get the Finch to move towards a light source?
Hint: You’ll need to use multiple Finch light blocks AND Move Finch blocks.
Task #5- what’s the temperature?
Add the Finch temperature block. When you click the block, a number will show up. Can you guess what is being displayed?
The Finch temperature block will display the temperature in Celsius.
CHALLENGE: Can you use a variety of the green operators blocks along with the Finch temperature block to display the temperature in Fahrenheit? If you get stuck, click on this slide to see how to do it!
Task #6 - Orientation
Find the Finch Orientation block. What happens when you click it?
The Finch Orientation block returns a description of the position that the finch is in. Can you get it to produce all seven positions?
CHALLENGE: Can you figure out a way to use the Finch Orientation block to control the Scratch character on the screen?
Hint: Click on the slide for the blocks needed to move a character to the right.
Cool things you can do
Cool things you can do
Cool things you can do
Tips and Tricks
Additional Resources
Scratch/Finch Project Examples
55
Expanding Computer Science Education to ALL Students
Load Finch Blocks into ScratchX
Once Scratch opens, open the File Menu. From there choose Load Project .
Load Finch Blocks into scratchx
Choose Finch.s2e from the Documents folder. You’ll now see the blocks to the right in the More Blocks category. These will blocks control the Finch Robot.
Activity Debrief
58
Expanding Computer Science Education to ALL Students
Scavenger Hunt!
59
Expanding Computer Science Education to ALL Students
Scavenger Hunt!
60
Expanding Computer Science Education to ALL Students
Hackathon!
61
Expanding Computer Science Education to ALL Students
Hackathon Process
62
Plan
Develop
Pitch
Brainstorm
Showcase
Respond to Feedback
Expanding Computer Science Education to ALL Students
Reflecting on the Hackathon Process
Gallery walk:
63
Expanding Computer Science Education to ALL Students
Close-Out
64
Expanding Computer Science Education to ALL Students
Reflection
65
Expanding Computer Science Education to ALL Students
Complete Feedback Survey
Your feedback is critical!
Please complete the feedback survey.
When you’re finished, visit the parking lot, backchannel, and Google+ community.
66
Expanding Computer Science Education to ALL Students
It’s time for a
RAFFLE!
67
Text your name to
415-890-4522
Expanding Computer Science Education to ALL Students
68
Expanding Computer Science Education to ALL Students
Additional Materials
69
Expanding Computer Science Education to ALL Students
Kids React to Old Computers
70
Expanding Computer Science Education to ALL Students
Debrief: Dice Race Game
71
Expanding Computer Science Education to ALL Students
Relay Programming
72
Expanding Computer Science Education to ALL Students
Debrief
73
Expanding Computer Science Education to ALL Students
Icebreaker: Two Truths and a Lie
Each person will introduce him/herself by stating two truths about his/her life and one lie.
Make it interesting! And, switch up the order.
The rest of the participants will guess which statement is the lie.
74
Expanding Computer Science Education to ALL Students
CS is Really About Thinking
75
Expanding Computer Science Education to ALL Students
Reflection
What is an activity or strategy from today that want to be sure to implement in your classroom?
How would you an adjust an activity from today when implementing in your classroom?
76
Expanding Computer Science Education to ALL Students
Icebreaker: Binary Activity
Each person will have one card with a number �in binary. Arrange yourselves in sequence. ��Tell a corny joke to the people next to you.
77
Expanding Computer Science Education to ALL Students
“Magic” Binary Cards
78
Expanding Computer Science Education to ALL Students