Why Coding? Getting Started with Computational Thinking

image from benefits of coding

WHAT IS CODING AND COMPUTATIONAL THINKING?

“Coding is really about how you solve a problem, rather than learning a specific language or tool. Programming languages evolve and change all the time but at the core, the fundamental blocks of how you think don’t change. Computational thinking, or process for solving problems, can be taught even without leaning a specific programming language. The code is just the tool that facilitates solving a challenge in a particular way. This is important to remember as educators – you don’t need to know all the syntax of a language to teach it – you just need to understand the logic of solving problems” (“Teachers Learning Code”, n.d.).

Teach Kids to Code – Why Should We Teach Programming?

image from Teach Kids to Code presentation

This PowerPoint presentation called Teach Kids to Code – Why Should We Teach Programming? posted by BC ADST succinctly gives the top 10 reasons why we should teach coding. The following are the 10 reasons expanded in in the presentation:

  1. not enough programmers
  2. kids are already coding
  3. learning early benefits kids
  4. integrate coding into any subject
  5. meet common core standards
  6. coding encourages collaboration
  7. programming empowers kids
  8. no advanced degree required
  9. coding = creativity
  10. #kidscancode

This is a great place to start for those new to code to understand the foundational reasons for teaching computational thinking.

Canada Learning Code

home page from Canada Learning Code

Canada Learning Code states, “We believe that digital skills are tools of empowerment. The world is changing, and we want Canada to be ready. We’re here to make sure that all people in Canada — particularly women, girls, people with disabilities, Indigenous youth and newcomers — have access to the knowledge they need to prosper in our digital world” (“Canada Learning Code”, n.d.). Canada Learning Code provides resources as well as lesson plans, connections to local workshops, and Code4Change themed projects to explore how coding can change the world.

Here is a link to the Vancouver Chapter so that you can check out local learning experiences being offered.

The following video presents the main goal of the Canada Learning Code website: “…that all Canadians, particularly those currently underrepresented in tech, can learn critical skills and be active participants in the digital age”) It also key reasons as to why learning code is essential and that “learning to code is part of something much bigger – it’s about a new way of thinking – how we use and solve problems with technology” (“What is Canada Learning Code?”, 2017).

video from Canada Leaning Code

Teachers Learning Code

Tips for Teaching Code from Teachers Learning Code

Teachers Learning Code (part of Canada Learning Code) is a quick-start guide for Canadian teachers delving into the world of coding. This 24 page pdf contains information for teaching coding in Canadian schools and includes a “Digital Toolbox” including sections on the rationale behind coding, teaching coding for beginners, and step-by-step lesson plans for the classroom.

Teach Your Kids to Code

homepage from the Teach Your Kids to Code website

The Teach Your Kids to Code website offers an amazing page of collected articles on Why Coding is an important skills that should be taught to kids in school and offers resources to help support teachers beginning their coding journey with students as young as kindergarten. This website also offers The Ultimate Guide to Coding for Kids with a fantastic step-by-step rationale for teaching coding and practical suggestions on how to get started (including using a simple desk of cards).

SET-BC AfterShare Program

Introduction to Coding tool and resource page by SET-BC

The SET-BC AfterShare Program website offers links to SET-BC Consultant blogs that provide resources and support workshop participants through networking (some materials require a log-in). This site provides an excellent introduction to coding and links to coding resources (no tech, low tech, and high tech).

Computational Thinking

an example of an simple algorithm from The Argument for Computational Thinking

The blog article titled The Argument for Computational Thinking offers insight into how computational thinking creates a foundation for coding. This article encourages teachers who are just beginning their own coding journey that they probably already are already doing Computation Thinking in their classrooms and are well on their way to understanding the basics of coding.

5 Reasons to Teach Kids to Code – Posters

5 Reasons to Teach Kids to Code Poster

5 Reasons to Teach Kids to Code presented by Kodable is a free poster infographic resource outlining the main reasons coding should be taught to kids.

