news
Programming Leftovers
-
AdventOfCode ☛ Day 1 - Advent of Code 2025
Collect stars by solving puzzles. Two puzzles will be made available on each day; the second puzzle is unlocked when you complete the first. Each puzzle grants one star. Good luck!
-
Kerrick Long ☛ The Big OOPs: Anatomy of a Thirty-five-year Mistake
This is a fantastic deep-dive into the history of object-oriented programming with 50+ years of primary sources! Even though I make information systems, not games, I really enjoyed Casey Muratori’s talk.
-
Balthazar Rouberol ☛ Migrating my code from Github to a self-hosted Forgejo instance
Leaving Github has been on my mind for a while, as the service has fully entered its enshittification phase. It's now full aimed at a single thing: selling acccess to AI-models, trained on your code. And if there's one thing to take away from Cory Doctorow's Enshittification: Why Everything Suddenly Got Worse and What to Do About It book, is that once a company goes down that path, you simply can't trust it anymore. It will use its dominant position and network effect to keep you locked in, and milk you for everything you have.
This is why, starting today, the open source repositories containing tools I built for myself are migrated to a self-hosted Forgejo instance, accessible here. I'll set these repositories Github counterparts to read-only, and redirect them to my instance in the README.
-
Perl / Raku
-
Perl ☛ Perl Advent Calendar 2025 - The Ghost of Perl Developer Surveys Past, Present, and Future
It was a quiet December evening when a weary Perl developer—curled up with a warm mug of cocoa—received an unexpected visitor. The logs rustled. The LEDs flickered. And from the shimmering depths of CPAN emerged a familiar yet mysterious figure: The Ghost of Perl Surveys Past.
-
-
Java/Golang
-
Redowan Delowar ☛ Splintered failure modes in Go
This function returns two signals: a boolean to indicate if the string is valid, and an error to explain any problem the function might run into.
The issue is that these two signals are independent. Put together, they produce four possible combinations: [...]
-
University of Toronto ☛ Go still supports building non-module programs with GOPATH
When Go 1.18 was released, I said that it made module mode mandatory, which I wasn't a fan of because it can break backward compatibility in practice (and switching a program to Go modules can be non-trivial). Recently on the Fediverse, @thepudds very helpfully taught me that I wasn't entirely correct and Go still sort of supports non-module GOPATH usage, and in fact according to issue 60915, the current support is going to be preserved indefinitely.
-