news
Programming Leftovers
-
AdventOfCode ☛ Day 4 - Advent of Code 2025
The forklifts can only access a roll of paper if there are fewer than four rolls of paper in the eight adjacent positions. If you can figure out which rolls of paper the forklifts can access, they'll spend less time looking and more time breaking down the wall to the cafeteria.
In this example, there are 13 rolls of paper that can be accessed by a forklift (marked with x): [...]
-
AdventOfCode ☛ Day 5 - Advent of Code 2025
The Elves in the kitchen explain the situation: because of their complicated new inventory management system, they can't figure out which of their ingredients are fresh and which are spoiled. When you ask how it works, they give you a copy of their database (your puzzle input).
The database operates on ingredient IDs. It consists of a list of fresh ingredient ID ranges, a blank line, and a list of available ingredient IDs. For example: [...]
-
Web Performance Calendar ☛ Fast by Default - Web Performance Calendar
After 25 years building sites for global brands, I kept seeing the same pattern appear. A team ships new features, users quietly begin to struggle, and only later do the bug reports start trickling in. Someone finally checks the metrics, panic spreads, and feature development is put on hold so the team can patch problems already affecting thousands of people. The fixes help for a while, but a month later another slowdown appears and the cycle begins again. The team spends much of its time firefighting instead of building.
I call this repeating sequence of ship, complain, panic, patch the Performance Decay Cycle. Sadly, it’s the default state for many teams and it drains morale fast.
There has to be a better way.
-
Arjen Wiersma ☛ Advent of Code 2025 Day 4 | Arjen Wiersma
Instead of just saying how many should be eliminated, we do it until there are no eliminations possible. This is highly reminiscent of a Conway Game of Life puzzle. In Clojure this is quite nicely done by reading the grid as a vector, and then ranging over all the coordinates. On each coordinate just take a look at the neighbors and apply the logic. Its pure nature means that the functions are already working in the right way to do this repeatedly.
-
Modus Create LLC ☛ The anatomy of a dependency graph
When working on the source code, you likely think of dependencies in the graph as individual modules that import code from each other. When drawing a project architecture diagram, however, the individual files are likely to be grouped in packages to hide the individual files that a package consists of, primarily for brevity. Likewise, in build systems such as Bazel, you would often have one “node” in the dependency graph per directory. Of course, it wouldn’t be totally unreasonable to have a few of “nodes” that would represent a couple of packages in the same directory on disk. You could, for instance, store performance and chaos tests in the same directory, but have them modeled as individual units since they might have a different set of dependencies.
-
Jasper Tandy ☛ Jasper is blogging: A new project
The problem is that I always end up building in Rails. I love Rails and I'm not ashamed of that. I use it for everything that I want to get running quick. It's honestly comically fast to build with. I'm a bit stuck on something at the moment but I'll sleep on it a few nights and figure it out.
-
Meta Platforms Inc ☛ Critical Security Vulnerability in React Server Components
There is an unauthenticated remote code execution vulnerability in React Server Components.
We recommend upgrading immediately.
-
Perl / Raku
-
Perl ☛ Perl Advent Calendar 2025 - Santa needs to know about new toys...
"Short for lib-www-perl. For historical reasons. Lost in the midst of time. It does all the heavy lifting of making web requests for us."
-
The Weekly Challenge ☛ Advent Calendar - December 4, 2025
You are given an array of positive integers, @ints. Write a script to return the sum of all possible odd-length subarrays of the given array. A subarray is a contiguous subsequence of the array.
-
Ruben Schade ☛ Using List::Util instead of List::MoreUtils
Speaking of Perl, List::MoreUtils has always been one of my more common imports, mostly for the uniq function: [...]
-
Rakulang ☛ Day 5 – Tools for Gnome::Gtk4 – Raku Advent Calendar
A short while ago, Santa Claus came to me for a short visit to drink a cup of tea together. That was very pleasant, but I had the idea that there was something more, knowing that he is always busy, especially these days. After some time, he came forward and said that the elves had found my distribution GnomeTools and were eager to use it. It looks so promising. However, they had problems finding any documentation about it. I had to admit that there was still a lot missing. My excuse was that the package needed a lot more classes and might also change here and there. Santa Claus said that that shouldn’t be a problem as long as I keep the version below 1 ;-). Santa said that he would like to see some examples so that his elves could do something with the classes.
Ok, here we go then …
-
-
Java/Golang
-
Frank Delporte ☛ JavaFX In Action #24 with Florian Enner about Robot 3D Visualizations and Charts
I met Florian Enner a few times at Devoxx in Belgium, and each time he amazed me with his JavaFX demos! He is one of those rare developers who take JavaFX to the next level by adding 3D visualizations.
-
[Old] Miguel Batista ☛ Extending python with Go
This post is about extending python code with Go. Python’s ecosystem typically contains a great deal of what is needed, but for the cases when it doesn’t or when some bespoke development is justified, Go might be worth looking into. For one, the language is simple and the compiler forces whatever code you generate to maintain some readibility. After ad-hoc calls of Go code, structured calls of Go code, trying alternatives like this or this, it seems like it can be simpler or just a bit more automated.
-