That's an interesting take at ECS, seems to do lots of optimizations under the hood too.
I'm surprised to not have heard of those libraries until now.
21–30 of 39 posts
That's an interesting take at ECS, seems to do lots of optimizations under the hood too.
I'm surprised to not have heard of those libraries until now.
Main monorepo: https://codeberg.org/thi.ng/umbrella Looks like a collection of many useful general-purpose dependency-free modules written in TypeScript.
thi.ng is great and should really get more attention. The packages have a very clean and atomic structure, you can easily pick one or more and use them in your project. fun fact: you can reach each package from a https://thi.ng/PACKAGE short URL, e.g. https://thi.ng/color . I started using the thi.ng collection a couple of years ago when I had more time for creative code sketching ( https://guidoschmidt.cc/sketchbook…
Of the thi.ng library I've only looked at a few modules so far but I really like the clean organization, functional style, and how each module is independently useful. The whole thing has good taste, a quality that's hard to explain but "you know it when you see it." I'm looking forward to playing with it, like a new box of Lego blocks, haha.
This has been around for a long time and I've always been so surprised it has had seemingly so little traction outside of the author's own projects. The love and care and thoughtfulness of every library has always been so great to explore.
Originally I bounced off this because of clojure, it just wasn't worth the time to learn. Now it's typescript.. another language I'm just not interested in learning. I'm happy to port whatever bits of the library I want to use to a language I prefer when I need it.
But this is a absolutely remarkable set of libraries covering all kinds of nooks and cranies. It's worth putting on everyones list.
Main monorepo: https://codeberg.org/thi.ng/umbrella Looks like a collection of many useful general-purpose dependency-free modules written in TypeScript.
thi.ng is great and should really get more attention. The packages have a very clean and atomic structure, you can easily pick one or more and use them in your project. fun fact: you can reach each package from a https://thi.ng/PACKAGE short URL, e.g. https://thi.ng/color . I started using the thi.ng collection a couple of years ago when I had more time for creative code sketching ( https://guidoschmidt.cc/sketchbook…
Main monorepo: https://codeberg.org/thi.ng/umbrella Looks like a collection of many useful general-purpose dependency-free modules written in TypeScript.
Main monorepo: https://codeberg.org/thi.ng/umbrella Looks like a collection of many useful general-purpose dependency-free modules written in TypeScript.
thi.ng is great and should really get more attention. The packages have a very clean and atomic structure, you can easily pick one or more and use them in your project. fun fact: you can reach each package from a https://thi.ng/PACKAGE short URL, e.g. https://thi.ng/color . I started using the thi.ng collection a couple of years ago when I had more time for creative code sketching ( https://guidoschmidt.cc/sketchbook…
I believe the new libs are now all in TS and not Clojure anymore. Does that mean TS is better suited for computational art? Or are there other reasons why this lib was moved to TS?
You can find his talk about it a bit on Twitter and in the Github issues. But as far as I remember it mostly boils down to the fact that thing/geom got very little traction and external contributions. He developed this huge ecosystem on his own to make digital art but it wasn't being really picked up by others. Digital art is typically quite collaborative with people giving workshops and stuff. The switch to TS was s…
From a technical POV, the main reasons I started looking at other languages (Go, C11, TypeScript) back in 2015/16 were: Better performance and less effort required for working with low-level primitives & APIs. I also got more interested again in embedded development (wrote a long blog post about it[1]). The final decision was when I started using thi.ng for a large 5 year computational design tool/project at Nike...
Many of the language features introduced with ES6 (esp. generators, iterables, spread operator, Map/Set, Promises), suddenly made Clojure/ClojureScript feel much more clunky and I felt I can have a lot more fine grained control and performance with much less ceremony/effort, once I implemented (and usually also vastly extended!) some of the key Clojure features/datatypes myself... Working with modern Web APIs (WebGL, WebAudio, WASM, async/await etc.) all became so much easier...
The literate programming (LP) approach I used initially (between 2011-2016) was using the "standard" Emacs OrgMode Babel setup which I found an incredible amplifier for my work[2][3]. Emacs was widely used among the Clojure community back then, but LP itself as an approach _was_ unusual, still is, and scared people off...
[1] https://medium.com/@thi.ng/the-jacob-s-ladder-of-coding-4b12... [2] https://www.reddit.com/r/emacs/comments/9w8i2g/comment/ec7xv... [3] https://www.reddit.com/r/Clojure/comments/9deyxe/comment/e69...