Weeknotes 215
10th August, 2025
“Slopsquatting”
-
I received a cheque (ask your parents) in the post this week. A cheque!
-
A new term called slopsquatting, a form of cybersquatting where users register non-existent package names hallucinated by LLMs for unsuspecting users to install
It’s important to improve one’s vocabulary.
-
QA is about to become a huge bottleneck in software development. AI lets us churn out HUGE amounts of code extremely fast, but you still need to make sure it works. AI can help with testing too, but if you really want to be sure it works, you need the reassurance of human eyes on it. And human eyes don’t scale.
“churn” being the operative word. So much churn.
Code reviews are also going to be very hard work. They’re already awful.
-
How do you structure a project that will be developed and evolved by a team? At this point, the language step aside from strong opinions, and each team or company needs to decide how to structure their projects.
Ruby on Rails did pioneer this. Before Rails everyone was slapping together websites using their own homegrown “web frameworks” aka
functions.php
. Like it or loath it, Rails brought a structure to answer the question “where does this file go?” – it’s just a shame they haven’t taken it beyond models, views, and controllers for the most part.But it wasn’t always like this. For a long time, there was no official package manager for the language; consequently, the community developed several alternatives. They all worked, but fragmentation was getting out of control, making it challenging to integrate packages.
See JavaScript. JavaScript, of course, takes it much further by having such a dreadful standard library, for so long, that
leftpad
becomes a thing. -
Introducing UniFi OS Server for MSPs – This is interesting.
-
You might not need tmux (via Harry)
Some good points in here which I’ve suffered too — namely the native scroll back (and associated tmux-based scrolling which I always forget how to do!) and the “weirdness” with things like
TERM
but the solutions posited don’t seem any less buggy or difficult to setup to be honest. I won’t change for now, but it did make me think that perhaps I might in the future. -
Advanced file operations and utilities integrated into macOS Finder
Some nice power user utilities.
-
JavaScript broke the web (and called it progress)
Clearly written from the frustrated view of someone trying to get content changes made (presumably for SEO reasons) but I agree with almost everything written here.
This isn’t just a technical issue. It’s an organisational one. We’ve handed control of the web to the only people who understand the machinery. And they’re too busy fixing the machine to stop and ask whether we needed it in the first place.
A lot of this goes on.
-
Don’t “let it crash”. Let it heal.
A note to the Elixir programmers who commonly say “let it crash”: This phrase gives outsiders and newcomers the wrong idea, and encourages bad habits for those who misinterpret it. If I had my way, we would stop saying it.
-
Are you looking for self-hosted software alternatives to popular commercial products? https://selfh.st/ is your friend.
-
Fly Machines support running multiple containers per virtual machine using the containers array.
You can now deploy multiple containers to a single VM on Fly — very nice feature improvement. I can see this being very useful.
-
The Lua library for Elixir is an ergonomic wrapper around Luerl, Robert Virding’s pure Erlang implementation of Lua 5.3. Unlike other approaches that rely on NIFs or other mechanisms, this implementation runs entirely on the BEAM VM while providing excellent sandboxing and integration capabilities.
-
Frame of preference — A history of Mac settings, 1984–2004 — very cool. The interactive Macs from Infinite Mac used in the article are very impressive — I’ve not seen these before.
-
Time Flies – I was not at all impressed by this until I watched the video. Watch the video.
-
Going on holiday next week – whoo!