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 Oh, really? I thought Iāve posted compose view screenshots before. Anyway. Glad you like it as much as I do. :-)
The update interval has always been one second. I just didnāt remember and thus tried to time it by watching the preview update while typing. It felt like roughly under two seconds, but apparently my inner clock was off. After taking the screenshot and then examining it more closely, I noticed that the interval is stated right in the UI. :-D So, I just amended my message and didnāt bother taking a new screenshot. I figured I just leave it alone and see who spots the change, if at all. And, of course, you found the easter egg. Congrats, mate! 8-)
tt has a "draft" mode right? You didn't publish, then edit over and over did you? š
@prologic@twtxt.net Not sure if this really counts as a draft mode or this is what you had in mind. I just was in the editor for ages and didnāt close it. tt provides an integrated preview for the rendered message in there. It automatically updates every second.
Hereās a screenshot of the compose view with the conversation context on the top to which to reply to, the editor in the middle and the almost-live preview at the bottom, I hope itās big enough: 
But itās not like I hit the āAdd messageā button in the compose view (the one currently selected on the screenshot), see the message in the conversation tree and then come back into the compose view to continue editing. Thereās no edit functionality in tt. Once the message is appended to my twtxt.txt file on disk, all I can do is edit it with vim. The U+2028 line breaks are really annoying to deal with (Iām sure I could do something about that if I spent the time), so I try to avoid that at all costs.
Once new messages have been added to my local file, I then manually upload the file to my server in a separate terminal. Thereās no upload command integrated into tt. Right from my very first message in the beginning, Iāve always done it exactly like that. Iām used to this and it really doesnāt bother me. But I can see that others might not be fans of that at all. I might add an upload mechanism to tt at some point in the future.
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.
@balloon-fu-sen@tw.fus.f5.si yes I wouldnāt go and change your feeds location the location a fourth time thatās for sure! š¤£
@movq@www.uninformativ.de Yes, this is absolutely a no-go!
A long time ago when the first telemetry shitstorm happened, I added export GOTELEMETRY=off in my ~/.zshrc. But it doesnāt seem to be picked up at all (I actually call this sabotage!):
$ go env GOTELEMETRY
local
$ go env -w GOTELEMETRY=off
go: GOTELEMETRY cannot be modified
$ go telemetry off
$ go env GOTELEMETRY
off
@movq@www.uninformativ.de please donāt waste your time to bugging this. Iāll figure out whatās going on with these new clients.š
@david@collantes.us heads up š that verification code never reached you ā outbound email was broken on my end (my mail relay was rejecting twtxt.net senders š¤¦āāļø). Fixed + deployed now š„³ give the hosted feed another go, itāll land this time š¤
š„³ Finally! After nearly 4 years, yarnd v0.16.0 āSilver Sojournerā is out! š Twt Hash v2, SQLite FTS5 search, HTMX-powered UI, first-time setup wizard and literally hundreds of bug fixes š
Release notes: https://git.mills.io/yarnsocial/yarn/releases/tag/0.16.0
Upgrading is fully automatic ā the Twt Hash v2 migration re-fetches all feeds on first start, so expect the first cycle to be a bit heavier. Images on Docker Hub as prologic/yarnd:0.16.0 š
cc @kat@yarn.girlonthemoon.xyz @abucci@anthony.buc.ci @shinyoukai@yume.laidback.moe @eldersnake@we.loveprivacy.club š
you should see the new search engine stats page where Iāve added, spark lines, and time series graphs š
@david@daiwei.me bender variable in. First thing I see on Yarnd is that my mention is broken. It was entered between quotes on twtxt.app. Yarnd has always had parsing problems, so I am not blaming twtxt.app this time.
@david@daiwei.me Oh no, what a giant waste of time. :-(
@prologic@twtxt.net Well, 15 shows the site. On the left, I had a roll mat on a tarp. I borrowed some āNVA tarpsā from the scouts for this trip. The scouts got them from the National Peopleās Army, the German Democratic Republicās armed forces after Germany was reunited. Theyāre 1.75m x 1.75m in size and weigh 1.3kg, quite heavy, but super awesome. One tarp on the bottom, another one to cover up the clothes, shoes and sleeping bag in order to protect against the thaw. Finally, a mosquito net over all that, hung from a rope between two trees.
My mate just used a hammock with a mozzie net on the right hand side. The third tarp served as the luxurious bedside carpet. :-)
We sat on my second tarp to chill and enjoy the sunset and surroundings. It was nice to notice birds etc. die down. It took a really long time for the last light to fade away. Since we have a very high risk of forest fires, we of course couldnāt have a camp fire. But after all the exhaustion, I didnāt even miss it for one second.
Since we had dinner at home before leaving, all we brought were two lye rolls, two grain rolls, two brezels, some sausage and chocolate biscuits for breakfast. From the 2.5l of water, I ended up using 2l. Itās always good to have a little extra, despite the unnecessary weight. We had brekkie a few kilometers further on a bench in the shade. The first bench was already in direct sun.
Our camp site was maybe 30m to the side and a few meters down of a summit path hidden behind some trees and bushes. We were quite lucky, the other side of the hill got quite a bit of a breeze at night. We could hear the leaved treetops making much more noise behind us.
@movq@www.uninformativ.de Yes, these kind of dogs should really be strictly forbidden!
Itās not illegal if you own the forest or ask the owner. :-)
@david@daiwei.me Yeah, no clue. But my mate said the dog is disqualified from such adventures in the future. :-)
The temps were supposed to hit 14°C just before sunrise. Since we didnāt bring a thermometer, I canāt tell for sure. I was rather hot in my sleeping bag, so I had to pull out my arms every now and then. My mateās sleeping bag was a little lighter and, unfortunately, the zipper jammed up. Since it didnāt close all the way, it felt quite a bit cold I was told in the morning. When we got up at 6ish (we said, we donāt care about time at all), it was probably already 16°C if not more. I brought a jumper, but a t-shirt was already nice enough to wear. The jumper just served as my pillow. The mercury raised by the minute then.
Yeah, I circled the spot with a biro to keep an eye on it. Until now, thereās absolutely nothing to see. Looks like I got lucky.
We slept in the forest. It was really great except of my mateās fucking terror dog who was barking and snarling the entire night to each and every sound. I had maybe half an hour of sleep in total. Despite that, it was pleasantly warm. Well, the night, that is. The heat was brutal during the days. Literally streams of sweat were running down on us on the way there in the evening and back in the morning.
Surprisingly, there werenāt any mozzies around at night, I would have lost all safe bets. On the way there, my mate convinced me to take a shortcut through the taller and taller growing grass. Itās been some time that somebody traveled on this track, so we had to search around a bit for the overgrown path where we could cross the mostly dried up creek. In the beginning I said that this will be a bad idea. Lo and behold, I discovered a tick on my inner upper leg the next morning. Luckily, I got it out with my tick hook on the first attempt.
@movq@www.uninformativ.de tell me about it! I try to enjoy the time I have available, regardless of being working time, or not. I admit it is quite hard!
@lyse@lyse.isobeef.org next time I will ask someone to take a pic of me before, and after. You will know hell when you see it!
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/
Hmmm⦠Something aināt right. What did I break this time?
@prologic@twtxt.net My bad. It has been a while since the last time I poked around my mystery box, and I must have Effed up something yesterday. Is it fixed now? (Also, Iāve noticed that access to my avatar is, somehow, still denied. Still poking at it. š¤¦)
XMPP greatest peak was when Google Talk was around. Being able to chat with thousands, if not millions, of Google users at that time, using your own domain, and your own XMPP server was amazing. Then Google, in all its wisdom, and as it does very often, decided to kill it.
I might be on the minority, but can care less about video calls. Heck, even calls! Text is King. š¤Ŗ
@prologic@twtxt.net I linked you some of my findings on the twtxt.app on IRC. The main problem is the hashing. Totally broken. But you have got to give it some thought, because GitHub hosting of the feed is tricky (even more so if they are CNAMEing their domain to it). It is also finicky because Pages is auto-enabled on username.github.io, so actions must run each time you twt.
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. š„³
What a week!
It looks like I mostly missed the #twtxthashgeddon (so happy belated twtxthashgeddon day, to those who celebrate), although Iām glad that twtxt-lib appears to have come through it more-or-less unscathed.
Also, today is (was) July 4th, so happy US Independence Day (to those that celebrate). I didnāt feel much like celebrating, myself, so instead I went and played Magic (results tomorrow).
Finally, today is (now) July 5th, so happy X-Day (to those that celebrate). I canāt help but feel like this would be a great time for the saucers to comeā¦. Just sayinā. š½
BTW - welcome to twtxt @GabesArcade@gabesarcade.com!
Did Microsoft Shift Its Profits to Low-Tax Countries?
Microsoft is apparently shifting its profits to countries with low taxes ā and out of countries where they have many more employees and significant sales. Back in 2005 Former Microsoft CEO Steve Ballmer even said that a low corporate tax rate āis part of the overall advantage of doing business in Ireland,ā remembers long-time Slashdot reader theodp. (Ballmer added āIt wo ⦠ā Read more
4K @ 60 FPS USB Video Capture Finally Becomes Less Problematic On Linux
One area of Linux hardware testing I havenāt explored much in many years has been modern USB video capture for the lack of said hardware. The last time I did much video capturing on Linux was during the Hauppauge PCI card days. It turns out though that USB video capture of 4K 60 FPS content has been a pain point under Linux but is finally smoothing out with newer versions of the Linux kernel⦠ā Read more
Phoronix Premium Summer Sale To Help Support Linux Hardware Testing
For those that missed Phoronix turning 22 years old last month when running a special to help support the site, a few readers mentioned recently they missed out on seeing the deal in time. Paired with the US Independence Day holiday and summer sales elsewhere, now through 10 July is a Phoronix Premium summer sale if wishing to view the site ad-free while supporting the daily open-source/Linux news coverage and relentless Linux hardware testing⦠ā Read more
@lyse@lyse.isobeef.org Found it and fixed it! š The crawlerās discovery spider was fetching every feed a second time, without any conditional headers (plus a couple of other politeness bugs: redirected feed URLs never stored their cache validators, and there was no floor between re-fetches). Now every feed is fetched at most once per crawl, always with If-Modified-Since / If-None-Match, and never more than once per 15m no matter what. Just deployed ā please keep an eye on your access logs and let me know if you still see anything impolite from the crawler š
My mate and I hiked up the backyard mountain. We got 25°C and quite some wind, so it was actually not too terrible. The wind could have blown harder or the temps a little lower, but oh well.
I saw the squirrelās bushy tail stick up on the forest floor in the sunlight and immediately thought of this cute little feller. Since it didnāt move at all, even when we came closer, I got irritated and reconsidered that it might actually be some kind of dried up farn. But then we also were able to see its body. Unfortunately, the squirrel ran up the tree too quickly, so all the shots are kinda crap.
At one flower spot, there were sooo many butterflies, wasps, flies, bugs and other insects. The botanic was completely crowded.
The workers were transferring logs from one log truck to the other in a parking lot. Iāve never seen this happening before. When we passed the same place on the way home, they had moved logs into a sea container. That was surprising. This semi wasnāt there on the way there. One log was probably too long and sticking out the container, so they probably had to wait for somebody to return with a chainsaw. Crazy that theyāre shipping logs from here probably overseas. Why else would they put them in a sea container?
After our first break, a blackbird was really posing for us with his worm in the dark shade.
Today was my first time I ever saw a hummingbird hawk-moth (TaubenschwƤnzchen) for real. My mate photographed them many, many times before, but I never came across one myself. So, that was really special.
The forest service installed an outdoor table with two benches next to the timber lion, that was cool to see. We sat down for a few minutes and enjoyed both the view into the Fils valley and ant on the tabletop, but the sun was beating down too heavily on us, so we had to move on.
All in all, it was a very nice few hours long hike. Enjoy! https://lyse.isobeef.org/waldspaziergang-2026-07-03/
Coreboot + AMD openSIL On MSI Ryzen Motherboard Now Works With Windows 11
With 3mdebās Dasharo port of AMD openSIL and Coreboot running on the Gigabyte EPYC motherboard, 3mdeb engineers have been devoting more time to their bring-up of Coreboot+openSIL on the MSI PRO B850-P consumer motherboard for desktop AMD Ryzen. They now even have Microsoft Windows 11 working atop this open-source firmware alternative along with other features implemented⦠ā Read more
Thereās no more time to waste to rotate some months into their archive feed files.
GraalVM CE 25.1.3 Gets Native Image āHello Worldā Program Down To Just 6.5MB
GraalVM, the advanced JDK focused on ahead-of-time (AOT) Native Image compilation and since last year began shifting focus to more non-Java languages like Python and JavaScript, is out with its newest community feature release. GraalVM Community Edition 25.1.3 is now available with some interesting changes in tow⦠ā Read more
@movq@www.uninformativ.de Oh dear! :-(
Now, itās cooler outside than inside. Time to open the windows and start the wind machines.
Ex-Governors, Big Tech Launch Coalition To Help Workers āNavigate the AI Economyā
āAmid growing public anger over A.I. and a debate over how to regulate it, a group of employers, state governors and foundations has raised $500 million to try to answer some of those questions themselves,ā reports the New York Times.
āJust how many jobs will AI upend?ā asks the Wall Street Journal, reporting that t ⦠ā Read more
RADV Enables Vulkan Descriptor Heap Support By Default
In time for the Mesa 26.2 stable release expected out in August, the Radeon RADV Vulkan driver is now exposing the VK_EXT_descriptor_heap descriptor heap support by default⦠ā Read more
Apologies for the late #caturday post, but I figure itās more of a state of mind, like that time Shadow temporarily āborrowedā the dog bed (and discovered how comfy a blanket pile can be)ā¦
Microsoft Slammed for Building Copyright-Infringing Supercomputer for OpenAI in New Court Filing
The New York Times alleges Microsoft actively encouraged OpenAI to steal its copyrighted work, reports Ars Technica, citing a new (and heavily redacted) court filing Thursday:
NYTās motion comes after the [U.S.] Supreme Court sided with Cox Communications in a case where Sony tried ⦠ā Read more
Linux 7.2-rc1 Released: āThings Look Reasonably Normalā While Landing AMDGPU HDMI 2.1 FRL, AMD ISP4 & CAS
As expected, Linux 7.2-rc1 was released a brief time ago to cap off the Linux 7.2 merge window. Now itās off for eight weeks or so of testing before Linux 7.2 stable is released that will in turn go on to power the likes of Fedora 45 and Ubuntu 26.10⦠ā Read more
Are Checks Sent Through the Mail Vulnerable to Theft?
The New York Times tells the story of a 63-year-old retiree who wrote a check for several thousand dollaras to pay her taxes. But she discovered much later that her taxes were never paid because that check had been intercepted and then altered to be payable to someone else:
In some cases, thieves may pilfer one or more checks from local mailboxes. Adam Rust, director ⦠ā Read more
@kiwu@twtxt.net Last time you asked we were all tired. Now weāre EXHAUSTED because itās 40 °C around here. š„µšš
The firefly season is ending. I only saw 200 of them or so. There was one female directly on the forest road. If only I brought my camera and tripod, that would have worked out I reckon. I had my torch with me and this looked really cool.
Dusk took forever today. It was really long light out there. Full moon is tomorrow.
On the way back, there was suddenly a load clatter and crashing sound 100 meters away from me. I didnāt see anything, but a tree fell over in the forest out of the blue. Fuck me dead, that was scary as hell. Luckily, I was already on the main road, only meadows around me. Itās the second time I witnessed a tree accidentally coming down. The first one was during the most expensive hail storm in our area so far in 2011 behind me when setting up a summer camp. The weather changed in less than 15 minutes.
Maybe not such a good idea to go out so late alone. :-? Any rustling in the forest immediately reminded me of the boar the other day. Luckily, always false alarm. Still a bit terrified from that event.
@movq@www.uninformativ.de Oh my! :-O We reached 38°C. Itās now down one degree.
I just got up from my two, three hours siesta. And I tell you, that was bloody amazing. Layed in bed in undies, no blanket, just some power metal in my headphones and I was sleeping like a baby. Normally, I NEED a blanket, no matter what. But this summer, itās already the second time that I actually manage to drop off without one.
Ah, with lazy loading, browsers only start loading images when the load event occurs. And that takes time. Hm. Not a fan, I might revert this. š¤
@lyse@lyse.isobeef.org I noticed that loading="lazy" might not be so great after all.
This is without lazy loading:

The total page load time is around 400-500 ms. Okay.
Now this is with lazy loading:

It finished much quicker, after about 250 ms. Sounds good.
But notice this gap right here?

This wasnāt there before. With lazy loading, it now takes something like 80-100 ms until the browser even starts loading images. This is Chromium, but Firefox shows a similar gap.
The net result is that there is a very noticeable delay/flicker when you open a page, because it takes so long until the images have loaded. Yes, the layout doesnāt shift around, but that has nothing to do with lazy loading.
How odd. š¤
Bitcoin Drops Again. Skeptical Investment Strategist Calls It āUselessā
Friday Bitcoin closed at just $59,948 ā dropping 19% just for June and more than 50% lower than its record high in October of $124,310.
To commemorate the occasion CNBC interviewed long-time bitcoin skeptic Jeremy Grantham, reporting that the 87-year-old cofounder/chief investment strategist of the massive asset-management firm GMO is ⦠ā Read more
Interesting, HTTPS is almost twice as slow as plain HTTP on my server (~72 ms vs. ~135 ms):
$ hyperfine -r 50 "curl -so /dev/null 'http://movq.de/blog/postings/2024-05-23/0/t/word11a.jpg.jpg'"
Benchmark 1: curl -so /dev/null 'http://movq.de/blog/postings/2024-05-23/0/t/word11a.jpg.jpg'
Time (mean ± Ļ): 72.7 ms ± 17.2 ms [User: 6.2 ms, System: 4.8 ms]
Range (min ⦠max): 49.5 ms ⦠99.7 ms 50 runs
$ hyperfine -r 50 "curl -so /dev/null 'https://movq.de/blog/postings/2024-05-23/0/t/word11a.jpg.jpg'"
Benchmark 1: curl -so /dev/null 'https://movq.de/blog/postings/2024-05-23/0/t/word11a.jpg.jpg'
Time (mean ± Ļ): 135.5 ms ± 28.9 ms [User: 17.8 ms, System: 5.6 ms]
Range (min ⦠max): 93.2 ms ⦠198.5 ms 50 runs
Damn, I broke my Atom feed (and a reader let me know, thatās cool!).
I run vnu on all HTML and CSS files after each build of the website, but I donāt run a feed validator. š¬ Time to change that.
āFingerprintsā of Black Holeās Event Horizon Detected For First Time
Researchers say they detected the first gravitational-wave āfingerprintsā of a black holeās event horizon by analyzing the final moments of the powerful GW250114 merger. The findings support Einsteinās general relativity and may eventually help probe frame dragging and quantum fluctuations near black holes. Phys.org reports: For the new r ⦠ā Read more
@lyse@lyse.isobeef.org Mhm, yeah, I also think I like date := time.Date(2026, time.June, 19, /**/ 17, 0, 0, 0, time.UTC) the most. š¤ (My only gripe with this is that it isnāt obvious whether the third 0 is milli-, micro- or nanoseconds. These days itās probably nanoseconds, but you never know.)
New Study Shows That Tall Vehicle Hoods Cause Hundreds More Deaths Per Year
joshuark shares a report from Car and Driver: A new study conducted by the New York Times shows that the increase in vehicle hood height seen over the last two and a half decades, mainly due to the rise in popularity of large SUVs and trucks, has resulted in several thousand deaths that otherwise may not have happened. The s ⦠ā Read more
GTA VI Is a Worrying Sign For the Future of Physical Games
Rockstar Games has revealed the price of Grand Theft Auto VI to be $79.99, and confirmed that the physical versions of the game wonāt include a disc. Instead, theyāll contain a one-time download code when it launches November 19. āNot only is that a disappointing decision for people who like to own physical games, but given the scale of the next GTA, it als ⦠ā Read more