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!

    Who’s Fable?

    Fable is a modular robot designed for education. It’s composed of three different types of modules: Function modules, Build modules and Extension modules.

    The function modules are Fable Joint and Fable Spin, the ones you can also program.

    The build modules come in different shapes and sizes to maximise the creativity of the students.

    Moreover, Fable is an open-ended system with advanced functionality. You can 3D print your own parts and easily connect it with the modules you already own. The extension modules make it possible to combine Fable with other systems such as a smartphone running Skype, a robot hand, a 3D-printed robot head or a laser pointer. Fable encourages students to be both creative and innovative as they build robot prototypes to meet needs in the real world. 

    Why should you bring Fable to your classroom?

    1. It’s an easy start for coding in the classroom

    “We were thrilled when Fable arrived, and we found it easy to get started. It is really well made and easy to put together. We also loved the blocky editor and found it easy to navigate round. It complimented the other work on blockly we had been doing. We set it up and got a few pupils to try it out. They got Fable to monitor movement, then wave and smile. The best thing though was the discussion between the pupils. The problem solving and thinking skills were a joy to witness.” Karen Fleming, Keble Prep School, UK.

    The programming interface is divided into different levels depending on the students’ level of competence. This begins with very simple visual programming with Blockly, to more advanced Blockly programming and finally versatile programming with Python. This helps students gradually progress. It is also possible to perform simple data processing on the interface with graphs or to log data to files for later processing e.g. in MS Excel.  The interface provides an easy-to-understand introduction to get started.

    2. It’s dedicated to small kids and geeks

    The Fable System assists learning at all levels, from the comprehension of technology in primary and secondary school, through to the teaching of more advanced mathematics and informatics in vocational training programmes in industry and construction. The Fable System invites anyone from the age of three through to grown-ups to get to grips with the programming languages Blockly or Python.

    3. It teaches STEM & 21st century skills

    “Due to its ease of use and applicability, Fable can be used to teach everyone – from inexperienced children to robot scientists. Its resemblance with professional robots also means that it can be used at vocational training programmes for training programming, automation, computer vision, CAD design and artificial intelligence. Fable covers the entire spectrum and is designed for 21st century learning,” explains Moises Pacheco, CTO and co-founder. Fable also tackles nurturing other skills in students such as communication, by fostering the development of language and creativity and logical skills by developing their psychomotricity through construction, achieving greater ability over time to solve problems. Moreover, the trial and error approach to teaching helps students get instant feedback to adapt to and to learn from. 

    4. Limitless creativity in the classroom

    Combining function, build and extension modules gives pupils untold possibilities to create different types of robots that are able to walk, drive, see, throw, use laser or ‘pick and place’, i.e. to pick things up and place them correctly, which is in great demand in the industry right now. Moreover, students have the opportunity to create something tangible and make it perform the actions that they program it to do. Not many fields combine creativity with engineering and technology—but robotics does. When students are given the opportunity to create something interactive that they think is cool, their engagement levels increase, and they retain more information. You might be surprised with the things kids can create when given the right information and tools.

    If you want to kickstart coding or teaching robotics, give Fable Blockly a try. You can download our software here for iPad and Chromebook, and try some activities that you can do without a robot.

    Download for free our latest activity sheet “Do-Re-Mi”, and start working with robotics in the classroom!