Gorilla Newsletter 85

Genuary 2025 - Painting with Plotters - Automatic ALife Discovery - PI's Evil Twin - Recreating the Comanche Voxel Space Engine - Programming as Theory Building - Designing TinyUrl - Understanding B-Trees - 2024 AI Recap

Gorilla Newsletter 85
My sketch for the fourth prompt of Genuary 2025: Black on Black

Welcome back everyone šŸ‘‹ and a heartfelt thank you to all new subscribers who joined in the past week!

This is the 85th issue of the Gorilla Newsletterā€”a weekly online publication that sums up everything noteworthy from the past week in generative art, creative coding, tech, and AI.

If it's your first time here, we've also got a Discord server now, where we nerd out about all sorts of genart and tech thingsā€”if you want to connect with other readers of the newsletter, come and say hi: here's an invite link!

Let's get into the news šŸ‘‡

All the Generative Things

1 ā€” Licia He's Painting with Plotters Course: Licia He's plotter course kicked off mid-December, and the first two modules are now up on the course page! In the first two videos Licia gives an introduction to the world of plotters, going over many of the considerations around using plotters with water color painting, alongside other practical tips for plotting in generalā€”even if you don't have a plotter (yet) it's a super insightful watch!

Module 0: Introduction

The second video provides more glimpses into Licia's workflow; for instance, she what I found fascinating is that she uses a network of Raspberry Pis to control several plotters at once, while keeping her main computer free for other tasks. Licia also additionally gives a breakdown of her physical setup that uses a magnetic board to fix things in placeā€”overall it looks like her course will save you a lot of headaches before you even get started with your plotter journey.

Super cool stuff, excited for the coming modules releasing over the next couple weeks/monthsā€”we're looking at around 20 videos! šŸ‘

2 ā€” Automating the Search for Artificial Life with Foundation Models: the term "Foundation Model" refers to all forms of large neural networks that can be used across a broad range of different tasksā€”think LLMs as well as the powerful text-to-image generators. A new paper from Sakana AI proposes an algorithm titled Automated Search for Artificial Life (ASAL), that basically makes use of a vision-text model to automatically discover new artificial life patterns that present certain interesting behaviors.

Sakana AI
Automating the Search for Artificial Life with Foundation Models
Our proposed approach aims to (1) find simulations that produce a specific target behavior, (2) discover simulations that keep generating novelty forever as you run it, and (3) illuminate all the different simulations that are possible.

Their method can somehow magically accomplish this task by simply providing an input text prompt, such as "a self-replicating pattern" for instance, and then automatically discovering a set of rules (within the constraints of the algorithm that it can use) that produces emergent behavior to visually satisfy the given prompt. I will admit that I don't fully understand how the entire algorithm works, but the labeled examples provided in the paper demonstrate that their method is mindbogglingly spot on with the given input prompts:

Whether or not they're cherry picked, this is super impressive. Later on down the page they demonstrate some larger ALife explorations, where multiple instances of cellular automata are first generated within their own small universes (cells in a grid) and then pitted against each other to see which of them will occupy the most space. If you're interested, check out the official paper and the Github repo of the open sourced code.

3 ā€” Algorithmic Pattern Conference: is a hybrid conference/festival that brings together researchers and practitioners curious about the practice and culture of algorithmic pattern-making. The conference took place for the first time in November 2023 (was about to say last year *slaps on hand*) mainly as an online Salon, with a small gathering in Barcelona.

Algorithmic Pattern ā€“ Sheffield and Online, September 2025

It's organized by Alex McLean, who you might recognize for being part of the scene with his algorithmic music & live codingā€”alongside other individuals that make some cool stuff (there's a list on the conference page). If you're interested you'll probably want to sign up to their mailing list to get an update when there's more concrete information about the event.

Apparently, from what the website states right now, it will take place in Sheffield this year, 12-14th September. The page also states that a call for proposals will open this January with a deadline in Mayā€”it might be worth pitching an idea! I have a hunch that this year's installment will be overtaken by a horde of generative artists šŸ˜„

4 ā€” Recreating the Comanche Voxel Space Engine: NovaLogic's 1992 Comanche is an iconic simulation game where the player flies military missions in a RAH-66 Comanche attack helicopter over procedural landscapes.

The novelty of Comanche was the gigantic leap in graphics that it achieved in comparison to previous gamesā€”It's the first commercial flight simulation based on voxel technology, via the company's proprietary Voxel Space engine (written entirely in assembly). Sebastian Macke recreated this engine and published it as a repo over on his Github with some additional explanations and a breakdown of the voxel raster graphics rendering engine that Novalogic invented at the time

