C o d e R h y t h m

​Tangible Programming Toolkit for Visually Impaired Learners
  CodeRhythm
  • Home
  • About
  • Development
  • Blog
  • Publications
  • Contact

4.2 | Fabrication

3/10/2020

Comments

 

4.2.1 Laser Cutting

Medium density fiberboard (MDF) were used to create the new design.
​All the laser cut components were sanded before assembling.
Picture
Picture

​4.2.2 Assembling

(Click below to view large image)

​4.2.3 Demostration

(Click below to view large image)
Comments

4.1 | Appearance Modification

12/11/2019

Comments

 
The design were transform into 3D using a computer-aided design(CAD) software, Rhinoceros 3D.
Picture
Picture
Fig. 1. Rhinoceros 3D user interface

4.1.1 Redesigning

​From our user studies, the participant can easily distinguish the correct orientation of the connection by herself without any instruction. However, the time for this process can be further shorten by eliminating all the other possible incorrect ways to connect two blocks. The shape of the block can be further modify such that the orientation can be more  ​distinguishable.
Picture
Picture
​Fig. 2. ​previous design
​Fig. 3. new appearance design to prevent incorrect orientation
A new ​parallelogram shape design has been adopted. The duration parameter is now controlled horizontally. The three connection dots were replaced by three concentric squares, such to increase the connection surface and to achieve a more stable signal ​transmission.
Picture
Picture
Picture
Picture
Fig. 4.   New appearance design

4.1.2 Remodeling

Picture
Fig. 5.  3D models of syllable blocks and different function blocks

4.1.3 Laser Cut Ready

The 3D models were then unrolled and transferred into a laser cut ready format. It's now ready for laser-cutting and assembling.
Picture
Fig. 6.  Laser cut ready file for all function blocks
Comments

3.2 | Self Evaluation

11/25/2019

Comments

 
Overall, the first prototype of this tangible education toolkit did achieve our design goal. From the user feedback, it shows the CodeRhythm do able to enhance programming learning experience of blind and visually impaired (BVI) novice learners. However, there still some problems spotted during the process and should be further modify in the next version of the prototype.

3.2.1 Appearance

Picture
​Fig. 1. burn marks on the edge of a syllable block
There are a lot of burn marks and burn edges on the wood caused by the laser cutting process, and it make the wood looks kind of rough and dirty. One way to prevent burn marks is to stick a layer of paper tape on top of the wood before laser cutting it. The burn marks can also be sand out with sand paper.

3.2.2 Material

When relative humidity is high, the plywood is very likely to get damp and bend, which eventually affect the contact surface and leads to unstable connection between two blocks. This problem did actually occurred several times during the prototyping process, especially in rainy days. Materials such as acrylic, mental, or even engineered wood can be used to replace plywood for better connections.

3.2.3 Connection

  • Orientation of Connection Surface
From our user studies, the participant can easily distinguish the correct orientation of the connection by herself without any instruction. However, the time for this process can be further shorten by eliminating all the other possible incorrect ways to connect two blocks. The shape of the block can be further modify such that the orientation can be more  ​distinguishable.
Picture
​Fig. 2. correct orientation (left), incorrect but possible orientation (right)
Picture
​Fig. 3. new appearance design to prevent incorrect orientation
  • Signal Direction
Sometime users might be confused by the direction of the signal. Different people or different cultural might have different preference in reading, either from left to right or from right to left. Therefore, some tactile indicator is needed to indicate the left-to-right signal direction.
Picture
​Fig. 4. more tactile indicator is needed to indicate the left to right signal direction
​
Comments

3.1 | Preliminary User Feedback

11/20/2019

Comments

 

3.1.1 Procedures

Picture
Fig. 1. A BVI participant creating her personalized melody. 
The initial prototype was demonstrated to a 30-year-old female with visual disability who was a BVI educator with a specialization in the music field. I first introduced the idea and goal of CodeRhythm and explained the function of each block. During this introduction session, I encouraged the participant to pick up each type of block, touch, and interact with it. Then the participant was told to connect Start Block and one of the syllable blocks, which enabled the user to create the first and basic program intuitively.
​
After the brief introduction, I picked up one Start Block and two syllable blocks, connecting them with Switch and Loop Block, respectively. As a result, two different simple melodies were created, which introduced the participant how these two functions work in the program. In this process, the participant was told to touch and experience these two sequences of blocks.

