TRANSFORM as Tangible Programming Environment

Paper Abstract

TRANSFORM as Tangible Programming Environment (PDF)

 

Concept Video

Inspiration

There is “a dynamic relationship between things and thinking. We tie a knot and find ourselves in a partnership with string in our exploration of space. Objects are able to catalyze self creation.”

– Sherry Turkle

Wang, Zhang, Chen - E-block Suzuki, Kato - AlgoBlocks Scratch Horn, Jacob - Quetzal

McNerney - Tangible Programming Bricks Gallardo, Julia, Jorda - TurTan Curlybot

  • reality-based interaction (8)
  • tangibility (5)
  • tinkering (13)
  • bricolage (1)
  • play (2)
  • simplicity (11)
  • engagement(12)
  1. Papert – Logo [1967]
  2. Vygotsky – Imagination and Creativity in Childhood [1967]
  3. Papert – Mindstorms [1993]
  4. Suzuki, Kato – AlgoBlocks [1995]
  5. McNerney – Tangible Programming Bricks [2000]
  6. Frei, Su, Mikhak, Ishii – Curlybot [2000]
  7. Blackwell – Cognitive Dimensions of Tangible Programming [2003]
  8. Horn, Jacob – Designing TPL for Classroom Use [2007]
  9. Turkle – The Things that Matter [2007]
  10. Gallardo, Julia, Jorda – TurTan [2008]
  11. Wang, Zhang, Chen – E-block [2012]
  12. Brennan – Learning Computing through Creating & Connecting [2013]
  13. Resnick, Rosenbaum – Designing for Tinkerability [2013]

 Goal

tangible + radical programming

  • hands-on interaction with digital media
  • immediate physical feedback (visual, audible, tactile)
  • bi-directional programming
  • multi-modal representation + interface

 Technical Overview

Toolbox

toolbox screenshot

 

display 1: function manipulation

once loaded, functions can be intuitively manipulated (rotated, scaled, etc.)

RotateArrow_GIF_reduced

display 2: source code

functions are assembled in the middle display and represented as individual “lines of code;” the entire ensemble represents the compiled “source code”

EnteringLineOfCode_Compressed

display 3: cursor + result

the final display is a running, 3D representation of the program; a cursor indicates the location of the work being done

Future Directions

LoopAsteroids_WIP

  • more tools (conditionals, arrays, etc.)
  • animations (play/pause, run speed)
  • multiplayer programming (games)
  • more robust editing of result
  • scrolling through longer code
  • enhanced tangible editing