@movq@www.uninformativ.de Very nice! I often wish other languages had something similar. Sometimes, I use lambdas, but that also looks ugly and feels a bit like a misuse. Other times, just the normal blocks are enough, but itās not the same. Especially with the mutability aspects as the article explains. Typically, I just put it in a function or ignore it if itās just a few lines.
@movq@www.uninformativ.de Ah, cool! :-) Yeah, itās very wild what is happening under the hood all the time.
@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 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:


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
@movq@www.uninformativ.de This is the total amount of cpu time consumed right?
alright, hopefully this time it behaves?
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ā.)
Day 9 also required some optimizations, if you arenāt careful, you end up with really inefficient algorithms with time/memory complexity beyond what a typical machine has š¤£
Day 7 was pretty tough, I initially ended up implementing an exponential in both time and memory solution that I killed because it was eating all the resources on my Mac Studio, and this poor little machine only has 32GB of memory (I stopped it at 118GB of memory, swapping badly!), This is what I ended up doing before/after:
- Before: Time O(2^k Ā· L), memory O(2^k), where k is the number of splitters along a reachable path and L is path length. Exponential in k.
- After: Time O(RĀ·C) (or O(RĀ·C + s) with s split events), memory OĀ©, where R = rows, C = columns. Polynomial/linear in grid size.
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. š¤£
@shinyoukai@neko.laidback.moe Time to become a trixie or forky!
hello, just trying Gopher out for the first time.
Webp, though it has been around for a long while, wasnāt fully supported on all browsers until recently. The other formats have been in use for such a long time, proving to work just fine, that the advantages Webp provides havenāt been seemingly enough to merit a switch.
Google is also the one behind Webp, and, well, people donāt trust, nor like, them much.
@movq@www.uninformativ.de @zvava@twtxt.net I think people get sick of everything changing all the time and so donāt bother adopting things to change when things are already good enough š¤·
@bender@twtxt.net on the way o7 Ā spent enough time away from the codebase
Fuck me, soooooooo beautiful! Awwww! :ā-) https://www.youtube.com/watch?v=oYfKgi133qo
This focuses more on the landscape part, other episodes also have amazing interactions with the locals. I cannot recommend the Itchy Boots channel enough. Itās in my top three channels of all time I believe. I hardly get the travel bug, but this has now changed. Watching Noralyās videos brings me great joy. It also shows humanity is not lost, contrary to what one might think in this crazy world. :-)
Caution, this channel gets very addictive!
@prologic@twtxt.net Bwahahaha! I tried to establish some form of āconventionā for commit messages at work (not exactly what you linked to, though), but itās a lost cause. š Nobody is following any of that. Nobody wants to invest time in good commit messages. People just want to get stuff done.
Iām just glad that 80% are at least somewhat useful ā instead of āwipā or āshit i screwed upā.
@lyse@lyse.isobeef.org no wonder I picked that cake (albeit coincidentally), I adore almonds, and hazelnuts! Your teammates are absolutely amazing, dude! A very nice project farewell! On leaving places I have a small anecdote.
I know someone who on 3 February 2004 left his job to go elsewhere. At the time his teammates threw a party, and gave him a very nice portable storage. Twenty days later, he returned, and jokingly they asked him for the storage, and money spent on farewell party back. I heard, from a close source, that he gave them his middle finger, but donāt quote me on that. ššš
Apparently MTD of uknowingly toggling mouse on in tmux for the first time is 1.5 agonizing days
@kiwu@twtxt.net Iāve no idea about regulations in your area, but over here there are different taxation rules for video and photo cameras. Hence, manufacturers limit the video recording time of photo cameras typically to half an hour, so that they donāt classify as video cameras with their higher taxes.
@prologic@twtxt.net Tada! There you once hope for your flight and ride to be delayed and then of course they are right on time! :-D You gotta wait either way. ;-) Looks like you got some good drinks, though.
@lyse@lyse.isobeef.org I want to record vlogs. it doesnāt have to be a super high quality one, just something that records for longer periods of time!!
@bender@twtxt.net a mobile phone camera doesnāt cut it because it cant take long videos. I would say like the cheapest possible tbh! it doesnāt have to be an amazing grade a camera, just something that will record in decent quality for long periods of time! I mostly want it to make vlogs :p
@aelaraji@aelaraji.com Thanks for the account! I figured out one thing at least so far, my WAF was blocking some of the AP requests. Fixed that. Anyway, holiday time 𤣠Back in ~2 weeks.
The funny thing is, Yarn moving to Twt Hash v2 sounds a tad more optimistic than Git adopting SHA-256.
Git is several years too late, while Yarn is pretty much on time.
Better Technology, Worse Motivation: GenAIās Mediocrity Trap
While generative AI (GenAI) promises productive efficiency, it can paradoxically lead to lower-quality work. We conducted an experiment with professional illustrators and found that AI assistance flattens the quality curveāit accelerates initial gains but sharply diminishes the returns on sustained effort. Faced with this, a significant number of professionals made a strategic choice: they sacrificed the final quality to save time.
From http://www.jin-li.org/uploads/1/1/4/5/114595093/ai_and_motivation.pdf
I havenāt read this and canāt vouch for it; seems vaguely AI-boostery. Still, the conclusions are interesting. This seems to be the picture that is emerging about generative AI generally: most people donāt like it and find that degrades the quality of work. Coders seem to like it and think that it helps them, but in fact it makes the slower, less productive, and more bug prone.
By all measures itās a bad technology. We should just be honest about it. There is no need to make excuses for multi-trillion-dollar corporations.
git.mills.io today (after finishing work) and this is what I found 𤯠Tehse asshole/cunts are still at it !!! 𤬠-- So let's instead see if this works:
@aelaraji@aelaraji.com Ahhh! That would be even funnier and even more brilliant! 𤣠If you can find this, I would happily employ this tactic next time and make āem pay š° Bahahahaha š¤£
@prologic@twtxt.net it would have been so much easy to run your own. I guess we all like to suffer every once and then, and this time is your turn. š
@lyse@lyse.isobeef.org I personally use twtAgent over here on Thunix (Also managed by deepend I believe) and then from time to time run wk -F ' ' '/\.txt/ {print $NF" "$(NF-1)}' $HOME/public_html/twtAgent.log | sed -e 's/\((\|)\|+\|;\|@\)//g' | sed '/^$/d'| sort -u to check for whoās pulling this feed (Too lazy to alias it :ā] ) .
Leaving this here just in case it might help a fellow Townie, Cheers!
@prologic@twtxt.net AI is slot machines for coders:
- āBefore starting tasks, developers forecast that allowing AI will reduce completion time by 24%. After completing the study, developers estimate that allowing AI reduced completion time by 20%. Surprisingly, we find that allowing AI actually increases completion time by 19%āAI tooling slowed developers down.ā https://metr.org/blog/2025-07-10-early-2025-ai-experienced-os-dev-study/
- āStack Overflow data reveals the hidden productivity tax of āalmost rightā AI codeā: https://venturebeat.com/ai/stack-overflow-data-reveals-the-hidden-productivity-tax-of-almost-right-ai-code
The same intermittent reward operant conditioning that gets people addicted to gambling and thinking that if they follow certain rituals theyāll win ānext timeā drives peopleās beliefs that AI tools are making them more productive when theyāre making them less productive. Iām going to guess that a side effect of this is that people think theyāre typing less when in the longer term theyāre typing the same amount or more when you factor in the productivity loss (as far as Iāve read the studies donāt measure this so Iām only guessing).
People are also being rapidly de-skilled by this technology: the more they use it, the more their actual skills atrophy. āContinuous exposure to AI might reduce the ADR (adesoma detection rate) of standard non-AI assisted colonoscopy, suggesting a negative effect on endoscopist behaviour.ā (science speak for saying that radiologists get worse at seeing tumors in scans once theyāve used AI): https://www.thelancet.com/journals/langas/article/PIIS2468-1253(25)00133-5/abstract
Nobody who cares about the future should be using this stuff for anything.
Fark me again with the bots. This time DDoS-style crawling from hundreds of IPs and dozens of ASN(s) wtf?!
Iāve had to disale the Ingress to my Git instance for the time being,
i need to sleep and I canāt fight this :/
yakumo.dev is finally done for, November 26, 2025 in UTC time.
So long⦠I wonāt be missing it though
@movq@www.uninformativ.de Seems fine to me! Plenty of time to get our shit⢠in order! š
twtxt.net) was being hammered by something at a request rate of 30 req/s (there are global rate limits in place, but still...). The culprit? Turned out to be a particular IP 43.134.51.191 and after looking into who own s that IP I discovered it was yet-another-bad-customer-or-whatever from Tencent, so that entire network (ASN) is now blocked from my Edge:
@prologic@twtxt.net Time to make a new internet. Maybe one that intentionally doesnāt āscaleā and remains slow (on both ends) so itās harder to overload in this manner, harder to abuse for tracking your every move, ⦠Got any of those 56k modems left?
(Iām half-joking. āMake The Internet Expensive Againā like it was in the 1990ies and some of these problems might go away. Disclaimer: I didnāt have my coffee yet. š )
Fark me š¤¦āāļø I woke up quite late today (after a long night helping/assisting with a Mainframe migration last night fork work) to abusive traffic and my alerts going off. The impact? My pod (twtxt.net) was being hammered by something at a request rate of 30 req/s (there are global rate limits in place, but stillā¦). The culprit? Turned out to be a particular IP 43.134.51.191 and after looking into who own s that IP I discovered it was yet-another-bad-customer-or-whatever from Tencent, so that entire network (ASN) is now blocked from my Edge:
+# Who: Tentcent
+# Why: Bad Bots
+132203
Total damage?
$ caddy-log-formatter twtxt.net.log | cut -f 1 -d ' ' | sort | uniq -c | sort -r -n -k 1 | head -n 5
61371 43.134.51.191
402 159.196.9.199
121 45.77.238.240
8 106.200.1.116
6 104.250.53.138
61k reqs over an hour or so (before I noticed), bunch of CPU time burned, and useless waste of my fucking time.
All my newly added test cases failed, that movq thankfully provided in https://git.mills.io/yarnsocial/twtxt.dev/pulls/28#issuecomment-20801 for the draft of the twt hash v2 extension. The first error was easy to see in the diff. The hashes were way too long. Youāve already guessed it, I had cut the hash from the twelfth character towards the end instead of taking the first twelve characters: hash[12:] instead of hash[:12].
After fixing this rookie mistake, the tests still all failed. Hmmm. Did I still cut the wrong twelve characters? :-? I even checked the Go reference implementation in the document itself. But it read basically the same as mine. Strange, what the heck is going on here?
Turns out that my vim replacements to transform the Python code into Go code butchered all the URLs. ;-) The order of operations matters. I first replaced the equals with colons for the subtest struct fields and then wanted to transform the RFC 3339 timestamp strings to time.Date(ā¦) calls. So, I replaced the colons in the time with commas and spaces. Hence, my URLs then also all read https, //example.com/twtxt.txt.
But that was it. All test green. \o/
Geologic Core Sample
ā Read more
@lyse@lyse.isobeef.org @bender@twtxt.net Pfft, they want folks to relocate to Sydney. Fuck that 𤣠Sydney is a bit like San Francisco, Iām not actually sure which is worse. Fuckān expensive as hell, the only palce youād be able to afford to buy or rent is at least ~2hrs out of the city by public transport (i.e: train) and by that time youāve just pissed your life down the toilet, because youād be expected ot work a 9-10hr day + 2-3hrs of travel each way, buy the time you factor in having to wake up super early to get ready to travel in to work, you basically have zero time for anything else, let alone your ufamily,
Fuck that.
@prologic@twtxt.net I couldnāt have phrased it any better than @bender@twtxt.net. :-)
Twice or three times the money as before sounds a bit suspicious to me. Of course, I could be wrong, but I always was under the impression, that your last jobs werenāt all that badly salaried. If the new offer is really paid this highly, it might be a shit job. For me, money isnāt everything, Iād rather opt for a lower income where the job is fun than hating to go to work every day. But if the new job ticks all boxes, go for it. :-)
Also: Consult your pillow, donāt rush it.
I had no meetings this arvo, so I made an appointment with the woods in my extended lunch break. The 6°C warm sun was out all day long and there was only a very light breeze. So, a very nice autumn day.
When I stopped to take a photo in the forest, a deer behind me took off into the woodland. I didnāt see it before. Also, I came across one or the other clearing. Sadly, itās all commercial timberland here. Luckily, in a year or so, when nature slowly took over and reclaimed some spots, the apocalyptic sites are then looking a bit more decent again.
Cleaning of the ruin walls on my backyard mountain slowly takes shape. They made some progress and moved on to the other section. The flag on top is halfway disintegrated again, all the yellow half is completely gone. Iām wondering if they just stop replacing it at some point in time. But probably not.
@lyse@lyse.isobeef.org @bender@twtxt.net thatās also what Yarn.socialās logo is, and just happens to be the yarnd default. Hmmm figured times for a change? š¤
I know its been a long time, but I did come about around to howl a bit recently https://git.gay/xjix/howl needs a ton of work to be usable, but I think itll be a fun way to browse the twtxtverse.
@movq@www.uninformativ.de I think I now remember having similar problems back then. Iām pretty sure I typically consulted the Qt C++ documentation and only very rarely looked at the Python one. It was easy enough to translate the C++ code to Python.
Yeah, the GIL can be problematic at times. Iām glad it wasnāt an issue for my application.
@prologic@twtxt.net Hm, same startup delay. (Go is not an option for me anyway.)
Itās hard to tell why all this is so slow. Maybe in this particular case it has something to do with fonts: strace shows the program loading the fontconfig configs several times, and that takes up a bulk of the startup time. š¤ (Qt6 or Java donāt do that, but theyāre still slow to start up ā for other reasons, apparently.)
To be fair, itās ājustā the initial program startup (with warm I/O caches). Once itās running, itās fine. All toolkits Iāve tried are. But I donāt want to accept such delays, not in the year 2025. š Imagine every terminal window needing half a second to appear on the screen ⦠nah, man.
I like to read through old RPG books and zines for inspiration for my games, and lately Iāve been enjoying the Arduin Grimoire (https://en.wikipedia.org/wiki/Arduin), one of the earliest 3rd-party zines (coming out during the initial run of OD&D). Itās filled with a bunch of unique ideas (some better than others), entirely too many charts, and is very much a product of its time, but thereās something about its ārawā-ness (and its variety) that I still find appealing.
Be it Java with Swing or PyQt6, it takes ~300 ms until a basic window with a treeview and a listbox appears. That is a very noticeable delay.
Is it unrealistic to expect faster startup times these days? š¤
Once the program is running, a new second window (in the same process) appears very quickly. So itās all just the initialization stuff that takes so long. I could, of course, do what āfatā programs have done for ages: Pre-launch the process during boot, windowless. But I was hoping that this wasnāt needed. š (And itās a bad model anyway. When the main process crashes, all windows crash with it.)
Man, @quark@ferengi.one has an absolute gold mine. Having dealt again with different clocks and all sorts of strange time things at work today, this made my day! https://netbros.com/1755172401/ :ā-D
Work has been a lot lately. Iām looking forward to the weekend and taking time for personal projects.
@bender@twtxt.net Twtxt <-> ActivityPub (2nd timeās the charm? š¤£)