news
Programming Leftovers
-
Andrew Nesbitt ☛ What’s Going On with FAIR Package Manager
The FAIR package manager started as a response to the 2024 Automattic/WP Engine conflict, when Matt Mullenweg used access to the WordPress.org plugin repository as leverage in a business dispute. Plugin authors and hosting companies watched a single person effectively weaponize the central registry, and FAIR was built to make sure that couldn’t happen again, assembling federated package distribution, cryptographic identity with DIDs and ED25519 signatures, and a labeler system borrowed from Bluesky’s moderation architecture under the Linux Foundation in a matter of months.
-
Salih Muhammed ☛ I beg you to follow Crocker's Rules, even if you will be rude to me
There is a concept called Crocker's Rules, and if you have never heard of it, the short version is this: you give people around you explicit permission to be maximally direct with you, to skip social cushioning. The person invoking Crocker's Rules is saying, in effect, "your feelings about how I might receive this are your problem to manage, not mine, just give me the information."
-
R / R-Script
-
Rlang ☛ Bayesian Linear Regression in R: A Step-by-Step Tutorial
Bayesian linear regression is one of the best ways to learn Bayesian modeling in R because it combines familiar regression ideas with a more realistic treatment of uncertainty. Instead of estimating a single fixed coefficient for each parameter, Bayesian methods estimate full probability distributions. That means we can talk about uncertainty, prior beliefs, posterior updates, and credible intervals in a way that is often more intuitive than classical statistics.
In this tutorial, you will learn how to fit a Bayesian linear regression model in R step by step. We will start with the theory, build a dataset, choose priors, fit a model with brms, inspect posterior distributions, evaluate diagnostics, perform posterior predictive checks, and generate predictions for new observations. We will also look at several R packages that belong to a practical Bayesian workflow.
-
-
Python
-
Anže Pečar ☛ Typing Your Django Project in 2026
The first version of Django was released about 10 years before Python standardized its type hints syntax. Because of this it’s not surprising that getting type hints to work in your Django project is not going to be trivial.
-
Linuxize ☛ Python f-Strings: String Formatting in Python 3
Python f-strings (formatted string literals) let you embed expressions directly inside strings. This guide covers basic usage, expressions, format specifiers, alignment, number formatting, and the debugging shorthand.
-
Linuxize ☛ Python Cheatsheet
Quick reference for Python 3 syntax, data types, string and list methods, control flow, functions, file I/O, and exception handling.
-
-
Shell/Bash/Zsh/Ksh
-
Dan Langille ☛ Script to generate that maintenance.html file for taking my websites into maintenance mode
In a recent blog post, I showed you how I was taking my websites into maintenance mode. Shortly afterwards, I wrote about how using $server_name can have odd consequences. Today, I’m writing about the script I just created which will create those maintenance.html files.
-
-
Java/Golang
-
University of Toronto ☛ I think dependency cooldowns would be a good idea for Go
Unfortunately, this is not the actual observed reality. In the actual observed reality, people update dependency versions fast enough to catch out other people who change what a particular version is of a module they publish. This seems to be in part from things like 'Dependabot' automatically cruising around looking for version updates, but in general it seems clear that some amount of people will update to new versions of dependencies the moment those new versions become visible to them. And if a dependency is used widely enough, through random chance there's pretty much always going to be a developer somewhere who is running 'go list -m -u all' right after a new version of the package is released. So I feel that some sort of a cooldown would be useful in practice, even with Go's other protections.
-