ArticlePDF Available

Algoblock: a tangible programming language, a tool for collaborative learning

Authors:
AlgoBlock: a Tangible Programming Language - a Tool for Collaborative Learning
Hideyuki Suzuki, Ibaraki University
hideyuki@suzuki-lab.net
Hiroshi Kato, Open University of Japan
hiroshi@kato.com
1. Programming languages as conversational artifacts
The authors intend to design a learning environment in which learners at primary and secondary
school can improve their skills for planning and building procedures through group work. Group
work is essential for learning from the standpoint of situated learning theory [1][3] which considers
that learning is a process of enculturation through social interactions.
In designing the learning environment, although social setting for authentic activities [l] is
important , it is also important to design the tools for activities, because the structure of our activities
is affected by the constraints of the tools in use. Here, the authors focus on the programming
languages as a conversational artifact [4][5] which facilitates interactions among learners.
We believe that programming languages for collaborative learning ought to be designed according to
the following principles: a) easy operation: Learners can operate the system easily. Easy operation
contributes deeply to the promotion of collaborative activities for the following two reasons. 1)
learners do not have to concentrate on how to use the tool, consequently they can be absorbed in
group work, e. g., seeking solutions through discussion, building procedures and examining them
collaboratively. 2) easy operation promotes trial-and-error activities, which draw conversations
among learners. b) simultaneous accessing and c) mutual monitoring: all learners are equally eligible
to refer to and manipulate the program whenever they want to. And all learners can monitor the
process of the collaborative activity mutually. These features contribute to the activation of
collaboration, because they promote learners' activities, such as displaying their own ideas to the
others when they want to, understanding the others' operation to the program immediately, and
intervening against the others' operations on the spot. d) natural tum-taking control: tum-taking to
refer to and manipulate the program should be controlled, since unlimited simultaneous accessing to
the representation by all participants inevitably brings out confusion and breakdown of the
collaboration. Rules for acquiring control should be natural for learners, because obeying unusual
rules prevent learners from collaborating smoothly.
Preceding research has pointed out the possibility of programming languages including Logo as a
conversational tool. (e. g., [6]) However, those systems have innate limitations as a conversational
tool. The limitations are mainly from constraints on the human-interface of the systems. Generally,
the systems use the CRT as a display device; however, only a few viewers can face a CRT, because it
is not designed to be shared by two or more users. Therefore, all learners cannot refer to the display
simultaneously in collaborative work. This prevents learners from monitoring the process of the
works. In addition, those systems employ keyboard or mouse, which allows only one learner at a
time to use them to manipulate the programs on the CRT display. Thus, all learners cannot
manipulate a program at the same time. Moreover, with these input devices, the tum-taking is
controlled by handing over the devices among learners. This forces learners to obey an unnatural
rule of tum-taking that is significantly different from the rule of everyday collaborative activity in
which tum-taking is unconsciously controlled mainly by non-verbal cues. This limitation can be an
obstacle to learners' interaction. Considering these limitations mentioned above, the existing
programming languages are not completely suitable for collaborative learning. Based on these
investigations, AlgoBlock was developed.
2. What is AlgoBlock ?
AlgoBlock (Fig.1), a Logo-like tangible programming language, is a set of physical blocks that can
be connected to each other manually to form a program. Those blocks are then connected to a
computer to execute the program. Each block corresponds to a command of a programming
language. Learners can operate a graphically displayed submarine on the CRT (Fig.2) through
Logo-like commands, such as go forward, slide to left/right, turn, unfold the legs for landing, and so
on. Each one of those commands has a corresponding physical block. In addition, control blocks, i.e.,
if-then-else and repeat -until are available for logical control. Some kinds of blocks have a parameter
switch on them. The switch is used to set a parameter for a command. Learners make a program by
connecting real blocks and setting parameter switches. The purpose of AlgoBlock is to allow
learners in primary and secondary school to improve their skills for planning and building
procedures through group activities.
==== insert Fig. 1 and Fig. 2 here ====
3. AlgoBlock as a conversational artifact
AlgoBlock has been designed as a tool for collaborative learning according to the following
principles which deeply support conversation. In other words, it is qualified as a conversational
artifact.
a. Easy operation
With AlgoBlock, learners can make programs by handling tangible blocks. This way of making
programs is much more direct, therefore, easier than inputting the program with a key board and an
editor. Easy operation evolves learners in collaborative work, and promotes trial-and-error activities
which generate conversation.
b. Simultaneous accessing
Learner's intentions are physically represented on the blocks, and placed on the space of
collaborative activities. This tangible representation allows simultaneous pointing and manipulation
by a group of learners, so all learners are equally eligible for accessing the program; i. e., AlgoBlock
enables learners to share the representations of an algorithm.
c. Mutual monitoring
Manipulating AlgoBlock generates apparent gestures. Toe gestures indicate their intentions
externally. This enables all learners to monitor each other's operations on the blocks throughout the
collaborative work. The open interaction stimulates conversation among learners and facilitates
collaboration. In other words, AlgoBlock works as an open tool [2], which enables users to monitor
their cooperative activities.
Moreover, AlgoBlock shows the program execution dynamically. Each block has a lamp that flashes
when the corresponding command is executed. Indication lamps enable learners to trace the flow of
program. In addition, AlgoBlock has a debug mode in which learners can trace the program step by
step, by just pushing a button on each block. These functions also help learners to monitor the
process of activities.
d. Gesture based turn-taking control
As mentioned above, operating AlgoBlock naturally generates apparent gestures (Fig.3). For
example, stretching out one's hand, turning one's body towards the blocks, and other gestures that are
inevitably generated in the natural flow of operations on the tangible tool. Consequently , tum-taking
of access is controlled by those gestures; e. g., learners get turns and interrupt others' operations by
stretching their hands toward the blocks. This sort of control contributes to facilitation of
collaborative activities. This is because, rules for acquiring control are equally the same as in
everyday activities, thus learners never need to learn artificial and system specific rules. As a result,
learners can cooperate unconsciously .
=== insert Fig. 3 here ===
4. Observation
One experimental session in which three 12-year-old female children were engaged in a group work
with AlgoBlockfor one hour was executed. The purpose of the session is to examine the effect of
AlgoB!ock on collaborative work. All subjects had no preceding experience in programming or
manipulating computer based tools.
In the session, 3 tasks in which the subjects were required to move the submarine towards the goal
were given after a 3-rninutes introductory phase. In the introductory phase, they were instructed to
observe the work with AlgoBlock which was executed by experimenters for a while.
Although two experimenters attended the session, they never intervened with the subjects' work with
the exception of system trouble solution. Subjects' conversation and non-verbal actions were
recorded throughout the session. Following is the result of the qualitative analysis of the protocol
data.
Throughout the session, it is observed that the subjects made and changed programs easily. Although,
it was the first experience for all subjects in manipulating programming language, they could operate
the language without difficulty after about 3 minutes of the introduction phase. The following
protocols show that AlgoBlock is easy to operate. All utterances in the protocols are originally in
Japanese.
<notations>
CRT: description of CRT display (program execution)
Subx : Subject identification index
{ }: non-linguistic action
( ): Authors' comment
[ ]: Index for explanation
<protocol 1>
CRT : End of execution (submarine failed to reach the goal)
Sub2 : " This is wrong. " { assigned Right45 to the ROTATE block [action-1] J
<protocol 2>
CRT : End of execution (submarine collided with an obstacle)
Sub3 : " This { pointed a block} might be Left45. This direction. " {moved hand form the upper
right to the lower left l
Sub 1: " I see. " { changed a ROTATE block's parameter into Left45 [action-2]}
Subjects changed the program immediately after observing the execution. (e. g., [action-1],
[action-2]) Easy operation, which is mainly from tangibleness of the tool, encourages learners'
trial-and-error activities. Vigorous trial-and-error activities in collaborative work promote generating
topics of conversation, thus the collaboration is activated.
<protocol 3>
Subl : " Hey. Is 2 okay? { pointed the parameter switch of the FORWARD block} Sub2 : " Yah, go
forward 2 steps. "
Sub3 : " 2 steps forward, I think so. { moved a FORWARD block to front of Sub2 } Then? " Sub2 :
" To right. "
Sub 1 : " Rotate, rotate 90 degrees. "
Sub3 : { connected the SLIDE-RIGHT block to one side of the FORWARD block}
Subl : " How many steps to right? "
Sub2 : " 2 steps! "
Sub 1 : " Then, rotate. "
Sub2 : " Rotate 45 degrees. "
Sub l : {connected the ROTATE block }
Sub2 : " And then, one, two, three . 3 steps. " ( connected the FORWARD block (3 is assigned as
the parameter) I
From protocol 3, it is observed that they collaborated by sharing a temporary and incomplete
representation which was placed on the space of collaborative activities. They never built whole
plans in their mind s, but they refined their plans incrementally through conversations. In addition,
all the subjects were equally eligible to manipulate and refer the tangible representation in the
activities.
Protocol 4
Sub2[A]: " Has folded the legs (legs for landing), now it (the submarine) can slide. (boosters for
sliding right and left are available only when the legs are folded)" {pointed the
LEG-FOLDING block [action-a l] }
Sub 1[B]: “ These two must be reversed." { turned body towards the blocks
[action-b l] , and pointed the LEG-FOLDING block and the ROTATE block [action-b2] }
Sub2[C]: " No. This way. " {tried to change the parameter for the FORWARD block
[action-cl], and prevented Subl 's pointing (against [action-b2]) by stretching elbow }
Sub l [D]: " No! First, we must make the legs fold, and then rotate 90 degrees. "
{shouted, leaned towards the blocks [action-d l], and pointed the ROTATE block [action-d2]}
Sub3[E]: " I think so. "
Sub 1[F]: " Because the legs aren't folded now. " {tried to make the blocks, i. e., LEG-FOLDING
block and. the ROTATE block, reversed [action-fl]}
Sub2[G]: " No. This must be (not clear) "
Subl[H]: " I'm certain." {made the blocks reversed [action-h l ] }
Manipulations on AlgoBlock generate apparent gestures, e. g., [action-c 1], [action-f 1].This
tendency might be much more noticeable than the situation in which the subjects use the keyboard or
mouse for input. Utilization of tangible tools enable all subjects to monitor the collaborative work.
For example, Sub 1's [F] operation on the blocks are indicated clearly as obvious gesture [action-fl]
to al I subjects. Sub2 grasped the intention of Subl from Subl 's action, and made objection to the
operation [G] immediately. This open interactions stimulated conversation among the subjects, and
facilitated collaboration.
Protocol 4 also shows turn-taking to access the program was controlled with AlgoBlock. Subl [B]
tried to manipulate the program by turning her body towards the block s and reaching out a hand to
the blocks · [action-b1 / action-b2]. Against Sub 1, Sub2 prevented the action by swishing away Sub
1'shand [action-c2]. After that, Sub I leaned towards the blocks again [action-dl /action-d2], and
finally succeeded in operating the program [action-hl]. Here, the tum was shifted by the subjects'
actions on the program which are generated naturally in the activity .This gesture-based control
facilitates collaboration by reasons mentioned in the preceding section.
Moreover, it was observed that the subjects used abridged expressions frequently. For instance, Sub l
[B] said "These two must be reversed" by pointing the LEG-FOLDING block and the ROTATE
block directly [action-b2], instead of saying "How about reversing this LEG-FOLDING block and
that ROTATE block". In this way, they expressed their intentions immediately and easily, which
supported learners' conversation. These abridged expressions make sense when they set
consciousness onto the same objects. AlgoBlock supports learners in the sharing of the orientation of
consciousness because of its tangibleness which provides apparent targets of mutual
consciousness-setting. In other words, AigoBlock has competence to generate collaborative space
successfully.
5. Conclusion
In the preceding chapters, the role of programming languages as conversational artifacts was
emphasized, and requirements for conversational support were examined. Based on this
investigation, the authors proposed the concept of AlgoBlock which is a tangible programming
language for children, and mentioned its aspect as a conversational artifact. Results of observations
were also presented. Although it is incomplete and more analysis is needed, the results show that
AlgoBlock is qualified as a conversational artifact.
Although it turned out that AlgoBlock is an adequate tool for conversation, it is not the only solution
for conversational support. The authors intend to propose principles for designing collaborative
learning environment from aspect of tools as well as social settings. In this perspective, AlgoBlock is
a first step of our research.
REFERENCES
[l]Brown, J. S., Collins, A. and Duguid, P. (1988):"Situated Cognition and the Culture of Learning",
IRL Report No. IRL88-0008
[2] Hutchins, E. ( 1990): "The Technology of Team Navigation" , Intellectual Teamwork, Galegher,
Kraut and Egido (Eds.) pp.191-220, Erlbaum
[3] Lave, J., and Wenger, E. ( 1991):"Situated learning - Legitimate peripheral participation -"
Cambridge University Press
[4] Pea, D.R., Sipusic, M. and Allen, S.(1990):"Seeing the light on optics: classroom- based research
and development of a learning environment for conceptual change", Proceedings of 7th Tel
Aviv Workshop on Human Development: Development and Learning
[5] Roschelle, J . (1990): "Designing for conversations", AAAI Symposium on Knowledge-Based
Environments for Learning and Teaching (1990)
[6] Schibeci, R. A. (1988):"Logo in preservice and inservice teacher education", Proceedings of 6th
Australian Computers In Education Conference
Figures
Figure 1:
A
tangible
.
programming language: AlgoBlock
Figure2: Screen Design of AlgoBlock
Figure 3: Collaborative work with AlgoBlock (adult)
... Desta forma, apareceu o sistema AlgoBlock (Suzuki & Kato, 1995) que tinha um conjunto de blocos físicos que podiam ser conectados entre si, com o objetivo de programar um algoritmo, e estava conectado a um monitor CRT que possibilitava a visualização da informação. ...
... Os alunos podiam desenhar o caminho do submarino que aparecia no ecrã através dos blocos que tinha à sua superfície. (Suzuki & Kato, 1995) Foi realizado este enquadramento das tecnologias primárias com o objetivo de se identificar as ferramentas que, antigamente, promoviam o pensamento computacional. ...
Research Proposal
Full-text available
As tecnologias tangíveis são recorrentes no ensino de programação, mas nem todos têm o mesmo nível de acesso à tecnologia. O objetivo deste estudo é identificar tecnologias tangíveis que promovem o pensamento lógico, assim como dar a conhecer novas tecnológicas às crianças. Neste contexto, investigam-se diferentes cenários práticos que recorrem a tecnologias tangíveis para ensinarem crianças a terem computacional.
... BBP has been paired with educational robotics such that learners assemble programs using GUIs to control physical robots [5]- [7]. In another variation, programs are assembled by manipulating physical blocks that are arranged on a table while the output is displayed on a vertical screen [8]. Manually handling blocks promotes tangible interaction and enables empirical abstractions of sensorimotor schemes which aid students' understanding and learning [9], [10]. ...
... Others have investigated BBP platforms facilitated by tangibles. AlgoBlok is a tangible programming language in which active physical blocks could be used to create a program [8]. Project Bloks implemented a platform for tangible programming with an on-screen feedback approach [20]. ...
... In the last two decades, tangible programming has seen a great development. From the Logo language that was designed in the 1970s by Feurzeig and Lukas for teaching mathematics [27] and AlgoBlock [28] that was introduced in the 1990s by Suzuki and Kato for teaching algorithms, using a programming language with interlocking blocks to represent commands, we have moved to the Tangible Programming Bricks of McNerney in the 2000s [29], which support the use of parameters and variables. ...
Article
Full-text available
In the last few years, the interest in the use of robots in STEM education has risen. However, their main drawback is the high cost, which makes it almost impossible for schools to have one robot per student. Another drawback is the proprietary nature of commercial solutions, which limits the ability to expand or adapt the robot to educational needs. Different robot kit versions, which have different electronics and programming interfaces and target different age groups, make the decision of educators on which robot to use in STEM education even more complicated. In this work, we propose a new low-cost 3D-printable and unified software-based solution that can cover the needs of all age groups, from kindergarten children to university students. The solution is driven by open source and open hardware ideas, with which, we believe we will help educators in their work. We provide detail on the 3D-printable robot parts and its list of electronics that allow for a wide range of educational activities to be supported, and explain its flexible software stack that supports four different operating modes. The modes cover the needs of users that do not know or want to program the robot, users that prefer block-based programming and less or more experienced programmers who want to take full control of the robot. The robot implements the principles of continuous integration and deployment and allows for easy updates to the latest software version through its web-based administration panel. Though, in its first steps of development and testing, the proposed robot has a huge potential, due to its open nature and the community of students, researchers and educators, that potential has kept growing. A pilot at selected schools, a performance evaluation of various technical aspects and a comparison with state-of-the-art platforms will soon follow.
Chapter
The South African government has committed to the implementation of coding and robotics teaching in primary schools. This vision faces the challenge that 16,000 schools in the country do not have computer laboratories, and that most teachers are not trained to teach coding. To address this reality, the TANKS mobile app was developed at Nelson Mandela University in South Africa. It introduces introductory coding concepts without the need for a computer. The scope of the project has broadened since its initiation in 2017. Originally learners were introduced to the game, and each received a game pack. Currently coding kits with various additional resources are made available to schools, mostly after teachers are trained. Based on the evolvement of the project, generic guidelines for the introduction of computer programming in schools, are provided as the main contribution. These guidelines identify the tools to be used here, how to make the project financially sustainable, alternative methods to traditional teaching, as well as the role of training for this kind of coding instruction.KeywordsUnplugged codingChildren codingCoding toolsDisadvantaged schools
Chapter
The present study is part of a research about computational thinking and tangible robotics. A robot in development in Portugal, MI-GO robot, is part of the basis of this research. The objective is to determine the attitude of young students concerning tangible robots and to observe in what measure they contribute to the development of their STEM skills. On the other hand, it also aims to know what are the opinions of educators, teachers, and researchers concerning MI-GO's characteristics and what is their value, adequacy and suitability for the educational grades of young learners (from 5 to 10). The study consists on a qualitative approach based in a case study methodology, using the techniques of questionnaire and observation. At first the data reveal a clear adhesion to the robot and tangible programming by learners, and the researchers that analyzed the device consider it was a very adequate one and presented several suggestions to improve it.
Conference Paper
Full-text available
This study reports a sample STEM lesson which was developed by pre-service teachers who were pursuing their third year in Primary School Teacher Education Program of a middle size university located in southeast part of Turkey. Pre-service primary teachers developed STEM lessons which were aligned with the objectives of a lesson they choose among the the topics included in 4th grade science curriculum. Student teachers were first introduced with STEM approach and its theoretical basis and examples of the lessons developed based on STEM approaches were demonstrated by the professor(myself). Student teachers then planned their own STEM lessons as groups and a micro application was created by them. Because of the pandemic they could not perform their lessons in class however they have made a prototype of a product they have developed based on their lesson’s objective and demonstrated how it worked utilizing media player or photos of the activity. This example lesson is called edible car which was related to nutritions and healthy diet.
Chapter
A study of related work, pedagogical theories, and extant systems was performed to determine how to create a novel, inexpensive educational tool suite for programming. Previous systems were typically costly and linear in design. A tangible programming interface for mobile phones was developed. The tangibility is achieved using printable paper command tokens, which are placed in sequence to describe a program or sequence. A mobile phone is used to capture an image of the program and execute it in a game-like environment. The game was rolled out at five design thinking workshops in the Cape Town area, which this paper also reports on.
Article
An abstract is not available.
Article
Many teaching practices implicitly assume that conceptual knowledge can be abstracted from the situations in which it is learned and used. This article argues that this assumption inevitably limits the effectiveness of such practices. Drawing on recent research into cognition as it is manifest in everyday activity, the authors argue that knowledge is situated, being in part a product of the activity, context, and culture in which it is developed and used. They discuss how this view of knowledge affects our understanding of learning, and they note that conventional schooling too often ignores the influence of school culture on what is learned in school. As an alternative to conventional practices, they propose cognitive apprenticeship (Collins, Brown, & Newman, in press), which honors the situated nature of knowledge. They examine two examples of mathematics instruction that exhibit certain key features of this approach to teaching.
Designing for conversations
  • J Roschelle
Roschelle, J. (1990): "Designing for conversations", AAAI Symposium on Knowledge-Based Environments for Learning and Teaching (1990)
Seeing the light on optics: classroom-based research and development of a learning environment for conceptual change
  • D R Pea
  • M Sipusic
  • S Allen
Pea, D.R., Sipusic, M. and Allen, S.(1990):"Seeing the light on optics: classroom-based research and development of a learning environment for conceptual change", Proceedings of 7th Tel Aviv Workshop on Human Development: Development and Learning