Metric Meld
tldr: Try it now.
Of course, I am a big fan of the metric system, who isn’t? It is very satisfying to convert units easily into other units and see the relationships between units of very different realms, e.g. quantities from mechanics and electricity. With the SI system of units, all specially named derived units (like Volt, Pascal, Newton) are linear combinations of the seven base units without any additional factors. Then again, using factors is also very nice, because you can use the prefixes kilo, mega all the way to quetta (which was only added to the standard in 2022).
Thinking about units in the SI system as vectors of base units makes it very easy to describe combinations (multiplication) of units as the sum of the vectors. This video explores this view and goes a step further and describes how you can create different unit systems and use matrices for conversion between the systems. The video was a big inspiration in the project I have been working on recently.
I wanted to create a game to explore this system and found some inspiration in the web game Little Alchemy. In this game, the player combines elements to create other elements (e.g. Fire + Water = Steam), creating ever more complex elements, eventually creating life and humans. I have created a “game” (not sure to call it that) named Metric Meld, that works similarly. You start with the base SI units, an inverse operation and the factor 10. Now you can combine units and create new units from that by dragging them on top of each other. Try it now. I don’t have too much experience in game design, so the actual “game mechanics” are not too fleshed out.
On a technical site, I have used Typescript instead of JavaScript this time. Not sure if it was better.
One additional note: For a long time I was thinking about a particular problem in the implementation of this concept. All combinations of units can be created. Every such combination should be labeled with a name. For predefined units (e.g. Newton), the name is clear. But what If I multiply candela to Newton. This would result in a unit with a composition of s²mkgcd. There is no name for this unit. Currently, I have taken the straight forward name and named it kilogram candela meter per square second, simply translating the vector into a name. But it would be perhaps nice to name it Newton-candela?