Computational Thinking Posters

Decomposition Poster from Computational Thinking Posters

These free Computational Thinking Posters outline the 4 main areas of computational thinking (Decomposition, Pattern Recognition, Abstraction, Algorithm) and are great for understanding the essentials of computational thinking.

Coding – High Tech (Online Sites and Apps)

The following are a list of sites and apps that offer coding education and activities for both teachers and students through an app or within an online environment.

Code BC

home page for CodeBC

Code BC offers a large range of coding resources connected to the BC Curriculum. Resources are searchable by several topic areas and also let the user know if the resource requires a student username and password. There is a description given for each resource listed on the site.

Code.org and Hour of Code

image from code.org

Code.org offers a vast amount of opportunities for both educators and students to develop their coding abilities. The vision of code.org is “that every student in every school has the opportunity to learn computer science, just like biology, chemistry or algebra”. Code.org also “provides the leading curriculum for K-12 computer science in the largest school districts in the United States and Code.org also organizes the annual Hour of Code campaign which has engaged 15% of all students in the world” (“Code.org – Learn computer science. Change the world.”, n.d.). With a teacher-created and managed account, students can work through coding courses from the elementary level up to the high school levels and beyond. Hour of Code is also a great way to get students coding and contains coding resources at various levels that can be used year-round (and many are accessible without a password).

Khan Academy

Khan Academy free course offering topics

Khan Academy is a free, online resource “with the mission to provide a free, world-class education for anyone, anywhere” (“Khan Academy”, n.d.). Although noted for its online math lessons, Khan Academy has teaching resources is many subject areas, including computer coding skills. Teachers can create student accounts (or students can create their own) and assign lessons or simply allow students to explore areas of interest. Topics in computing include Computer Programming (including Javascript, HTML, and SQL), Computer Science (including algorithms and cryptography), AP Computer Science Principles , Hour of Code (with Khan Academy), and Computer Animation (Pixar in a Box – a behind-the-scenes look at how Pixar animators do their jobs).

Teach Your Kids Code

The website Teach Your Kids Code has collected information and provided links to the best coding apps and games in the post The 23 Best Programming Apps & Coding Apps for Kids. Each app/game listed comes with a detailed description and notes the cost (although some are free, many of the apps/games listed have a one time or monthly cost). This blog is a great place to visit if you (or your school) are considering purchasing coding apps/games for your students. The list includes:

Coding Apps for Kids 3-10

Coding Apps for Kids 10-13

Coding Apps for 13+

Swift Playgrounds

image from Swift Playgrounds

Swift Playgrounds (although mentioned above) is designed for learning the Swift coding language and deserves a special note. “Swift Playgrounds is a revolutionary app for iPad that makes learning Swift interactive and fun. It requires no coding knowledge, so it’s perfect for students just starting out. Solve puzzles to master the basics using Swift — a powerful programming language created by Apple and used by the pros to build today’s most popular apps. Then take on a series of challenges and step up to more advanced playgrounds designed by Apple and other leading developers”(“Swift Playgrounds – Apple (CA)”, n.d.).

Tynker

image from Tynker

Tynker is another app that gets a lot of mention in our district. Like some of the other coding resources, it offers both a free and subscription courses within its curriculum. Courses include controlling toys, creating apps, exploring minecraft, building websites, building games, and learning coding languages.

Scratch

image of a Scratch Education Guide

Scratch offers a wide range of educator resources including educator guides, lesson plans, management strategies, and activities. Scratch also offers student resources including online tutorials, coding cards, and an ideas page.

“With Scratch, you can program your own interactive stories, games, and animations — and share your creations with others in the online community. Scratch helps young people learn to think creatively, reason systematically, and work collaboratively — essential skills for life in the 21st century. Scratch is a project of the Lifelong Kindergarten Group at the MIT Media Lab. It is provided free of charge” (“Scratch – Imagine, Program, Share”, n.d.).

Minecraft Education

image from Minecraft Education

