@andros@twtxt.andros.dev how often do you send a private message on the Fediverse? How often do you send PGP/SMIME encrypted emails? Are there other tools that are more suitable for the task? If implementing direct/private messages on twtxt scratches an itch (you know, that hobbyist itch we all get from time to time), then donāt give up so easily. Worse comes to worse, and your feed becomes too noisy, people can simply unfollow/mute.
I really donāt care about direct messages here, but I might be on that bottom 1%!
Why is there a āsmall houseā in IBMās Code Page 437?
Thereās a small house ( ā ) in the middle of IBMās infamous character set Code Page 437. āSmall houseāāthatās the official IBM name given to the glyph at code position 0x7F, where a control character for āDeleteā (DEL) should logically exist. Itās cute, but a little strange. I wonder, how did it get there? Why did IBM represent DEL as a house, of all things? ā« Heikki Lotvonen Donāt waste any time here, and go read the article. Itā ⦠ā Read more
The subjective charms of Objective-C
To argue that Objective-C resembles a metaphysically divine language, or even a good language, is like saying Shakespeare is best appreciated in pig latin. Objective-C is, at best, polarizing. Ridiculed for its unrelenting verbosity and peculiar square brackets, it is used only for building Mac and iPhone apps and would have faded into obscurity in the early 1990s had it not been for an unlikely quirk of history. Nevertheless, in my time working as a softwar ⦠ā Read more
Pinta 3.0 brings major GTK4 overhaul
Over 15 years ago, I wrote about the launch of a Paint.NET clone for Linux, called Pinta, written in GTK. That was merely version 0.1, and over time, itās become somewhat of a staple for many Linux users. The project just released version 3, which is a major revision, moving the application over to GTK4 and Libadwaita. Built on the robust GTK 4 toolkit and the sleek Libadwaita, Pinta 3.0 brings a redesigned user interface thatās faster, more responsive, and ⦠ā Read more
US President endorses bill to lock the clocks in current Daylight Savings Time
Comments ā Read more
@prologic@twtxt.net so, the twtxt is ālostā? Donāt rush to reply, I think you deserve your sleep time! Have a nice weekend!
@prologic@twtxt.net in this case it isnāt vendor lock-in. I believe they do it because the carrier āeatsā the costs (the interest part of the instalments). The phones are fully unlocked.
I will return the two we got for parents, and re-buy them again, this time on an instalment plan. Why pay $2,000 up front when you can split the cost in convenient monthly payments, all interest free, right?
SqliteCache backend I'm working on here, what are your thoughts regarding mgirations from old MemoryCache (which is now gone in the codebase in this branch). Do you care to migrate at all, or just let the pod re-fetch all feeds? š¤
@prologic@twtxt.net give it some time. Twtxt is very asynchronous, and travels at the speed of mules. It might take a while to reach the intended destination. š
@david@collantes.us Ah, yes, the hardware might not. As I just said in the other thread: No problem, you can keep the same installation. I did so many times on my PC/laptop at work.
So I re-write this shell alias that I used all the time alias dkv="docker rm" to be a much safer shell function:
dkv() {
if [[ "$1" == "rm" && -n "$2" ]]; then
read -r -p "Are you sure you want to delete volume '$2'? [Y/n] " confirm
confirm=${confirm:-Y}
if [[ "$confirm" =~ ^[Yy]$ ]]; then
# Disable history
set +o history
# Delete the volume
docker volume rm "$2"
# Re-enable history
set -o history
else
echo "Aborted."
fi
else
docker volume "$@"
fi
}
@prologic@twtxt.net yup yup. Much work to be done, so little time. š©
@prologic@twtxt.net Spring cleanup! Thatās one way to encourage people to self-host their feeds. :-D
Since Iām only interested in the url metadata field for hashing, I do not keep any comments or metadata for that matter, just the messages themselves. The last time I fetched was probably some time yesterday evening (UTC+2). I cannot tell exactly, because the recorded last fetch timestamp has been overridden with todayās by now.
I dumped my new SQLite cache into: https://lyse.isobeef.org/tmp/backup.tar.gz This time maybe even correctly, if youāre lucky. Iām not entirely sure. It took me a few attempts (date and time were separated by space instead of T at first, I normalized offsets +00:00 to Z as yarnd does and converted newlines back to U+2028). At least now the simple cross check with the Twtxt Feed Validator does not yield any problems.
Alachua County Running - 20 miles: 20.02 miles, 00:10:46 average pace, 03:35:27 duration
long run⦠drinking the day before and was surprised i got this done. it really felt light the majority of the time. oh man, the massey park saved me with the much needed refill of water since i only had my handheld.
on a side note my daughter did great yesterday at her state gymnastics meet. 1st on bars and 4th overall while winning a slot to regionals!
#running
@prologic@twtxt.net Well, if we really wanted to, I guess @lyse@lyse.isobeef.org and I could provide you with our copies of that time period. š
Oh well. Iāve gone and done it again! This time Iāve lost 4 months of data because for some reason Iāve been busy and havenāt been taking backups of all the things I should be?! š¤ Farrrrk š¤¬
How big is VMS?
This question was asked during my Boot Camp presentation last fall in Boston, and over the past 35 years dozens of times people have asked, how big is VMS? That translates into āhow many lines of code are in VMSā? I thought it was time to at least make a stab at pursuing some insight into the answer. I wrote some command procedures to count the number of source lines in .B32, .B64, .C, .MAR, .M64, and .S files. Not counted are blank lines and lines beginning with the standard comment characters and m ⦠ā Read more
The photo series covering old stuff continues. This time, Gundelsheim. Actually, mostly the castle hotel Horneck, I hardly took any photos from the town itself. I really should have, though. Let me just blame⦠aehm⦠yeah, the rain! Itās totally the rainās fault!! When it started to drizzle, I actually took the first photos, so itās a total lie. https://lyse.isobeef.org/schlosshotel-horneck-in-gundelsheim-2025-03-30/

