L’argument du “yen a qui font pire tfaçon” m’insupporte aussi. ET j’ai envie de croire au systémique, à l’inspiration qu’on donne en montrant aussi un comportement positif.
Thank you @python_valencia@twtxt.python-valencia.es for letting me show you the secrets of a decentralised plain text social network like twtxt.
I hope you enjoyed the talk! ❤️🐍
#python #twtxt
@bender@twtxt.net That … was better than expected. 😂
@prologic@twtxt.net Gemini has an answer for you:
This is a conversation thread from a twtxt network, detailing a user’s (movq) frustration with the Mastodon “export data” feature and their consideration of self-hosting a fediverse alternative. Here’s a summary:
- movq’s initial issue:
- movq is concerned about the volatility of their data on their current Mastodon instance due to a broken “export data” feature.
- They contacted the admins, but the issue remains unresolved.
- This led them to contemplate self-hosting.
- movq is concerned about the volatility of their data on their current Mastodon instance due to a broken “export data” feature.
- Alternative fediverse software suggestions:
- kat suggests gotosocial as a lightweight alternative to Mastodon.
- movq agrees, and also mentions snac as a potential option.
- kat suggests gotosocial as a lightweight alternative to Mastodon.
- movq’s change of heart:
- movq ultimately decides that self-hosting any fediverse software, besides twtxt, is too much effort.
- movq ultimately decides that self-hosting any fediverse software, besides twtxt, is too much effort.
- Resolution and compromise:
- The Mastodon admins attribute the export failure to the size of movq’s account.
- movq decides to set their Mastodon account to auto-delete posts after approximately 180 days to manage data size.
- Movq also mentions that they use auto-expiring links on twtxt to reduce data storage.
- The Mastodon admins attribute the export failure to the size of movq’s account.
Wait! What’s going on?! 🧐
The Mastodon admins say that it’s probably because of the size of my account (~600 MB), so the export process times out. And I understand that. Here on twtxt, I always use auto-expiring links when I post images or videos. It just gets too much data otherwise. I think I’ll just set my Mastodon account to auto-delete posts after ~180 days or something like that. Nobody cares about old posts anyway.
@lyse@lyse.isobeef.org @bender@twtxt.net It already is a tiling window manager, but some windows can’t be tiled in a meaningful way. I admit that I’m mostly thinking about QEMU or Wine here: They run at a fixed size and can’t be tiled, but I still want to put them in “full screen” mode (i.e., hide anything else).
@movq@www.uninformativ.de let’s host yarnd! Or maybe wait until @prologic@twtxt.net return activitypub support which deleted in this commit
Wow, phishing is just around the corner 👀
A Sneaky Phish Just Grabbed my Mailchimp Mailing List
https://www.troyhunt.com/a-sneaky-phish-just-grabbed-my-mailchimp-mailing-list/
tt
reimplementation that I already followed with the old Python tt
. Previously, I just had a few feeds for testing purposes in my new config. While transfering, I "dropped" heaps of feeds that appeared to be inactive.
I need to import my yarn cache. It’s sitting at about 1.5G in registry format. That should make things interesting…
tt
reimplementation that I already followed with the old Python tt
. Previously, I just had a few feeds for testing purposes in my new config. While transfering, I "dropped" heaps of feeds that appeared to be inactive.
neat! my watcher is currently sitting at about 75 MB following over 1500 feeds. only about 200 are currently somewhat active.
-rw-r--r--. 1 xuu xuu 69M Mar 25 20:46 twt.db
-rw-r--r--. 1 xuu xuu 32K Mar 25 21:34 twt.db-shm
-rw-r--r--. 1 xuu xuu 5.6M Mar 25 21:34 twt.db-wal
sqlite> select state, count(*) n from feeds group by 1;
hot|7
warm|8
cold|183
frozen|743
permanantly-dead|857
about:compat
in Firefox.
@movq@www.uninformativ.de so glad I don’t use Firefox! And now I will pretend I haven’t seeing your screenshot. Hahahahaha!
@movq@www.uninformativ.de I don’t see the utility, nor artistry in it, but if it works for you, 🥳! 😅
@movq@www.uninformativ.de LOLZ! 🤣
There are 82.108 read statuses, but only 24.421 messages in the cache. In contrast to the cache with the messages, the read statuses are never cleaned up when a feed was unsubscribed from. And the read statuses also contain old style hashes, before we settled on the what we have today. Still a huge difference. Hmm.
tt
reimplementation that I already followed with the old Python tt
. Previously, I just had a few feeds for testing purposes in my new config. While transfering, I "dropped" heaps of feeds that appeared to be inactive.
Thanks, @movq@www.uninformativ.de!
My backing SQLite database with indices is 8.7 MiB in size right now.
The twtxt
cache is 7.6 MiB, it uses Python’s pickle
module. And next to it there is a 16.0 MiB second database with all the read statuses for the old tt
. Wow, super inefficient, it shouldn’t contain anything else, it’s a giant, pickled {"$hash": {"read": True/False}, …}
. What the heck, why is it so big?! O_o
you just haven’t read this yet.
The brokenness of the web can be examined by opening about:compat
in Firefox.
Lots and lots of workarounds for specific websites.
@movq@www.uninformativ.de You could also just use a tiling window manager. :-) As a bonus, it doesn’t waste dead space, the window utilizes the entire screen. To also get rid of panels and stuff, put the window in fullscreen mode.
@kat@yarn.girlonthemoon.xyz I have just opened the GIMP bug tracker (hosted at gitlab.gnome.org) and, I kid you not, they have deployed Anubis in front of it:
Oof.
Thinking about adding a little “focus” feature to my window manager: It hides all but one window, no wallpaper, no bars.
It would turn this
https://movq.de/v/a75eb68770/a0.jpg
into this
https://movq.de/v/a75eb68770/a1.jpg
or this
https://movq.de/v/a75eb68770/b0.jpg
into this:
https://movq.de/v/a75eb68770/b1.jpg
🤔
tt
reimplementation that I already followed with the old Python tt
. Previously, I just had a few feeds for testing purposes in my new config. While transfering, I "dropped" heaps of feeds that appeared to be inactive.
@lyse@lyse.isobeef.org I’m glad to hear that! Yay for more clients. 😊
tt
reimplementation that I already followed with the old Python tt
. Previously, I just had a few feeds for testing purposes in my new config. While transfering, I "dropped" heaps of feeds that appeared to be inactive.
If I didn’t mess this up, 61 feeds reduced down to 36.
I now subscribed to most feeds in my Go tt
reimplementation that I already followed with the old Python tt
. Previously, I just had a few feeds for testing purposes in my new config. While transfering, I “dropped” heaps of feeds that appeared to be inactive.
This might motivate me to actually “finish” the new client, so that it could become my daily driver. No need to use the old software stack any longer. Let’s see how bad this goes.
(I didn’t submit a proposal of my own, because it would basically just be a duplicate of another one. 😅)
@lyse@lyse.isobeef.org Interesting, thanks for that list. 🤔
I’ve identified several issues with my current (admittedly cheap) upright bass by now. It might be time to upgrade to a better model. 🤔
If only those things weren’t so damn expensive. I just checked the prices and simply burst out laughing. 😂
… yeah, okay, I don’t think I’ll do that. 😅 Anything but twtxt is just too much effort.
Perfect ASCII diagram builder
#ascii
@lyse@lyse.isobeef.org I think the community should be allowed to experiment mate 😅 Just make tt2
ignore such items in feeds and you’re good 👍
@eapl.me@eapl.me@eapl.me@eapl.me Yeah yarnd
already filters/ignores them (for now)
@movq@www.uninformativ.de Yeah, most of the graphical applications are actually KDE programs:
- KMail – e-mail client
- Okular – PDF viewer
- Gwenview – image viewer
- Dolphin – file browser
- KWallet – password manager (I want to check out
pass
one day. The most annoying thing is that when I copy a password, it says that the password has been modified and asks me whether I want to save the changes. I never do, because the password is still the same. I don’t get it.)
- KPatience – card game
- Kdenlive – video editor
- Kleopatra – certificate manager
Qt:
- VLC – video player
- Psi – Jabber client (I happily used Kopete in the past, but that is not supported anymore or so. I don’t remember.)
- sqlitebrowser – SQLite browser
Gtk:
- Firefox – web browser
- Quod Libet – music player (I should look for a better alternative. Can’t remember why I had to move away from Amarok, was it dead? There was a fork Clementine or so, but I had to drop that for some unknown reason, too.)
- Audacity – audio editor
- GIMP – image editor
These are the things that are open right now or that I could think of. Most other stuff I actually do in the terminal.
In the past™, I used the Python KDE4 bindings. That was really nice. I could pass most stuff directly in the constructor and didn’t have to call gazillions of setters improving the experience significantly. If I ever wanted to do GUI programming again, I’d definitely go that route. There are also great Qt bindings for Python if one wanted to avoid the KDE stuff on top. The vast majority I do for myself, though, is either CLI or maybe TUI. A few web shit things, but no GUIs anymore. :-)
Although, most software I use is decentish in that regard.
Is that because you mostly use Qt programs? 🤔
I wish Qt had a C API. Programming in C++ is pain. 😢
Oh, it’s called “unsubscribe”.
@movq@www.uninformativ.de Oh, right, a type would be good to have! :-D
@movq@www.uninformativ.de Where can I join your club? Although, most software I use is decentish in that regard.
I just noted today that JetBrains improv^Wcompletely fucked up their new commit dialog. There’s no diff anymore where I would also be able to select which changes to stage. I guess from now on I’m going to exclusively commit from only the shell. No bloody git integration anymore. >:-( This is so useless now, unbelievable.
“it is very easy to filter or ignore it” This is the interesting part for legacy clients, hehe
Joking aside, let’s see how it works in the wild!
It looks interesting but not enough for me to buy one 😅
@andros@twtxt.andros.dev This is cool! 😍 Migut just have to add support for this to see how it might work in yarnd
🤣
Nouvel article à propos de ma page /quotes https://si3t.ch/log/2025-03-24-quotes.txt
Anyone interested in the PicoCalc? https://www.clockworkpi.com/product-page/picocalc #basic
C’est fou comme c’est cher une voiture oO. Comment vous faîtes les gens???
@lyse@lyse.isobeef.org (I think of pointers as “memory location + type”, but I have done so much C and Assembler by now that the whole thing feels almost trivial to me. And I would have trouble explaining these concepts, I guess. 😅 Maybe I’ll cover this topic with our new Azubis/trainees some day …)
When will the flat UI craze end? Can I get my buttons, scrollbars, and toolbars back, please?
I am working on this: https://dm-echo.andros.dev/
More news coming soon.
#twtxt
@kat@yarn.girlonthemoon.xyz Pointers can be a bit tricky. I know it took me also quite some time to wrap my head around them. Let my try to explain. It’s a pretty simple, yet very powerful concept with many facets to it.
A pointer is an indirection. At a lower level, when you have some chunk of memory, you can have some actual values sitting in there, ready for direct use. A pointer, on the other hand, points to some other location where to look for the values one’s actually after. Following that pointer is also called dereferencing the pointer.
I can’t come up with a good real-world example, so this poor comparison has to do. It’s a bit like you have a book (the real value that is being pointed to) and an ISBN referencing that book (the pointer). So, instead of sending you all these many pages from that book, I could give you just a small tag containing the ISBN. With that small piece of information, you’re able to locate the book. Probably a copy of that book and that’s where this analogy falls apart.
In contrast to that flawed comparision, it’s actually the other way around. Many different pointers can point to the same value. But there are many books (values) and just one ISBN (pointer).
The pointer’s target might actually be another pointer. You typically then would follow both of them. There are no limits on how long your pointer chains can become.
One important property of pointers is that they can also point into nothingness, signalling a dead end. This is typically called a null pointer. Following such a null pointer calls for big trouble, it typically crashes your program. Hence, you must never follow any null pointer.
Pointers are important for example in linked lists, trees or graphs. Let’s look at a doubly linked list. One entry could be a triple consisting of (actual value, pointer to next entry, pointer to previous entry).
_______________________
/ ________\_______________
↓ ↓ | \
+---+---+---+ +---+---+-|-+ +---+---+-|-+
| 7 | n | x | | 23| n | p | | 42| x | p |
+---+-|-+---+ +---+-|-+---+ +---+---+---+
| ↑ | ↑
\_______/ \_______/
The “x” indicates a null pointer. So, the first element of the doubly linked list with value 7 does not have any reference to a previous element. The same is true for the next element pointer in the last element with value 42.
In the middle element with value 23, both pointers to the next (labeled “n”) and previous (labeled “p”) elements are pointing to the respective elements.
You can also see that the middle element is pointed to by two pointers. By the “next” pointer in the first element and the “previous” pointer in the last element.
That’s it for now. There are heaps ;-) more things to tell about pointers. But it might help you a tiny bit.
@andros@twtxt.andros.dev @prologic@twtxt.net Exactly. The screenshots of the last few days show it in action. But I do not consider it ready for the world yet. @doesnm@doesnm.p.psf.lt appears to have a high pain tolerance, though. :-)
@andros@twtxt.andros.dev You use your real name as login name, too?
@prologic@twtxt.net I see this with the scouts. Luckily, not at work. But at work, I’m surrounded by techies.
@movq@www.uninformativ.de Oh my goodness! I’m so glad that I don’t have to deal with that in my family. But yeah, I guess you’re onto something with your theory. This article is also quite horrific. O_o
@movq@www.uninformativ.de Wooaah, that is cool! \o/