Programming Leftovers
-
Explain Extended ☛ Happy New Year: Diffusion Model image generator in about 700 lines of pure SQL
Regular readers of my blog will be aware that SQL is an excellent tool for graphics. You can use it to draw snowflakes, fractals, ray-traced 3D pictures, and many other things. SQL art is beautiful, albeit slow to generate.
These days they say AI is taking over, and human-made art will soon go the way of the dodo. The same fate awaits SQL-made art, I'm afraid. But you can't stop the progress. If you can't beat'em, join'em. To make regular art, you need regular AI, and to make SQL art, you need SQL AI.
So today, in an effort to save SQL art from extinction, we will be implementing a program capable of creating realistic images of butterflies from scratch—in SQL, of course.
-
Andrew Stiefel ☛ The Myth of the Average User
Enter Lieutenant Gilbert Daniels, who conducted a groundbreaking study of 4,063 pilots. His discovery was shocking: when measuring ten critical body dimensions used for cockpit design, not a single pilot fell within the average range across all measurements. Not one.
This is the “flaw of averages” – the mathematical reality that designing for the average means designing for no one. The average user, like the average pilot, is a statistical ghost.
-
Andrew Healey ☛ Building Game Prototypes with LÖVE
One of my goals for 2025 is to build a complete game. Complete as in, you can buy it on Steam or the App Store for $2.99 or so. I've made little games before but completing and shipping a game would probably be my largest side project yet (aside from this blog).
Over the winter break, I spent some time building game prototypes with LÖVE — a framework for making 2D games in Lua. My goal was to research which game making tools fit my skillset, and to find where my strengths lie so that I can be efficient with my time in 2025.
-
Rlang ☛ Generating a triangular navigation mesh from H3 hexagons in R
A navigation mesh is a data structure used to aid in pathfinding around obstacles. Originally used for video games and robotics, we can also apply the concept of this navigational mesh to the movement of animals through landscape, using methods such as FEEMS.
-
Frank Delporte ☛ Coding for fun: An experiment with Virtual Threads, JavaFX, and Music
When a nerdy dad and 14-year-old music-playing son join forces and start experimenting with music and code, some nice things can happen. Did you ever present your music piece in a business dashboard with charts? Did you know that the FXGL game library can be used to generate a piano with fireworks? And can Virtual Threads playback MIDI events with just a few lines of code and thousands of threads?
-
SmartLogic ☛ Creating Horizon: Deploy Elixir Phoenix Apps on FreeBSD with Jim Freeze
The Elixir Wizards welcome Jim Freeze, organizer of ElixirConf and creator of the Horizon library. Jim shares his journey from organizing Ruby conferences to founding and growing ElixirConf into the community cornerstone it is today. He reflects on the challenges of running a major conference, how COVID-19 shaped the event, and why the talks remain an evergreen resource for the Elixir ecosystem.
We discuss Horizon, Jim’s deployment library for Elixir and Phoenix applications with Postgres on FreeBSD. Driven by a need for simplicity and cost-effectiveness, Jim explains how Horizon minimizes external dependencies while delivering fault-tolerant and streamlined setups. He compares it to tools like Fly, Terraform, and Ansible, highlighting its low cognitive load and flexibility—key benefits for developers seeking more control over their deployment environments.
-
CCC ☛ Basics of software publication
In this talk I want to give you an overview about the minimal steps you should take to prepare your code for publication. Covering what belongs into a repository, how to make your code sharable and which license to pick.
-
Steinar H Gunderson ☛ Steinar H. Gunderson: git.sesse.net goes IPv6-only
Following Dennis Schubert's post on how LLM bots are scraping the Internet continuously at full speed, I decided to take a look at my own server. If you exclude my chess site which naturally has a lot of unusual organic traffic right now (due to the World Rapid and Blitz Chess Championship; every site update is a long-poll request), I am at a neat 86% of requests matching “crawler” or “bot” in the UA, and then more crawler traffic with spoofed UAs on top of that. (GPTBot at the top, of course, with 25x as many requests as Googlebot. MJ12Bot is in second place, which I'd never even heard of.)