Show more


Breakfast this morning: matcha with two freshly baked homemade cinnamon donut hole muffins.

The bowl is also homemade too! Made by my mother.

Asemic Writing, Generative Art, Square Kufic Calligraphy 

Another generation of 'em, this time scooched closer together, like how'd they look in writing. It is very clear here that this this is just balanced noise. There is no consideration for any kind of form. It looks more like some kind of hipster QR code rather than some kind of a writing system.

Show thread

Asemic Writing, Generative Art, Square Kufic Calligraphy 

Here are a few more generations of the program.

What I like about the program (and what I tried to do) is how it is able to preserve evenness of empty and filled spaces. It seems to do this right (most) of the time, which is good enough.

However, if you look at actual square kufic calligraphy, you'll see that these are way noisier. Kind of as if someone generated some noise and put a comb through it (which is more or less what I did). As a result, these are far too busy.

Hoping to figure out some way to calm it down somehow. Maybe I'll figure out a way for it to work on partially created inputs. Or I'll have better filters that can relax things a bit. Either way, I'm off to admire more square kufic calligraphy.

Show thread

Asemic Writing, Generative Art, Square Kufic Calligraphy 

In the early stages of building a generative writing system inspired by square kufic calligraphy. Below is a single "glyph" generated by an initial program I wrote (and will most certainly have to rewrite).

Like most things in life, this took more work than I initially expected. Any monkey with a compiler can write a program that throws some squares together, but it takes some effort to make the result look aesthetically pleasing.

The algorithm I built involves generating an initial image composed of 2x2 tiles, chosen using a sort of state machine and a bit of random choice. This glyph then gets checked for any aesthetic imperfections, and attempts to correct them. It's not always 100% corrected, but it can get pretty close. This generated one below has no violations, according to my program.

Here's the comparison image from the krita page:

In the left is a similar blurry circle image in sRGB color space with similar dark rings. The right image has the same coloring done in a linear color space with those issues gone.

I want to be more like the right image.

Show thread

For reference, these are my "fuzzy dots" as they exist right now. You can see the dark halos around the fuzzy points.

Show thread

Some impromptu textures using a processed crossfade-looped vocal sample I had laying around, and some just intonation ratios. Written using and via , with some light processing in for fades.


patchwerk nodes

"longpad.wav" loadwav 0 regset

2 0 phasor 0 regget trd
2 1.5 * 0 phasor 0 regget trd add
2 16 * 9 / 0 phasor 0 regget trd add

0.5 0 phasor 0 regget trd
0.25 0 phasor 0 regget trd add
1 0 phasor 0 regget trd add
1 5 / 1 sine 0 1 biscale mul

-3 ampdb mul


30 set_dur


Took my PPM backend and made it work with a framebuffer.

Fontstash also has a neat blur feature, which allows me to add text drop shadows like it is 2007.

Show thread

Playing around with , a small wrapper around stb_truetype that allows efficient rendering of truetype fonts.

Fontstash is used under the hood in (project by the same dev) to render text, and for years this is how I indirectly interacted with it. However, I recently learned that it works just fine by itself. And while it is designed to primarily work with OpenGL, I managed to hack together a backend that renders to a PPM file instead.

Music DSP 

Been working on humanizing clock algorithm this weekend. You can think of it as a filter... a precise master clock signal goes in, a humanized clock signal comes. The hope is to use this with some of my drum machines and sequencers to make more natural sounding beats.

As it often goes, all I have to show for it at this point is a bunch beeps. I'm adjusting the jitter amount with an LFO, and this causes the notes to go in and out of phase.

succulent question 

My has begun sprouting an antenna. Does anyone know why it's doing this?

Found it!


FUN FACT: one of the many reasons N64 games have that distinctive look is because the hardware performed bilinear texture filtering with 3 samples instead of 4. Current texel + upper-left + bottom-right. This quirk was sometimes taken advantage of by savvy game artists!

Show thread

My new workstation setup for creative computing :)

It is hardly ever this clean and tidy, so I figure I may as well take a picture for preservation purposes.

even more pasta, homemade 

Day 2 part 2 of tortellini making. Finally done.

Show thread

pasta, homemade 

Meat tortellini production, day 1

Now the other way (backwards shift). See if you can spot the difference :)

Show thread
Show more

Welcome to, an instance for discussions around cultural freedom, experimental, new media art, net and computational culture, and things like that.