Making the first tool for theystory has been a completely new workflow, for me. I’ve never gone into such an unknown system with someone else, before; I’ve either worked on relatively well-defined systems with others, or I’ve explored unknown systems on my own.
The first thing I’ve noticed is that my code is a MESS. This is pretty normal when I’m exploring systems with code, coming up with an idea and quickly getting the code to just stable enough to test it. But usually, after a while, I’ll seek out the messiest parts, and try to work out the systemic uncertainty there, to clean it up. In this case, the whole point is creating a space for Alayna and myself to explore those systemic uncertainties together – easy solutions to the coding problems would steer the discussion around the systemic problem, so I need to hold back. The upshot is that I’ve done awful things like created database tables that just store lumps of stringified JSON next to IDs. It’s embarassing, but it’s working.
From a maths perspective, the tool allows us the user to define and visualise 4D hyper-rectangles and 4D points, and to test which of the defined hyper-rectangles enclose the defined points.
The purpose of doing so is to allow us to define personalities (the points) and personality traits (the hyper-rectangles) on 4 axes, each representing one of the 4 classical temperaments: Sanguine (Blood/Air/Red), Choleric (Yellow Bile/Fire/Yellow), Melancholic (Black Bile/Earth/Black), and Phlegmatic (Phlegm/Water/Blue).
The image above shows a personality (the black loop) that is quite Sanguine and Phlegmatic, about average on Choleric, and not very Melancholic. There were a few test traits defined in the system at the time, and this person is showing up as possessing the “Laid Back” and “Sensual” traits. The lighter purple donut show the state-space of the “Laid Back” trait (as you can see, the loop falls entirely within this space). The darker burgundy donut shows the state-space of the extreme form of the trait, “Apathy”, which this person does not possess, since the loop doesn’t sit entirely within the space. (To draw a 3D analogy – imagine a point just beside a cube – from one side, it would look as though the point was within the cube, but from another side, we would see that the point was outside the cube along one axis)
While playing with the system, a couple of challenges came up. The image below shows my mapping of “Sensual” (extreme form, “Hedonistic”) to the left and “Courageous” (extreme form, “Foolhardy”) to the right. Due to the overlap, ALL personalities who were courageous were also sensual or hedonistic (some foolhardy folks with very low Sanguine were not).
This is probably a problem with my mapping, but it may also highlight a problem with using the the 4 temperaments model. I found, as I was playing, that Sanguine and Choleric seemed somewhat entangled, and opposing Choleric. I’ve intentionally left the axes unlabeled in the tool, because I think, over time, that we will come up with our own meanings for the axes, based on the 4 temperaments, but better suited to our purposes.
You can see the tool in action here. You won’t be able to define the states, but you can see which personalities map to which states as we develop them. It’s very much a work in progress, obviously.