Implementation, otherwise known as programming, describes the automations of an algorithm. Implementation/Programming is a core concept because it helps students develop essential skills such as problem solving, logic and critical thinking. It is the process that makes it possible to create computer software, applications and websites.
This is where coding comes into it. We use programming to solve problems using code.
Now there are two main programming types, I guess you could call them coding types. Visual code, and text based code. But students will most likely be using these coding types from 3rd Grade onwards. Before that, they are using more physical forms of code. Maybe they have a grid in front of them and they have to get a character to the end, so they arrange arrows to show how the character can move about.
Once students hit 2nd – 3rd Grade, they can start looking at the first of these programming types:
1. Visual Code
This can also be known as block-based coding, or a drag and drop block builder. It’s a beginner friendly approach to coding that allows children to develop code without having to learn the coding language. While this is visual programming, it does not mean the output is always visual. You could use a visual drag and drop programming structure to create a visual or text based output. This is a programming language that will generally be used up until the end of 6th Grade. You might find this sort of programming in ScratchJr, Scratch, Swift Playgrounds, Wix, WordPress, and Code.org
One of the main reasons for moving to a visual programming language is so that children can become more creative with their outputs and start solving a wider range of problems.
This moves into the aim for implementation for 3rd – 6th Grade in a visual programming environment. It makes it easier for students to include branching (decisions), have user input, and specific steps that may be repeated (iteration)
Branching allows for the creation of multiple paths within a program, which can be triggered by user input or other factors. Decisions can be made, such as IF-THEN blocks. Data including user input can be stored as variables and used throughout the program.
The other programming/implementation type is:
2. Text based code.
This is recommended for students in 5th Grade or higher, who are wanting to challenge their abilities and build on their creativity. These students would be moving onto a more general purpose, text based, programming language.
These include HTML, Python, Javascript, C#, C++, and so much more.
While these programming languages offer more flexibility and opportunities for students to problem solve and think critically. It also increases the level of errors and mistakes. As often, even one incorrect letter or number can cause the entire program to not work. So it is important that students heading into text based code are able to sequence, form algorithms, and competently debug code.