​In the next part, I assemble a Start block, five syllable blocks, a Switch block, and a Loop block, to demonstrate a more diverse melody for participants. After experiencing and interacting with the overall effect of blocks, the participant was encouraged to create a personalized melody with assembling any types of blocks. In the end, I interviewed the participant about the usability challenge, the key advantages of the toolkit, and potential improvement in the future.​

3.1.2 Findings

In the experience process, the participant was able to assemble blocks to create a simple melody successfully. Also, the participant could connect blocks easily without much hesitation and exploration. When tracing the block sequence by touching, the participant was able to distinguish the different characteristics of each type of block clearly.

In the interview session, the participant commented that the experience was fun and inviting. Notably, the participant thought the audio feedback, which matched the tactile pattern on the syllable blocks, was surprising and helpful. Regarding the connection with magnet and conductive tape, the participant appraised that it was beneficial and eliminated the exploration time. Also, the participant noted that we could also utilize the toolkit to help BVI students understand electric literacy since the connection was one of the significant parts of electric, and our method of using magnet and conductive tape performed well in decreasing the connection difficulties. For improvement of connection, the participant suggested that we can make the shape more irregular such that the connection surface can be further distinguishable from other sides of the cube.

​The participant mentioned that mastering all of the concepts and functions and manipulating them in a short time was challenging and difficult, which required high-level cognitive ability. Regarding this challenge, the participant suggested that it was better to design a well-structured and detailed curriculum and applied it to a workshop of multiple sessions. For the improvement of expressiveness, the participant suggested that we can add some more diverse and personalized tunes to provide a more compelling and exciting experience. Regarding the teaching goal of CodeRhythm, the participant noted that it was useful and inviting to learn the basic and simple concept, but not proper enough for learning the advanced and traditional computational literacy.
Comments

2.3 | Fabrication

10/21/2019

Comments

 

​2.3.1 Laser Cutting

Picture

2.3.2 Assembling

(Click below to view large image)

2.3.3 Demonstration

Picture
Magnet connection(left), CodeRhythm demonstration video(right)
Comments

2.2 | Appearance Design

6/17/2019

Comments

 
The design were transform into 3D using a computer-aided design(CAD) software, Rhinoceros 3D.
Picture
Picture
Fig. 1. Rhinoceros 3D user interface

2.2.1 Modeling

All the 3D model were build according to the previous draft design.
Picture
Picture
Fig. 2. Previous design for syllable block and different function blocks
Picture
Fig. 3.  3D models of syllable blocks and different function blocks

2.2.2 Laser Cut Ready

The 3D models were then unrolled and transferred into a laser cut ready format. It's now ready for laser-cutting and assembling.
Picture
Fig. 4.  Laser cut ready file for all function blocks
Comments

2.1 | Circuit Design

5/29/2019

Comments

 
Before actually drawing the circuit, first we need to understand the properties and functions of all the blocks.
​The properties of different function blocks:
  • ​Start-Block
    - Send signal to trigger all the other blocks connected after it
  • Syllable-Block ​​​
    - able to receive signal from previous block
    - emit a sound when it is triggered
    - emit a sound when the button is pressed
    - change of sound duration with a potentiometer
    - able to pass the signal and trigger the next connected block
  • Pause-Block ​​​
    - able to receive signal from previous block
    - able to hold the signal for a certain time before passing it to the next block
    - able to pass the signal and trigger the next connected block
  • Switch-Block
    - able to receive and pass the signal to either one of it output with a toggle switch
  • Loop-Block
    - able to receive signal from previous
    - able to execute the block sequence within the loop for several time before passing the signal to next block 

2.1.1 Designing

Autodesk Tinkercad Circuit have been used in designing and testing the circuit.
Picture

