@todepond.com told me about inverse bilinear transformations (they are used in screenpond). I referenced Inigo Quilez's article to implement this iquilezles.org/articles/ibi...
28.07.2025 18:13 β π 10 π 1 π¬ 0 π 0@elliot.website.bsky.social
and visual and creativity and computers and math and elliot.website
@todepond.com told me about inverse bilinear transformations (they are used in screenpond). I referenced Inigo Quilez's article to implement this iquilezles.org/articles/ibi...
28.07.2025 18:13 β π 10 π 1 π¬ 0 π 0Squarifying each quad in a loop of quads using inverse bilinear transformation
28.07.2025 18:10 β π 67 π 6 π¬ 2 π 0Do you write TypeScript? Enjoy Automerge? Love building both tools and community? You might be a great fit for our β¨newβ¨ Automerge TypeScript Maintainer role!
www.inkandswitch.com/jobs/automer...
(Remote role, π¬π§ UK-based preferred but not required)
Dogfooding a todo list in hazel
10.07.2025 19:44 β π 25 π 2 π¬ 0 π 1Comic:β¨ First panel is of some code with wingdings equal to an code-inlined image editor with a sketchy fish in it.β¨ Then there is a text-message dialogue:β¨ Left person: Hi Sam. Do you think you could make my fish sprite nicer? Right person: Okay, I will try! My coding skills are pretty weak though... Could you help me get my sprite into the game code?β¨ Left person: Oh! I inlined a sprite editor into the code, check it out here!β¨ Now there is the first panel again, but the fish drawing is immaculate.β¨ Right person: I edited the sprite IN THE CODE!β¨ Left person: Beautiful :')
Here's an old comic I made for elliot.website/editor/
08.07.2025 23:19 β π 7 π 0 π¬ 0 π 0A drawing consisting of many overlapping and containing boxes following some rules: boxes in red boxes are vertically juxtaposed, boxes in blue boxes are horizontally juxtaposed, green boxes are for grouping, cyan boxes are either empty or unrelated to any boxes inside or overlapping them.
abstract explorational sketch of relational layout from a few months ago
30.06.2025 18:32 β π 8 π 0 π¬ 0 π 0Typing and snapping things together
14.06.2025 03:56 β π 51 π 7 π¬ 1 π 1A configuration of orange boxes in rows and columns with gaps. There are arrows between the tops of orange boxes in the same row. There is an outline around the configuration. There is a black box connected to the outline.
14.06.2025 03:51 β π 4 π 0 π¬ 0 π 0BTW: I'm slowly assembling a LIVE Primer to help folk submitting to LIVE (& others) get the lay of the land. Please take a look and let me know what's missing, what sucks, what's rad, etc.
live-workshop.github.io/primer/
Malleable software: Restoring user agency in a world of locked-down apps
www.inkandswitch.com/essay/mallea...
What does it mean / look like to publish to Bluesky? As a user, do I make a post on leaflet and the content gets synced to a bluesky post? Or does a bluesky post get created that links to the leaflet document?
22.05.2025 16:54 β π 5 π 0 π¬ 1 π 0What if you didn't need git to collaborate on games?
We've been prototyping a new approach to collaboration in Godot: live and async collaborative editing, with branches and diffs, built right into the editor.
We're looking for people to test out an early version, see link in next post:
Agree about force graph layouts being hard to extend. I've been meaning to try penrose.cs.cmu.edu/blog/bloom and see how it is for that sort of thing. Seems like a cool approach to optimization-based layout
09.05.2025 02:21 β π 5 π 0 π¬ 0 π 0It wouldn't be fantastic for graphs in general, but you can make a nice interactive Directed Acyclic Graph (DAG) layout with it.
You can lay out a spanning tree of a graph and then add the rest of the non-tree edges in. The layout in the video is almost that, except a little nicer and more DAG-y.
Making progress on my relational layout lib. Did a pass on improving the API and hopefully the code is more readable now.
09.05.2025 01:33 β π 53 π 3 π¬ 2 π 0Dang it looks cool
08.05.2025 19:42 β π 2 π 0 π¬ 0 π 0Cool! You can also do it for some less-tree-like graphs, but that may require some topological sorting and stuff (currently working on using this to make a relational layout library)
07.05.2025 22:52 β π 0 π 0 π¬ 1 π 0The nice thing with this sort of graph (a non-rooted tree) is that you fill in unknown values in a single pass with propagation of knowns
07.05.2025 22:21 β π 0 π 0 π¬ 1 π 0A diagram with code on top and a graph on bottom. The code reads `const +(2,-(3,x)) = 3`. The graph has four "leaf nodes": 2, 3, 3, and x. One 3 and x are connected to a minus symbol node, and the other 3 and the 2 are connected to a plus symbol. The minus symbol has an equals sign shaped edge coming out of it that turns into and edge into the plus node.
Here's the sort of diagram I used while working on this.
07.05.2025 22:19 β π 0 π 0 π¬ 1 π 0I wrote a bit about defining and composing multidirectional functions from a programming language prototyping perspective here vezwork.github.io/polylab/dist...
07.05.2025 22:12 β π 0 π 0 π¬ 1 π 0Newsletter is back with some textiles + computation artworks and life updates.
theimpermanent.substack.com/p/three-text...
you can save and open screenpond creation on pondiverse.com
02.05.2025 17:38 β π 81 π 14 π¬ 6 π 0Music attribution: Funk Bump by Joshua Morse
Licensed under Creative Commons BY-NC-SA License.
Downloaded from 8bc.org/music/Joshua...
(actually I got it from the archive.org/details/Best...)
Here's a cut of some of my interactive and visual work from the past year.
I'm looking for work! I'm looking for remote work developing, prototyping and/or researching on editors, custom interactive things, or visualizations. I mostly work in JS/TS. Let me know if you know something pls ty :)
its kinda crappy and there's a lot of scaffolding in place but it works
pondiverse.com
The words "A pixel is not a little square" rendered several times in chunky pixel font, black on a white background. Through the middle, the letters are scattered into crumbled pieces.
Large black concentric rings on a white background, like ripples in a pond or a heightmap or grooves in a vinyl record. Around the outside the rings are crumpled and shattered into black bits, like grains of sand. At the right, there's a faint grid-like pattern.
I'm working on a game with @elliot.website.
#screenshotsaturday
To be clear, the video shows correct behaviour, but there are other cases where it sort-of breaks right now.
12.04.2025 17:53 β π 1 π 0 π¬ 0 π 0The layout algorithm is not quite correct yet, and I'm using this to help me understand where propagation is going wrong :)
12.04.2025 17:50 β π 1 π 0 π¬ 1 π 0