AlgoBlock
A tool for collaborative learning
Hideyuki Suzuki and Hiroshi KatoSummary
AlgoBlock is a tangible programming environment developed by Hideyuki Suzuki and Hiroshi Kato for collaborative learning. Instead of writing programs on a keyboard, learners construct them by physically connecting blocks, each representing a Logo-like programming command. The resulting program controls a graphical submarine, allowing children to experiment with sequences, parameters, and control structures through a combination of physical manipulation and computational feedback.
What makes AlgoBlock distinctive is that the physical program becomes a shared conversational artifact. Because the blocks are visible and manipulable on a common workspace, several learners can point to, rearrange, and discuss the same program while making their intentions visible through their gestures and actions. The system was deliberately designed to support simultaneous access, mutual monitoring, and natural turn-taking rather than forcing collaboration through a single keyboard or mouse.
AlgoBlock therefore treats programming not simply as an individual interaction with a computer, but as a social activity in which ideas are constructed, tested, debated, and revised together. Its physicality makes the structure of a program available to everyone around the workspace, while the computer provides immediate feedback through the submarine's movements and indicator lights on the blocks. In this way, AlgoBlock explores how tangible interaction can make programming more accessible while turning the program itself into a medium for conversation and collaborative reasoning.
https://repository.isls.org/bitstream/1/4207/1/349-355.pdf
https://smalltalkzoo.computerhistory.org/users/Dan/uploads/AlgoBlock.pdf
Group work is essential for learning from the standpoint of situated learning theory which considers that learning is a process of enculturation through social interactions. In designing the learning environment, although social setting for authentic activities 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.

Key concepts
- Tangible programming Programs are constructed by physically connecting blocks rather than typing commands. Each block corresponds to an operation in a Logo-like programming language, making program structure tangible and directly manipulable.
- Programming as a conversational artifact The program becomes a shared object around which learners can discuss ideas, propose changes, and negotiate solutions and can facilitate interaction among learners.
- Mutual monitoring Because actions on the blocks are visible to everyone, learners can immediately see what others are doing and infer their intentions. This makes gestures and physical manipulation part of the communication process.
- Natural turn-taking Instead of passing a keyboard or mouse between participants, access emerges through ordinary gestures — reaching toward the blocks, pointing, or physically intervening. The system therefore supports turn-taking through familiar social behavior.
- Learning through trial and error The ease of rearranging physical blocks encourages learners to make and modify programs quickly, creating opportunities for experimentation, discussion, and collaborative problem solving.
AlgoBlock represents a different way of thinking about programming — not as an isolated activity performed through a keyboard, but as a shared physical and conversational practice. By turning programs into tangible objects that everyone can see, manipulate, and discuss, it makes computational ideas available to a group rather than a single user. Its deeper contribution is the idea that the design of a programming language can shape the social dynamics of learning: when computation becomes visible, shared, and physically manipulable, programming itself can become a medium for conversation, cooperation, and collective reasoning.
This idea was originally published as AlgoBlock: A Tangible Programming Language — A Tool for Collaborative Learning. See also Interaction-Level Support for Collaborative Learning: AlgoBlock - An Open Programming Language, which further describe its design and classroom experiments.
Big Idea Initiative is all about making connections, and sharing knowledge, thoughts, and ideas that support deep thinking and collaboration. Our goal is to create a space that sparks thinking and conversations among people whose ideas might benefit each other, even if they’re working on completely unrelated topics. We think that pushing back the limits of possibility will come as a result of the connections that diverse collaborators make together. Identifying these connections will bring the big ideas our world needs.
We need your help! If you…
- have questions or feedback about this work
- want to improve, develop, or add to this idea
- want to sponsor a prototype of this idea
we invite you to contact us: hello@bigideainitiative.org.
