Beyond the Hour of Code: Implementing an Elementary Coding Curriculum Terry Smith www.STEAM-In.org Havens School – Piedmont USD terrysmith@steam-in.org @steamterry Entire presentation can be found here – later today…
Google Expeditions – Happy to Share Our Experience Video Link
Goal: Give you a jumpstart implementing a Computer Science/Coding curriculum at your site(s). Plan for Today Brief Introduction Why Teach Coding? Nuts and Bolts How to Get Started What We Did and What We Learned Scope, sequence and differentiation Monitoring student progress Student engagement Where We Go Next Tips and Tricks Available Resources
Some Quick Background Programmer, Systems Engineer, Project Manager 20+ years teaching coding to kids Classroom teacher – 5th Grade Science, Math specialist District adopted CSTA standards 2 years ago went 1:1 in 4/5, 3:1 in lower grades Technology Coordinator as of last year Implemented 1st-5th grade CS/Coding curriculum with 450+ students Coming soon… STEAM-In.org Disclaimers Terry Smith
Why Should We Teach Coding? Language of Technology Jobs Equity in Access Socioeconomic Diversity Survival in a Technology Infused World Necessity to be ‘technologically fluent’ Early exposure/success leads to accessibility
Why I WANT to teach coding… “…programming is the most powerful medium of developing the sophisticated and rigorous thinking needed for mathematics, for grammar, for physics, for statistics, for all the "hard" subjects.... In short, I believe more than ever that programming should be a key part of the intellectual development of people growing up.” Seymour Papert (USA Today photo: Marcio Jose Sanchez, Associated Press)
Computational Thinking Practices These are useful skills across the curriculum And across LIFE…
Nothing to do at that point but….
The Tools Why these? Free Comprehensive Web based Well supported Now called: Computer Science Fundamentals Why these? Free Comprehensive Web based Well supported Reliable Kid Friendly
Oh and robotics….
Strengths Weaknesses Self Paced Student Account setup Independent learning Differentiated Frequent Instructional Videos embedded Teacher Dashboard for tracking progress Weaknesses Student Account setup Offline activities unwieldy – often need adaptation for classroom environment English only Few places where kids tend to get stuck and need better strategies
Why move on to Scratch and Robots? Open Ended Opportunity to Apply Coding Skills
Getting Started With Code.org Just open an account and get started with your students’ course Local One Day Trainings Online Teacher Training Course K5 Online PD Course Link Link to Training Page
Code.org - Curriculum Overview New Course 4 In Beta
Course Progression -- Code.org CS Fundamentals Grade Levels Course 2 Course 3 Course 4 Year 1 1 & 2 3-5 Some 4 & 5 Year 2 (proposed) 1 2 & 3 Start 4 & 5 continue 4 & 5 as they finish #2
Student Progress 2nd Grade – Course 1 1st Grade – Course 1 6 Sessions 1-2 students per class finished and went on to Course 2
3rd Grade Class – Course 2 6 Sessions 4th Grade Class – Course 2 8 Sessions About 10% went on to course 3
5th Grade Course 3 5th Grade Course 2 8 sessions About 25% went on to course 3
Moving on to Open Ended Coding in Scratch Open Ended Opportunity to Apply Coding Skills Creative For Teachers: Harvey Mudd Course with Colleen Lewis
Follow up activities to apply and expand coding skills 1st – Beebots 2nd – Beebots 3rd – Animated conversation or greeting card or multi-media collage 4th – Maze game 5th – Documentaries – BrainPop style Robot selection and testing
1st and 2nd Grade Beebots Can you figure out how it works? How long is a Beebot step? Get the bee from hive to flower and back Grid challenges with stories
3rd Grade Animated Stories & Cards In Scratch or multi-media collages Link Link
Scratch Maze Game – Scaffolded Instruction via Video Tutorials Scratch Maze Game Sample Link
Learning Pathway – Self Paced Tutorial Format link
4th Grade Maze Game – Variety of Solutions ‘Learning Pathway’ format with tutorials to create a game Tip: At beginning of project -Create a Scratch Studio and have all students place their projects inside – that way you can watch progress easily
5th Grade – Documentaries Products from i-search and Genius Projects ‘BrainPop ‘ Movie on Nike Documentary on Fashion History Steph and David on the Statue of Liberty
Math Connections in Scratch Polygon Patterns and Coordinate Based Drawing https://scratch.mit.edu/projects/50385040/#editor
Robot Research & Evaluations in 5th Grade
Robot Experimentation in 5th Grade Figure it out – create a ‘Quick Start Guide’ for the next group
Introduction to Coding and Computer Science for Kids – Start Offline For the little ones – 1st & 2nd - I just tell them that we’re going to learn to code which means learning how to make the computer do things…
Importance of Understanding Technology: It will infuse their world
Technology gets smaller and faster all the time
Computer Programming BrainPop
Computer Science Education Week Hour of Code Link to Youtube Video
Real Life Algorithms
A.R.M. Graph Paper Programming – 3rd Grade and Up (modified) You will take turns being: Algorithm Writers or Programmers Automatic Realization Machine A.R.M. Link to Student Work Link to Practice Form
Graph Paper Programming Available Instructions: Move One Square Right Move One Square Left Move One Square Up Move One Square Down Fill-In Square with color How would you direct your A.R.M. to Make this pattern? Move one square right Fill-in square with color Move one square down This is the algorithm to make this pattern
Graph Paper Programming Now let’s do this pattern with our code all together We turned our algorithm into a program or code
Directions Write the code for this pattern Then fold the paper on the line Trade with a partner Partner draws the pattern from the code Unfold Does it match? Document Link
Did we follow the steps?? Steps in Computer Programming: An algorithm… Understand the problem Write Code Test Code Fix any bugs Go back to Test Code
Make your pattern then trade to test your code Design pattern on blue sheet Write program to match on pink sheet Trade ONLY pink sheet with partner Draw on a new blue square Compare and fix any Bugs… repeat Link to Documents
Computer Scientist Vocabulary: Algorithm A list of steps you follow to finish a task. Program An algorithm that has been coded to be done by a machine Bug A mistake found in a program Debug find and fix the bugs Loop The action of doing something over and over
Setting up Student Accounts word picture email Highly Recommend just using the picture password format
Managing Lessons with Code.org Mini-Lessons on key concepts – likely hang ups – help a lot
Code.org - Course 1 puzzle / managing the screen https://studio.code.org/s/course1/stage/4/puzzle/1
Code.org - Teacher Home Page
Code.org Teacher Dashboard https://code.org/teacher-dashboard#/sections/292571/progress
‘Be the Bird’ or bee, or zombie… - strategy https://studio.code.org/s/K5-OnlinePD/stage/4/puzzle/4
Step button allows step by step debugging https://studio.code.org/s/course1/stage/7/puzzle/1
Importance of reading the directions https://studio.code.org/s/course2/stage/4/puzzle/1
Understanding Angles physically and using the strategy ‘turn – draw – test’ ask yourself ‘Did the ‘pencil robot’ turn enough or not enough? – Should s/he turn more or less?’ https://studio.code.org/s/course2/stage/4/puzzle/6
Helps to Discuss things students do everyday that repeat Like brushing teeth – up/down motion Often students bring up things that don’t repeat in the same sequence – good opportunity to discuss Example: getting out of bed each day – but the rest of the day isn’t a repeat
Nested Loop Steps in Computer Programming: An algorithm… Understand the problem Repeat until done Write small amount of code Repeat until no bugs Test Code Fix any bugs Nested Loop
Introducing Loops – ‘try it the long way’ strategy https://studio.code.org/s/course2/stage/6/puzzle/8
Introducing Conditionals If – Else logic Difficult for 5th grade students once you start nesting – also know that lots of kids don’t know how a deck of cards is laid out so you may need to spend some time on that..
Introducing Conditionals https://studio.code.org/s/course2/stage/13/puzzle/4
Scratch resources: Scratch Maze Game Tutorial Link to course #csk8 Twitter Chat – once a month on Wednesdays
Beyond the Hour of Code: Implementing an Elementary Coding Curriculum Terry Smith www.STEAM-In.org Havens School – Piedmont USD terrysmith@steam-in.org @steamterry Entire presentation can be found here