Waterfox. It started out as a 64-bit build of Firefox for Windows, back when Mozilla didn’t offer that yet. These days, I believe, it just offers a few different defaults…
Waterfox. It started out as a 64-bit build of Firefox for Windows, back when Mozilla didn’t offer that yet. These days, I believe, it just offers a few different defaults…


I mean, sure, I do understand what’s happening on a logical level. I’m just so baffled, because this whole internet thingamabob was architected by the military.
It was intentionally built, so that parts of it could fail without disrupting the rest. When a corporation fucks up, it was supposed to take down the servers of that corporation, not also a good chunk of the rest.
But unfortunately, this internet thingamabob is merely the closest approximation we have for the “perfect market” that economics theory calls for, so it still doesn’t actually self-regulate like that whole theory would love to believe.
In fact, it is so much worse, because now monopolization happens across the whole planet. Particularly also because we don’t have a functioning “world government” that could enforce competition at that level via laws.
So, the network leads to companies monopolizing on top of it and then monopolies necessitate that the respective companies do as poor of a job as possible, because this reduces costs and increases profits. As a result, major parts of this military-grade internet now falter every few weeks.


Oh man, these global outages are really getting out of hand. A few days after the recent AWS and Azure outages, I suddenly noticed that I couldn’t reach certain webpages anymore. And I genuinely didn’t even bother trying to debug, because I just assumed that it’s another global outage.
In the evening, I did look into it and noticed that my router was at fault (presumably DNS got bugged by a recent update). That was just wild to me, that I genuinely deemed it more likely that several major webpages went offline together than that my home setup is fucky.


Sure, but as it happens with multiplayer games, you typically have a friend group that plays a certain game. Getting all of them to switch to another game can definitely be a problem.


Eh, it’s gonna depend on your taste in games. If competitive multiplayer games are your thing, then it is a problem. But sure, there’s lots of people who have zero interest in competitive multiplayer.


recreational coding
Well, good news, it actually is fun to dick around in the Nix configuration and see those changes manifest on your system.


The purpose is similar, i.e. configuring a system, but I’d say Ansible works best, if you need to make a few small changes from an existing distro, whereas NixOS rather takes the approach of controlling everything about the operating system.
And in many ways, controlling everything is actually simpler.


As the other person said, the bit about Arch is just the preamble.
But you can use Nix Home-Manager on Arch (or other distros), if you’re so inclined, which will give you that reproducibility for the stuff in your home-directory.
In some ways, this is like backing up and restoring your dotfiles, but it allows you to template those dotfiles and depending on the program, it offers simple ways to populate the dotfile templates. For example, KDE applications don’t generally offer very legible dotfiles and so configuring e.g. a panel via dotfiles is kind of a pain. To help with this, there’s Nix Plasma-Manager.
Copy Link to Highlight is my favorite addition.


The thing I never understood about PowerShell is that it’s partially more verbose than C#, which is one of the most verbose programming languages in existence. It just feels like you might as well go for a full-fledged programming language at that point.
The appeal of Bash et al is that the scripting is almost the same as the interactive usage, which you already know. But because PowerShell is so verbose, I’m really not sure people do use it interactively.
I guess, that code snippet in the article makes somewhat of a difference, in that PowerShell offers better features for interop between processes. But man, that still feels like it could’ve been a library instead…
To be fair, your “SUUUPER stable” is another person’s “not really going anywhere”…


Yeah, I also recommend this. Particularly with laptops, it’s good to have a full-fledged desktop environment, since you’re more likely to need WiFi, power management, easy display configuration etc…
Oh yeah, I do think setTimeout executes in parallel, so only the largest element determines the execution time. It was difficult enough to make that sentence make sense, so I didn’t want to cram that detail in as well. 🙃
I mean, it does scale with the size of the input. Just not with the count of inputs, but rather the size of each input element.
I agree in general, that a crash is much better than silently failing, but well, to give you some of the nuance I’ve already mostly figured out:
Currently implementing error handling for a library I’m building and the process is basically to just throw all of the information I can find into there. It makes the error handling code quite verbose, but there’s no easy way for me to know whether the underlying errors expose that information already, so this is actually easier to deal with. 🫠


However there are things when the Ai is helpful, especially for writing tests in a restrictive language such as Rust.
For generating the boilerplate surrounding it, sure.
But the contents of the tests are your specification. They’re the one part of the code, where you should be thinking what needs to happen and they should be readable.
A colleague at work generated unit tests and it’s the stupidest code I’ve seen in a long while, with all imports repeated in each test case, as well as tons of random assertions also repeated in each test case, like some shotgun-approach to regression testing.
It makes it impossible to know which parts of the asserted behaviour are actually intended and which parts just got caught in the crossfire.


Yes, catastrophic software bugs…
That is a good tip. Unfortunately, I am too fish to understand it. 🙃
I just type ps and in 9 out of 10 cases, my shell suggests ps -ef | grep <process-name>. So, it’s actually less for me to type than “pgrep”…
Bash fucks me up so much, too. You just put the parentheses there to say that something is a function, not for actually declaring the parameters that can be passed in…