Did you know that critical thinking, logic, persistence, and creativity help students excel at problem-solving in all subject areas, no matter what their age.
So.. what is coding and why do we do it at Mitchell School?
Coding - is a set of instructions you give a computer. Coding teaches you better explanation skills. To be a programmer is to be a great explainer, because programing - is the ability to explain instructions so clearly that something without a brain can understand it!
Coding sharpens your: Creativity, Collaboration, Communication, Logic, Persistence and Problem Solving skills!
The students have been learning how to code by using “visual coding” using visual blocks called “blockly”. The students snap the blocks together and give the computer “directions’ on what to do next. Using visual coding allows the students to focus on the logic of coding without having to worry about writing and spelling things the right way (syntax). Visual Coding is how they teach students at Harvard how to code, it’s kind of like learning addition and subtraction before moving on to multiplication!
The curriculum we have been using has been developed by code.org, anyone can try it out. We have been using course 1 that is for early readers. Give it a try yourself:
The students have been practicing their sequencing skills as well as learning how to write an Algorithm. Did you know that algorithm is a “list of steps to finish a task.” It is the same thing the students do when they write their “how to” books, for example, the collection of steps to make a peanut butter and jelly sandwich is an algorithm.
Here are some of the skills and concepts the students have been working on:
Sequencing
List steps to move character around a map
Arrange directions to reach predetermined goal
Predict where character will land, given a list of steps
Recognize situations where they can create programs to complete tasks
Predict moves necessary to get teammate from start to finish
Convert movements into symbolic instructions
Relate algorithms as programs to teammates
Order movement commands as sequential steps in a program
Represent an algorithm as a computer program
Count the number of times an action should be executed and represent it as instructions in a program
Debugging
Predict where a program will fail
Modify an existing program to solve errors
Identify an algorithm that is unsuccessful when the steps are out of order
Some more sequencing
Express movement as a series of commands.
Order movement commands as sequential steps in a program.
Represent an algorithm as a computer program.
Convert a whole number to the equivalent quantity of individual blocks.
Distinguish between flowers and honeycombs.
Express the relationships between flowers, nectar, honeycombs, and honey.
Drawing Sequenze
Create a program to complete an image using sequential steps
Select an argument for a given command
Choose the appropriate blocks to draw images with non-continuous lines
Loops
Identify the benefits of using a loop structure instead of manual repetition
Create a program for a given task which loops a single command
Break down a long sequence of instructions into the smallest repeatable sequence possible
Create a program for a given task which loops a sequence of commands
Employ a combination of sequential and looped commands to reach the end of a maze
Write a program for a given task which loops a single command
Identify when a loop can be used to simplify a repetitive action
Employ a combination of sequential and looped commands to move and perform actions