These four stages consist of:

  1. unplugged computer science
  2. block-based programming languages
  3. game development
  4. introduction to robotics

Block-based coding is a form of programming language that utilizes a drag-and-drop learning environment. Programmers use coding instruction “blocks” to construct animated stories and games. As an entry-level activity, young children acquire a foundation in computational thinking via images as opposed to text-based coding. In short, visual learning is more developmentally appropriate for young children prior to learning how to read.

Block-based programming is exploding in early childhood education for a variety of reasons. It is easy to grasp and simple for children to learn due to the fact that it does not require reading or writing. This is important because it allows young children to explore computer science concepts like algorithms and debugging in a fun way which is geared towards their developmental level. 

In addition, it enables the child to be creative and express their own individuality. Moreover, they are able to test their program, check for mistakes, and make necessary changes if needed. This fosters a can-do attitude! A classic example of block-based programming is the free app, Scratch Jr, as seen below.