

Gotta love Linux newbies talking about their first experiences and they’ve already tried 3 distros that I have barely on my radar. A few months in, I hardly knew what SystemD was and this guy’s already on a distro that explicitly removes it.


Gotta love Linux newbies talking about their first experiences and they’ve already tried 3 distros that I have barely on my radar. A few months in, I hardly knew what SystemD was and this guy’s already on a distro that explicitly removes it.


If you prepare an installation USB stick, so-called “Live-USB”, and select in the BIOS that it should boot from that, then you can test-drive Linux before you install it.
There is more details involved, like you may need to turn off Secure Boot in the BIOS, but yeah, point is, you don’t have to commit to Linux to try it.
I’m guessing, you mean this then: https://github.com/edc/bass
But well, I was rather thinking of when it’s using Bash-scripting-syntax to combine multiple commands.
Like, maybe there’s a for-loop in there. You just can’t paste that directly into Fish and have it work. Granted, you should probably put that into a script file, even if you’re using Bash, but yeah, just temporarily launching bash is also an option.
I have that occasionally when I want to copy a complex bash command from somewhere. But yeah, I can then just run bash, run the command in there and then exit back out of there.
It still gives you basically no advantage compared to just making your terminal emulator launch fish by default. And well, it does give you the major disadvantage that scripts without shebang will fail.
To me, it genuinely makes a huge difference that I don’t have to manually press Ctrl+R for history search. Because 9 times out of 10, I accept a history suggestion from Fish where I did not think about whether it would be in my history.
This includes really mundane commands, like cd some/deeply/nested/path/. You would not believe, how often I want to cd into the same directory.
But I’ve also had it where I started typing a complicated docker run command and Fish suggests the exact command I want to write, because apparently I already ran that exact command months ago and simply forgot.
Yeah, my current software project at work was basically half a year of feature development and since then, we’ve purely tried to get it into the real world, which meant evaluating use-cases to see where it falls flat and what needs stabilizing, as well as figuring out people’s needs and how our software can assist with that, then setting up a demo and hoping they find money somewhere…
I think, this was on my mind: https://pt.mezzo.moe/w/waYE4NkZGpqQ9qpW1th1ga?start=15m10s
I don’t know, with this example in particular, I find it quite disruptive, too, that there’s explanations of the game mechanics and then the character barges in with some funky expression and some rhethoric question à la “And then I’m that thing?”. Yeah, dude, did you not listen to the tutorial ghost explaining that just then?
In fairness, this is a game that’s pretty much story-first with a bit of puzzling in between. And it was only that Let’s Play that I saw; I would’ve almost certainly skipped that game, if I came across the store page, since I assume, it would’ve been obvious that it’s a story game.
Well, and also in fairness, this is a pretty fringe game. There’s a decent chance that it isn’t considered ‘good’ in other aspects either.
In general, I don’t want to be too critical. Not every game has to be for me. Well, most don’t have to be, since I don’t play an insane variety of games to begin with. But yeah, still just wanted to throw that into the conversation as a pet peeve of mine, since there’s (perhaps less egregious) examples of that in a variety of games.
I think, you’re perhaps conflating story with gameplay here? I do think, it’s good to incorporate the tutorial into normal gameplay. So, you start playing the actual game right away and get told the controls as you need them. And sure, if it is a story-driven game, that probably means there has to be a story segment before all that to explain why you’re starting on this journey to begin with. So, I’m not saying I want the tutorial to be an entirely separate thing, like it typically was in the 90s.
I’m mainly just complaining about when it’s too intermixed, because I’d like to be able to skip all the text boxes where they’re rambling about the story. If they switch mid-sentence to explaining what you’re supposed to do and what buttons to press, then I’m likely to miss that while skipping through the story bits.
Preferably, there’s a separate info box on screen after the dialogue ends (which is a good idea for several reasons), but it could also just be highlighted, if they want it to be within the dialogue.


