Friday, October 7, 2011

Cognitive reboot

My three year old has been playing with Sifteos for a couple hours (in 30 minute sessions). There aren't many games for him yet; all the games he plays are recommended for 4-7 year olds. One simple game of navigating a gopher through a maze looking for a turnip gives him equal amounts of fun and frustration. I think it breaks his concept of object permanence.

The game works by creating a secret, virtual maze that you reveal one block at a time by placing a block adjacent to the block displaying the gopher. Clicking on a block will move the gopher to that part of the maze. The gopher is always visible, but other blocks turn off as soon as they stop touching the gopher. They are kind of bizarre as physical objects go:

  • Blocks look different and have stable displays. There aren't any animations on the blocks, so it looks like the blocks are printed with pictures. This is an illusion!
  • The blocks are actually fungible. It doesn't matter which block is placed adjacent to the gopher since they all just reveal the same section of the maze.
  • Orientation doesn't matter. Spinning the block doesn't matter because the picture of the maze shown on the block isn't part of the block--it's just revealed by the block.
  • Position on the table doesn't matter. The maze revealed is relative to the gopher even though it looks like the block is revealing a maze drawn in hidden ink on the table. Moving the gopher block changes all the other blocks. Moving all the blocks together doesn't change any block.

My son kept trying to build a maze instead of reveal a maze. When he set a block next to the gopher and revealed a path, he associated that path with that block and remembered it even after setting it aside. When he was in a section of maze where he wanted the gopher to turn, he'd pick up a remembered "turn block" and place it. The old block instantly morphed into a different piece though and then he'd shoot me this wtf expression as if the game cheated.

He has made progress understanding the game, but doesn't quite have the correct mental model. His current strategy is to never move the gopher block. This makes the hidden maze act as if it is drawn on the table. All the blocks become simple secret decoders revealing the table's maze.

All the concept games I've made don't break players' mental models of the world. This gopher maze seems to have done it accidentally--at least for three year olds. I wonder how far this idea can go if a game really exploited it?

Monday, October 3, 2011

Woot! My Sifteos arrived!

These have been in the news for a while. Ars technica wrote a detailed review. I found them after seeing David Merill's TED talk on his Siftables research. I bought the basic set plus three extra cubes. Here's what it looks like in practice with the six cubes, charging dock, and USB wireless link plugged into my laptop:

The SDK uses C# to build a program that runs on the laptop. The program talks over wireless to the individual cubes which report back events such as cube shake and tilt, cube touch and button push. The drawing API seems spartan--mainly drawing images onto individual cubes--so I think none of the game play happens on the cubes. Loading programs onto the cubes takes a while (15 to 30 seconds for what I've tried) so all the images are local to each cube and drawing is smooth. Once I get going with the SDK I'll know a lot more. (It's possible that the Sifteo wireless creates a lot of traffic that interferes with my laptop wireless network--shutting down Sifteo sped things up considerably.)

My three year old son played with them and there's a lot of potential. It was fun watching him learn how these work--more on that tomorrow.

Sunday, October 2, 2011

Scrolling: document up or viewport down?

My first graphical user interface was a Sun 3 running SunView. That's a classic WIMP interface bordering on antique. I was already a programmer so it's hard for me to separate the machine from the user interface. The machine's model of scrolling consists of a viewport window, a scrollbar and data to display (frequently another window). This is the model-view-controller paradigm invented for Smalltalk. It's easy to see the scrollbar thumb as being the position of the viewport over the data, so scrolling down means moving the thumb and viewport down the data and holding the data still.

My three year old son using a touch interface has a completely different mental model. The machine still uses the same model-view-controller paradigm, except the UI consists of dragging the document up rather than moving a scrollbar thumb down. What I call scrolling down, my son calls up. His model is more intuitive and simpler in every way.

This is really exciting! After 30 years of stagnation, user interfaces are finally changing.

Disqus for Ken Fox's Blog