Algorithms and Coding in the New Coding & Robotics Curriculum in South Africa

As teachers, it is vital to understand the knowledge strands that make up the new Coding & Robotics curriculum in South Africa. One of the most crucial strands in this curriculum is the Algorithms & Coding strand. This strand plays a central role in equipping learners with the necessary knowledge, skills and values to become responsible citizens in a rapidly evolving technological world.

The Programming Languages Used in Coding & Robotics

In Coding & Robotics, there is a clear distinction between the Coding Stream, which focuses on software development, and the Robotics Stream, which focuses on the development and programming of robots. The programming languages used in the Orientation for Coding & Robotics are Python for Coding, C for Robotics and HTML for application skills.

The Coding & Robotics curriculum has four methods for learning coding and robotics languages. In the Foundation Phase, code cards with the basic coding instructions will be used. In the Intermediate Phase, learners will be introduced to block-based coding. In Grade 7 of the Senior Phase, learners will move from block-based coding to hybrid coding that includes blocks linked to text-based coding. In Grades 8 and 9 of the Senior Phase, learners will move to text-based coding.

Algorithms and Flow Charts

An algorithm is a set of instructions that must be followed to solve a specific problem. In coding, there are hundreds of different programming languages, so we need a way of communicating algorithms that would be readable by both programmers and non-programmers. To achieve this, flow charts and pseudocode are used to communicate algorithms in coding.

Flow charts and pseudocode are essential in illustrating the differences between algorithms. For example, in the event of an obstacle avoidance robot, an algorithm would be written to move forward if nothing is blocking its path. If an obstacle blocks its path, the robot will make a 90-degree turn clockwise. If nothing is blocking its path, it will continue moving forward.

In conclusion, Algorithms & Coding is a crucial strand in the new Coding & Robotics curriculum in South Africa. It plays a central role in equipping learners with the necessary knowledge, skills and values to become responsible citizens in a rapidly evolving technological world. As teachers, it is important to understand and teach this strand to ensure that learners are well-equipped for the future.