I actually reinstalled it myself after writing that comment. 😅
I only really started to fully appreciate it, when I learned that drifting gives you a boost. So, if you’re going around curves, you pretty much always want to drift, which then kicks your speed up once you stop drifting. Maintaining a higher speed than your car normally goes, is vital for beating the harder difficulties.
I really don’t like when games intermix tutorial with story. Unless the story is the main attraction, I cannot get myself to care for it. And then having to click through tons of story texts to pick out the tutorial parts, that is just cumbersome.
I also have to say, though, that it really doesn’t help my immersion when the fairy, that just told me she’s from the clan Uhgaloogah, then tells me to press the X button on my controller.
If you put in a lot of effort, you can make it credible that the controller is part of the game world and the fairy would know the buttons. But most games do not put in that effort. And then, IMHO it is a lot less immersion-breaking when the game just shows an info box, where we both know that it isn’t part of the game world.


My problem was that “Albert Heijn” is a dude’s name. It does not exactly scream “we’re talking about a real physical building”.
For all I knew, the impossible problem we’re solving could’ve been on a mathematical plane, named after mathematician Albert Heijn. “Sweeping” just as well can be used in an abstract sense.
Obviously, I did think of physically sweeping a physical floor first and foremost, but especially with the rest of the blog post being so entirely abstract, I had doubts on that for far too long, which did not make it easier to understand.


Mario-Kart-at-home by the way: supertuxkart.net
Buy now for $0 and get Rocket-League-at-home for free on top!
(It’s one of the game modes in SuperTuxKart. 🙃)
But yeah, $80 is kind of wild, even just because it’s fundamentally still a cart game. You pretty much need a group to regularly play it with, otherwise you won’t get your money’s worth out of that.


Probably could’ve mentioned at some point in that whole article that Albert Heijn is a supermarket chain: https://en.wikipedia.org/wiki/Albert_Heijn


F-Droid blog post on the topic: https://f-droid.org/en/2025/09/29/google-developer-registration-decree.html
It was posted before Google backpedalled somewhat, if I remember correctly.


Yeah, it’s especially funny to me, because the word “AI” has been used in gaming to describe the behavior code for NPCs since forever. And in this case, they actually even happen to refer the same thing in the end. At best, it’s a different strategy for getting to that same end result.


In many cases, you don’t need an equivalent to finally, because the cleanup is automatically handled via the Drop trait, which runs cleanup code when the object is freed from memory (similar to “destructors” in some other languages).
Because of Rust’s whole ownership thingamabob, it’s generally entirely deterministic when this code will run (at the closing brace for the scope in which the object is defined, unless you pass that object outside of that scope).
In other cases, you don’t need a finally, because nothing forces you to bubble up errors instantly. You can make a call which fails, store the error in a variable, run your cleanup steps and then return the error at the end of you function.
Sometimes, however, you do want to bubble up errors right away (via ? or early return), typically so you can group them together and handle them all the same.
In that case, you can run the cleanup code in the calling function. If you don’t to want to make it the responsibility of the caller, then pull out a small function within your function, so that you become the caller of that small function and can do the cleanup steps at the end of your function, while you do the bubbling within the smaller function.
There’s also ways to make that less invasive via closures (which also serve as a boundary to which you can bubble errors), but those are somewhat complex in Rust, due to the whole ownership thingamabob.
I will say, I do sometimes feel like Rust could use a better way to handle doing something before the error bubbles up. But generally speaking, I don’t feel like a finally is missing.


You can use the anyhow crate for something quite similar to exceptions: https://crates.io/crates/anyhow
In terms of how it actually fits into Rust, you want to use anyhow for application code. If you’re writing a library, then anyhow is a no-go, because users cannot match on different error classes with it. (Much like you would want custom exception classes, so that users can catch them in different catch branches and handle them differently.)
Every so often, you will also need matchable error classes within your application code, then you would have to replace anyhow with a custom error type there, too, of course.
I will also say, IMHO it is fine to use anyhow even while you’re learning Rust. It is so easy that you kind of skip learning error handling, which you will need to learn at some point, but you can still do that when you actually need it.
It’s not yet in its enshittification phase, so right now it seems like a good deal. But before you know it, blog posts there will be blocked by all kinds of overlays and whatnot, like they are on Medium these days.