Live data from Hacker News

Celtic Code: Drawing knots with Python

2earth.github.io

11–20 of 23 posts

Re: Celtic Code: Drawing knots with Python

#12

This post makes me wonder - does anyone else think there is a need for a term to more strongly differentiate between procedural generation (like this knot-drawing program) and genAI? I feel it really diminishes the impact of the work of programmer-artists nowadays to say they make “computer-generated” art. Or maybe we already have such a term?

I instinctively agree there is an important difference.

If you try to define systematically what that difference is, though, it's not obvious. At the end of day, I think it's something like "degree of difficulty" or "amount of thought", which are vague concepts. Yet most would agree what the author here did requires more skill and thinking than typing "image of celtic knot" into Gemini.

Re: Celtic Code: Drawing knots with Python

#13
post #12

This post makes me wonder - does anyone else think there is a need for a term to more strongly differentiate between procedural generation (like this knot-drawing program) and genAI? I feel it really diminishes the impact of the work of programmer-artists nowadays to say they make “computer-generated” art. Or maybe we already have such a term?

I instinctively agree there is an important difference. If you try to define systematically what that difference is, though, it's not obvious. At the end of day, I think it's something like "degree of difficulty" or "amount of thought", which are vague concepts. Yet most would agree what the author here did requires more skill and thinking than typing "image of celtic knot" into Gemini.

I used to work on procedural graphics, and to me the clear difference is that all the training involved happened inside my brain. This author's article describes a similar process. He's not throwing a lot of existing examples into a black box, letting it learn their features, then driving it to emit new images with similar features: he is learning, himself, what those features are, inventing a process which fits those bounds, then automating it with code.

Re: Celtic Code: Drawing knots with Python

#14

This post makes me wonder - does anyone else think there is a need for a term to more strongly differentiate between procedural generation (like this knot-drawing program) and genAI? I feel it really diminishes the impact of the work of programmer-artists nowadays to say they make “computer-generated” art. Or maybe we already have such a term?

Is "procedural generation" not exactly that? I wouldn't think of genAI when I hear that term.

Re: Celtic Code: Drawing knots with Python

#15
post #3

A web app that uses Python to create Celtic knots and it's really fun!

Looks neat. Might be worth constraining the inputs. I got an error at 200x200: Uncaught PythonError: Traceback (most recent call last): File " ", line 22, in resetKnot File " ", line 473, in generateKnot File "/lib/python3.12/site-packages/PIL/Image.py", line 2941, in new return im._new(core.fill(mode, size, color)) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ MemoryError

200x200? You're crazy!

Also: yes, good idea

Re: Celtic Code: Drawing knots with Python

#17
Webapp doesn't work for me (current version Firefox):

  Uncaught TypeError: loading.showModal is not a function
     https://2earth.pyscriptapps.com/celtic-knot/  latest/:20
  latest:20:17
     https://2earth.pyscriptapps.com/celtic-knot/    latest/:20
and

  Uncaught (in promise) DOMException: IDBFactory.open: The operation is insecure
     index.js:65
    Xe index.js:63
    Ye sync.js:8
    engine pyodide.js:95
    get interpreters.js:36
    promise callback*get/ core.js:307
    promise callback\* core.js:182
core-Dwn9Kajy.js:1

Re: Celtic Code: Drawing knots with Python

#19

This post makes me wonder - does anyone else think there is a need for a term to more strongly differentiate between procedural generation (like this knot-drawing program) and genAI? I feel it really diminishes the impact of the work of programmer-artists nowadays to say they make “computer-generated” art. Or maybe we already have such a term?

There is algorithmic art:

https://en.wikipedia.org/wiki/Algorithmic_art

> From one point of view, for a work of art to be considered algorithmic art, its creation must include a process based on an algorithm devised by the artist. An artist may also select parameters and interact as the composition is generated. Here, an algorithm is simply a detailed recipe for the design and possibly execution of an artwork […]

Creating art by AI certainly also uses an algorithm to some extent but it cannot be said to have devised that algorithm and arguably also not to clearly define all parameters to the algorithm.

Re: Celtic Code: Drawing knots with Python

#20

The linked article references George Bain’s book on Celtic knotwork construction methods, but his son Ian Bain actually found a much, much better method, and argues convincingly that this, not his father’s, was the method used by medieval Celtic illustrators. Ian’s method more easily produces consistent rope widths (when done by hand), and addresses the issue of how to soften these angular turns which ruin the rope e…

So I do agree with you that Iain Bain's methods is better than his father's, especially for us mere mortals. But George's method for consistent rope widths (step 1: draw them all the same width) did work better for me when I was getting a program to generate knotwork on grid of squares and rhombuses, where following Iain's method led to irregular rope widths because the angles changed.
Post reply on HN