Hmm ā¦
My project pages have this āDownloadsā section and I offer tarballs for each release:
https://movq.de/git/jenny/#downloads
I added this many years ago because an OpenBSD dev asked for it (but the project in question didnāt end up in their ports after all).
What are your thoughts on this? Is it necessary to offer tarballs?
I noticed that some distributions have already moved away from using tarballs and instead always clone from Git. š¤
jenny stuff aside, I received zero bug reports or code contributions since leaving GitHub in 2018.
@prologic@twtxt.net Oh, yes, just for clarity: This wasnāt a āpro GitHubā argument. š I wonāt go back there (or to another āforgeā).
I think weāre totally on the same page: Decentralized Git hosting is good, but we havenāt solved the ācollaborationā part yet. Or rather: We have to modernize it. The tools are already there, but (many) people donāt want to use them and think theyāre clunky.
@dce@hashnix.club Yeah, but I havenāt looked into this specific issue. I am very much anti-AI, but this particular thing might be human error. I donāt know.
@lyse@lyse.isobeef.org Oh, Iām sure theyāll keep hammering dead URLs for many years to come. These crawlers are 100% brain dead. And they donāt even need to be smarter, because they still grab valuable stuff left and right.
jenny stuff aside, I received zero bug reports or code contributions since leaving GitHub in 2018.
How many tickets and merge requests did you get before moving to your own server?
Hm, these were probably some of the more active projects:
- https://github.com/vain/lariza/issues?q=is%3Aissue%20state%3Aclosed
- https://github.com/vain/pdfPres/issues?q=is%3Aissue%20state%3Aclosed
- https://github.com/vain/xiate/issues?q=is%3Aissue%20state%3Aclosed
So itās not a ton of stuff and there are many āissuesā I opened myself, but itās certainly more than these days.
Havenāt used
git send-emaileven once. I definitely have to look into that soon. Wanted to do that for several years. I typically upload the patch to my server and send a link via IRC.
git send-email is good for sending patches to a mailing list (because then the individual patches can be discussed easily), but since those are dying out as well, it loses its appeal. If you want to send patches to a single person, just sending the link to your repo is far easier. š¤
@lyse@lyse.isobeef.org Oh dear, thatās cute. š
Iām seeing some slowdowns in Vim lately. Must have something to do with syntax highlighting or indentation rules or something: When I hit Enter to go to the next line, it sometimes freezes for like 100 ms. Itās pretty annoying.
Doesnāt happen in Vim Classic, so I switched all my machines to that now.
@lyse@lyse.isobeef.org Thanks. š Yeah, I already found it slightly annoying myself. Letās see how the bots respond to the new situation. š¤
@prologic@twtxt.net Hmmm, I have no idea how to solve that problem. š
Some jenny stuff aside, I received zero bug reports or code contributions since leaving GitHub in 2018.
I thought I had made that super easy, because you can just send me an email ā no sign-up process, nothing. But thatās way too old-school, people donāt know how to use git format-patch (let alone git send-email) and they also donāt understand that they can just send me a link to their forked Git repo (which can be hosted anywhere). Git is super flexible and powerful, but those features are hardly ever used.
Maybe people even need some kind ārewardā, or āfameā. Like those āachievementsā that you can unlock on GitHub. (Something to put in their CV ⦠?)
Are you aware of the Residential Proxy pest?
https://spur.us/blog/smart-tv-apps-residential-proxy-sdks
This explains the access patterns that I see in my logs.
Itās funny, because I used to warn years ago that this might happen, and then I lost track of this topic. Now here we are and itās a real issue. š¤¦āāļø
@prologic@twtxt.net Which is? š
Okay, so this is live now under https://movq.de/git/. (āKurzen Prozess gemacht.ā)
@lyse@lyse.isobeef.org A small portion of people might do the headphone thing because of autism or sensory issues, to isolate them from annoying noises. I used to do that myself. š¤
Okay, so, my website also includes my code / git repos, and those are made browsable by stagit. What I donāt like about this (these days) is that this includes all the diffs of my commits. In other words: All my code.
This makes it super easy for malicious crawlers to slurp up valuable data. I donāt like that.
Iām thinking about switching to this instead:
It still shows project infos and there are Atom feeds, but to get the code, you have to actually clone the repos.
š¤
(If you spot any bugs, let me know.)
@lyse@lyse.isobeef.org I was wondering for an embarrassingly long time why my NAS wouldnāt boot. (The main power supply switch was turn off.) š¤Ŗ
Falls sich hier noch jemand fragte, was genau mein Humor ist:
https://sueden.social/@DerSash/112366647794794897
Das Gegenteil von Erbse ist Verdiense.
@lyse@lyse.isobeef.org Das ertragā ich wahrscheinlich nur auf Mute. ScheiĆ LƤrm. š¤£
Note to self: If you turn something off, this means it is not on.
@lyse@lyse.isobeef.org Stimmt, das hatte ich vƶllig vergessen. Gab da mal diese Zeit, in der āForenbeitrƤgeā die Pest waren. š¤ Da ist sie also wieder, die rosarote Nostalgiebrille. š
@prologic@twtxt.net @itsericwoodward@itsericwoodward.com āEnterpriseā Java ruins everything, eh? š I only did that very briefly, luckily.
Das jüngste Posting im Shell und Programmieren-Forum bei ubuntuusers.de ist jetzt 1.5 Monate alt. š¢
Was habā ich dieses Forum früher geliebt. Aber das Medium ist einfach tot, niemand ist mehr an so einem Austausch interessiert ā¦
@lyse@lyse.isobeef.org It reads a lot nicer, yeah. And you can do oink.my_property += 1 as well, for example.
@lyse@lyse.isobeef.org Good question, I donāt know yet if the standard library has been extended a lot. š¤
@prologic@twtxt.net No. After the cutoff-date, hashes are expected to be v2. End of story.
(In jenny, a twt can only ever have one thing that can be used for threading.)
I trip over this in our code at work all the time.
Python has this concept of āpropertiesā:
class Oink:
def __init__(self):
self._foo = 3
@property
def my_property(self):
return self._foo
a = Oink()
print(a.my_property)
my_property() is a method but it can be used as if it were a field.
This can also be used to define a setter:
class Oink:
def __init__(self):
self._foo = 3
@property
def my_property(self):
return self._foo
@my_property.setter
def my_property(self, value):
self._foo = 123 * value
Because, for some reason, Python people donāt like getters and setters. Instead, they hide it behind a property.
The result is, when you read this:
a.my_property = 5
print(a.my_property)
You have no idea that this actually calls a method.
@david@daiwei.me The stuff in parens is lost on yarnd:
@david@daiwei.me Yeah, Oracle is a Dumpster Fire, thatās true. š«¤
Does yarnd still support the old āthreadingā? Letās see.
I really think I should go back to Java.
Writing programs in Python is so exhausting. I want a compiler and I want static typing. No, linters and type checkers and IDEs are not good enough. Compilers catch way more errors in advance.
Rust is also exhausting. Theyāre constantly adding language features and, at the same time, the runtime library remains tiny and you need 3rd party libraries for everything. Many of those are still at version 0.x (SemVer!) and you canāt rely on anything. Often times, you need the latest Rust nightly compiler.
Go is ⦠I donāt like it. And huge binaries.
I like C as a language, but itās too fragile. I want to have a proper HashMap every now and then.
None of the above have good GUI libraries, at least not on Linux.
And then thereās Java. This is my fractal renderer that I wrote over 17 years ago:
https://movq.de/v/fcd3c4e557/vid-1784121825.mp4
Itās fast. It has a GUI with custom widgets and those werenāt even hard to make. It still works without changing a single line of code. The source code files have timestamps from 2009 and I just noticed that the JAR file Iām using in the video was compiled in 2010.
Java as a language is relatively easy to learn and to master. There are few surprises. The source code organization with packages is good. Java API docs are clear and well written.
The JVM ramp-up times have improved considerably:
https://movq.de/v/e7314e521e/vid-1784121998.mp4
This isnāt like the Dark Ages anymore. Might even be usable for some CLI tools.
The only thing where Java really sucks is anything close-ish to the kernel. Try issuing an ioctl() ⦠I couldnāt have made my TUI framework in Java, but then again, I wouldnāt have needed to because Swing already exists and it just works.
@prologic@twtxt.net See, thatās what edit/delete is good for. š š¤Ŗ
@david@daiwei.me Thatās a good thing. I still use it heavily, but I also realize that it is addictive. This whole idea of getting likes and boosts is horrible. Seeing ānumber goes upā is inherently addictive design, if you ask me. This should never have been added to a Free Platform like Mastodon, and Iām glad that twtxt doesnāt have anything like it.
local means it only stores this stuff offline. So they claim. I donāt trust this and I donāt want to go anywhere near it.
@david@daiwei.me š¤£
@lyse@lyse.isobeef.org Yeah, okay, the default being local means it only stores this stuff offline. So they claim. I donāt trust this and I donāt want to go anywhere near it.
@prologic@twtxt.net Itās from Gabeās feed: https://gabesarcade.com/twtxt.txt
Yeah, lol, fuck off. Tried to reproduce that hashing issue, thus playing around with Go a little bit. And what did I find?
$ tree ~/.config/go
/home/user/.config/go
āāā telemetry
āāā local
āĀ Ā āāā asm@devel-devel-linux-amd64-2026-07-14.v1.count
āĀ Ā āāā compile@devel-devel-linux-amd64-2026-07-14.v1.count
āĀ Ā āāā go@devel-devel-linux-amd64-2026-07-14.v1.count
āĀ Ā āāā link@devel-devel-linux-amd64-2026-07-14.v1.count
āĀ Ā āāā upload.token
āĀ Ā āāā weekends
āāā upload
4 directories, 6 files
It collects and uploads ātelemetryā now.
No.
(Donāt tell me how I can turn that off. Not interested. This is a compiler and it wants to track me, without asking for consent. Thatās a no-go.)
@david@daiwei.me It really is almost impossible to debug these hash issues. Only thing I can do is some trial-and-error, to see if I somehow end up at pmrf6ftxsdhr instead of ksou5aqw7w5a. So far, no luck. š
@kat@yarn.girlonthemoon.xyz Welcome back š„³
Back at 29-30 °C in my apartment. š„³š
@david@daiwei.me This is another dangling thread:
Trying to fetch "#kyjhiwcxeknm" from Yarn pod https://txt.sour.is ...
Trying to fetch "#kyjhiwcxeknm" from Yarn pod https://twtxt.net ...
Twt could not be found
@david@daiwei.me The one with www is correct: https://www.uninformativ.de/twtxt.txt is the canonical URL used in the url = metadata field. (For historical reasons, it also works without www and even with http.)
@david@daiwei.me Ah, edits. Okay. Letās hope that itās all fixed then. š¤
⦠this came off more snippy than I wanted it to. Sorry. š
Good morning. Iām seeing so many broken threads. Youāre still investigating this, right?
@bender@twtxt.net All the other ones worked but this broke? Whatās different here? To which twt hash should this be a reply? š¤
@david@daiwei.me Well, I donāt see any broken threads here. š¤
@bender@twtxt.net No idea. I can only tell you that the correct hash would have been rwzz277nkyju for this line:
[2026-07-11 14:47:17+00:00] [(#5bpwpdcjnhcz) <a href="https://txt.sour.is/external?uri=https://daiwei.me/twtxt.txt">@david<em>@daiwei.me</em></a> (This thread is broken again on my end. Another bug or fix not released yet? š
)]
(Guess I should have used my āfind contextā function. š¤Ŗ)
@bender@twtxt.net Ah, the first twts were from https://raw.githubusercontent.com/Fastidious/fastidious.github.com/master/twtxt.txt, not https://daiwei.me/twtxt.txt. Fetching the GitHub feed completes the thread. š
@david@daiwei.me (This thread is broken again on my end. Another bug or fix not released yet? š )
@lyse@lyse.isobeef.org But but but but but ⦠is that legal?! š
# url = preamble so every client hashes your feed the same way. Thanks @fastidious for the report š
Well, this looks good, I guess:
š„³# url = preamble so every client hashes your feed the same way. Thanks @fastidious for the report š
@prologic@twtxt.net Letās give it a shot! Test!
Host header is sent by the client. And donāt even think about serving UTF-8 or even just putting utf-8 in the content type. š
And for the JPEG thumbnails I pass a special flag to ImageMagick so that IBM Web Explorer from OS/2 wonāt trip. 𤣠And always use link rel="stylesheet" for CSS, because some browsers render inlined CSS as literal text. And ⦠probably more that I forgot by now. š
@bender@twtxt.net Speaking of drawers at the office ⦠this is mine:
Looks a bit sad, eh? 𤣠(Or you could say: Minimalism!)
There you go: https://movq.de/blog/postings/2026-07-10/0/POSTING-en.html
Oh, crap! Itās only Thursday! I thought we had Friday already ⦠nnnnooooooo, not another day. š
@bender@twtxt.net Ha, I remember these from our trip to Florida ~30 years ago:
(Yep, it was a rainy day. š)
Heh, thatās a cute story: https://www.osnews.com/story/145459/you-paid-me-a-long-time-linux-user-to-use-windows-11-exclusively-for-a-month-heres-how-it-went/
@itsericwoodward@itsericwoodward.com And sometimes ā¦
(Itās an older meme but it checks out.)
Host header is sent by the client. And donāt even think about serving UTF-8 or even just putting utf-8 in the content type. š
And for the JPEG thumbnails I pass a special flag to ImageMagick so that IBM Web Explorer from OS/2 wonāt trip. 𤣠And always use link rel="stylesheet" for CSS, because some browsers render inlined CSS as literal text. And ⦠probably more that I forgot by now. š
@bender@twtxt.net Oh my god! š Thatās worth a small fortune on eBay. š¤£
Host header is sent by the client. And donāt even think about serving UTF-8 or even just putting utf-8 in the content type. š
And for the JPEG thumbnails I pass a special flag to ImageMagick so that IBM Web Explorer from OS/2 wonāt trip. 𤣠And always use link rel="stylesheet" for CSS, because some browsers render inlined CSS as literal text. And ⦠probably more that I forgot by now. š
Iām in the process of making a big page with photos and screenshots, and this is more stuff than I expected. š«©
@arne@uplegger.eu You have Matrix at work? No Teams, Google Chat, Slack, Discord, whatever, but Matrix? Really? Where do you work, is this Socialist Russia?!
@lyse@lyse.isobeef.org How many people are still using XMPP? š¤ Iād expect the number to just as low as IRC users? š¤
@prologic@twtxt.net Neither can I. š±
However, I havenāt touched my favicon longer than that, lol:
$ l movq.de/favicon.ico
ārwārāārāā void users 2011-01-08 198 ā movq.de/favicon.ico
@GabesArcade@gabesarcade.com Thatās Halo? I donāt think I ever saw that in person ⦠š¤
Sie schreien wie die Paviane und GegenstƤnde fliegen.
Es muss ein FuĆballspiel sein.
Windows NT 4 didnāt have a Device Manager. You know, this thing right here that got introduced with Windows 95:
And thatās super awkward in NT4.
You know what doesnāt have a Device Manager, either? Linux. Why? š¤ Isnāt this one of the most useful system tools? It gives you an overview of the devices in your system and tells you which driver is used for them. Linux could really use such a tool, I think? š¤
(There are programs like āhardinfoā and I remember ancient KDE providing such a tool, but theyāre all an afterthought. Hardly integrated into the overall system.)
@prologic@twtxt.net Oohhhhhhhh, lovely. š
15 years without reinstalling on this particular box.
$ head -n 1 /var/log/pacman.log
[2011-07-07 11:19] installed filesystem (2011.04-1)
Two more years and Iāll be celebrating the ā20 years of Archā anniversary.
@prologic@twtxt.net That looks nice! Whatās the temperature?
ā expected hash
ā expected hash
ā expected hash
Test 2
multiline
Test 1
@GabesArcade@gabesarcade.com The no-JS part is one thing, but you also have to disable the (nowadays common) forced-HTTP-to-HTTPS-redirect, because those old browsers canāt do modern crypto. And make sure that your webserver serves the correct page even if no Host header is sent by the client. And donāt even think about serving UTF-8 or even just putting utf-8 in the content type. š
And for the JPEG thumbnails I pass a special flag to ImageMagick so that IBM Web Explorer from OS/2 wonāt trip. 𤣠And always use link rel="stylesheet" for CSS, because some browsers render inlined CSS as literal text. And ⦠probably more that I forgot by now. š
@david@daiwei.me Not sure, actually. Letās see. Those are the ones where I still have the original disks (or have bought them on eBay again):
- SuSE Linux 6.4 (itās a massive 7 CD distro with a huge manual, best thing ever)
- OS/2 2.1
- OS/2 Warp 3 (red and blue spine because
$reasons)
- OS/2 Warp 4
- PC DOS 7
- MS-DOS 6.22
- Windows 3.1
- Windows for Workgroups 3.11
- Windows 95 C
- Windows 98
- Windows NT 4 Workstation (still in the mail, though š
)
- Windows 2000
- Windows XP Professional (last Windows I ever used on my private PCs)
(Plus a few āclassicā office products as can be seen here: https://movq.de/blog/postings/2024-05-23/0/POSTING-en.html )
Okay, wow. Windows NT 4 wasnāt part of my timeline back then, so this is the first time Iām seeing it in action. And this thing came with IE 2, which Iāve also never seen before. (Thatās interesting, because I remember using IE even on Win 3.x, but apparently that was already IE 3?)
It also makes me really happy to see my website work in these old browsers. Fullscreen images are ābrokenā because those are PNG or WebP, but the rest works just fine. š„³
@lyse@lyse.isobeef.org Oh yeah, few people are as persistent as her. That said, itās really easy to give up. This shit is overwhelming.
@citizenalex@citizenalex.envs.net Correct.
@bender@twtxt.net āTwt could not be foundā š¢
@bender@twtxt.net For forkās sake!
Set/GetDisabled(ā¦) and PasteHandler(), tt starts up fine and seems to work without issues.
@lyse@lyse.isobeef.org Oh, yes. The brackets help a great deal.
@GabesArcade@gabesarcade.com Baseball, root beer, darts, atom bombs.
( https://mastodon.social/@nocontexttrek/116862294937117528 )
Java 1.3 on Windows 95 with Proton as the editor could be another option for next Advent of Code.
Win95 runs pretty smoothly on my old box (no surprise, that box came with Win95) and I like Java, so ⦠why not ā¦
Not sure about the speed, though. š„“
I just read @kat@yarn.girlonthemoon.xyzās blog post over here:
https://bubblegum.girlonthemoon.xyz/articles/learning-to-code-like-it-s-the-90s
Jesus, it must be so overwhelming for young people to get started with programming.
When I started programming, there was the built-in ROM BASIC of that PC and probably a bit of BASIC on a floppy, and that was it. Nowadays? Millions of libraries and frameworks and languages and what not ā and, much worse, thereās the expectation that you need to make something fancy. When I started, printing something and understanding IF was good enough.
Installing software was (is?) such an incomprehensible mess on Windows ⦠Why did you allow any program to install files anywhere in the system? Why was this considered normal and okay? With no chance of ever cleanly removing that stuff again?
And now weāre back to the trend of curl | bash these days ⦠same thing.
@lyse@lyse.isobeef.org This apparently depends on the program now ⦠Some Qt6 programs still allow that, others donāt. I canāt remember if GTK ever had that feature. š¤ But yeah, this whole āmove stuff around as you pleaseā-mentality is mostly gone.
I know I keep referring to StarOffice 3.1 a lot, but itās just such a good example for all these things. All the toolbars and panels could be rearranged:
(This is running in Wine, btw.)
LibreOffice is the descendant of StarOffice and it doesnāt support anything like that anymore.
Maybe it was deemed too confusing for users? āOh no, I mis-clicked something and now that bar is gone! How do I get it back? I donāt even know what itās called!ā š¤
@arne@uplegger.eu Wie sahās denn drinnen aus? š
@bender@twtxt.net twtxthashgeddon, word of the year! š
@arne@uplegger.eu Yay! So Iām the only one who fucked it up. š¤Ŗš
Well, they paid me something back. (Iām not required to file a tax report, which means that I absolutely should do it. Theyāre ripping off the ālazyā people.)
@arne@uplegger.eu Foo, bar, and baz! Does it work? Is the houseplant happy?
@lyse@lyse.isobeef.org Oh wow, those are some amazing photos! š¤Æ
Test! It works now.
šØ jenny was broken due to the switch to v2 hash tags.
I pushed a hotfix to main, but this needs a few more test cases. Iāll do that tomorrow.
How about now?
@lyse@lyse.isobeef.org Test!