GitHub - s-macke/VoxelSpace: Terrain rendering algorithm in less than 20 lines of code
Terrain rendering algorithm in less than 20 lines of code - s-macke/VoxelSpace
The graphics were breathtaking for the time being and in my opinion 3 years ahead of its time. You see many more details such as textures on mountains and valleys, and for the first time a neat shading and even shadows. Sure, it's pixelated, but all games in those years were pixelated.

Check out Sebastian Macke's simulationcorner.net page for other cool similar retro-recreations! And I also recommend checking out the Hacker News item for Sebastian's repo, there's an interesting discussion around novelty in past and present video games.

Link to Hacker News Item

5 ā€” 5 Ways for Drawing 3D Outlines (in Unity): Alexandre Ameye shows us 5 different techniques for drawing 3D object outlines and goes pretty in depth on each one. The article is geared towards creating outline effects in Unity, but the methods are general enough to be applicable in any 3D settingā€”hence if you've been looking into creating this kind of effect, this is your starting point.

5 ways to draw an outline
šŸ–ļø Explaining multiple techniques for rendering outlines and highlights for real-time applications. This includes vertex object-space as well as screen-space methods. This can be used to render outlines in Unity or Unreal. Outlines can be used for gameplay reasons or aesthetics.

6 ā€” PI's Evil Twin (the Lemniscate Constant): To cap off this section, John Carlos Baez made a cool in-depth thread over on Mastodon about a strange constant that's related to the infinity curve (the eight curve ā™¾ļø). This evil twin of PI has its own associated mutant trigonometric functions and propertiesā€”but I'll leave it to John's to explain what it's all about, it gets real math-y real quick though.

Link to Thread

Genuary 2025 & EOY Gifts

Before we get into some of the other notable finds of the past weekā€”let's quickly talk about Genuary 2025 that's currently in full swing! It's already been a blast to see all of the cool creations that people are making for the prompts!

Personally I'm really happy that I prepared just a little bit ahead of time, and laid out some potential ideas for each promptā€”so far I've been able to keep up with the dailies, and I'm happy with the batch of sketches that I've churned out so farā€”here's the ones I've made at the time of writing for the first 5 prompts.

As always, I'll put together my personal Genuary recap towards the end of the month where I'll explain what's going on in each one of theseā€”if you're curious to learn a bit more about all the things that I end up making. If you're interested here's the one from last year:

Genuary 2024: A Personal Recap
Genuary 2024 is now officially over! And while we emerge with folders loaded with sketches and ideas to work on throughout the coming weeks, hereā€™s my personal celebratory recap of everything Iā€™ve made in Genuary.

Now it's already getting a bit tight time-wise; moving forward it'll be about being a bit more pragmatic, going with ideas that aren't too overly ambitious and can be realized in a reasonable amount of time. Might just have to pull something from the trick-bag!

Another notable thing I want to point out here, is that I received a little gift from none other than Julien Gachadoat! We chatted a bit during the Berlin summit, where I learned that he enjoys reading the newsletterā€”for the holiday season he was so kind to send over the beautiful black and white plot, here's a pic next to the blue mini plot he handed out in Berlin:

I will definitely have to get a small frame and hang it next to my desk! Thank you again Julien!

As for my EOY recap, it's taking a bit longer to put together this time, since I want to actually reflect a bit on what I've accomplished in 2024 and figure out how to actually best move forward in 2025. Should be ready this coming week though!

With the housekeeping out of the wayā€”let's get into some other cool stuff I found this week šŸ‘‡

Programming Corner

1 ā€” Peter Naur's Programming as Theory Building: Peter Naurā€™s ā€œProgramming as Theory Buildingā€ is a seminal paper that challenges the prevailing view of programming as primarily a process of problem-solving or the production of code. Instead, Naur argues that programming is fundamentally an activity of building, evolving, and maintaining a mental theory about a problem domainā€”essentially a theory that lives in the mind of the programmer.

Link to Paper

And this still very much holds true today, in contemporary discussions about technical debt, knowledge management, and the human factors of software development. His emphasis on the human understanding behind code highlights why codebases become hard to maintainā€”itā€™s not just about the code itself but about the loss of the underlying mental theory when developers leave or stop maintaining it. Also recommend checking out the associated Hacker news discussions that shed some more light on the paper.

Link to Hacker News Item
Peter Naur was a Danish computer science pioneer and 2005 Turing award winner. He is best remembered as a contributor, with John Backus, to the Backusā€“Naur form notation used in describing the syntax for most programming languages.

