“Cheryl”, the first technoball, hanging for the first time, currently off and lit just by sunlight.
Worlds of layers
Since my childhood I’ve been eager to make an immersive story. For a long time I wrote stories myself, accompanied by awkward sketches and compendia of miscellany. There came a point where I’d decided the greatest impact I could have with these projects wouldn’t be my writing, but my software, and so I set out to create a simulation engine that would turn other writers’ stories into playable experiences.
I came to call this engine GEOF after the greek words for philosophical concepts: ‘ὤν’ being, ‘εἶδος’ seeing, ‘γιγνώσκω’ knowing, and ‘φαίνω’ happening/revealing. They represented the four operative concepts in the engine: 1) what things exist, 2) the perceptions sapient things have of other things, 3) what sapient things know/believe/feel, and 4) time.
The core goal is to simulate intelligent agents and how they communicate, both normatively (telling the truth) and pathologically (lying), in a realistic world with physical consequences that can affect the rest of the simulation.
Planets for simulated life
These simulated agents would need a home, which was of course on a planet, which would need to be represented in the system, so I first created a data model for the surface of a planet from a meteorological data model originally written in Fortran. This first yielded
geof.planet when I refactored GEOF to use Elixir.
“Cheryl” playing a video, covered in a layer of lycra, at her debut at Ohm in Berlin.
I’d seen somewhere an art piece which used LEDs arranged in a spherical pattern, which inspired me to bring GEOF’s planetary data model to physical life. I extended the algorithms to produce printable models with OpenSCAD, then created a runtime which would drive the sphere. Since these spheres emit instead of reflecting light, but still hang like a disco ball, my friends coined the term ‘technoball’ and it stuck.
“Cheryl” without the lycra layer playing at KIN in Berlin.