​Autodesk Tinkercad Circuit is an online circuit development and simulation tool. It allow users to upload their own code and simulate the Arduino board.
Picture
Fig. 1. Designing a "Syllable-Block" circuit(top) and a "Start-Block" circuit(bottom) using Tinkercad

2.1.2 Prototyping and Testing

The designed circuit were then build with an actual Arduino board. The code were also uploaded to it for testing and debugging. In the design, each blocks will be connected with three pins: two signal pins and one ground(GND) pin.
Picture
Fig. 2. A functional "Syllable-Block" circuit
Several more circuit prototype have been made for testing the connection between two or more blocks.
Picture
Fig. 3. Two functional "Syllable-Block" circuits being connected

2.1.3 Finalized Circuit Design

After going through designing, testing and debugging process, the circuit for all the blocks were finalized.
(Click below to view large image)
"Start-Block" Circuit
"Syllable-Block" Circuit
"Pause-Block" Circuit
"Loop-Block"(Begin) Circuit
"Loop-Block"(End) Circuit
"Switch-Block" Circuit

2.1.4 Circuit Shrinkage 

The circuit prototype above is too large to be an actual playable building block for children. The size of the Arduino board and the breadboard are too big, and the circuit need to be self-contained without any USB wire connecting to computer. As this toolkit is targeting to children and younger age, their hand size also needed to be consider. It seems to be an acceptable size that each building block should be smaller or equal to the size of a standard Rubik's cube. 
Picture
Fig. 4. components used in the circuit
  • Breadboard
    The full-size breadboard (165.1 x 54.29 x 9.68mm)
    will be replaced by a mini breadboard (46 x 36 x 9.68mm)
  • Arduino Board
    ​The Arduino Uno board (68.6 x 53.4 mm)
    will be replaced by a Arduino Mini Pro (17.78 x 33.02mm)
  • Power Source
    ​The USB cable 
    will be replaced by a 3.7v battery with
    ​
    a boost converter convert it to a stable 5v output.
With the above components, the circuit were rebuild and the size has been decrease for around 50%.  
Picture
Fig. 5. Original circuit prototype(top), and resized circuit(bottom)

2.1.5 Connection

Since this toolkit is designed for BVI students, every building blocks have to be easily connected without the help of vision. Therefore, I came up with an idea of using magnet and conductive tapes to build the connection. By doing so, the blocks can be easily snap with each other and the signal can also be transmitted.
Picture
Fig. 6. Cooper tape(left), conductive fiber tape(right)
Conductive Tape Testing
Connection and signal transmission is very important in this toolkit. There are two main types of conductive tape in the market: copper tape and conductive fiber tape. A test have been conducted to find out the best conductive tape for this project. ​​ Two wooden cubes and a simple circuit have been made to simulate two building blocks. The two end of the circuit will be connected to each of the box using conductive tape. The two building boxes will then put together to see if the current could able to transmit from one end to other end. If the circuit is completed, a LED will lights up.
Picture
Picture
Picture
Fig. 7. Two wooden boxes and with a simple circuit have been made for testing different conductive tape
Test Result
The result suggested that conductive fiber could be a better choice in connecting the circuit between two building blocks. 
Picture
Picture
Fig. 8. Test result for copper tape(left) and conductive fiber tape(right) 
Comments

1.3 | Ideation

5/2/2019

Comments

 

1.3.1 Brainstorming

Picture
Both the context and the form were considered in the brainstorming process. The process can be summarized by answering two questions: what can it teach, and how user can interact with it.
  • What can it teach?
    This toolkit should be able to let user to learn and understand programming logic. Since the targeted users are elementary to junior high school students with no programming experiences, this toolkit should only deliver the very fundamental programming logic, such as looping, if-else condition and variation. These commands should be manipulated by the user with the simplest way possible. Therefore, I think block-based programming might be suitable solution for that.
  • How user can interact with it?​
    Since this toolkit is specified for blind and visually impaired(BVI) students, it have to be a tangible toolkit with tactile interface and non-visual feedback. As mentioned in previous user behavior study, tactile symbols would also need to be added on it.

