> I am starting to think of interesting software for the Light Box that does respond exclusively to human input.
When I think of responsive software that gives me with delight without wresting any control from me, I think of programs that magnify my input in some way.
One simple idea that would well for this is a kaleidoscope. Press a button and not only does it change, but so do corresponding mirrored or rotated buttons around the box from it. A hex grid is great for this because then you can do 3-fold or 6-fold symmetry around the center button in addition to simple reflection symmetry.
Implementing the Conway's Game of Life on a hexagonal grid could be a fun idea. With a slow enough turn clock, you probably don't need a start/stop button, and can just mash a pattern in with one or two hands quickly and see how it evolves. Another plus is that there probably aren't too many famous hexagonal lifeforms, it would be a fun game for all ages.
I thought about that too, but I think that goes against the author's goal of keeping the user in charge. With Life, the machine keeps evolving and blinking even when you don't touch it.
My goal was something fun to add to it that strictly only did anything in response to user input.
I don't think adding the time component means that the user isn't in charge any longer, especially if you add a potentiometer for controlling time all the way down to zero.
A tactile Game of Life box that you can speed up/slow down/freeze and change sounds delightful.
Here's an overview of hexagonal Life rules and software that already supports them: https://www.conwaylife.com/wiki/Hexagonal_neighbourhood You could step forward once or a fixed number of steps each time. Color the cells by age for more visual interest.
I discovered that my son (17 months old at the time) loves to mess with stereo controls. So I bought a few rotary encoders and neo-pixel rings - build a wooden enclosure with a plastic faceplate, and wrote some code to generate fancy light and audio effects when he turns/clicks the knobs. He loved it. We call it the "Max Distractor".
>I decided that I would make him something with buttons
Wow that brings back memories. My dad did the same thing. Wooden box with all sorts of switches & dials & slider and things in it.
None of them did anything (maybe a random light?), but this was back when switches/dials were made to last. So just the mechanical action had some heft to it & was interesting to a toddler.
In case anyone missed the reference, the "boit diabloique" (devils box) is a reference to the TV show "Look around you". The show presents itself as educational programming while slowly desending into madness. In the episode on music we are informed to never press the forbidden keys on the piano (the ones that are locked in the boit diabloique next to the normal keys). A presenter calmly demonstrates pressing one of these keys and promptly starts bleeding from the ear. While he is casually having his brain leak out we are instructed on screen to "write that down in your copy book now".
I did reference the Boite at another Oxford Geek Night presentation about visualising (and hearing) data, including some stage-makeup blood, which did bleed from my ears.
A few people got the joke, but not enough to make it worthwhile going round with fake blood on my ears for the rest of the evening.
It's a very cute box, and I particularly enjoy that this small blog reflects a microcosm of development, fixing bugs for a product, and making it usable for a "customer". That said, games for the author's child remind me of the MIDI Fighter 64 as used by Shawn Wasabi [0], which while a MIDI controller, has reactive patterns to button-presses while being used to play music.
Thanks for the video, I love seeing performances like that.
I've been fascinated with those grid MIDI controllers for a while. I started this project with a Launchpad Mini but didn't have the energy to work out how to make it battery powered and reliable (there's an excellent Python library but it was a bit flaky with a Raspberry Pi).
I wonder how you use them in reality. Learn a new layout for every song? I can play a few instruments' keyboard layouts, but it would be a challenge to remember where each sample was mapped.
>I wonder how you use them in reality. Learn a new layout for every song?
There is usually no predefined layout (exceptions apply), but more modern controllers with certain software allow you to save your presets and transfer between different projects (kinda like a template).
Normally, it is like a giant chessboard, and you map synths/samples/etc. individually for every new project. So if you are used to having all drums in the top right corner, you can just assign them there on this controller.
What about a program that just toggles the state of the nearest neighbors? That way it can be a game, but it is not timing based nor computer controlled. The game can be to turn everything off or on and can also be used to try to create interesting patterns.
I treated the sphere as an icosahedron where each "side" is a triangular hex grid. At each vertex is a pentagonal cell. To get the sides to fit together nicely, I had to rotate them a little bit.
There may be a simpler way to do it, but it worked.
Lights out seems like the ideal human-powered game, though probably a bit advanced for a two-year-old. But it would be interesting to see what a hex-based variant of it looks like.
It certainly made me lose a bit of rationality when I got phantom keypresses. The very first thing I should have checked was the pullups, but I had faith that they would work.
There's a metaphor in there, but I didn't want to overload the post...
> I am starting to think of interesting software for the Light Box that does respond exclusively to human input.
When I think of responsive software that gives me with delight without wresting any control from me, I think of programs that magnify my input in some way.
One simple idea that would well for this is a kaleidoscope. Press a button and not only does it change, but so do corresponding mirrored or rotated buttons around the box from it. A hex grid is great for this because then you can do 3-fold or 6-fold symmetry around the center button in addition to simple reflection symmetry.