I’m not always on the same page as Rob Pike, but this hit close to home:
Although trained in physics, I worked in the computing industry with pride and purpose for over 40 years. And now I can do nothing but sit back and watch it destroy itself for no valid reason beyond hubris (if I’m being charitable).
Ineffable sadness watching something I once loved deliberately lose its soul.
I spent my time trying to make it better. Not just write code, but find better or at least different ways to do so. Simpler, cleaner, more general, more comprehensible.
What’s happening today is a complete repudiation of everything I was trying to achieve.
“Simpler, cleaner, more general, more comprehensible”, that’s what I’ve been trying to establish in our teams as well. Obviously not to the same degree, but you get the idea.
And it all goes out the window now. We’re doing the complete opposite – and with full force.
In today’s episode of “everything goes to shit because we want it to”: https://about.gitlab.com/blog/gitlab-act-2/
The supply of deep technical problems is multiplying, and the engineers who can solve them will be among the scarcest and most valuable talent in the market.
And yet:
We’re reevaluating our operational footprint, and are planning to reduce the number of countries by up to 30% where we have small teams.
I’m still having some fundamental design issues with my TUI widget system, so I’m still not comfortable making this code public.
But after a day of work (and discussing AI ad nauseam at work), I just don’t have any energy left. 😑
@kiwu@twtxt.net Thanks!
@kiwu@twtxt.net Sick at home. 🤧
@lyse@lyse.isobeef.org Die Holgi-Sachen sind auch so das einzige, was ich noch mehr oder weniger regelmäßig höre (und mit Spenden versehe). Die langjährige Radio-Moderator-Erfahrung, die da drinsteckt, ist einfach Gold wert. ✨
So apparently this is the default when making a new Matrix account, which makes me wonder why we’re even doing this whole crypto dance in the first place … ?
Ganz schön viele Arschgesichter hier: https://uebermedien.de/116944/
@bender@twtxt.net I misread that sentence and thought that your first crush was called Gisela, and was like “wait, he’s not that old”.
Turns out, Gisela is a much younger name than I thought:
https://namecensus.com/first-names/gisela-meaning-and-history/
A peak in the late 1970is and late 1990ies? What?
But then it turned out that, in Germany, the popularity dropped rapidly in the late 1950ies, which actually matches my expectations:
https://www.beliebte-vornamen.de/5203-gisela.htm
In other words, some other countries picked up the name Gisela after it had already faded away in Germany.
What a fun rabbit hole. 😅
@lyse@lyse.isobeef.org Ouch. 🤔
@lyse@lyse.isobeef.org Isn’t that a cutie! 😍
@lyse@lyse.isobeef.org Yep, this was a big oopsie at DENIC:
cp -a, install a bootloader, adjust some minor things /etc/fstab, done. Well, maybe not “done”, but it’s easy to sort out the remaining stuff afterwards.
@bender@twtxt.net It’s been a while (6.5 years) since I’ve done this. I’d do it like this:
- Boot some Linux from a USB stick on the new machine. Preferably Arch Linux, since that is what I’m running and that’ll make the upcoming chroot easier.
- Partition the new disk, create LUKS devices, filesystems, …
- Mount the new filesystems and copy all data (user data and the system itself – everything). Do this either over the network or by hooking up the old disk directly.
- chroot into the new system (Arch has an
arch-chroottool for that which is used during normal installation, if I’m not mistaken). Inside the chroot, install the bootloader.
- Do some fixups, like adjusting
/etc/fstabor/etc/crypttab.
And I think that should be it. 🤔
@lyse@lyse.isobeef.org These days (and it’s been like that for a while), almost everything is loaded on-demand depending on which hardware the OS finds, so you can simply copy all your files with cp -a, install a bootloader, adjust some minor things /etc/fstab, done. Well, maybe not “done”, but it’s easy to sort out the remaining stuff afterwards.
I’ve moved the Arch installation at work from a stationary Dell workstation to an Acer laptop to a Lenovo Carbon laptop to a Tuxedo laptop to a Lenovo Thinkpad. 😅
Yeah, the keyboard of the netbook isn’t all that great, but I have to say that I absolutely love netbooks. And I hate that they got replaced by tablets and smartphones. A netbook is a normal PC, just very small and super easy to carry around – that’s brilliant!
@lyse@lyse.isobeef.org Turns out, this actually was a little machine once (small netbook): https://movq.de/blog/postings/2011-04-28/0/POSTING-de.html And then I moved the whole installation to a different laptop later. I love that you can easily do that on Linux.
I like the new GitHub:
@prologic@twtxt.net Oh, lol, it’s literally called that: https://www.queensland.com/au/en/places-to-see/experiences/nature-and-wildlife/everything-to-know-about-natural-bridge 😂
Just missed the 15th anniversary of the Linux installation on my laptop:
$ head -n 1 /var/log/pacman.log
[2011-04-27 11:38] installed filesystem (2011.04-1)
Germans don’t have humour? Oh, yes we do! Get this:
I was pushing my bike slowly up a hill, coming across an elderly lady.
She goes: “Go slowly!!! 😡”
“???”
“Haha! Just kidding! 😊“
The mindset of nerds (or people in general, but nerds especially) appears to be: “There’s a problem – I know how to build a solution around that! (Because I’m good at building things!)”
Rarely does anyone ask: “Why does this problem exist? Can we find a way so that this doesn’t happen in the first place?”
@lyse@lyse.isobeef.org Those are some great shots! “Sun through leaves” always works. 😃 And the tweeting bird, lovely. 😃
@lyse@lyse.isobeef.org Omg, that’s quiet. Did you do some filtering on this? No traffic noise? No drunk men shouting? 😳
@lyse@lyse.isobeef.org Really depends on the genre, I guess. 🤔 Quite a lot of “non-pop” music still uses the format “concept album”, I think. 🤔 But don’t ask me for any solid statistics. 😅
@lyse@lyse.isobeef.org Those are some very colorful shots. 👌 It was pretty warm here as well, health issues prevented me from going out, though.
(Have we established that Azabache is male? 😃)
@klaxzy@klaxzy.net I should cancel Netflix as well. Back when they started their streaming service, it was a revelation: Finally, I could watch interesting shows in English, without having to wait for years, and legally (I like to be a paying customer, if it’s good). But this is long over. The interesting shows are gone or, once again, I have to wait for years until they’re available on Netflix. So, why bother anymore? 🤷♀️
@rnlog@yarn.girlonthemoon.xyz Well, welcome back. 👋
@lyse@lyse.isobeef.org Right. :(
@bender@twtxt.net Thanks, I’ll read it – once I have the energy. 😅
@lyse@lyse.isobeef.org Oh, yeah, right, I hadn’t even considered that (we mostly use one model). Choose a different model and it does something completely different. Cool stuff.
@bender@twtxt.net Or maybe I’m just shitty at communication and maybe that’s why nobody at work understands my “arguments” against AI/LLMs. 🤪🤣
(I’m too tired to rephrase the OP. Maybe some other day. Actually, rest assured that I will complain about this again. 😅)
@bender@twtxt.net … that was not my point. 🥴
Another AI rant:
One of the “key features” of LLMs is that you can use “natural language”, because that is supposed to be easier than having to learn a programming language. So, when someone says to me, “I automated this process using AI!”, what they mean is: They have written a very, very large Markdown document. In this document, they list what the AI is supposed to do.
In prose.
This is a complete disaster.
Programming and programming languages have one crucial property: They follow a well-defined structure and every word has a well-defined meaning. That is absolutely brilliant, because I can read this and I can follow the program in my head. I can build a mental model. I can debug this, down to the precise instructions that the CPU executes. This all follows well-defined patterns that you can reason about.
But with these Markdown files, I am completely lost. We lose all these important properties! No debugging, no reasoning about program flow, nothing. It’s all gone. It’s a magic black box now, literally randomized, that may or may not do what you wanted, in some order.
People now throw these Markdown files at me … and … am I supposed to read this? Why? It’s completely random and fuzzy.
Sadly, these AI tools are good enough to be able to mostly grasp the authors intentions. Hence people don’t see the harm they cause, because “it works”.
We already have a ton of automations like this at work: Tickets get piped through an LLM and these Markdown files / prompts determine what will happen with the ticket, and maybe they trigger additional actions as well, like account creation or granting permissions. All based on fuzzy natural language – that no two humans will ever properly agree on.
Jesus Christ, we’re now INTENTIONALLY bringing the ambiguity of legal texts and lawyers into programming.
Using natural language is NOT easier than using a programming language. It is HARDER. Have you people never read a legal contract? And that stuff can STILL be debated in a court room.
I can’t begin to comprehend why we, tech folks, push this so hard. What is wrong with you? Or me?
(And, once again, we’re ignoring other factors here. LLMs use a ton of energy and ressources, that we don’t have to spare. It’s expensive as fuck. It doesn’t even run locally on our servers, meaning we give all these credentials and permissions to some US company. It’s insane.)
@lyse@lyse.isobeef.org Clearing legally? You must have an amazingly efficient legal team – there’s like 10 new tools every week. 🤣
@prologic@twtxt.net Welcome back 👋
even our hippest AI enthusiasts found it absolutely terrible
Does this refer to the training course or to the tools themselves? 🤔
@lyse@lyse.isobeef.org Yes, and that’s why I’m 100% convinced that we’ll see a massive brain drain in a couple of years. This will affect young people even more, because they don’t have all the “old” knowledge to fall back on.
It’s concerning, I’ve warned about it many times, nobody listens.
I think the best thing one can do is explicitly not use any AI tools but keep your actual skills intact. Might be out of a (good) job for a while, but once this bubble bursts, this is who is going to get hired again. (I think.)
And considering how insanely expensive all this is, I’m still (mostly) convinced that the bubble will actually burst. This stuff just isn’t sustainable.
… or I might be wrong. And if so, I see an even darker future that I don’t want to put into words right now.
@lyse@lyse.isobeef.org AI result ahead, feel free to ignore.
I “asked” the AI at work the same question out of morbid curiousity. It “said” that SQLite converts that integer to floating point internally on overflows and then, when converting back, the x86 instruction cvttsd2si will turn it into 0x8000000000000000, even if the actual floating point value is outside of that range. So, yes, it allegedly actually saturates, as a side effect of the type conversion.
I couldn’t find anything about that automatic conversion in SQLite’s manual, yet, but an experiment looks like it might be true:
sqlite> select typeof(1 << 63);
╭─────────────────╮
│ typeof(1 << 63) │
╞═════════════════╡
│ integer │
╰─────────────────╯
sqlite> select typeof((1 << 63) - 1);
╭──────────────────────╮
│ typeof((1 << 63) ... │
╞══════════════════════╡
│ real │
╰──────────────────────╯
As for cvttsd2si, this source confirms the handling of 0x8000000000000000 on range errors: https://www.felixcloutier.com/x86/cvttsd2si
The following C program also confirms it (run through gdb to see cvttsd2si in action):
<a href="https://txt.sour.is/search?q=%23include">#include</a> <stdint.h>
<a href="https://txt.sour.is/search?q=%23include">#include</a> <stdio.h>
int
main()
{
int64_t i;
double d;
/* -3000 instead of -1, because `double` can’t represent a
* difference of -1 at this scale. */
d = -9223372036854775808.0 - 3000;
i = d;
printf("%lf, 0x%lx, %ld\n", d, i, i);
return 0;
}
(Remark about AI usage: Fine, I got an answer and maybe it’s even correct. But doing this completely ruined it for me. It would have been much more satisfying to figure this out myself. I actually suspected some floating point stuff going on here, but instead of verifying this myself I reached for the unethical tool and denied myself a little bit of fun at the weekend. Won’t do that again.)
Disclaimer: Can’t guarantee that I’m fully awake and I’m being trained at work not to use my brain anymore, so maybe this is complete bullshit. 😪🧟♀️
It says here that SQLite uses signed integers:
https://sqlite.org/datatype3.html
In pure bits, 1 << 63 would be 0x8000000000000000, but as a signed value, it gets interpreted as -9223372036854775808. Subtracting 1 yields -9223372036854775809 – but that doesn’t fit in 64 bits anymore. It’s possible that SQLite doesn’t want to wrap around but instead saturates? Haven’t checked. 🤔
With 62 bits, there is enough room.
With 1 << 64, I have no idea how SQLite wants to handle this, because this should immediately trigger a warning, because it doesn’t fit right away. Maybe it gets truncated to 0?
sqlite> select printf('0x%x', 2 * (1 << 64));
╭──────────────────────╮
│ printf('0x%x', 2 ... │
╞══════════════════════╡
│ 0x0 │
╰──────────────────────╯
sqlite> select printf('0x%x', 0 - 1);
╭──────────────────────╮
│ printf('0x%x', 0 ... │
╞══════════════════════╡
│ 0xffffffffffffffff │
╰──────────────────────╯
sqlite> select printf('0x%x', 0 - 2);
╭──────────────────────╮
│ printf('0x%x', 0 ... │
╞══════════════════════╡
│ 0xfffffffffffffffe │
╰──────────────────────╯
@prologic@twtxt.net Oh, so that’s where you are! 😅 Great scenery. Enjoy!
@bender@twtxt.net Ah, great, thanks!
@lyse@lyse.isobeef.org Yeah, I really don’t know anymore. 😅
By the way, why do so many of them wear glasses? As a kid, I’ve been told that people with glasses can’t become astronauts. So I gave up my dreams. Now it looks like that was a lie? ☹️
Christina Koch looking at Earth is my new wallpaper:
(Sorry, forgot where I originally found the image. Some NASA photo collection.)@lyse@lyse.isobeef.org It’s impossible to avoid. Gotta wait a few years and then we’ll see. 🍵
The problem is, they jump hosts all the time.
Maybe it’s time to add automated blocking after all … God, I’m too lazy for that. 😞
I’m so sorry. 🙈
@lyse@lyse.isobeef.org Indeed. Very unpopular, though. I’ve long given up that fight at work.
In reality, there are too few real incidents. It doesn’t hurt enough. It’s always: “Something could happen!” But we’ve never been hit big time by an attack like this … so I just look like a paranoid idiot.
This whole thing was pretty weird, btw. I had no idea it was happening until basically yesterday. No news coverage, nobody mentioned it. 🤔 And suddenly, boom, we’re going to the moon. What? 😅
@bender@twtxt.net You saw it in person, I suppose? I watched the stream last night. 😅
In case you’re wondering where they are: https://artemistracker.com/
talk next to nothing
I could rant about AI a bit and how it ruins every day at work, if that helps? 🤣
@quark@ferengi.one Ta-tah 🥳
@prologic@twtxt.net @lyse@lyse.isobeef.org Yay! Time for a new jenny release, then. 😊
@lyse@lyse.isobeef.org This is good! 💪 Let’s merge this.
(This one actually has the potential to live longer than 3 days.)
And another fork: https://drewdevault.com/2026/03/25/2026-03-25-Forking-vim.html
@lyse@lyse.isobeef.org 22 thru 25 are wallpaper-worthy. 👌👍
@prologic@twtxt.net Nice. 😊 That’s the beauty of a small instrument like that: You can just pick it up, play a little bit, put it back. 👌 (Can’t do that with my stuff. 🤣)
There you go, user-defined color schemes:
@iolfree@tilde.club Will do. 🫡
@lyse@lyse.isobeef.org A-ha! That means you haven’t spent enough time with these tools! Go on, try it! (If you don’t, we’ll fire you.) I’m sure you’ll like it!
Oh. Feed rotated. hfgl 🙃
@lyse@lyse.isobeef.org I bet that their AI agent handles that as well, so … 🤷♀️
@lyse@lyse.isobeef.org Ah, oh, this page has historical data:
https://kachelmannwetter.com/de/messwerte/baden-wuerttemberg/temperatur/20260217-1400z.html
I would have been too lazy to take photos when my fingers were freezing off. 😅
@abucci@anthony.buc.ci coined the term “failscene”:
https://buc.ci/abucci/p/1771250567.039684
I wonder about using “failscene” to describe the current slate of AI tools and demos. In contrast with the demoscene, which is about getting very low powered computers to do cool things you wouldn’t expect them to be able to do, the failscene is about getting very high powered computers to fail at doing boring things we already know how to do without them. Plus you can stylize it fAIlscene if you’re inclined to.
I love it.
@lyse@lyse.isobeef.org The sun makes it look nice and cosy and warm, but it wasn’t, right? 😅
@kiwu@twtxt.net Since I’m not living in the US, I haven’t seen it. I’ve only witnessed all the “outrage” about it through shows like Jon Stewart’s Daily Show. 🤣
@lyse@lyse.isobeef.org Nice talk indeed.
Interesting to see that his ideal job ad talks more about the company than the required qualifications of the candidates. That alone is what 99% of companies get wrong. They just have a long list of “you must know these 500 things”, yeah, great, goodbye then. 🤷♀️
Just checked our job ads, some of them actually do list the salary. I’m surprised. 🤔
TIL: If you’re trans in Germany and you want to start hormone therapy, you still need to be officially declared “trans” first (Indikationsschreiben, page 18: https://www.transinterqueer.org/wp-content/uploads/2022/04/Hormontherapie_DE_barrierearm.pdf) and then you can try to find an actual doctor to get the meds. All with super long waiting lists. This takes forever. 😩
Changing your legal name is surprisingly easy in comparison, at least since 2024: https://www.bmbfsfj.bund.de/bmbfsfj/aktuelles/alle-meldungen/anmeldung-zur-aenderung-des-geschlechtseintrages-jetzt-moeglich-243056 (From my perspective, that’s the less relevant part, though, because there’s a good chunk of people that you can just ask to call you differently (friends, cowokers, …) and then do that legal stuff later. But you want your body to change, like, now.)
@lyse@lyse.isobeef.org They certainly don’t. 🫤
Had an idea earlier: How about going all in on sustainability and saving money/energy, so how about telling your customers “AI is a bad idea $because_long_list_of_reasons, here are our alternatives, you’ll thank us in 5 years”? (I bet the customers wouldn’t listen either … 🙄)
Okay, so the funniest thing that has happened at work in the realm of AI so far is this:
So this guy (that holds a certain position of power) wants people to use more AI, meaning people are expected to install a set of AI tools on their laptops. But, of course, he doesn’t want to write proper documentation for this, because that would be silly monkey work, right? So he conjures up some AI prompts that are intended to make the AI agent install all this stuff by itself.
Do you see where this is going? Can you see the punchline?
That’s right! Since none of this AI stuff is deterministic, every setup is different. 🤦♀️ Like, 10, 20 systems, all set up a little different and people wonder why this or that doesn’t work as expected.
Okay, it’s not funny.
@lyse@lyse.isobeef.org … at least this story was entertaining to read. 😅 If only Firefox’s storage format wasn’t so convoluted, you could have just shut it down and removed all the unwanted tabs. 🫤
In case you’re bored and need a laugh: https://www.youtube.com/playlist?list=PLP5z5Xlj-uEVYDMR9DVI1tK7ICdM7LeWq
I can’t remember if the hex viewer back then had these options. Don’t even recall what software that was. :-)
The one that I used during my Windows 95 days was “Hex Workshop”. It had similar features, just not as promimently displayed. It shows them down there in the statusline as “Value”:
Newer versions can probably do more, haven’t checked. 😅 (Assuming this program still exists.)
Apart from selecting text to copy into the clipboard. But that probably has the potential for trouble and interference with button clicks, etc.
Yeah, that’s a big problem: Once you activate mouse mode in the terminal, the terminal loses the ability to select text. 😞 You’d either have to emulate that in the program itself (like Vim does) or give the user an easy way to turn mouse support on/off during runtime.
How did the startup times develop?
They’re pretty stable at around 230 ms on my old NUC. It’s just fast enough so that it doesn’t annoy me.
I’m inclined to remove all mouse support, except for moving windows. 🤔 I originally wanted this to emulate the behavior of DOS programs, but a) mouse support is a lot of code, b) using the mouse is cumbersome anyway and I would rarely do it.
Slow progress: My hex editor now has an info panel that shows what’s under the cursor.
What’s going on here?
https://imgur.com/gallery/dude-back-trying-to-keep-together-ilY5Ltu
Is that real? Did I just watch a politician genuinely chuckle? That’s unheard of. Is that even legal?
@lyse@lyse.isobeef.org Sauna is awesome – if it wasn’t for other people. 🤣 A little mökki in Finland with a private sauna, that would be it.
@lyse@lyse.isobeef.org Found some numbers now, they’re saying it was around 10cm in 3-4 hours. I don’t know, felt like more. 😂 The forecast wasn’t really good either, now that I think about it. They said there’s going to be some snow, okay, fine, but then, boom.
Haha, that old ad is lovely. Those days are over. 🤣
Haven’t watched it to the end yet, but @lyse@lyse.isobeef.org might like this: https://www.youtube.com/watch?v=EarBm4tfMXs
@lyse@lyse.isobeef.org I don’t know a number (wait, why can’t I google a Wetterbericht but only a Wettervorhersage?!), but it was enough for public transportation to shut down. 😅 I think I saw around five trucks on the side of the road who couldn’t continue, too icy. Some cars stranded.
My car has an automatic gearbox and I’m not sure if that’s good or bad in such conditions. 😂 Pretty hard to accelerate without spinning wheels …
@prologic@twtxt.net (While browsing through that, I noticed that https://mu-lang.dev/ itself doesn’t really mention the source code repo, does it? 🤔 Like, the quickstart guide begins with “Build the host: go build ./cmd/mu”, but where’s the git clone … command? 😅)
I’m not really sure what the goal is. 🤔 Do you want to get pull requests for the docs? Or bug reports for mu itself? 🤔
Well that was a lot of snow. Barely made it home. (Because, of course, today was the day where I went to the office. 🤣)
Aww man, I need to pick up learning Finnish again. I just love the sound of that language.
Surprisingly, I still understand quite a bit of what she’s saying here: https://www.youtube.com/watch?v=Wfnt5-7QBvQ
I reckon up until then you had to have another first name that clearly differentiated.
Yes, apparently so. (I’m glad we stopped doing that. I don’t get this obsession with the contents of other people’s pants. 🤢)
Now I’m wondering, was that also the beginning when parents started giving their kids really weird names?
Did this ever happen or was this an urban myth? Would have to dig up some statistics, I guess. (Anecdotal evidence: None of the people I know gave their kids crazy names. 😆)
Fell into a bit of a rabbit hole and learned that it took German law until 2008 to actually allow unisex/gender-neutral first names: https://www.bundesverfassungsgericht.de/entscheidungen/rk20081205_1bvr057607.html 🤦
@bender@twtxt.net Will do. 🤣
@arne@uplegger.eu Das klingt spannend! Setze ich mal auf die Liste. (Bin gerade an The Luminous Dead dran.)
I wonder if my elderly German neighbors have learned enough English by now to understand what I’m swearing about all day long. 🤔
@klaxzy@klaxzy.net Nope, not IONOS, but we use them a lot at work. To be honest, I consider them one of the better providers (at least regarding the IaaS stuff that we do). 😅
My hoster broke UDP, so DNS is broken as well and that takes a lot of things with it. No more email for me, I guess.
Let’s hope they’ll fix it soon.
@prologic@twtxt.net (I still don’t know how you can muster up so much motivation and energy (especially when you have a family). Are we the same species?! 😅)
@lyse@lyse.isobeef.org Abed is a character from Community and “cool cool cool” was one of his “things”: https://www.youtube.com/watch?v=vMXYjejIup4
@lyse@lyse.isobeef.org Ohh, Winter Wonderland. Lovely!
Never had frozen hair. 😳 With just around 0°C? 🤔
@lyse@lyse.isobeef.org (Was that a reference to Abed? 😅)
argparse takes 50 ms on my NUC, because this pulls in all kinds of fancy stuff behind the scenes, colorization and what not. 😮💨
Just importing data classes takes another 60 ms … This fancy new stuff is really costly.
Omg, Python. Parsing arguments with argparse takes 50 ms on my NUC, because this pulls in all kinds of fancy stuff behind the scenes, colorization and what not. 😮💨