Minecraft Education allows educators to bring coding into the classroom in a creative an interactive way. The In the Classroom page allows a glimpse at how teachers are using Minecraft Education Edition in the classroom and the possibilities for learning.

Kodable.com

a few of the courses offered by Kodable.com

Kodable is an app-based program designed to teach coding skills to students from K-5. “Kodable offers a 42 week scope and sequence or teachers can choose from over 70 lesson plans covering subjects ranging from math and ELA to digital citizenship and JavaScript”(“Programming for Kids | Kodable”, n.d.). This program has a free “kickstart” plan (with no time limit) and school plans that cost $1250 (US) a year.

Code Monkey

CodeMonkey K-8 Curriculum introduction

CodeMonkey “is a fun and educational game-based environment where kids learn to code without any prior experience. After completing CodeMonkey’s award-winning coding courses, kids will be able to navigate through the programming world with a sense of confidence and accomplishment”(“Coding for Kids | Game-Based Programming | CodeMonkey”, n.d.). CodeMonkey is designed for students from K-8, but does have a fee attached to its product. Schools can request a quote to access the resources.

Codecademy

Codecademy course offerings

Code Academy has several courses offered including Web Development (HTML, Javascript), Programming and Computer Science (Python and CMD Line), and Data Science (Python and SQL). Although students can sign up for a free, basic account, there is also the option for a Pro account (for $20 a month) as well as a team account. This site may be geared more towards a high school and college age student or adult wanting to upgrade their coding skills.

Code Club Canada

projects offered through Code Club Canada

Code Club Canada “is a nationwide network of free, volunteer-led coding clubs for children aged 8-12 to build and share their ideas and learning along the way” (“Code Club Canada”, n.d.). Code Club Canada families and educators can connect to coding events and online projects.

Coding – Unplugged (No Tech) and Low Tech

Teaching coding doesn’t all have to include digital technology. As a matter of fact, many coding activities (that teach computational thinking) require very little resources at all. Some coding activities also include hands-on “toys” that make the coding experience come to life!

CS Unplugged

image from CS Unplugged

CS Unplugged “is a collection of free teaching material that teaches Computer Science through engaging games and puzzles that use cards, string, crayons and lots of running around. The primary goal of the Unplugged project is to promote Computer Science (and computing in general) to young people as an interesting, engaging, and intellectually stimulating discipline” (“CS Unplugged”, n.d.).

Lessons include unit plans, curriculum integration, and programming challenges.

Code.org Unplugged

image from code.org

Code.org also has many “unplugged” lessons and activities foundational to understanding computer science and coding. Topics include digital citizenship, impacts of computing, sequencing, loops, events, binary, conditionals, internet, functions, variables, algorithms, computational thinking, debugging, persistence, and abstraction.

Coding Activities without a Computer

image from Extended Notes

5 Hands-On Activities that Teach Coding without a Computer from the blog Extended Notes includes great ideas for teaching coding using items (like Lego or stackable cups) that you have in your classroom.

Little Bins for Little Hands includes instructions for a Superhero Coding Game without a Computer. “A computer coding game is a really fun way to introduce the basic concept of computer coding to young kids. Even better if you make it a superhero computer coding game! Plus you don’t actually have to have a computer, so it’s a cool tech-free idea. This homemade coding game was pretty easy to set up and can be played with over and over again with any type of pieces. Use superheroes, LEGO, My Little Ponies, Star Wars, or whatever you have to learn a little about programming” (“Little Bins | Superhero computer coding game without a computer!”, 2016).

Coding Game Backwards by Design from iGameMom states that “the focus of this game is to help kids understand when and why you need backward thinking, or thinking the end result before starting your coding project planning, or the design thinking process” (“Coding Game for Kids Teaching Design Thinking”, n.d.).

Canada Learning Code also includes coding activities without a computer. For example Do the Robot is an “unplugged” activity for all ages designed to teach the basics of coding instructions.

Low Tech and Activities using Coding “Toys”

Sphero

