Friendly, regular reminder to always check if a TV show has already been cancelled before you start watching it.
@lyse@lyse.isobeef.org Yeah, what else does one need? 😅
I added more instructions, made it portable (so it runs on my own OS as well as Linux/DOS/whatever), and the assembler is now good enough to be used in the build process to compile the bootloader:
That is pretty cool. 😎
It’s still a “naive” assembler. There are zero optimizations and it can’t do macros (so I had to resort to using cpp). Since nothing is optimized, it uses longer opcodes than NASM and that makes the bootloader 11 bytes too large. 🥴 I avoided that for now by removing some cosmetic output from the bootloader.
Alright, I have a little 8086 assembler for my toy OS going now – or rather a proof-of-concept thereof. It only supports a tiny fraction of the instruction set. It was an interesting learning experience, but I don’t think trying to “complete” this program is worth my time.
The whole thing is just a learning project, I don’t want to actually make a usable OS. There are a few more things I want to have a look at and then I’ll eventually move on to 386/amd64 later this year (hopefully).
@doesnmppsflt@doesnm.p.psf.lt Not sure which bug you’re referring to. 🤔 (Did I forget?)
Those long IDs like (#113797927355322708) are simply part of that feed. Looks like the author just dumps ActivityPub IDs into twtxt. I think this used to work in the past, but the corresponding spec (https://twtxt.dev/exts/hash-tag.html) has been deprecated and jenny doesn’t support – actually, jenny never supported that.
jenny can only group threads by exactly one criterium (because it writes a Message-ID into the mail file) and that’s the regular twt hash. So, anything else, like people doing “#CoolTopic”, isn’t possible.
I just used screego to help a family member with their Windows PC. Flawless experience! 💚
“2025” doesn’t look right. That looks like a date which is absurdly far into the future. Like 2199 or something.
In the process of temporarily removing and securing all my hard disks. They’ll be turning this building into a construction site for the next weeks/months. Lots of heavy drilling and hammering. Not sure what this means for spinning disks and I’d rather be on the safe side. 🫤
The fact that the official Python docs don’t clearly state what a function returns, grinds my gears. This has cost me so much time over the years. You always have to read through a huge block of text.
You could at least put a list of possible return values in there (always at the same location, please!), here’s a mockup:
It needs to be said: Retrocomputing and old systems like DOS or OS/2 are fun and all, but a UNIX shell and its userland tools are the most powerful things I’ve ever seen. You can pry that from my cold dead hands. 😅
2024 was okay for me, but 2025 is gonna be real shit. 😂 So much annoying stuff coming up. Gotta enjoy the moment, who knows how long it will last. 😅
Happy new year, you guys. 🥳
2024 was a funny year: The year begins and ends with calendar week 1:
The one in January being 2024-W01 and the one in December 2025-W01.
🤓
(Hmmm, my printed LaTeX calendar using tikz-kalender gets it wrong or uses different week definitions. It shows next week as 53. 🤔)
People doing Advent of Code in this language is the craziest thing I’ve seen: https://www.uiua.org/
I was today years old when I learned that Firefox supports custom per-domain CSS. Is this new? I thought I had tried a while ago and it only worked globally. 🤔
@-moz-document domain(movq.de)
{
div { border: 1px solid red; }
}
Either way, I love that I don’t need a plugin for that. 🥳
“A minimalist social network powered by plain text files”
My brain keeps shortening this to “a socialist network …” and then jumps to “uhh, large parts of the US won’t like this” … 🤦🤪
Yarn spoiler test:
! foo
So, I’m forced to use WhatsApp now. Someone told me: “Hey, I’ve been doing $thing, check my status!” Okay, fine, I open that and it shows a photo.
Then, while looking at that photo, it’s suddenly gone. No, not gone – there are several photos and it switched automatically to the next one. The timeout appears to be four seconds.
JFC, I’m getting too old for this. Let me look at the damn photo! Don’t rush me! 😂
@doesnm@doesnm.p.psf.lt May I ask which hardware you have? SSD or HDD? How much RAM?
I might be spoiled and very privileged here. Even though my PC is almost 12 years old now, it does have an SSD and tons of RAM (i.e., lots of I/O cache), so starting mutt and opening the mailbox takes about 1-2 seconds here. I hardly even notice it. But I understand that not everybody has fast machines like that. 🫤
Time to put up the christmas decoration, I guess. 🤷✨
I think it could be yarnd’s avatar caching. That’s why my avatar field has a #20240102 at the end: To trick yarnd into reloading it.
There’s this rumor that you can create a WhatsApp account with a burner phone, then link the phone to a browser on your desktop PC (web.whatsapp.com) and never have to use the phone again. This just doesn’t work. Every ~2 weeks, the session in the browser will time out and you have to re-link again. 🙄
@3r1c@3r1c.net I think I’m gonna like that blog. 😅 https://unixdigest.com/articles/is-the-madness-ever-going-to-end.html
@prologic@twtxt.net I’m sure you can somehow install something that calculates blake2b on OpenBSD. But it’s not part of the base system as a standalone CLI tool, there only appear to be Perl modules for it. The other SHA tools do exist.
@prologic@twtxt.net I wanted to wait for things to settle down. It’s still unclear to me in which direction we’re going – and if that new/different stuff is even possible to implement in jenny. That said, I’ve been really busy with private stuff these last few days, I’ve lost track of most of what you’re discussing. 🥴
rsync(1) but, whenever I Tab for completion and get this:
@aelaraji@aelaraji.com rsync -zaXAP is what I use all the time. But that’s all – for the rest, I have to consult the manual. 😅
@xuu@txt.sour.is I think it is more tricky than that.
“A company or entity …”
Also, as I understand it, “personal or household activity” (as you called it) is rather strict: An example could be you uploading photos to a webspace behind HTTP basic auth and sending that link to a friend. So, yes, a webserver is involved and you process your friend’s data (e.g., when did he access your files), but it’s just between you and him. But if you were to publish these photos publicly on a webserver that anyone can access, then it’s a different story – even though you could say that “this is just my personal hobby, not related to any job or money”.
If you operate a public Yarn pod and if you accept registrations from other users, then I’m pretty sure the GDPR applies. 🤔 You process personal data and you don’t really know these people. It’s not a personal/private thing anymore.
There are so many insects this year. Flies, ants, bugs. This isn’t normal. It’s almost like the ecosystem is getting out of balance.
Had to build a list of all feeds (that I follow) and all twts in them and there are two collisions already:
$ ./stats
Saw 58263 hashes
7fqcxaa
https://twtxt.net/user/justamoment/twtxt.txt
https://twtxt.net/user/prologic/twtxt.txt
ntnakqa
https://twtxt.net/user/prologic/twtxt.txt
https://twtxt.net/user/thecanine/twtxt.txt
Namely:
$ jenny -D https://twtxt.net/user/justamoment/twtxt.txt | grep 7fqcxaa
[7fqcxaa] [2022-12-28 04:53:30+00:00] [(#pmuqoca) @prologic@twtxt.net I checked the GitHub discussion, it became a request to join forces.
Do you plan on having them join?
Also for the name, how about:
- “progit” or “prologit” (prologic official hard fork)
- “git-stance” (git instance)
- “GitTree” (Gitea inspired, maybe to related)
- “Gitomata” (git automata)
- “Git.Source”
- “Forgor” (forgit is taken so I forgor) 🤣
- “SweetGit” (as salty chat)
- “Pepper Git” (other ingredients) 😉
- “GitHeart” (core of git with a GitHub sounding name)
- “GitTaka” (With music in mind)
Ok, enough fun… Hope this helps sprout some ideas from others if nothing is to your taste.]
$ jenny -D https://twtxt.net/user/prologic/twtxt.txt/5 | grep 7fqcxaa
[7fqcxaa] [2022-02-25 21:14:45+00:00] [(#bqq6fxq) It’s handled by blue Monday]
And:
$ jenny -D https://twtxt.net/user/thecanine/twtxt.txt | grep ntnakqa
[ntnakqa] [2022-01-23 10:24:09+00:00] [(#2wh7r4q) <a href="https://txt.sour.is/external?uri=https://twtxt.net/user/prologic/twtxt.txt">@prologic<em>@twtxt.net</em></a> I know, I was just hoping it might have also gotten fixed by that change, by some kind of backend miracles. 😂]
$ jenny -D https://twtxt.net/user/prologic/twtxt.txt/1 | grep ntnakqa
[ntnakqa] [2024-02-27 05:51:50+00:00] [(#otuupfq) <a href="https://txt.sour.is/external?uri=https://twtxt.net/user/shreyan/twtxt.txt">@shreyan<em>@twtxt.net</em></a> Ahh 👌]
I’m still more in favor of (replyto:…). It’s easier to implement and the whole edits-breaking-threads thing resolves itself in a “natural” way without the need to add stuff to the protocol.
I’d love to try this out in practice to see how well it performs. 🤔 It’s all very theoretical at the moment.
Alright, before I go and watch Formula 1 😅, I made two PRs regarding the two “competing” ideas:
- https://git.mills.io/yarnsocial/yarn/pulls/1179 –
(replyto:…)
- https://git.mills.io/yarnsocial/yarn/pulls/1180 –
(edit:…)and(delete:…)
As a first step, this summarizes my current understanding. Please comment! 😊
One distinct disadvantage of (replyto:…) over (edit:#): (replyto:…) relies on clients always processing the entire feed – otherwise they wouldn’t even notice when a twt gets updated. a) This is more expensive, b) you cannot edit twts once they get rotated into an archived feed, because there is nothing signalling clients that they have to re-fetch that archived feed.
I guess neither matters that much in practice. It’s still a disadvantage.
I’m bad with faces, I know that. But I’m having a really hard time recognizing Linus in this video:
https://www.youtube.com/watch?v=4WCTGycBceg
Basically a different person to me. Is it just me or has he really changed that much? 😳
I’m not advocating in either direction, btw. I haven’t made up my mind yet. 😅 Just braindumping here.
The (replyto:…) proposal is definitely more in the spirit of twtxt, I’d say. It’s much simpler, anyone can use it even with the simplest tools, no need for any client code. That is certainly a great property, if you ask me, and it’s things like that that brought me to twtxt in the first place.
I’d also say that in our tiny little community, message integrity simply doesn’t matter. Signed feeds don’t matter. I signed my feed for a while using GPG, someone else did the same, but in the end, nobody cares. The community is so tiny, there’s enough “implicit trust” or whatever you want to call it.
If twtxt/Yarn was to grow bigger, then this would become a concern again. But even Mastodon allows editing, so how much of a problem can it really be? 😅
I do have to “admit”, though, that hashes feel better. It feels good to know that we can clearly identify a certain twt. It feels more correct and stable.
Hm.
I suspect that the (replyto:…) proposal would work just as well in practice.
Regarding jenny development: There have been enough changes in the last few weeks, imo. I want to let things settle for a while (potential bugfixes aside) and then I’m going to cut a new release.
And I guess the release after that is going to include all the threading/hashing stuff – if we can decide on one of the proposals. 😂
@quark@ferengi.one At the moment, the twt in question exists in the sixth archive:
$ jenny -D https://twtxt.net/user/prologic/twtxt.txt/6 | head
[o6dsrga] [2020-07-18 12:39:52+00:00] [Hello World! 😊]
Does that work for you? 🤔
@prologic@twtxt.net Yeah, that thing with (#hash;#originalHash) would also work.
Maybe I’m being a bit too purist/minimalistic here. As I said before (in one of the 1372739 posts on this topic – or maybe I didn’t even send that twt, I don’t remember 😅), I never really liked hashes to begin with. They aren’t super hard to implement but they are kind of against the beauty of the original twtxt – because you need special client support for them. It’s not something that you could write manually in your twtxt.txt file. With @sorenpeter@darch.dk’s proposal, though, that would be possible.
I don’t know … maybe it’s just me. 🥴
I’m also being a bit selfish, to be honest: Implementing (#hash;#originalHash) in jenny for editing your own feed would not be a no-brainer. (Editing is already kind of unsupported, actually.) It wouldn’t be a problem to implement it for fetching other people’s feeds, though.
Since
jennycan’t fetch archived twtxts
I wiped my entire maildir and re-fetched everything. I did that recently because @aelaraji@aelaraji.com asked me to 😅, but I guess I also did this back in 2023.
What did you do to make yours work?
jenny does fetch archived feeds during the normal jenny -f operation. Only when using the recently implemented --fetch-context, archived feeds are not fetched (yet). That was an oversight and I intend to fix that.
(replyto:http://darch.dk/twtxt.txt,2024-09-15T12:06:27Z)
I think I like this a lot. 🤔
The problem with using hashes always was that they’re “one-directional”: You can construct a hash from URL + timestamp + twt, but you cannot do the inverse. When I see “, I have no idea what that could possibly refer to.
But of course something like (replyto:http://darch.dk/twtxt.txt,2024-09-15T12:06:27Z) has all the information you need. This could simplify twt/feed discovery quite a bit, couldn’t it? 🤔 That thing that I just implemented – jenny asking some Yarn pod for some twt hash – would not be necessary anymore. Clients could easily and automatically fetch complete threads instead of requiring the user to follow all relevant feeds.
Only using the timestamp to identify a twt also solves the edit problem.
It even is better for non-Yarn clients, because you now don’t have to read, understand, and implement a “twt hash specification” before you can reply to someone.
The only problem, really, is that (replyto:http://darch.dk/twtxt.txt,2024-09-15T12:06:27Z) is so long. Clients would have to try harder to hide this. 😅
Alright, I saw enough broken threads lately to be motivated enough to extend the --fetch-context thingy: It can now ask Yarn pods for twt hashes.
https://www.uninformativ.de/git/jenny/commit/eefd3fa09083e2206ed0d71887d2ef2884684a71.html
This is only done as a last resort if there’s no other way to find the missing twt. Like, when there’s a twt that begins with just a hash and no user mention, there’s no way for jenny to know on which feed that twt can be found, so it’ll ask some Yarn pod in that case.
All this hash breakage made me wonder if we should try to introduce “message IDs” after all. 😅
But the great thing about the current system is that nobody can spoof message IDs. 🤔 When you think about it, message IDs in e-mails only work because (almost) everybody plays fair. Nothing stops me from using the same Message-ID header in each and every mail, that would break e-mail threading all the time.
In Yarn, twt hashes are derived from twt content and feed metadata. That is pretty elegant and I’d hate see us lose that property.
If we wanted to allow editing twts, we could do something like this:
2024-09-05T13:37:40+00:00 (~mp6ox4a) Hello world!
Here, mp6ox4a would be a “partial hash”: To get the actual hash of this twt, you’d concatenate the feed’s URL and mp6ox4a and get, say, hlnw5ha. (Pretty similar to the current system.) When people reply to this twt, they would have to do this:
2024-09-05T14:57:14+00:00 (~bpt74ka) (<a href="https://txt.sour.is/search?q=%23hlnw5ha">#hlnw5ha</a>) Yes, hello!
That second twt has a partial hash of bpt74ka and is a reply to the full hash hlnw5ha. The author of the “Hello world!” twt could then edit their twt and change it to 2024-09-05T13:37:40+00:00 (~mp6ox4a) Hello friends! or whatever. Threading wouldn’t break.
Would this be worth it? It’s certainly not backwards-compatible. 😂
@bender@twtxt.net On twtxt, I follow all feeds that I can find (there are some exceptions, of course). There’s so little going on in general, it hardly matters. 😅
And I just realized: Mutt’s layout helps a lot. Skimming over new twts is really easy and it’s not a big loss if there are a couple of shitposts™ in my “timeline”. This is very different from Mastodon (both the default web UI and all clients I’ve tried), where the timeline is always huge. Posts take up a lot of space on screen. Makes me think twice if I want to follow someone or not. 😅
(I mostly only follow Hashtags on Mastodon anyway. It’s more interesting that way.)
Found this in an old copyright notice from 1993:
These images are not for use with the Microsoft Windows environment. Using these patterns in a Windows environment consitutes a copyright violation.
Someone clearly didn’t like Windows.
jenny --fetch-context 😁
I think you are worrying about a non-issue.
That’s what I do best. 😏
35°C and rising … can haz winter?
@yarn_police@twtxt.net I was just about to remove this feed from my config because it was stale … 😂
fetch-context branch. This integrates the whole thing into mutt/jenny.
I think I’m not going to query Yarn pods for the moment. Let’s first see how often I’d actually need that. 🤔
@falsifian@www.falsifian.org @bender@twtxt.net I pushed an alternative implementation to the fetch-context branch. This integrates the whole thing into mutt/jenny.
You will want to configure a new mutt hotkey, similar to the “reply” hotkey:
macro index,pager <esc>C "\
<enter-command> set my_pipe_decode=\$pipe_decode nopipe_decode<Enter>\
<pipe-message> jenny -c<Enter>\
<enter-command> set pipe_decode=\$my_pipe_decode; unset my_pipe_decode<Enter>" \
"Try to fetch context of current twt, like a missing root twt"
This pipes the mail to jenny -c. jenny will try to find the thread hash and the URL and then fetch it. (If there’s no URL or if the specific twt cannot be found in that particular feed, it could query a Yarn pod. That is not yet implemented, though.)
The whole thing looks like this:
https://movq.de/v/0d0e76a180/jenny.mp4
In other words, when there’s a missing root twt, you press a hotkey to fetch it, done.
I think I like this version better. 🤔
(This needs a lot of testing. 😆)
159-196-9-199.9fc409.mel.nbn.aussiebb.net
This has become quite a large thread. 😅
@xuu@txt.sour.is I don’t even have a WhatsApp password, it never asked me? 🤔
They promised rain. I ain’t seeing any rain so far. 🫤
I love shell scripts because they’re so pragmatic and often allow me to get jobs done really quickly.
But sadly they’re full of pitfalls. Pitfalls everywhere you look.
Today, a coworker – who’s highly skilled, not a newbie by any means – ran into this:
$ bash -c 'set -u; foo=bar; if [[ "$foo" -eq "bar" ]]; then echo it matches; fi'
bash: line 1: bar: unbound variable
Why’s that happening? I know the answer. Do you? 😂
Stuff like that made me stop using shell scripts at work, unless they’re just 4 or 5 lines of absolutely trivial code. It’s now Python instead, even though the code is often much longer and clunkier, but at least people will understand it more easily and not trip over it when they make a tiny change.
@prologic@twtxt.net 35°C outside. 🫤 I’m just gonna sit here and wait for November. 😂
It is too hot to think. 🥵
QOTD: What’s your favorite technological advancement in the last ~10 years? 🤔
The “Matrix Experiment”, i.e. running a Matrix server for our family, has failed completely and miserably. People don’t accept it. They attribute unrelated things to it, like “I can’t send messages to you, I don’t reach you! It doesn’t work!” Yes, you do, I get those messages, I just don’t reply quickly enough because I’m at work or simply doing something else.
I’ll probably shut it down.
Nobody cares about privacy. The reasons I bring up in discussions are “too nerdy”. They put all their stuff to Google or Apple, so why would messaging be any different? (We’re not even using all those Matrix crypto stuff … That would be insane.)
It’s a lost cause. I’m frustrated.
Will I give in and use WhatsApp instead? Not sure yet.
@prologic@twtxt.net Hmm, yeah, hmm, I’m not sure. 😅 It all appears very subjective to me. Is 2k lines of code a lot or not?
I mean, I’m all for reducing complexity. 😅 I just have a hard time defining it and arguing about it. What I call “too complex”, others might think of as “just fine”. 🤔
Even if it might sound a bit overdramatic: Having a “mostly working” dwl Wayland setup now is a huge relief. 😅 It’s quite the weight off my shoulders.
There are still lots of items on my TODO list, but if X.Org were to die tomorrow, I wouldn’t be completely screwed. Only, like, 30% screwed.
Speaking of “AI” … I guess I gotta find out soon how to disable/sabotage Microsoft’s “Recall”, before this garbage takes over the family computers. 😩
(There’s no way the people in question will switch operating systems. I’ve tried, countless times.)
Is this “flat UI” madness ever going to end? I’m beginning to lose hope.
@johanbove@johanbove.info Is there any reason to use this program? I can’t remember when I last had it installed, must have been early 2000’s.
Hey @sorenpeter@darch.dk, I’m sorry to tell you, but the prev field in your feed’s headers is invalid. 😅
First, it doesn’t include the hash of the last twt in the archive. Second, and that’s probably more important, it forms an infinite loop: The prev field of your main feed specifies http://darch.dk/twtxt-archive.txt and that file then again specifies http://darch.dk/twtxt-archive.txt. Some clients might choke on this, mine for example. 😂 I’ll push a fix soon, though.
For reference, the prev field is described here: https://dev.twtxt.net/doc/archivefeedsextension.html
Let’s not forget that this gem exists: Primus - Mr. Krinkle 🐷🎶 https://www.youtube.com/watch?v=TOdo7dhvSwg #NowPlaying
More basement:
I completely forgot that DVD-RAM was a thing once. Found my old disks and they still work. 🤯 The data on them is from 2008, so they’re not that old. Still impressive.
The disks are two-sided. On the photo, that particular side of the disk on the left appears to be completely unused. 🤔
And then I read on Wikipedia that DVD-RAMs aren’t produced anymore at all today. Huh.
(I refuse to tag this as “retrocomputing”. Read/write DVDs that you can use just like a harddisk, thanks to UDF, are still “new and fancy” in my book. 😂)
I’m this close to making an Android app for managing a shopping list.
I just accidentally deleted the wrong list in the app that I’m currently using, and now there’s no way to get it back. Recreating it is a major pain, because typing on a phone sucks ass. Fuck.
Maybe I should just go back to using pen and paper …
Not making THREADING the default view of e-mail clients and thus teaching users that e-mail is “chaotic” (if you get a lot of mail, it becomes unusable without threading) and “needs” full quoting all the time was one of the worst mistakes ever.
@prologic@twtxt.net High five, I’m “generation Java” as well! 😂 There were some leftovers of C++, we used that in the computer graphics courses in Uni a lot. But pretty much anything else that involved programming was Java.
(There was nothing even remotely resembling CS in our “high school”. That school neither had the required teachers nor the equipment / PCs.)
I finally found the NASM assembler.
I had heard that name before, many times, but somehow never looked into it. Weird. 🤨🤔
This is the kind of program I was looking for.
- It is free software. Especially in the DOS ecosystem, free/libre software is a very scarce resource.
- It’s a small command line program, not a huge behemoth.
- Documentation appears to be well written.
- It can even cross-compile DOS binaries from Linux.
I noticed that some of my software projects have a rather long lifetime, so I made a little graph:
@xuu@txt.sour.is That was one of the horror puzzles where I had to look for help. 🥴 I modelled my solution after this: https://www.youtube.com/watch?v=2pDSooPLLkI (I can’t explain it better than the video anyway.) It takes a second on my machine and that’s with my own hashmap implementation which is probably not the fastest one.
@lyse@lyse.isobeef.org They sure are silly at times. :-) You really have to combine this event with something else, like learning a new language. Otherwise it gets boring real quick.
What I absolutely love about AoC is that it’s – indeed – a bit like school. 😅 The problems are well-defined, the inputs are well-defined, and there is a definite answer. It’s either right or wrong – period. Compared to real life and work, I welcome this very much. 🤣
But when you do take the time to analyze / reverse-engineer this puzzle, then it’s really cool. Might be my favorite one so far. 😃
I’m really bad at competitive programming. 🙄 For today’s #AdventOfCode puzzle, I spent an eternity trying to understand exactly what kind of bG9naWMgY2lyY3VpdAo= the puzzle input describes – I haven’t done that in well over a decade, so I made little progress. I knew right from the start that SSBoYWQgdG8gbG9vayBmb3IgY3ljbGUgbGVuZ3RocyBhbmQgdGhlbiBmaW5kIHRoZSBMQ00K. It just didn’t occur to me to just run my program on cGFydGlhbCBpbnB1dAo= and print those numbers. 🥴 I only did that after over 4 hours (including time to debug my nasty C code) and then, boom, solution …
Ah, there it is. Today’s AoC puzzle is of a categeory that I find the least interesting. Gonna take my time with this one. 😴
I bet today’s AoC puzzle was the last easy one before we descend into madness. 🤣
Today’s Advent of Code puzzle was rather easy (luckily), so I spent the day doing two other things:
- Explore VGA a bit: How to draw pixels on DOS all by yourself without a library in graphics mode 12h?
- Explose XMS a bit: How can I use more than 640 kB / 1 MB on DOS?
Both are … quite awkward. 😬 For VGA, I’ll stick to using the Borland Graphics Interface for now. Mode 13h is great, all pixels are directly addressable – but it’s only 320x200. Mode 12h (640 x 480 with 16 colors) is pretty horrible to use with all the planes and what not.
As per this spec, I’ve written a small XMS example that uses 32 MB of memory:
https://movq.de/v/9ed329b401/xms.c
It works, but it appears the only way to make use of this memory is to copy data back and forth between conventional memory and extended memory. I don’t know how useful that is going to be. 🤔 But at least I know how it works now.
Never in my life will I understand why Americans bleep out curse words. 🤔
One thing to note about #AdventOfCode: It is really, really important to inspect your input data.
Your data could be considered part of the puzzle description. By inspecting it, you can find clues and you might find out that you can make certain assumptions.
(I mean, what’s the alternative? There could be a list of allowed assumptions in the textual descriptions, right? That wouldn’t be a lot of fun, I think, as it would give away too much information about the solution. It’s more interesting to find those clues yourself.)
Today’s AoC puzzle is a very simple problem on modern machines, but quite tricky for me: It involves a number that doesn’t fit into 32 bits. 🤔 I wonder if/how I can manage to port this beast to DOS. (I once wrote a “big int” library myself, but that was ages ago and I hardly remember it anymore.)
… it just finished and brute-force worked. 18 minutes of computing time on my 11 year old machine, single-threaded.
It is a pleasure to work with the help system of Borland’s Turbo C++ 3.0 on DOS. The descriptions are clear and concise. There are short and simple examples. Pretty much every help page is cross-refenced and those links can be clicked.
@xuu@txt.sour.is Ah, you went with the “scanning” approach as well. I did that, too.
It’s quite surprising to see (imho) how many people on reddit started substituting strings (one becomes 1 etc.). That makes the puzzle much harder by introducing nasty corner cases.
(Maybe I was just lucky this time to pick the correct approach right from the start. 🤣 Or maybe it’s a bit of experience from doing past AoC events …)
@eapl.me@eapl.me Which problems are those? 🤔
The only “advanced” Tetris I played back then was “Block Out”:
https://www.youtube.com/watch?v=ZpeSH6pbio4
Except it didn’t run nearly as smooth as in this video. 😅
The amount of shady Android apps in Google’s “Play Store” is so large, it makes me want to write my own software instead. 😖
@shreyan@twtxt.net The only problem is that there is no such thing as “plain text”. Is it ASCII? UTF-8? DOS or UNIX line endings? Something else?
.txt or “plain text” are ambiguous terms, I’m afraid. 🫤
Other than that, it looks neat and interesting. 😅
@prologic@twtxt.net FWIW, I pay a little under 3€/month for a VPS with 1 vCPU, 2 GB RAM, 20 GB disk, 40 TB traffic. 🤔
I’d love to read the original source code of this:
https://ecsoft2.org/t-tiny-editor
This was our standard editor back in the day, not an “emergency tool”. And it’s only 9kB in size … which feels absurd in 2023. 😅 The entire hex dump fits on one of today’s screens.
Being so small meant it had no config file. Instead, it came with TKEY.EXE, a little tool to binary-patch T.EXE to your likings.
Follow-up question for you guys: Where do you backup your files to? Anything besides the local NAS?
@mckinley@twtxt.net Yeah, that’s more clear. 👌
Systems that are on all the time don’t benefit as much from at-rest encryption, anyway.
Right, especially not if it’s “cloud storage”. 😅 (We’re only doing it on our backup servers, which are “real” hardware.)
Bell Witch released a new album/song recently. I nominate this as “soundtrack of the apocalypse”. 🤘 // Bell Witch - Future’s Shadow Part 1: The Clandestine Gate // https://www.youtube.com/watch?v=Mg8TLge8gUU #NowPlaying
@xuu@txt.sour.is @prologic@twtxt.net Yarn.social without threading (as it would be the case in a “truncated” feed) does not make sense to me.
Put another way: Yarn.social is not twtxt. The content that we all have in our feeds really is much closer to a web forum or usenet or whatever. It’s threaded conversations. twtxt, as I believe it was originally intended, are short little status updates – that’s it. The formats of Yarn.social and twtxt might be very similar, but the content is vastly different and, in a way, incompatible. (As such, I think I understand very well that the original twtxt crowd is disgruntled.)
That proposed truncated feed doesn’t really provide any value, if you ask me. 🤔 It’d just be chaotic.
Why, oh why, does YouTube include upcoming videos in RSS feeds? “This video premiers in 21 hours.” Oohhhhhhkay. I will long have forgotten about it by then, thank you very much.
I’ve been lost in my DAW for a week now. Making music – especially something along the lines of Metal with actual instruments, not just synthesizers – is so hard. 😩 Makes you appreciate the work of all those artists out there a lot more.
Hmm, @prologic@twtxt.net / @lyse@lyse.isobeef.org: Should we remove the section “Traditional Human-Readable Topics” from the spec? Or mark is as deprecated? I haven’t seen this being used in the wild for years. 🤔
@chronolink@chrono.tilde.cafe Replies are not part of the original twtxt format. They were added later as an extension by Yarn.social: https://dev.twtxt.net/doc/twtsubjectextension.html (only the section “Machine-Parsable Conversation Grouping” is used these days)
We assembled one of those yesterday: https://www.omlet.de/shop/h%C3%BChnerzucht/walk_in_run_h%C3%BChnerauslauf/ Way more exhausting than I thought. 🤣 I’m so sore …
Spent the last few days debugging network issues at work.
Exhausting. You never get a full picture. You poke a little here, poke a little there, … Form a hypothesis and test it. Eventually, maybe, you can narrow it down a bit to some segment or even some component.
A very time consuming process. Even more so if you try not to cause downtimes for your users.
I want a magical device that allows me to look inside a cable/fibre.
But hey, at least we got rid of a bunch of Cisco switches in the process. So there’s that.