In the brainstorming process, one of each element in the context and the form, has been found correlating with each other. Block-based programming and ​toy building blocks are both using blocks as the smallest unit construction unit, and they both involve blocks manipulation. I am thinking this tangible toolkit can be a somehow taking the block-based programming concept and combine it with tangible toy building blocks, to create a tangible block-based programming toolkit.

1.3.2 Idea Consolidation

CodeRhythm: A tangible programming toolkit for engaging blind and visually impaired (BVI) students to learn basic programming concepts by creating simple melodies.​​
Picture
Picture
Fig. 1. The structure of a syllable block and different function blocks.
CodeRhythm is a set of sound playing building blocks, and by using sound as a feedback, it makes the block accessible to visual impaired people. Tactile symbols are added on to each of the cube, such that visual impaired student can identify different blocks. It contains two type of blocks: syllable blocks and function blocks. Syllable blocks are blocks that would play different music note.  The duration of each note can be change be pulling and pushing the upper part of the block. The syllable blocks can be put together to create different melodic sequences. Another type of blocks, function blocks, are the blocks that add logic and variation to the music sequences. Each function block represents one fundamental programming logic concept. For example, there would be a pair of “Loop- Start” and “Loop-End” function block, which it allows the note or sequence in between these two blocks to play repeatedly. The “Switch” function block allows user to switch between different completed note sequences. All the blocks can be easily connected without relying on vision, as magnets are embedded in each of the blocks. For the time being, I planned to make four different function blocks: “Start”, “Loop”, “Pause (Delay)”, and “Switch”.
Comments

1.2 | Definition & Interpretation

4/27/2019

Comments

 
Understanding and defining the behaviors of target users helps in creating a more detailed design statement.
Different frameworks will be used in analyzing and understanding users's behaviors, needs and insight.
​

1.2.1 Activity Theory 

Picture

1.2.2 Point of View Design Statement 

Picture
Comments

1.1 | Inspiration and Context

4/25/2019

Comments

 
In the recent decade, people started to realize the importance of computer education in this digital age. Computer programming is adopted in school’s education in enhancing student’s logical thinking. Visual programming language (VPL) are widely used in teaching students and novice learner for easier and better understand in basic programming logic. In Hong Kong, many elementary and junior high schools teach programming using simple block-based programming tools such as Scratch[1] and APP Inventor[2]. By dragging and combining action boxes, user can easily create a simple command sequence. With the same idea in block-based programming, different tangible teaching toolkits were also being made. StoryBlocks[3] and Algobrix[4] are the two example that they transform block-based programming into tangible blocks building, for users to create logic sequences physically. 
Picture
Picture
Scratch(left) and APP Inventor2(right) ​both used block-based visual programming language
However, these teaching tools are chiefly design for sighted students, which visually impaired students would find it very difficult to use. Therefore, I would like to create a tangible programming education toolkit, specify for blind or visually impaired (BVI) students.
​
This toolkit would have to be acoustically responded and with tactile symbols on it. This toolkit would be in a form of building blocks, and each blocks have to be easily connected without the help of vision.

1.1.1 Design Context

​General Target:
To enhance learning experience with education toolkit.
Picture

​1.1.2 Design Goal

To enhance programming learning experience of blind and visually impaired (BVI)
​novice learners, with a tangible education toolkit

[1]  "Scratch for Educators". scratch.mit.edu. Retrieved 4 April 2019.
[2] "Teaching with App Inventor". appinventor.mit.edu. Retrieved 4 April 2019.
[3] Caitlin Kelleher, Randy Pausch, and Sara Kiesler. 2007. Storytelling alice motivates middle school girls to learn computer programming. In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems (CHI '07). ACM, New York, NY, USA, 1455-1464. DOI: https://doi.org/10.1145/1240624.1240844
​[4] Kickstarter. (2020). Algobrix – The Ultimate Coding Learning Game. [online] Available at: https://www.kickstarter.com/projects/543628386/algobrix-the- ultimate-coding-learning-game [Accessed 20 Jan 2020].


Comments

    RSS Feed

Powered by Create your own unique website with customizable templates.
  • Home
  • About
  • Development
  • Blog
  • Publications
  • Contact