WHAT IS CODING?
The term computer coding is broad and refers to the way humans communicate with machines. Code is the language we understand that gets translated to "binary", which is just a fancy way to describe the language computers understand. Advanced computer coding can be quite complex, but the basics we teach in schools are made up of simple concepts that can often be applied to both programming, and everyday life.
Building a simple program to control a robot in Super Code Strike Blockly:
Globally, curricula may differ slightly however, these four overarching categories of focus in computer science remain consistent within most public school curriculums for grades 6-8:
1. Control Flow
4. Data Structuring
You'll see these four concepts represented within the Super Code Strike coding platform as shown below.
1. Control Flow
Control flow is how your computer runs code from the first line to the last. Managing or changing the control flow of a program involves writing code that includes conditional statements or control structures. Examples of control flow statements include:
Loops: in this "repeat while" loop, an action is repeated while a certain condition is true.
Decision-making or "logic" statements: in this “if ... else” statement an action is done while a certain condition is true. Otherwise, a different action will be done.
In computer programming, algorithms are sets of instructions designed to complete specific tasks or sets of tasks. An algorithm may also contain functions, which serve as small programs that can be referenced by a larger program.
The algorithm in the program below instructs the Bearracuda robot to roam the island until it detects a player. Once a player is detected, the robot will attack that player until they move out of the robots radar. By running an if/else logic statement inside a repeat forever loop, it keeps checking to see if the player is being detected or not.
Player VS. Robot, who will win?
Within Computer Science there are different types of memory, and each one plays an important role. Program Memory typically refers to flash memory when it's used to hold the program instructions. For example, within Super Code Strike up to 10 Clipboards are set to receive, store and transmit in-game data which is then used by other programs. These Clipboards are examples of program memory.
In this program for a Shroomba robot, when it is destroyed “true” will be copied to Clipboard 1.
Meanwhile, the exit zone is continually checking Clipboard 1 and once it sees “true” it will turn on.
Keep an eye on the exit zone!
4. Data Structuring
A data structure is a collection of data values, the relationships among them, and the functions or operations that can be applied to the data. Different types of data structures are suited to different kinds of applications, and some are highly specialized to specific tasks.
An example of a data structure is a variable, which is used to store information your program needs to do its job. Variables are typically used to store information your program needs to do its job. A variable's data type determines the kind and quantity of values that the variable can store, and what its intended use is (a string or integer, for example).
This program has the Bearracuda robot moving 1 square by 1 square and then back again at a time interval that increases by 1 second after each movement. The time interval is an example of a variable being used within a program.
This Bearracuda Robot's got square dancing down pat!
Super Code Strike uses Blockly, which is also what programs like Scratch use.
Developed by Google, Blockly is an open source visual programming editor. The Blockly editor uses interlocking blocks to represent code concepts like statements, variables or logical expressions.
Blockly allows users to apply programming principles without having to worry about complex syntax, making it a great starting point for anyone interested in learning how to code without prior experience.
By introducing computer coding through a visual coding program like Blockly, the learner is able to focus on the logic of programming (action and reaction) without getting bogged down by the formatting specifications that come with more complex text-based languages.
Still don't have a clue what coding is?
Unsure of how to get started with your students?
Is there literally anything else that is unclear?
No question is too simple or silly for us. Send us a note with any question that you might have, big or small. We are here to help make you a coding rockstar!