Just because Computer Science Week (CS Week) only happens once a year doesn't mean that students' exposure to coding and computer sciences has to end, as well.
Coding is a powerful skill for students to learn and practice. Our job as educators is to prepare students for life outside of school. In this day and age, that means preparing students for jobs that don't yet exist. We need students to learn flexibility and collaboration. We need our students to be critical thinkers and creators. According to a study out of the Oxford Martin School at Oxford (2013), approximately 47% of U.S. employment could be automated in the next 20 years, with "highly routine tasks" being at highest risk of being replaced by robots or computers. This information would suggest that rather than preparing students to simply follow directions and regurgitate facts and algorithms, we need to prepare students to create new technologies and to work in the "non-routine" industries that cannot be automated due to a robot's current inability to mimic human critical thinking and creative intelligence. Coding is one of the ways that we can better cultivate students' abilities to think creatively and solve problems.
1) Coding activities provide students with practice in important math skills including geometry standards, algebra, numbers and operations, and the 8 mathematical practices. Manipulating code, and/or creating it from scratch, demands that students make sense of problems and persevere in solving them, attend to precision, make use of structure, and look for repeated reasoning.
My favorite student quote from Code.org "Hour of Code" activities at one of my school sites:
"Look Ms. Haughs, it's a pattern!"
So how does coding help students become better critical thinkers and creators?
8 Mathematical Practice Standards |
My favorite student quote from Code.org "Hour of Code" activities at one of my school sites:
"Look Ms. Haughs, it's a pattern!"
2) As a math TOSA/Coach, I am particularly excited about the math skills/standards practiced in the process of coding including:
- Direction and ordinal numbers
- Counting
- Angle measurements
- Distance (think, distance object will travel in terms of pixels)
- Algebraic expressions
- Input/Output (function tables)
- Patterns
- And more!
- Sentence structure/syntax (ela)
- Problem/Solution (ela)
- Cause/Effect (ela/science)
- Giving directions (ela)
- Engineering design process (science/engineering)
- And more!
During hour of code, many teachers exposed students to introductory block coding using the Code.org website, and students followed directions to practice using code to make things happen. As students become well versed in block coding, they can begin to use blockly apps and others to modify code and then move on to creating their own code to make things happen.Lrning @scratch today & already creating a solar system animation! #mathchat #coding #STEAM @campbellusd pic.twitter.com/xc87lf7WMh— Amanda Haughs (@MsHaughs) January 19, 2016
Apps & websites for learning to create with code:
- Code.org (ages 6-adult) -- Work through guided, game-like tutorials and use block coding to learn basic programming skills
- Scratch Jr. (iPad, Android, Chrome; ages 5 & up) -- A good intro to block coding, students can create animations with up to 4 different scences using basic movement, repeat, and audio blocks
The "magic" of #coding in TK! @campbellusd @ScratchJr #STEM #STEAM #cuerockstar #tkchat #kinderchat pic.twitter.com/WRgEsdMXmb— Amanda Haughs (@MsHaughs) May 10, 2016
Using Scratch to model multiplying |
- BrainPop coding games (ages 6-adult) -- Students are introduced to block-based coding by playing games and completing challenges
- Kodable (iPad; ages 5-11) -- Learn foundational coding skills and then learn to read and write code using block code
- Hopscotch (iPad; ages upper elementary) -- Use block coding to learn core coding concepts while creating your own games
- Scratch by MIT (ages 6-adult) -- Use block coding to complete tutorials or to create your own projects; much more freedom to create your own projects from scratch (no pun intended) and share them with the Scratch community
- CodeMonkey (ages 6-adult) -- In a game-like setting, students learn how to use simple text-based coding by completing challenges. Each level focuses on a different coding skill and, with a classroom subscription, teachers can view their progress in the reporting tool. Students also use what they learn in lessons to start creating their own games.
- AppInventor by MIT (ages 9-adult) -- Create Android apps that can be used on any Android device via tutorials and use of block coding
- Khan Academy (ages 9-adult) -- More advanced coders can complete free lessons in
4th grade on AppInventor - PythonRoom (ages 10-adult) -- Let's anyone learn or teach the Python language in a self-paced environment; individuals can practice learning Python on their own or teachers can create a class online and monitor student learning for free
- Codecademy (ages 10-adult) -- Free, online, self-paced resource for learning popular coding platforms including JavaScript, HTML/CSS, Python, Ruby and more.
- Google Apps Script (ages 10-adult) -- Google Apps Script uses a JavaScript platform and students with a solid understanding of JavaScript can make their own add-ons for Google Applications by creating Google Apps Script; Alice Keeler has also written a few nice tutorials for those that want to get started making their own Apps Script
- W3Schools.com (ages 14-adult) -- W3Schools provides free online lessons in HTML, CSS, JavaScript, and more; self-paced lessons for older students who want to explore commonly used coding languages
Full house at Blackford coding club today! Ran out of space... Awesome! @campbellusd #coding #STEAM #csforall pic.twitter.com/boCZyBnh92— Amanda Haughs (@MsHaughs) March 23, 2016
Favorite tools for learning physical computing and coding:
- Arduino -- An electronics platform and robotics controller, run on the Arduino programming language, for creating interactive projects.
- MakeyMakeys -- Complete circuits to control the keyboard.
- RaspberryPi -- Credit card sized computer for exploring physical computing and learning to code using Scratch and Python. Create a traffic light, build a security camera, develop a digital weather stations, hack Minecraft, assemble a battery powered vehicle, and so much more using a RaspberryPi computer!
Babbage's π light up blue & ππΌππΌ light up green when you plug in the keyboard & mouse. @MsHaughs #CSforAll #picademy pic.twitter.com/SZpWXqAipX— Jaime Chanter (@JChanter22) May 1, 2016
Nice list with a few goodies I wasn't familiar with . We use http://penjee.com/ as our jump off into Python, a good place to start your first text based coding.
ReplyDelete