Tangible programming language is a set of physical programming blocks that enables children without prior coding skills. A huge advantage of coding this way is that being literate is not a requirement. By assembling and connecting physical blocks with image graphics and signs, children can create a tangible representation of abstract concepts, ideas, and even stories that they can communicate and share with peers.

The mTiny robot kit includes the following coding cards, which are a form of tangible programming language that is used in the activities.

There are nine types of basic coding cards:
image.png
Facial Expression Cards:

image.png
Happy
image.png
Silly
image.png
Angry
image.png
Sad
image.png
Scared
image.png
Dizzy
image.png
Sleepy

Tapping a facial expression card can make mTiny produce interactive effects. Children can use Facial Expression Cards to have mTiny put on an expression. They can also combine Facial Expression Cards with other coding cards (e.g. action cards) to get immediate feedback while executing a set of codes.

To introduce the First In First Out (FIFO) rule, for instance, you can ask children to combine a facial expression card and a forward card in the first place. Then ask children to combine the forward card and the facial expression card.
image.png

Have children observe and compare the two effects, and answer the following questions:
(1) In the first case, what did mTiny do first? Laugh or move forward?
(2) In the second case, what did mTiny do first? What makes the difference?

:::warning Note:
What is First In First Out (FIFO)?
The FIFO rule means the command of the coding card that goes in first is the command that comes out first.
Suppose that you were queuing outside the theater, you would be at the front of the queue if you arrived early. Accordingly, you would enter the theater first if you were at the front of the queue. :::

To conclude, using Facial Expression Cards can help gain the understanding of the relations between the robot and coding cards, i.e. the fundamental rule of programming mTiny.

Furthermore, Facial Expression Cards can also be used as the “signal block” to get immediate feedback when children explore the concepts of events and sequence. It is important to understand the relations between the sequence of coding cards and the sequence of mTiny’s actions, in particular when children want to create complex interactive effects or to execute a long set of code.

Action Cards

image.png Forward Card: To make mTiny move a specific distance of one map block (18.6cm) forward.
image.png Turn Right Card: To make mTiny turn to its right-hand side by 90 degrees in the clockwise direction.
image.png Turn Left Card: To make mTiny turn to its left-hand side by 90 degrees in the counter-clockwise direction.

Input Card

image.png To help mTiny remember the set of commands that you would like to execute later.

Remind children that the Input Card is to make mTiny record the commands rather than execute them, and that the Go! Card is the one to make the robot run the code.

Go! Card

image.png When you tap the Go! Card, mTiny will execute the set of commands.

Repeat Cards

image.png
The Repeat Card is a control programming block, which essentially causes mTiny to run the same code several times. Using a ×5 Repeat Card after one Forward Card will cause mTiny to move forward five steps. In other words, the command “move forward” is repeated five times.
image.png

Loop Cards

image.png
The function of Loop Cards is similar to the Repeat Card. However, notably, the shape of Loop Cards indicates that it is intended to be placed at the end of a series to repeat numerous commands in a loop.

A loop card with a number can make a series of commands execute repeatedly by a specific number of times. The Loop Card without any number can execute the commands over and over.

Loop Parentheses

Loop Parentheses should be used in pairs and combined with a Repeat Card. It is useful to create more complex interactive effects and extend the functioning because of its open-end shape.

Since adding a Loop Card indicates the end of a sequence, no other coding cards can be added after the Loop Card. However, due to the open-end function of the Loop Parentheses, other coding cards can be added after them and the said code included in the parentheses will be executed.

image.png Have children execute and compare the two sets of code shown on the left.
What is the same and the difference between them?

It is important to note that the use of loop parentheses is not appropriate for children ages 4 to 6 targeted in this curriculum guide.

Advanced learners with primary mathematical knowledge are welcome to try this more challenging aspect of mTiny.

Music Note Cards

image.png
Tapping a music note card can make mTiny play a note or a melody.
Individual note cards can be combined to play multiple notes or they can be combined with other coding cards to form a complete program.

Shapes & Line Cards

image.png
Using the Markers in the mTiny Discover kit, mTiny can draw shapes and lines. These coding cards can be combined with other coding cards to create complex programs. mTiny can also use the Pen Up and Pen Down coding cards with the joystick or Action cards to draw along mTiny’s motion path.

The Keyboard Activity Card can be used to program mTiny to draw letters, numbers and words. Use the icons at the top of the Keyboard Activity Card to adjust the size of the characters.
image.png