a blob lives here

The code site may be experiencing downtime in the near future.

The summarized version is that Gitea uses up too many resources for what I get out of it. It is a fine forge and there are valid reasons to choose it. Unfortunately, those reasons no longer apply much to me.

Iceworks is going to continue hosting code as it has to. Having a presence on only a single forge gives them too much leverage and is not a good long-term strategy. There are some options:

  • Setting up a local Sourcehut.
  • Going back to Cgit.
  • Going back to Stagit.
  • Mirroring things with Fossil.

Github presence will continue. I may bite the bullet and pay up for Sourcehut for a year to become the primary forge with Github becoming the secondary. I did this once and stopped because of personal differences with DeVault. Finances still suck, but are better enough that Iceworks code isn't stuck with free offerings.

Iceworks ideally would not be a tertiary site but I do not have enough gravity to pull people here from elsewhere. There are also more dedicated teams to keep those other forges running. So I will be scaling code.iceworks.cc down to being a personal mirror and we will see what happens going forward.

“I believe in this stick.”

Yes: Belief in stick drives you to conquer foes. No: Belief in stick as a coping mechanism.

  • A great many computer science problems common and uncommon are already solved but the solutions are buried deep in old whitepapers.
  • There exists fno.io, an RDF ontology for describing functions and the problems they apply to.
  • But you still have to know what the problem is called.
  • So we record descriptions of particular problems solved by the algorithm. Put these in some state of the art neural search system (or just lob at meillisearch i dunno.)
  • Write about your problem in a search field and then use vector spatial relevance matching magic to find the most likely problems that meet what you are dealing with. Then we use the graph to find known algorithms to solve that particular problem.


Neat little cyberpunk styled adventure game. “Use Gun” is the actual solution to a couple of problems which is unexpectedly reasonable for a cyberpunk styled game. Also there are references to Hip Hop being “classical music” which were amusing. And a robot that flips between being incredibly well spoken but also street trash.

Adventure Vault has a playthrough that runs about five hours.

Telegraphs the ending about ¾ths of the way through though. As in literally has the BBEG come out and outright explain how they're going to backstab the party and then ... you go through a handful more puzzles and then they literally just do everything they said. Kind of a weird choice really.


Fun game by the makers of Thief Simulator. Some of the mechanics were watered down a bit (just looking at someone gives their whole schedule rather than having to stake them out over the course of a day or leaving a camera in their mailbox.) Some parts remained pretty hilarious (police running around like crazy NPCs.)

Took around 7-10 hours to complete maybe. Didn't do a full clear (there's a lot of “go get this specific item” from the house you've already been in three times) but I think I did enough.

Probably worth it for ~20$.

Was musing over the documentation for SideFX Houdini recently. In particular how the program represents every operation as a particular node. This kind of thing also appears in Material Maker, Rack, Armor Paint, Natron and their commercial originals.

It's interesting to see the basic pattern:

  • Generic plugin host that looks at plugin manifests, loads them or has them built in, shows a node and pin graph editor
  • Topologically sort the graphs to create an order you can run them
  • Shuttle big binary blobs between individual plugins
  • Even input and output of data is ultimately controlled by a node

In a way this mirrors the “command pattern” but rather than doing a command once and throwing it away (or leaving it in an undo log for a short time) the command persists as an object to be tinkered with later on. Sometimes even features like outputting sound are owned by a node (such as VCV Rack) and the host framework is only concerned with graph editing and mediating access to node property editors.

One might wonder why this design is mostly used in very expensive studio software but rarely used in the realm of mortals (aside from clones of said studio software.) Even Apple threw away Soundtrack Pro which kept a persistent change log of edits to a particular sound over time.

#psychology #gametheory

It's a big club, and you're not in it. (George Carlin)

We know that in Game Theory cooperation is enforced by so-called “punishment games.” A punishment game provides an opportunity for a second player to perform a move that damages the first player and lowers their score across many games. However when no punishment exists (or the score with punishment is still higher) there is no reason to cooperate.

In particular this is looking at work I did on commission for someone who sells NFTs and then when I finished the job decided to just drop the work and never bothered to pay the commission fee. Thus my first official job in Defi space ended in getting shafted (probably didn't help my opinion of the space.)

So since we can't just kill the person (distance, and government laws) and we can't sue them (costs more than the wages on the job) what possible system exists that would make it possible to work?

A social reputation system.

Although actually, that doesn't save us either. Why? Look back at the problem of punishment games.

The reputation system says that you have done work in the past and so you can be trusted to do work going forward (social proof.) This gives the actor something to lose and so encourages cooperative behavior going forward. However the subcontractor who is not entrenched in this space does not have any of that. They have to do the work on a bad deal (because the person with the social proof holds all the influence) and pray they actually get paid. What happens if they don't?

Nothing. Since the subcontractor doesn't have any reputation in the system and the contractor does, the subcontractor can't materially damage the contractor. And the contractor's hirers still got their work product which makes them trust the contractor more. Putting the game theory together explains how someone trying to enter a social reputation system by doing work (which you are often told to do to “pay your dues” or some nonsense) is actually just there to get screwed, time and time again, because the members of the system only care about other members of the system. For the subcontractor they might as well just claim you did a bad job and since their reputation is higher everyone will just side with them.

So we have established that it is optimal for members of the social system (we'll call it the Club) to consume labor from outsiders that they then don't pay. If a person is actually given social credit and inducted in to the club they now qualify as a Real Actual Person and shafting them carries consequences. But until then you're just fresh milk to be churned.

This may also, indirectly, suggest why crime is so often involved with the poor.

#psychology an odd part of internet psychology is the immutable notion that nobody actually gives any fucks about you as a person. there is a certain trope people are practically staring 24/7 to deploy which is to point out anything you say doesn't matter because somebody else technically has less. the weird thing about this is people salivate to field it even when that isn't the thesis of what you are talking about.

that's correct. the thesis of your statement can be, “i lived in upper crust, and poverty, and observed these differences” and bam. prepare to hear about how children in africa fight over a single cricket and that's how discussing how the wealthy do not live in the same city as everyone else despite being in the same physical location becomes about how you should just enjoy your free housing because not everyone qualifies for it.

wait, what? i wish someone told my landlord that my rent was free.

yes, the self-righteous “SOMEONE ELSE HAS IT WORSE!!” teardown doesn't even have to make sense, be correct, relevant to anything. remember to never put in any effort to communicate with someone—if you see an opportunity to vomit about how someone has something worse just crash whatever conversation they were trying to have and feel morally superior about the process.


Played it. Only took 2-3 hours for two playthroughs.

You play a social media company that runs fake accounts to push narratives clients hire you to push. There's a minor bit of a business sim to it but that doesn't really matter. All you use money for is to buy fake identities to push narratives and the game ends after one month. So there's .. maybe three optional triggers in total that cause you to ever have to spend anything.

Pretty standard “government is corrupt, help it or throw it out” stuff. There's also an option to get someone who isn't a shit bag elected but the government will just rig the election if you do that so it doesn't really matter. Didn't bother to see the rest of the endings (although there is one where you just post increasingly insane stuff that would have been fun.)

#musicproduction #lv2

Noise repellent is an LV2 plugin for noise removal. It's a typical spectral noise gating setup where you play it over the background noise to be removed in training mode and then it will remove that noise during playback. There are additional settings (unlike, say, Renoise's own spectral denoiser) to help mask the artifacting sounds that result from removing noise this way.

As an interesting aside someone who was self conscious about their own voice clicking poked me. I tried using this on the vocal pops exclusively to see if it would remove them. It actually kind of does!