@thecanine@twtxt.net My apologies, mate! :-( As @david@collantes.us pointed out, this was definitely not my intent at all.
For the easter egg hunt, I first looked for a hidden image map link on the pixel dog in the right lower corner itself. Maybe one giant pixel just links to somewhere else, I figured. But I couldnāt find any and then quickly moved on. Hence, I naturally viewed the HTML source. Because where else would be a good hiding place for easter eggs, right?
Next, I noticed the <font> tags. I thought I had read quite some time ago that they are not an HTML5 thing, but wasnāt entirely sure about it. So, I asked the W3C HTML validator. Sure enough. I thought I let you know about the violations. If somebody had found a mistake on my site, Iād love to hear about it, so I could fix it. Iām sorry that my chosen form of report didnāt resonate with you all that well. I reckoned youāll also find it a bit funny, but I was clearly very wrong on that.
I actually followed the dog cow link to the video, so I ended up on the easter egg. However, I didnāt recognize it as such. ĀÆ_(ć)_/ĀÆ Oh well.
Regarding my message about the browser quirks: I read your answer that you were arguing against the HTML validator findings. Of course, everybody can do with their sites whatever they likes.
In Mexico you couldnāt register the word Sonora (state), nor Taqueria (kind of restaurant) as there are two common words, but perhaps the combination of both is trademarkable, Iām not sure, so many ātaqueriasā here donāt file a trademark request. Itās usually āTaquerĆa [LAST_NAME]ā or āTaquerĆa [PLACE]ā.
At the same time, the word ātaqueriaā was trademarked in UK, like it would be āParisā or āPubā I guess, so basically Sonora Taqueria didnāt reply to the cease and desist, based on:
[Lizbeth GarcĆa]: A brand may not use a word that is generic or descriptive of the products or services it is putting into circulation on the market.
Since he (Ismael, Taqueriaās representative) didnāt get any response, he decided to leave it in the hands of his law firm.
In early 2023, after all the noise on the internet and the mobilization caused by this case, an agreement was finally reached with TaquerĆa to settle the matter peaceably.
In March 2023, Michelle and Sam decided to register the Sonora TaquerĆa brand and logo with the UK Intellectual Property Office.
@lyse@lyse.isobeef.org Aww, this reminds me that I havenāt done any Fraktur/calligraphy in a hell of a long time. I should pick that up again. Itās always nice to see this on old buildings.
@movq@www.uninformativ.de Yeah, Iām also disappointed each and every time.
@prologic@twtxt.net Fully agreed. Iām far more likely to buy such mediums when DRM-free. I never go near Amazon eBooks etc because of their lock-in, and I have a Kobo eReader which needs to have the books side loaded unless directly from the Kobo store. I prefer DRM-free files every time.
Microsoft releases Windows 11 roadmap tool to help make sense of Windows 11ās development
Iāve complained about the utter inscrutability of the Windows release process for a long time, with Microsoft seemingly using channels, build numbers, code names, date-based version numbers, and so on interchangeably, making it incredibly hard to keep track of what is being released when. It turns out even Microsoft itself started losing track, because it ⦠ā Read more
thanks for sharing @xuu@txt.sour.is!
Checking for example https://watcher.sour.is/api/plain/twt or https://registry.twtxt.org/api/plain/tweets, I donāt know whether this syntax is being used by clients or by people. Is it integrated on Yarn in any way? Genuinely asking to know more about it.
If I might throw a quick thought to those working on the registries, it would be nice to have an endpoint with a valid twtxt output (perhaps cached or dumped to a static file) which a client could point to, helping to discover itās content in a way which is compatible with the twtxt spec.
Taking the first twt I found in https://watcher.sour.is/api/plain/twt as an example:
reddit_world_news https://feeds.twtxt.net/Reddit_World_News/twtxt.txt 2025-03-28T00:29:25Z **China bans US logs. 3 billion dollar[...])
it would be something like
TIME <@NICK URL> TWT
2025-03-28T00:29:25Z <@reddit_world_news https://feeds.twtxt.net/Reddit_World_News/twtxt.txt> **China bans US logs. 3 billion dollar[...])
That way you could watch the latest twts with your client, something similar to what we find on Mastodon: https://mastodon.online/public/local
Some support from the clients to separate these ādiscoveryā content, from your following timeline might be required. š¤
Hmm I think I can come up with some kind of heuristic.. Maybe if the feed is requested and hasnāt updated in the last few mins it adds to the queue. So the next time it will be fresh.
perseus and andromeda DEFINITELY have insane wild sex i just KNOWWW she gets him pregnant & she has him screaming the entire time. their servants have to cover their ears and steer clear of their room every night theyāre together their kidās nursemaid makes sure the kid has an early bedtime just so they donāt hear this shit i just KNOW she makes him see stars i know she
Not in the mood to deal with reality today, so hereās another one of those silly things: https://movq.de/v/68c61f8ecc/r2_session.ogg This time on electric bass, tuned down to B-standard because oomph. (Well, sounds okay on my headphones, but Iām obviously no sound engineer. š¤Ŗ)
This time, I brought my cam along. We checked out a piece of ex-forest theyāve cut down. It looks terrible now. :-( At least the spruce resin smell was nice. https://lyse.isobeef.org/waldspaziergang-2025-03-27/

@movq@www.uninformativ.de Hahaha, that filename! :-D 100 times better than I could ever play.
Twtxt was made for nerds, by nerds.
Iād like to change that. Itās by nerds/hackers, for nerds/hackers and friends of these. It doesnāt have to be hacky all the time, as you donāt need to be a nerd to have a blog.
But, for that to happen, someone has to build the tools to improve UX.by design there really is no way to easily discovers others
Yeah, I agree, and although there are directories of email addresses, usually you donāt want that, unless you are a āpublic figureā.
I couldnāt say that a microblogging is a āsocial networkā by default, as a blog is not either. At the same time, people would expect to find new people and conversations, as youād do in a forum.
I think of two features on top of the current spec:
- Clients showing a few posts of what your following are watching but you donāt, so perhaps you find something interesting to follow next. Or that feature of āYour āfollowingsā are following these accounts/peopleā. (Hard to explain in english, but I hope you get the idea)
- Sharing your .txt into some directory, saying āHey, I have this twtxt URL, I want to be discoveredā. Iām thinking of something like the Federated tab on Mastodon.
if it hasnāt updated in a while so i put the request rate to once a week it will take some time before i see an update if it happens today.
@movq@www.uninformativ.de 600MiB is nothing. That instance must be running on a reduced power machine and, perhaps, has too many users. Have you considered starting afresh? Thatās what I have done (when it comes to the Fediverse), four times! :-D
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.
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. š
@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.
Itās extremely surprising to me that younger non-technical people just type in their full name (properly cased first and last name with a space in between) for a technical username in account registration or login forms. Iāve seen that happening several times in the past few years. The field name is āBenutzernameā in German, literally āusernameā. Even adding a placeholder text to signal that they could simply use their nickname in lowercase did not change anything at all. Well, one person used at least an e-mail address.
This wasnāt the case six, seven years ago, everybody had some ārealā username. Even non-techies. It looks like some ācommon knowledgeā is getting lost. Strange. Very weird. It trips me every time I see it.
Have you experienced something similar?
I havenāt had one since the before times of COVID. I am not sure if my company will have them again for the near future.
Ctrl+Left to jump a word left, I get 1;5D in my tt2 message text. My TERM is set to rxvt-unicode-256color. In tt, it works just fine. When I change to TERM=xterm-256color, it also works in tt2. I have to read up on that. Maybe even try to capture these sequences and rewrite them.
Well, some time ago I put this in my ~/.Xdefaults:
URxvt.keysym.Control-Up: \033[1;5A⨠URxvt.keysym.Control-Down: \033[1;5B
URxvt.keysym.Control-Left: \033[1;5D⨠URxvt.keysym.Control-Right: \033[1;5C
Probably to behave more like XTerm and fix a few other issues I had with other programs. But, it turns out, tcell expects the original sequence: https://github.com/gdamore/tcell/blob/main/terminfo/r/rxvt/term.go#L487
Hmm.
@movq@www.uninformativ.de wow, that almost works as I want it! Only think missing is the first time stamp, on opening. Hmmā¦
vi or vim at the beginning of each line? Like, upon opening like so:
@movq@www.uninformativ.de the idea is to be able to write documents in which I have auto time stamps on each line. Similar to this, which was posted on Hacker News today.
Is there a way to auto-insert a time stamp on vi or vim at the beginning of each line? Like, upon opening like so:
2025-03-20 15:04:03 Blah blah blah blah
2025-03-20 15:04:15 Bleh bleh bleh bleh
2025-03-20 15:04:22 ...
i really wanna learn golang it looks fun and capable and i can read it kind of but every time i try it iām immediately stuck on basic concepts like āwhat the fuck is a pointerā (this has been explained to me and i still donāt get it). i did have types explained to me as like notes on code which makes sense a bit but iām mostly lost on basic code concepts
Memory safety for web fonts in Chrome: Google replaces FreeType with Rust-based alternative
Thereās no escaping Rust, and the language is leaving its mark everywhere. This time around, Chrome has replaced its use of FreeType with Skrifa, a Rust-based replacement. Skrifa is written in Rust, and created as a replacement for FreeType to make font processing in Chrome secure for all our users. Skifra takes advantage of Rustās memory safety, and ⦠ā Read more
I think we need a bigger boot partition
Long ago, during the time of creation, I confidently waved my hand and allocated a 1GB ESP partition and a 1GB boot partition, thinking to myself with a confident smile that this would surely be more than enough for the foreseeable future. However, this foreseeable future quickly vanished along with my smile. What was bound to happen eventually came, but I didnāt expect it to arrive so soon. What could possibly require such a large boot partition? And ⦠ā Read more
@movq@www.uninformativ.de I have no doubt that youāre not seeing the images correctly š. Itās just that itās broken when viewing them, in my case, and analyzing the URLs, Iāve seen everything I mentioned.
Regarding the hash, youāre right. Iāll have to investigate whatās going on. Iām having a hard time getting the hash generation to work properly.