2 ā€” Designing TinyUrl as an Systems Design Problem: a recent tweet from Grant Slatton caught my attention, not just because it did some numbers, but because it's something I attempted to do earlier in 2024 when I undertook my little forray into Next.js, re-creating a simple (or so I thought) link shortener web app as an exercise. I didn't really get very far, just a simplistic interface, a database to store the input links, as well as a redirect function. Under the apparent simplicity of such an app actually hides quite a bit of depth; how do you design this system at scale?

Link to Post

My general take-away from the discussions in the replies is that the answer to this question is "it depends on the number of users and traffic". Looking into it a bit more out of curiosity I found this in depth article from Sandeep Verma that details outlines the considerations for this kind of service.

System Design : Scalable URL shortener service like TinyURL
The goal of this article is to discuss system design of services like bitly.com , tinyurl , t.c o etc. Innumerable articles are present onā€¦

Hence, if you have an upcoming job interview for you next system design job, this would be your starting point šŸ˜†

3 ā€” Understanding B-Trees for Databases: A B-Tree is a type of search tree that holds multiple keys in each node, unlike a binary tree where each node only has two children. In a binary tree, searching can become slow if the tree becomes unbalanced (higher depth than required to hold all the data), but B-Trees keep their height small by splitting and merging nodes as needed.

Wiki Page on B-Trees

B-Trees have an inherently more balanced structure making them efficient for handling large datasets, which is why they are widely used in databases and file systems for fast lookups. Ben Congdon explains this in an article of his, walking us through how this would work at scale.

B-Trees: More Than I Thought Iā€™d Want to Know
B-Trees are not boring, after all

Fun-fact, and if you were curious: the "B" in B-Tree doesn't actually have a universally agreed-upon meaning, but it most commonly stands for Balanced or Bayer, after Rudolf Bayer, who co-invented the structure in 1972.

AI Corner

1 ā€” The Batch 2024 AI Roundup: It's been a huge year for AI, things have made astronomic leaps since the start of the year, from LLM powered code editors to agentic crypto analystsā€”it's kind of a pretty crazy time to be alive. The iconic Andrew Ng's provides us with a summary of the interesting developments in 2024 and lets us in on his predictions for 2025.

Link to Post

2 ā€” Can LLMs write better code if you keep asking them to "write better code"?: you might remember the short-lived AI Slop phase where people used image generators to turn a starting image "more X", for example "make this image of a metal head more metal"ā€”with it always deteriorating (ascending?) into something cosmic. Max Woolf explores this idea in the setting of LLM generated code, what happens if you keep asking the chat-bot to make the code better?

Can LLMs write better code if you keep asking them to ā€œwrite better codeā€?
Most coders want AI to write code faster: I want AI to write FASTER CODE.

And that ends up kind of working, until you hit that point of diminishing returns. Naturally the code also becomes bloated beyond recognition. Max then also explores the results with a expertly engineered prompt to guide the LLM, which obviously ends up working much betterā€”this latter section is particularly interesting because it provides a couple of explanations of why he designed the prompt in a particular way that I wasn't previously aware of.

Music for Coding

Kenmochi Hidefume's Shakespeare is an absolute masterpieceā€”and I can confidently say that after just one listen of the 2010 album! Hidefumi is a Japanese musician, songwriter, producer, and DJā€”his early work caught the attention of Nujabes who signed him to his label Hyde Out Productions. In 2012, he became a founding member of ę°“ę›œę—„ć®ć‚«ćƒ³ćƒ‘ćƒćƒ© (Wednesday Campanella) as the songwriter and producer until his departure in 2021 to work on other projects.

You might recognize Wednesday Campanella from their hit song Edison, which I also recommend giving a listen to while you're at it! And that's it from meā€”hope you've enjoyed this week's curated assortment of genart and tech shenanigans!

Now that you find yourself at the end of this Newsletter, consider forwarding it to some of your friends, or sharing it on the world wide websā€”more subscribers means that I get more internet points, which in turn allows me to do more internet things!

Otherwise come and say hi over on TwiX, Mastodon, or Bluesky and since we've also got a Discord now, let me shamelessly plug it here again. If you've read this far, thanks a million! And in case you're still hungry for more generative art things, you can check out last week's issue of the newsletter here:

Gorilla Newsletter 84
Understanding Turing Machines - Quantifying Chaos: what is Entropy? - Roguelike Celebration 2024 - Luka Piskorecā€™s fxFacetune - Processing 4.3.1 - Century-Scale Storage - Ideas from A Philosophy of Software Design - The Flaws of JSON - Fish-eye Lens for Text - TRELLIS 3D

You can also find a backlog of all previous issues here:

Newsletter - Gorilla Sun
Weekly recap of Gorilla Articles, Art and other interesting things from the world of generative art and creative coding.

Cheers, happy coding, and again, hope that you have a fantastic week! See you in the next one!

~ Gorilla Sun šŸŒø