news
Programming Leftovers
-
Hackaday ☛ All The Best Computers Boot To BASIC
Anyone whose first computing experience came in the form of an 8-bit home computer will tell you about booting straight into a BASIC interpreter. The machine invited you to program it, and no doubt many of our middle aged readers are here today because they ran with that.
-
Markus Eliasson ☛ Consistency and the damage done
Looking at software, I think we make this kind of mistake too often. We introduce the need for consistency not considering the cost. Consistency is an alluring attribute, it is often elegant to us, full of technical details, and leaves us knowing that our data is in a consistent state, we have done a good job.
Consistency requires coordination, and coordination sucks.
-
Jeroen Sangers ☛ Jeroen Sangers ◦ brain tags - Unplanned tasks get finished more often than planned ones
Recency bias and time discounting explain most of it. Something standing in front of you right now weighs more than something you decided was important last Thursday.
This undermines an assumption sitting under most productivity advice: that writing your priorities down protects them. It does not. Your plan gives you direction and an overview, and both are worth having. What it cannot do is win an argument with whatever just walked into your inbox.
-
Andy Bell ☛ A CLI for adding new music to the collection
The last thing to do is to make my life a little easier. Markdown files work perfectly fine for the music collection, but they’re a bit of a faff. Mostly because I always forget the front matter structure, so to fix that, I created myself a Command Line Interface (CLI) which is a series of questions, resulting in a new item being added to the collection.
I add a lot of music to my collection because I’m truly trying to get away from streaming platforms completely, so something that makes the process of keeping it up to date simple is very much needed.
Let’s break down the tool I built, piece-by-piece.
-
Andrew Nesbitt ☛ Bazel Module Versions Aren’t SemVer
Bazel is a build tool first, and its module system (bzlmod, the default since Bazel 7) is mostly used to pull in existing C++, Java and Go projects that already have their own release histories. Rather than force those projects to renumber, Bazel documents its version format as a deliberate loosening of SemVer: any SemVer string is valid and sorts the same way, and beyond that the release part can have any number of segments and each segment can contain letters. Abseil’s date-based 20210324.2 and protobuf’s two-segment 36.0 are both accepted as-is. The grammar in Version.java is RELEASE[-PRERELEASE][+BUILD], where RELEASE is dot-separated identifiers of ASCII letters and digits only. Comparison applies SemVer’s prerelease identifier rules to the release segments as well: [...]
-
Zig ☛ Devlog ⚡ Zig Programming Language
Pointer Stability Locks were added to std’s Hash Map containers in 2024. A pull request initially opened by Leo Emar-Kar in 2025 now brings this technique for ensuring memory safety to std.ArrayList.
To make use of this in your code, add a call to lockPointers() when you first store a pointer to an element or a slice of elements backed by the ArrayList, and call unlockPointers() when those pointers are no longer needed.
-
Serge Guelton: Pros and Cons of Unified Build
Unified builds (also know as Jumbo Builds) is a build techniques that aims at improving build time through the concatenation of several sources as a single unified source before compilation.
The goal is obtained through implicit caching of header instantiation, although it implies a trade-off with parallelism.
-
Dirk Eddelbuettel ☛ Dirk Eddelbuettel: prrd 0.0.7 at CRAN: Maintenance
A new minor release of prrd arrived at CRAN this morning: the a first release in two and a half years. prrd facilitates the parallel running [of] reverse dependency [checks] when preparing R packages. It is used extensively for releases I make of Rcpp, RcppArmadillo, RcppEigen, BH, and others.
-
Neil Alexander ☛ Please stop flooding our projects with AI slop to furnish your CV
I closed all three PRs without comment.
Maybe this was unreasonable, but truthfully, I’m just not interested in encouraging people to take up our time with this kind of busywork. I do not want to set a precedent of accepting PRs that materially improve nothing, nor do I want our contributor list to become a reward for asking a robot to fix typos.
-
Python
-
Juha-Matti Santala ☛ X is for XML parsing - Python A to Z
Today I’m doing a bit of piggybacking: XML fits the “X” of the day but I’m also going to talk about HTML parsing because we can use the same tool. I’m also cheating a bit (honestly, I couldn’t come up with a new thing starting with X to write about) because I’ll mostly just point you towards my previous work. I’m doing this to bring new eyes to BeautifulSoup as my old blog posts don’t pop up so often in the feeds.
I’m starting with a story time: [...]
-
-
Java/Golang
-
Peter 'CzP' Czanik ☛ Syslog-ng end of August news, and about scaling back Java support
Most of August, I was on vacation, but now I’m back and I try catching up on the events of the past weeks, just like my colleagues do. Currently, we are fixing issues and reviewing contributions, but we also discussed scaling back our efforts on Java support.
-
-
Rust
-
Rust Weekly Updates ☛ This Week In Rust: This Week in Rust 666
Hello and welcome to another issue of This Week in Rust!
-