by Thorsten Leimbach (Fraunhofer IAIS), Daria Tomala (Fraunhofer IAIS)
Technology now pervades all areas of our lives, including our home life, education and work. As society becomes increasingly digitalised, digital skills such as “computational thinking” are becoming more important – this applies to children in school, adults in the workforce and senior citizens alike.
At Fraunhofer Institute for Intelligent Analysis and Information Systems IAIS, the business unit “Smart Coding and Learning” is dedicated to the topic of conveying digital skills, such as coding, in a sustainable way, regardless of gender, age or prior knowledge. As part of this, the educational program “Roberta® – Learning with robots” [L1] has been successfully accompanying teachers as well as inspiring students in STEM subjects since 2002. To date “Roberta” has reached over 450,000 children in Germany. This is one of Europe’s largest STEM initiatives, its expansion being due in part to the EU project “Roberta goes EU” [L4]. In addition to the success of its hands-on didactic concept, one key component of the project is the development and implementation of new technology: the open-source programming environment “Open Roberta Lab” and the visual programming language NEPO® in particular, both initiated with the support of Google.org.
“Open Roberta Lab” is an integrated programming environment (IDE) that is available online, free of charge [L2]. As a state-of-the-art and open source cloud programming technology (CPT), it enables the web-based programming of hardware systems, such as robots and microboards, with the programming language NEPO on any computational device (e.g., smartphone, tablet, PC) and on standard operating systems (e.g., Mac OS, Linux, Windows) in which conventional browsers run. This independence of computational devices and operating systems as well as the web-based approach itself (i.e., no installation is needed), minimises the technical obstacles faced by many users, especially in educational and workplace environments, and supports the adoption and potential purview of the technology.
Figure 1: the Open Roberta Lab. On the left the NEPO blocks, on the right the corresponding generated source code.
The enthusiastic reception to Open Roberta is reflected in the continuously growing number of users worldwide since its launch in 2014. In 2015 the Open Roberta Lab recorded 11,000 visitors, while in 2017 the website was visited more than 107,000 times. By October 2019 this number more than tripled to a total of 336,270 users from + 100 countries.
One key to the success of the platform is NEPO, the intuitive graphical programming language made by Fraunhofer IAIS. NEPO (New Easy Programming Online) reduces the complexity of text-based programming languages, without being inferior in scope and performance. Despite its block-based approach, NEPO is a full programming language that allows the creation of programs containing any regular coding components, such as commands, control structures, lists, variables and functions.
The programming principle is easily understood: The coding components in the form of NEPO blocks are adjusted via “drag and drop” to a pre-defined starting point of the program and are themselves colour-coded to allow the recognition of semantics beforehand and therefore to minimise errors. The block-based structure enables syntactic errors to be avoided altogether. Furthermore, the textual designation of the respective blocks makes it possible to quickly understand the functionality of the program created. The CPT framework also provides online help to individual NEPO coding blocks as well as the ability to integrate short tutorials.
NEPO allows anyone without previous knowledge to code even sophisticated robotic systems with various sensors and actuators in less than five minutes. So far, it has been successfully used by a wide audience: from primary schools, high-schools and universities, to coding hubs and computer clubs for the elderly and even in industrial and workplace training.
As mentioned above, an increasing variety of robotic systems is programmable with Open Roberta. What started as a platform to let users code one robot alone, has now advanced into a multi-system programming solution that lets users code a wide range of robotic systems intuitively. Starting with educational robots and microcontrollers for children aged 7+, humanoid robots, physical computing platforms, smart home devices or other Internet of Things (IoT) applications for the personal use, through to potential applications in the industrial sector.
Since NEPO blocks are specially designed by Fraunhofer IAIS to fit any chosen target system and can therefore be adapted into a customised solution, the areas of application are almost endless. On the website, the code generation – from NEPO Blocks to textual programming languages, such as Python and Java, C – runs completely on Fraunhofer servers in Germany. However, a copy of the open source server itself can be ported to other systems, e.g., Raspberry Pi [L3].
The functionalities of the Open Roberta Lab also include: availability in 17 languages, a gallery to share programs online, a virtual simulation and the ability to describe the programs as well as to look into the textual source code behind the NEPO blocks. This combination of features results in a low-threshold and sustainable introduction to coding.
Open Roberta follows the well-proven concept of “Roberta”, to make abstract constructs in coding tangible and easily understood by a wide audience. In combination with teacher trainings, teaching materials and a nationwide network, Open Roberta is becoming increasingly integrated into classrooms – in the full spectrum from primary schools to universities. The project, based at Fraunhofer IAIS, is now aiming to extend its approach to one of the major research and impact fields of Fraunhofer IAIS, artificial intelligence (AI).
 B. Jost, et al.: “Graphical Programming Environments for Educational Robots: Open Roberta - Yet another One?", IEEE MTEL workshop in conjunction with ISM 2014.
 M. Ketterl, et al: “Open Roberta - a Web Based Approach Visually Program Real Educational Robots”, LOM, ISSN: 1903-248X.
 A. Bredenfeld, T. Leimbach, “The Roberta® Initiative”, in: Proc. of SIMPAR 2010, Darmstadt (Workshop Teaching robotics, teaching with robotics), 2010, S. 1-2.
Fraunhofer IAIS, Germany