Skip to main content
Nora Codes

nimi sin

Leonora Tindall 2025/04/01

This post is part of April Cools Club: an April 1st effort to publish genuine essays on unexpected topics. Please enjoy these true stories, and rest assured that the tech content will be back soon eventually!

sina o pali e nimi sin. sina o pana e nimi mute tawa mi.
nimi o kama sama pi soweli lili. mi wile e ni: nimi li kama mute a.

That’s toki pona, a constructed language with somewhere between 118 and 181 words, depending on who you ask. It was meant to be quick and easy to learn, but more importantly, to guide the mind toward a simpler, better, more pona way of being. The fewer words, the broader their semantic space, the more contextual and general their meaning, the better. That’s the toki pona philosophy - but that’s not what I’m asking you for.

I’m asking you to make more words. New words. Strange words. Specific words. I want our words to multiply like rats.


In software, as in math and gaming and many kinds of engineering, we have far too few words, and we load them with meaning far beyond the breaking point. In what other field are “kind” and “type” so likely to be entirely different things?

We talk about tables (on the web, for displaying tabular data and nothing else; in a database, a two-dimensional array of a particular shape; in Lua, an associative array) and maps (applying a function to each element of an array? an associative array itself? who knows) and classes and types and vectors and packets and references and a dozen other things with three or five meanings each. In my professional work, I find myself differentiating between the “gateway server” and the “gateway server project” and the “gateway server solution”. I often slip up, and it often leads to problems.

But it’s not inevitable. There are other fields, other things full of complexity and craft and nuance, with their own words - fields that aren’t fifty or sixty years old but hundreds, or thousands. Those fields give us words like bight (a curved bit of rope) and chaff (the dry outside of the seeds of grain) and adze (a cutting tool with the cutting edge perpendicular to the handle) and cordwain (shiny leather from the rump of a horse.) These words accumulated over centuries, as people from different corners of the world with different etymological lineages met and had to communicate about the things they were building and doing and selling and buying.

Those words have become overloaded, too, as software and geography and aerospace engineering have spread out their tentacles, grabbing for signifiers they can attach to the new, specific meanins they’re creating - and I tried that too, for a while. I grabbed at concepts like true name to describe the set of information required to identify a particular cached web response, or acronyms like MISO (Metadata Inside Small Objects) to describe a technique for reducing indirection in a particular datastore. Cultural vampirism will get you far; that’s how we ended up with concepts like the terminal (from terminal emulator, meaning a program that emulates a computer terminal, itself from from the railway term terminal which comes from the concept of a terminal station - the end of the line.) For me, though, it’s not far enough.

So I’m making nimi sin - new words. When I have a new concept in my code, or my tabletop preparation, or just in my life, I spend some time on Wiktionary figuring out what I can call it. I describe the concept in a few words, trace their etymologies back a few hops, and rummage around for something that sounds good. My tabletop setting of little bounded realities is divided by plamurs, from planet and murus. Stochastic monitoring at a previous job was done by selecting beorends, from the Old English beorht (bright) and ærende (message, from when we get “errand”.)

In making nimi sin (or nimisin, as some toki pona speakers prone to the creation of nimi sin have taken to calling them), we lose some things. A well-selected overload - something semantically adjacent or metaphorically appropriate - can be very intuitive to some people. Most nimi sin can’t trigger nearly as many associations or bring forth as many new connections, and frankly, they sound a little silly to a lot of people.

On the other hand, we gain a lot. nimi sin are much more searchable (grep beorend will get you far on that codebase) on account of their specificity. Having a word that means only one or two things enhances the redundancy that underpins successful spoken communication, too, in that using the nimi sin reinforces the context of the conversation, rather than relying on it to convey meaning. Simply hearing “plamur” tips my players off that I’m talking about the cosmology of my fictional world.

So try it out! Come up with a few words and start using them. Sound a little silly. It’s been worth it for me.