What is block based programming?

Computer programming is a way of giving computers instructions about what they should do next. These instructions are known as code, and computer programmers write code to solve problems or perform a task.

The end goal of programming is to create something: that could mean anything from a web page, or a piece of software, or a program. That’s why computer programming is often described as a mix between art and science; it’s technical and analytical, yet creative at the same time.

Moreover, compared to natural language, programming is a structured, but reduced language based on rules of formal logic and mathematics. It resembles natural language in the fact that it uses grammar and symbols. But very often it lacks the context and nuance of a very well established language.

Block-based programming uses a puzzle-piece metaphor as means of providing visual cues to the user as to how and where commands may be combined and used.
Block-based programming environments have been designed for children as young as five years old but most environments are designed for kids ages eight to 16. Writing a program in a block-based environment takes the form of dragging-and-dropping programming instructions together. If two instructions cannot be joined to produce a valid statement, then the environment prevents them from snapping together.

What are the benefits of using block based programming in education?

  1. Accessible and fast
    Block-based programming emerged as the best solution to the above problem. The idea is to create a code in a way that is both visual and similar to traditional text-based coding . All the developer has to do is to connect visual “building blocks” in a logical way.
  2. Syntax-free programming
    Block-based coding lessens the burden of using complex syntax and lets the users focus on programming in a fast and clear manner. The code written in visual blocks has strong expressive power and can be mixed with text-based code written in mainstream programming languages.
  3. Co-creating knowledge reinforces learning
    When students can share and talk about their work, the feedback they receive from other students reinforces their learning. Therefore, they seek to make improvements and add new features to their code as they progress. This creates a community of learners that is truly “constructionist” — co-creating knowledge together — instead of “instructionist” — taught by the teacher, the same way for everybody.
Article inspired by David Weintrop | Communications of the ACM, August 2019, Vol. 62 No. 8, Pages 22-25 | 10.1145/3341221

If you want to kickstart coding or teach robotics, try Fable Blockly. Download our software here and try some activities that you can do without a robot.

Download our latest activity sheet “Show and Tell”, and start working with robotics in the classroom!

    3 replies
    1. TechyKids
      TechyKids says:

      The blog which you have shared is really good to read & very much informative. In this fast moving technology world, the importance of teaching coding for kids at early stage is now becoming the need of the hour. Through coding kids we can develop critical thinking as well as problem solving abilities of kids. Due to advancement in technological field, making kids aware of different programming languages has become relatively easy. TechyKids Canada through its extensive training program & tech based courses aims to provide a perfect foundation for kids to prepare them for the competitive world. Thanks for sharing this!

    2. TechyKids
      TechyKids says:

      The blog shared is good to read & clearly explained the importance of teaching programming for kids at early stage. In this digital age making kids aware of various technologies is very much necessary. When kids learn to interact with these technologies it only develop their overall thinking capabilities but also create better opportunities for them in the future. Thanks for sharing such a wonderful blog with us.


    Trackbacks & Pingbacks

    Leave a Reply

    Want to join the discussion?
    Feel free to contribute!

    Leave a Reply

    Your email address will not be published. Required fields are marked *