Article
10092 discoveries · Hand-picked discoveries from the open web, newest first.
-
Delta Chat: encrypted chat with boring technology
Hi, A couple of days ago I’ve heard about Delta Chat , and for once I got thrilled with some piece of technology again. At the surface it’s just a chat app to the likes of Telegram, Signal and WhatsApp. The exciting part, however, is that is uses plenty of open standards technology under the hood. It’s a chat app built on top the regular e-mail protocols, SMTP and IMAP, with a sprinkle of PGP to make it end-to-end encrypted. It has the same secure initial key exchange issue that PGP e-mail has, but at least now we have an interface that is straight up easy to use, specially f
Rafael Kassner · EN
-
2026 hardware update
Hi! It has been a good while since my last post about my NAS, so I want to share an update on how things are looking nowadays. Filesystem I won’t get into details here, but I’m out of BTRFS. The filesystem did not fail on me and thankfully I didn’t lose any data, but suffice to say that BTRFS does not like when you shuffle snapshots to a different system, transform them into live subvolumes, change stuff, snapshot them, and move them back into the old system. After the third time syncing full disks, I gave up and went back to OpenZFS. It also helped I already had my new Trave
Rafael Kassner · EN
-
Just sitting
The sky is pink as we drive back from Peebles, gently racing the sunset to avoid navigating country roads in the crisp twilight of the first of January. “That’s definitely snow, isn’t it?” Anisa observes from the passenger seat. She reaches back to point this out to the kids but notices everyone else is asleep. She chuckles and goes back to staring happily out of the window, wondering aloud what it means when sheep lie down in the fields. “Probably that they wanted to lie down” I muse, a smile on my face. 2026 is off to a good start. We’re full of steak pie and fresh air after a brisk family w
Relative Sanity · EN
-
The plan must never be to have a plan
My writing process is typically thus: I will bang out a stream of consciousness first draft, getting everything that I think I want to say out of my head and into text; I will then read over that first draft and realise it’s not right. The fact is that while I may have had an idea of what I wanted to say, the piece iteslf has no fucking clue what it’s about. In fact, it’s garbage. I suck and should never write again; I must now leave it for a day. Or a week. Or a month. And then, if I feel up to it, I will come back; Usually I select-all-and-delete, then try and write a plan to actually figure
Relative Sanity · EN
-
Sometimes you get the gold
I don’t think back on my early years with a computer anywhere near enough. Sam Henri Gold’s excellent article on the MacBook Neo made me need to do just that. My mum got me a Commodore VIC-20 from the local Fine Fare supermarket when I was probably five. We were a Tomorrow’s World household and watched Star Trek repeats over dinner. She knew what was up. Computers were going to eat the world, and her kid was going to be on the right end of the fork. I spent hours on that machine. Days, weeks, months, and years. It came with a manual on how to program stuff in BASIC. We couldn’t afford a tape d
Relative Sanity · EN
-
How’s the writing going?
Identity is weird. I’m a writer, but saying that casts this weird spell on people. I think the spell comes from a good place, a place of compassion and curiosity. But it’s a deadly spell. “So… how’s the writing going?” Immediately I feel a fraud. How is the writing going? I haven’t published to the blog for ages, haven’t sat down to actually put an essay together for weeks. No, months. Who says I’m a writer? “Oh, you know. It’s going” The deflation is palpable. They’re rooting for me, they want to hear about the progress on the novel, or the collection of short stories, or the self-help book,
Relative Sanity · EN
-
You are listening to
Not everything has to be a long meditation on creativity or what it means to be productive while maintaining a healthy balance between what you need to do and what you want to do. Sometimes, I’m allowed to just point you at stuff I like. Like You are listening to , a wonderful only-the-internet-could-do-this old-school mashup website combining a curated, chilled playlist (rotates regularly) with live public feeds from air traffic control, shipping forecasts, transit authorities. Hauntingly beautiful and a reminder that even on the internet, stuff is happening right now that may never happen ag
Relative Sanity · EN
-
Being the room
I’ve written before about my computing origin story , and it’s still true. These boxes of sand, they can change the world, but only with the right programming. On its own, a computer isn’t even a fancy calculator. With software, it can be whatever it needs to be. Who wouldn’t want to write software that could change someone’s life for the better? It’s still the dream. I moved into management when I remembered that programming was a means to an end. I had become enamoured with programming as its own craft, but I knew I was never going to be that one programmer that you’d give an impossible prob
Relative Sanity · EN
-
Naming things
Hang around a group of engineers for any amount of time, and eventually one will tell you how hard it is to name things. This might seem obvious, even to non-engineers. Good names are tricky. Maybe you think about a good product or brand name, and how hard that is to come by. How many times have you been put off buying something, for example, because it has a bit of a rubbish name? But it’s not a challenge confined to engineers and product designers, or marketing and branding gurus. We all name things, especially now that computers and related devices are such an integral part of our lives. We
Relative Sanity · EN
-
The sports bar
Look, I get it . The Nazi bar cleaned up its act. A few years, maybe even just a few months ago, it was full of Nazi bullshit and propaganda, and run by a clear Nazi, and that sucked, as it was the only bar in town that showed sports. So you left. Because fuck Nazis and who in their right mind hangs out in a Nazi bar, right? I mean, other than Nazis. But honestly, the other places you tried with your friends showed different sports, or no sports at all. And a lot of the conversations you had were just about how bad the Nazis are, and isn’t this a better place than the old Nazi bar, and thank g
Relative Sanity · EN
-
Loading from tape
After some time off-line due to a disk failure, the CPCWiki Forum is back online. There is a thread to “show off your Amstrads”, so I used the excuse to do some gaming with the kids and my 464. I was also talking to my younger son about cassettes the other day, how long the games took to load, and how we had “compilation” cassettes with several games on them. So we decided to load the games from tape! Vanity shot: loading The Return of Traxtor One of my kids suggested that we should start loading one of my games, and that was The Return of Traxtor . The game was pubished some years ago by Matr
Personal Log · EN
-
Creepy crawlies
That’s how Konstantin Ryabitsev titles his post creepy crawlies , where he explains the scale of the problem of the “AI crawlers” in the kernel.org git repositories website. I have discussed it here a few times: the problem of the LLM crawlers , how I simplified how I self host git repos , and my attempts trying to deal with these crawlers . I haven’t reached a solution and the crawlers are still there –less so, as the blocking and some of the Javascript tricks did work –, although I haven’t tried more drastic solutions like Anubis . My problem is not at the same scale as what the people at ke
Personal Log · EN
-
Detecting LLMs
I am not good at detecting when a piece of text has been produced by a large language model (LLM from now on). Very often I read a post shared on a link aggregator, to later check the comments and learn that it is slop . It is true that there are some stylistic clues that can mean a text was generated (or there was some LLM assistance, at least), but I assume you have to be used to read LLM output to actual spot the more subtle cues. I was reading today in Chris’ Entropic Thoughts: Claude comment detection , and his summary of “clues” is interesting: If we jam all features at once into the mod
Personal Log · EN
-
Loading from tape again
A couple of days ago we decided to repeat the experience of loading games from tape , but this time with my ZX Spectrum+. It is evidently a different system. Which is a funny thing to say because when I had my ZX Spectrum +2A almost 40 years ago I didn’t really know there were different systems , I just had a “computer”. In this case, the biggest change is that the ZX Spectrum+ doesn’t come with a built-in tape drive, so I had to find one I bought a few years ago and I had misplaced somewhere. Technically speaking you don’t need a tape drive, because you can plug the audio output from your pho
Personal Log · EN
-
The effects of walking
Before I started working from home, I was lucky enough to commute to the office by foot. That was 35 minutes in each direction, which is not a lot, but it isn’t bad. I used to listen to music and lots of podcasts, and that time off gave me a nice buffer to disconnect from work before getting home. Enter the pandemic and the shift to working from home. While I love it because it allows me to spend more time with my kids and helps me juggle responsibilities at home, my walking was reduced to just the weekends. Being a software engineer by vocation, this shift significantly reduced my exercise ti
Personal Log · EN
-
Using emacs
There has always been that rivalry between these two editors. In fact, the closing question in my first successful job interview in the UK was: Do you use vi or emacs ? The interviewer was a long time emacs user, but it wasn’t a problem that I used vim. In the really old times, when I was a DOS user, because that is what we had, I didn’t care much. I used DOS’ edit, or whatever was the editor of the IDE I used at the time. But I spent a lot of time writing documents for high school using WordStar , and this was useful because when I started university and I had to write code in Linux, there wa
Personal Log · EN
-
Into the Breach
As I have mentioned here a few times, I don’t play a lot of games these days. The last game I completed was Skyrim. I didn’t write a post about that, but at least I mentioned here I was playing it . Actually, can you really complete Skyrim? So, let me clarify: I completed the main quest and some side quests, and after a bit over 63 hours playing the game, I’m ready to move on. Since then I’ve tried Divinity: Original Sin , me alone and in co-op with one of my sons, but it didn’t stick. The game looks nice, the mechanics are OK, and there’s some story; but I didn’t connect. Then I bought Into t
Personal Log · EN
-
Outpost released!
I have released Outpost for the ZX Spectrum 48k! I started working on this game in April 2021 or, at least, that was my first commit in the repo. It is likely that I started bootstrapping and working on some ideas a bit before that. And it is 2026, so what happened? When I made Brick Rick: Graveyard Shift for the ZX Spectrum 128k I wrote my own library from scratch, and all the sprite routines required a lot of learning. And learning sometimes requires writing stuff that you end not using. When I finished that project I had a lot of code that I didn’t need for a 128k game. Those unused sprite
Personal Log · EN
-
Create a sitemap with Remix.run
How to create a sitemap in Remix.run? Learn how to create a dynamic sitemap.xml for your Remix app.
Simon Depelchin - Blog · EN
-
Replace ESLint & Prettier with Biome.js
How to install & setup Biome.js in a Remix.run project. Remove ESLint & Prettier from your project.
Simon Depelchin - Blog · EN
-
How to upgrade Volta
Every time it's time to upgrade Volta, I always forget how to do it. So I decided to write a blog post about it. This way, I can always come back to it and remember how to do it.
Simon Depelchin - Blog · EN
-
Translate your Remix.run app with Lingui
Lingui is an alternative to i18next for internationalization in Javascript project. It offers a different approach to i18n and is now available for Remix.run projects with Vite.
Simon Depelchin - Blog · EN
-
Blurhash with Laravel Spatie Media Library
How to generate Blurhash for your media using Laravel & Spatie Media Library.
Simon Depelchin - Blog · EN
-
Installing FFmpeg on Laravel Cloud
A step-by-step guide to installing and setting up FFmpeg on serverless Laravel Cloud.
Simon Depelchin - Blog · EN