@prologic@twtxt.net Hm, I didn’t notice anything. Perhaps I was asleep? 😅
@prologic@twtxt.net You write so much code … it’s incredible. 😅
This feels useful: Rust’s Block Pattern
@lyse@lyse.isobeef.org These tables get shuffled around every time your OS switches to another process. It’s crazy that so much is going on behind the scenes.
@lyse@lyse.isobeef.org I was surprised by that as well. 😅 I thought these were features that you can use, but no, you must do all this.
By the way, I now fixed the issue that I mentioned at the end and it works on the netbook now. 🥳
https://www.uninformativ.de/blog/postings/2025-12-21/0/netbook.jpg
@shinyoukai@neko.laidback.moe But I thought Alpine was one of the good distro’s left. 😢 What’s it doing wrong?
@kiwu@twtxt.net Assembly is usually the most low-level programming language that you can get. Typical programming languages like Python or Go are a thick layer of abstraction over what the CPU actually does, but with Assembler you get to see it all and you get full control. (With lots of caveats and footnotes. 😅)
I’m interested in the boot process, i.e. what exactly happens when you turn on your computer. In that area, using Assembler is a must, because you really need that fine-grained control here.
@kiwu@twtxt.net Finally doing some Assembler again. 😅 Just a tiny little bit at least.
@lyse@lyse.isobeef.org Yeah, well, given that I didn’t need this for such a long time, it’s probably not an essential tool. 😅
I’ve often wanted to have an outline of text documents, though, and tagbar/ctags can do that as well:
https://movq.de/v/3c6d1a13d6/tagbar-md.png
https://movq.de/v/abc58e6d66/tagbar-latex.png
This isn’t as powerful as the “Navigator” tool in StarOffice/LibreOffice (which can be used to rearrange the document), but still pretty useful:
https://www.uninformativ.de/blog/postings/2024-05-23/0/so31.mp4
@lyse@lyse.isobeef.org Awww, 03.jpg. 😍 Yeah, we also had a nice sunset. I was on the road, though, so no photos.
Ooooooooooh! If your .vimrc is as messy as mine, you’ll be pleased to learn that Tagbar can show a sorted list of all key mappings:
https://movq.de/v/0f37d13a01/s.png
🤯
@prologic@twtxt.net It is, yes.
I rewrote all my solutions in Rust (except for day 10 part 2) and these are the runtimes on my i7-3770 from 2013 (this measures CLOCK_PROCESS_CPUTIME_ID, not wallclock):
day01/1 [ 00.000501311] Result: 1066
day01/2 [ 00.000400298] Result: 6223
day02/1 [ 00.000358848] Result: 12586854255
day02/2 [ 00.000750711] Result: 17298174201
day03/1 [ 00.000106537] Result: 17405
day03/2 [ 00.000404632] Result: 171990312704598
day04/1 [ 00.000257517] Result: 1626
day04/2 [ 00.007495342] Result: 9173
day05/1 [ 00.000237212] Result: 505
day05/2 [ 00.000142731] Result: 344423158480189
day06/1 [ 00.000229629] Result: 4076006202939
day06/2 [ 00.000279552] Result: 7903168391557
day07/1 [ 00.000204422] Result: 1622
day07/2 [ 00.000283816] Result: 10357305916520
day08/1 [ 00.029427421] Result: 84968
day08/2 [ 00.028089859] Result: 8663467782
day09/1 [ 00.000310304] Result: 4764078684
day09/2 [ 00.015512554] Result: 1652344888
day10/1 [ 00.000796663] Result: 375
day10/2 [ --.---------] Result: 15377 (Z3)
day11/1 [ 00.000416804] Result: 753
day11/2 [ 00.000660528] Result: 450854305019580
day12/1 [ 00.000336081] Result: 577
day12/2 [ 00.000000695] Result: no part 2
A little under 90 ms total.
On my Samsung NC10 netbook from 2011 with its Intel Atom N455 at 1.6 GHz:
day01/1 [ 00.003771326] Result: 1066
day01/2 [ 00.003267317] Result: 6223
day02/1 [ 00.003902698] Result: 12586854255
day02/2 [ 00.006659479] Result: 17298174201
day03/1 [ 00.000747544] Result: 17405
day03/2 [ 00.002737587] Result: 171990312704598
day04/1 [ 00.001263892] Result: 1626
day04/2 [ 00.044985301] Result: 9173
day05/1 [ 00.001696761] Result: 505
day05/2 [ 00.000978962] Result: 344423158480189
day06/1 [ 00.001387660] Result: 4076006202939
day06/2 [ 00.001734248] Result: 7903168391557
day07/1 [ 00.001295528] Result: 1622
day07/2 [ 00.001809659] Result: 10357305916520
day08/1 [ 00.277251443] Result: 84968
day08/2 [ 00.284359332] Result: 8663467782
day09/1 [ 00.003152407] Result: 4764078684
day09/2 [ 00.071123459] Result: 1652344888
day10/1 [ 00.005279527] Result: 375
day10/2 [ --.---------] Result: 15377 (Z3)
day11/1 [ 00.003273342] Result: 753
day11/2 [ 00.005139719] Result: 450854305019580
day12/1 [ 00.002857552] Result: 577
day12/2 [ 00.000004421] Result: no part 2
A little over 700 ms total.
I like this. You get performance that’s more or less in the ballpark of C, but without the footguns.
If your very popular project with lots of stars on GitHub is over 10 years old, and you’re still at a pre-1.0 version because you’re using SemVer and a 1.0 would mean making some kind of commitment and that’s somehow not desirable for you, then I think you’re doing something wrong. 🤔
Got a nice conspiracy theory for you:
https://mastodon.social/@mcc/115670290552252848
Actually wait I just thought about this and realized that the precise timing of the ACTUAL GitHub seed bank, by which I mean the Arctic Code Vault, on 2020-02-02, makes it more or less a perfect snapshot of pre-Copilot GitHub. Also precisely timed before we all got brain damage from COVID. This is the only remaining archive of source code by people with a fully working sense of smell
(Bonus points because the Arctic World Archive is located in Svaldbard and that’s the name of the AI in Stacey Kade’s “Cold Eternity”.)
@prologic@twtxt.net How on earth did you do that so quickly, especially day 10? People were struggling with this a lot. 🤯
@prologic@twtxt.net Jesus, that was quick. 😅
@prologic@twtxt.net How did you optimize that? 🤔
H… Ho… How have I not heard about vim-tagbar before? 😳
Bought more cheap slot plates (with bad reviews and people complaining about the pin order, because I could’nt find a product without such reviews), but those are simply correct now and just work. 🤪
mu only supports ints? 🤔 I'm not sure if I'll need flots for this year's AoC? 🤔
(Well, one part late in the calendar might need floats, depending on how you solve it …)
mu only supports ints? 🤔 I'm not sure if I'll need flots for this year's AoC? 🤔
@prologic@twtxt.net You won’t need floats, but 64 bit integers are mandatory. 😅
@prologic@twtxt.net Whoop, whoop! Nice! And welcome back. 😅
I’m seeing crashes in the 3D subsystem. (Gallium? Glamor? Whatever other Mesa thing they have? No idea.) In the logs I find this:
malloc(): unaligned tcache chunk detected
And that’s why I still care about Rust and want to learn more about it, even though it’s giving me so much headache and I’ve given up so many times. Because Rust currently seems to be the only popular systems programming language that tries to eliminate these error classes.
And of course “the Rust experiment” in the Linux kernel has recently been concluded as “successful”, so that alone is reason enough for me:
Alright, Advent of Code is over:
https://www.uninformativ.de/blog/postings/2025-12-12/0/POSTING-en.html
It’s been quite the time sink, especially with the DOS games on top, but it was fun. 🥳
In case you’re wondering: All puzzles (except for part 2 of day 10) were doable in Python 1 on SuSE Linux 6.4 and ran in a finite time on the Pentium 133. Puzzle 10/2 might have been doable as well if I had better education. 🤣
May I turn your attention to this timeless masterpiece:
https://www.youtube.com/watch?v=zkyFHx4ncR0 (Terra Ferma - Floating)
@prologic@twtxt.net Yeah, but isn’t it from 2010? No widespread adoption after 15 years? Is there that much inertia? 🤔 On my box, everything just works – browser, GIMP, ImageMagick, imlib2, … 🤔
Searching the web a bit brings up lots of threads where people hate WebP. The problem being that browsers support WebP but other programs tend to be problematic … ? 🤔
@lyse@lyse.isobeef.org Yeah, no idea why that is. 🤔
@lyse@lyse.isobeef.org Nice! 🌇
Use more WebP, I guess.
- Lossless PNG, 635 kB: https://movq.de/v/b239c54838/scrot.png
- Lossless WebP, 469 kB: https://movq.de/v/b239c54838/scrot.webp
- Lossy WebP, 110 kB: https://movq.de/v/b239c54838/scrot%2Dlossy.webp
- Lossy JPEG, 110 kB: https://movq.de/v/b239c54838/scrot%2Dlossy.jpg
@prologic@twtxt.net Here you go:
(LTT = “Linus Tech Tips”, that’s the host.)
LTT: There was a recent thing from a major tech company, where developers were asked to say how many lines of code they wrote – and if it wasn’t enough, they were terminated. And there was someone here that was extremely upset about that approach to measuring productivity, because–
Torvalds: Oh yeah, no, you shouldn’t even be upset. At that point, that’s just incompetence. Anybody who thinks that’s a valid metric is too stupid to work at a tech company.
LTT: You do know who you just said that about, right?
Torvalds: No.
LTT: Oh. Uh, he was a prominent figure in the, uh, improved efficiency of the US government recently.
Torvalds: Oh. Apparently I was spot on.
In case you haven’t seen it yet:
https://movq.de/v/89c2e025ce/torvalds.mp4
Linus Torvalds about SLOC as a measurement of productivity. 😅
Haha, Amazon is full of bad reviews because the pin order doesn’t match … 🤦🤦🤦