image from Sphero Edu

Sphero Edu “is a STEAM-based toolset that weaves hardware, software, and community engagement to promote 21st century skills. While these skills are absolutely crucial, our edu program goes beyond code by nurturing students’ creativity and ingenuity like no other education program can”(“Sphero”, n.d.).

The following is a video outlining some of the key ideas for using the Sphero in the classroom.

littleBits

image from littleBits

LittleBits “is a hands-on learning system of electronic building blocks that allows students of all ages to create with technology. Our snap-together Bits are easy to use and simple to understand, no prior experience required. Our STEAM solutions are gender neutral, scalable across Grades 3-12, and suitable for cross-curricular instruction” (“littleBits | Electronic Building Blocks for the 21st Century”, n.d.).

How littleBits work

Dot, Cue & Dash Robots

image from Wonder Workshop

The website Wonder Workshop hosts the robots Dot & Dash (among others) and provides resources to foster coding skills through robotics. “At Wonder Workshop, our family of award-winning robots and age-appropriate apps encourage hands-on play and learning to make creative problem-solving concrete and tangible. Our vision is to inspire kids of all ages by giving them tools to imagine and invent the future” (“Wonder Workshop | Home of Dash, Cue, and Dot – award-winning robots that help kids learn to code.”, n.d.).

Micro:bit

Micro:bit “is a tiny programmable computer, designed to make learning and teaching easy and fun!” Micro:bit includes curriculum including cross-curricular content in music, sports, science, dance, art, and math education. Note – some activities cross over into high-tech coding.

Scratch Jr. Coding Cards

image from Amazon.ca

The Scratch Jr. Coding Cards  “encourage kids to think creatively and systematically while developing computational thinking skills. Kids will learn powerful ideas about computer science by using ScratchJr programming blocks to make characters move, jump, dance, sing, and more. As they work through the deck, they will become creative thinkers and problem solvers” (description by Amazon.ca).

Code-a-Pillar

Code-a-Pillar “is one of the new Think & Learn toys from FisherPrice that goes beyond ABCs and 123s to help children learn how to think independently. Each toy fosters 21st century skills like curiosity, experimentation and problem solving in ways kids haven’t seen before” (description by Amazon.ca).

The following video is a quick overview of Code-a-Pillar.

Code-a-Pillar by Fisher Price

Code & Go Robot Mice

Code & Go Robot Mouse Activity Set

The Code & Go Robot Mice Activity Set allows young students to learn sequencing as they guide a mouse through a maze to get the cheese.

The following is a short video outlining the features of Code & Go Robot:

Code & Go Robot Mouse

Helpful Resources

image retrieved from Pixabay, no attribution required

A Teacher’s Guide to Tech

Levelling Up: The Quest for Digital Literacy

https://portal.sd38.bc.ca/public/8zd3fg5/Pages/default.aspx#/=

ICT Competency Standards for Teachers

Better Lessons

Discovery Education YouTube (subscribe)

7 Smart Ways to Use Technology in the Classroom

Primary Tech by Kathleen Morris

Technology Integration – TPACK

SAMR Model – intersection of pedagogy and technology

Massive Open Online Courses

Coursera – Online Courses and

Open edX – online courses

How to Plan Outstanding Tech Training for Your Teachers

Free Technology for Teachers

Cult of Pedagogy

Spiral of Inquiry – a framework for transforming learning in schools

Students and Social Media

image retrieved from Pixabay, no attribution required

Introducing Students to Social Media – article by Beth Holland

3 C’s for Learning and Leading on Social Media

KidBlogs an an example from Mrs. Wideen’s Blogging Maniacs and Burley 106 2012-2013

Blogging with Elementary Students

How to Blog with Young Students

Edublogs

A reflection What can twitter do for your students? by the teacher of her class as they used Twitter tweeting about Hurricane Sandy

Blogging – Kathleen Morris

Blog at WordPress.com.

Up ↑

Design a site like this with WordPress.com
Get started