đ Thanks for joining us on our Sept monthly Yarn.social meetup today yâall đââď¸ We had @david@collantes.us @sorenpeter@darch.dk @doesnm@doesnm.p.psf.lt @falsifian@www.falsifian.org and @xuu@txt.sour.is đŞ Nice turn out! (not all at once of course, as we normally run this over 4 hours as we span many time zones!)
Things we talked about:
- Decentralised vs. Distributed
- Use of SHA256 for Twt Hash(es)
- We solved Edits! đĽł
- UUID(s) probably wonât work! (susceptible to sppofing)
- Helped @sorenpeter@darch.dk write some PHP to process/parse
User-Agentand service his feed via a custom PHP script đ
- @falsifian@www.falsifian.org introduced himself đ
- Talked about Merkle Trees đł
Did I miss anything? đ¤
JMP: Mobile-friendly Gateway to any SIP Provider
ďťżWe have for a long time supported the public Cheogram SIP instance, which allows easy interaction between the federated Jabber network and the federated SIP network. When it comes to connecting to the phone network via a SIP provider, however, very few of these providers choose to interact with the federated SIP network at all. It has always been possible to work around this with a self-hosted PBX, b ⌠â Read more
Recent #fiction #scifi #reading:
The Memory Police by YĹko Ogawa. Lovely writing. Very understated; reminded me of Kazuo Ishiguro. Sort of like Nineteen Eighty-Four but not. (I first heard it recommended in comparison to that work.)
Subcutanean by Aaron Reed; https://subcutanean.textories.com/ . Every copy of the book is different, which is a cool idea. I read two of them (one from the library, actually not different from the other printed copies, and one personalized e-book). I donât read much horror so managed to be a little creeped out by it, which was fun.
The Wind from Nowhere, a 1962 novel by J. G. Ballard. A random pick from the sci-fi section; I think I picked it up because it made me imagine some weird 4-dimensional effect (âfrom nowhereâ meaning not in a normal direction) but actually (spoiler) it was just about a lot of wind for no reason. The book was moderately entertaining but there was nothing special about it.
Currently reading Scale by Greg Egan and Inversion by Aric McBay.
More thoughts about changes to twtxt (as if we havenât had enough thoughts):
- There are lots of great ideas here! Is there a benefit to putting them all into one document? Seems to me this could more easily be a bunch of separate efforts that can progress at their own pace:
1a. Better and longer hashes.
1b. New possibly-controversial ideas like edit: and delete: and location-based references as an alternative to hashes.
1c. Best practices, e.g. Content-Type: text/plain; charset=utf-8
1d. Stuff already described at dev.twtxt.net that doesnât need any changes.
We wonât know what will and wonât work until we try them. So Iâm inclined to think of this as a bunch of draft ideas. Maybe later when weâve seen it play out it could make sense to define a group of recommended twtxt extensions and give them a name.
Another reason for 1 (above) is: I like the current situation where all you need to get started is these two short and simple documents:
https://twtxt.readthedocs.io/en/latest/user/twtxtfile.html
https://twtxt.readthedocs.io/en/latest/user/discoverability.html
and everything else is an extension for anyone interested. (Deprecating non-UTC times seems reasonable to me, though.) Having a big long âtwtxt v2â document seems less inviting to people looking for something simple. (@prologic@twtxt.net you mentioned an anonymous comment âyouâve ruined twtxtâ and while I donât completely agree with that commenterâs sentiment, I would feel like twtxt had lost something if it moved away from having a super-simple core.)All that being said, these are just my opinions, and Iâm not doing the work of writing software or drafting proposals. Maybe I will at some point, but until then, if youâre actually implementing things, youâre in charge of what you decide to make, and Iâm grateful for the work.
Hurricane Helene is passing by. Close enough to give us a day off tomorrow, but not that close to cause major harm. Well, we think. Hurricanes often have a mind of their own, and decide changes on their path. Either way, I shall be back at work on Friday đŠ. LOL.
Good writeup, @anth@a.9srv.net! I agree to most of your points.
3.2 Timestamps: I feel no need to mandate UTC. Timezones are fine with me. But I could also live with this new restriction. I fail to see, though, how this change would make things any easier compared to the original format.
3.4 Multi-Line Twts: What exactly do you think are bad things with multi-lines?
4.1 Hash Generation: I do like the idea with with a new uuid metadata field! Any thoughts on two feeds selecting the same UUID for whatever reason? Well, the same could happen today with url.
5.1 Reply to last & 5.2 More work to backtrack: I do not understand anything youâre saying. Can you rephrase that?
8.1 Metadata should be collected up front: I generally agree, but if the uuid metadata field were a feed URL and no real UUID, there should be probably an exception to change the feed URL mid-file after relocation.
yes that works
yarnd supports the use of WebMentions, it's very rarely used in practise (if ever) -- In fact I should just drop the feature entirely.
(#2024-09-24T12:34:31Z) WebMentions does would work if we agreed to implement it correctly. I never figured out how yarndâs WebMentions work, so I decide to make my own, which Iâm the only one usingâŚ
I had a look at WebSub, witch looks way more complex than WebMentions, and seem to need a lot more overhead. We donât need near realtime. We just need a way to notify someone that someone they donât know about mentioned or replied to their post.
Linux on C64, 8086, & Intel 4004
With a little work, Linux can boot on 8 and 4 bit CPUs from the 1970s. Slowly. â Read more
Kubestronaut in Orbit: Camila Soares Câmara
Get to know Camila This weekâs Kubestronaut in Orbit, Camila Soares Câmara, is a Senior Cloud Engineer at Wellhub in Brazil with experience in Cloud and DevOps, working with technologies such as Kubernetes, CI/CD, AWS, and Infrastructure as⌠â Read more
rsync(1) but, whenever I Tab for completion and get this:
@aelaraji@aelaraji.com I think all replies are missing the fact that your auto-completion isnât working. LOL. Or did I misunderstood?
Finally pubnix is alive! Thatâs im missing? Im only reading twtxt.net timeline because twtxt-v2.sh works slowly for displaying timelineâŚ
[47°09â˛03âłS, 126°43â˛42âłW] Storm recedes â back to normal work
10 Reasons to Wait for Next Yearâs iPhone 17
Appleâs iPhone development roadmap runs several years into the future and the company is continually working with suppliers on several successive iPhone models simultaneously, which is why we sometimes get rumored feature leaks so far ahead of launch. The iPhone 17 series is no different â already we have some idea of what to expect from Appleâs 2025 smartphone lineup.
 for a good long time while we figure out how this stuff works in practice.
I am not sure how I feel about all this being done at once, vs. letting conventions arise.
For example, even today I could reply to twt abc1234 with â(#abc1234) Edit: âŚâ and I think all you humans would understand it as an edit to (#abc1234). Maybe eventually it would become a common enough convention that clients would start to support it explicitly.
Similarly we could just start using 11-digit hashes. We should iron out whether itâs sha256 or whatever but thereâs no need get all the other stuff right at the same time.
I have similar thoughts about how some users could try out location-based replies in a backward-compatible way (append the replyto: stuff after the legacy (#hash) style).
However I recognize that Iâm not the one implementing this stuff, and itâs less work to just have everything determined up front.
Misc comments (I havenât read the whole thing):
Did you mean to make hashes hexadecimal? You lose 11 bits that way compared to base32. Iâd suggest gaining 11 bits with base64 instead.
âClients MUST preserve the original hashâ â do you mean they MUST preserve the original twt?
Thanks for phrasing the bit about deletions so neutrally.
I donât like the MUST in âClients MUST follow the chain of reply-to referencesâŚâ. If someone writes a client as a 40-line shell script that requires the user to piece together the threading themselves, IMO we shouldnât declare the client non-conforming just because they didnât get to all the bells and whistles.
Similarly I donât like the MUST for user agents. For one thing, you might want to fetch a feed without revealing your identty. Also, it raises the bar for a minimal implementation (Iâm again thinking again of the 40-line shell script).
For âwho followsâ lists: why must the long, random tokens be only valid for a limited time? Do you have a scenario in mind where they could leak?
Why canât feeds be served over HTTP/1.0? Again, thinking about simple software. I recently tried implementing HTTP/1.1 and it wasnât too bad, but 1.0 would have been slightly simpler.
Why get into the nitty-gritty about caching headers? This seems like generic advice for HTTP servers and clients.
Iâm a little sad about other protocols being not recommended.
I donât know how I feel about including markdown. I donât mind too much that yarn users emit twts full of markdown, but Iâm more of a plain text kind of person. Also it adds to the length. I wonder if putting a separate document would make more sense; that would also help with the length.
.deb to install Headscale, or some other method?
I ended up installing Headscale on my little VPS. Just in case the collide, I turned off WireGuard. Turning that one off (which ran on a container) also frees some memory. Headscale is running quite well! Indeed, I have struggled getting any web management console to work, but it really isnât needed. Everything needed to commandeer the server is available through the CLI.
yarnd PR that upgrades the Bitcask dependency for its internal database to v2? đ
Seems to be working OK đ¤
Appleâs First 5G Chip for iPhones Reportedly Wonât Support mmWave
Apple is rumored to have been working on its own 5G modem for iPhones since 2018, but the first version of the chip might lack mmWave support.
Taiwanese industry publication DigiTimes today reported that Appleâs in-house 5G modem has yet to incorporate mmWave technolo ⌠â Read more
@prologic@twtxt.net Wikipedia claims sha1 is vulnerable to a âchosen-prefix attackâ, which I gather means I can write any two twts I like, and then cause them to have the exact same sha1 hash by appending something. I guess a twt ending in random junk might look suspcious, but perhaps the junk could be worked into an image URL like
. If thatâs not possible now maybe it will be later.git only uses sha1 because theyâre stuck with it: migrating is very hard. There was an effort to move git to sha256 but I donât know its status. I think there is progress being made with Game Of Trees, a git clone that uses the same on-disk format.
I canât imagine any benefit to using sha1, except that maybe some very old software might support sha1 but not sha256.
I have configured my twtxt.txt as simple as possible. I have setup a publish_command on jenny. Hopefully all works fine, and I am good to go. Next will be setting the announce_me to true. Here we go!
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.
@movq@www.uninformativ.de alright, fair, and interesting. I was expecting them to be all the same (format wise), but it doesnât matter, for sure, as it works just fine. Thanks!
Software as a public good
Open source software underpins all sectors of the economy, public services and even international organizations like the United Nations. How can all its beneficiaries work together to make the open source ecosystem more sustainable?
The post Software as a public good appeared first on The GitHub Blog. â Read more
@prologic@twtxt.net yes, that would work, except there is no debug command on my local yarnc. Are you talking about a potential future implementation here?
@quark@ferengi.one Do you mean something like this?
$ ./yarnc debug ~/Public/twtxt.txt | tail -n 1
kp4zitq 2024-09-08T02:08:45Z (#wsdbfna) @<aelaraji https://aelaraji.com/twtxt.txt> My work has this thing called "compressed work", where you can **buy** extra time off (_as much as 4 additional weeks_) per year. It comes out of your pay though, so it's not exactly a 4-day work week but it could be useful, just haven't tired it yet as I'm not entirely sure how it'll affect my net pay
@prologic@twtxt.net I saw those, yes. I tried using yarnc, and it would work for a simple twtxt. Now, for a more convoluted one it truly becomes a nightmare using that tool for the job. I know there are talks about changing this hash, so this might be a moot point right now, but it would be nice to have a tool that:
- Would calculate the hash of a twtxt in a file.
- Would calculate all hashes on a
twtxt.txt(local and remote).
Again, something lovely to have after any looming changes occur.
@aelaraji@aelaraji.com Woah! Overkill, but nicely laid out. Hey, the ultimate goal is for it to work, so, mission accomplished! :-)
Instagram locks down teens: How the new feature will work
All teens using Instagram will automatically have strong restrictions applied on their accounts, rather than putting the onus on parents. â Read more
iOS 18: Make Your iPhone Home Screen Icons Dark
In iOS 18, iPhone apps have both Light and Dark color options, making it possible to match the color of your icons when you have Dark mode enabled. Keep reading to learn how it works.
Appleâs built-in apps have both Light and Dark color options in âiOS 18â, and now that the update is ava ⌠â Read more
So yeah no, whilst it technically works, neither jenny nor yarnd support it very well. Only at a very basic level.
Woot, yes! It works perfectly. By the time you see my twtxt, it is already at the main Ferengi.one website.
publish_command to vomit the HTML into a file, using twtxt2html.
Hmm, this didnât work, because I made a mistake. Now I have corrected it, letâs see how it goes now.
@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.
@movq@www.uninformativ.de I figured it will be something like this, yet, you were able to reply just fine, and I wasnât. Looking at your twtxt.txt I see this line:
2024-09-16T17:37:14+00:00 (#o6dsrga) @<prologic https://twtxt.net/user/prologic/twtxt.txt>
@<quark https://ferengi.one/twtxt.txt> This is what I get. đ¤
Which is using the right hash. Mine, on the other hand, when I replied to the original, old style message (Message-Id: <o6dsrga>), looks like this:
2024-09-16T16:42:27+00:00 (#o) @<prologic https://twtxt.net/user/prologic/twtxt.txt> this was your first twtxt. Cool! :-P
What did you do to make yours work? I simply went to the oldest @prologic@twtxt.netâs entry on my Maildir, and replied to it (jenny set the reply-to hash to #o, even though the Message-Id is o6dsrga). Since jenny canât fetch archived twtxts, how could I go to re-fetch everything? And, most importantly, would re-fetching fix the Message-Id:?
More:
Subject: The [tag URI scheme](https://en.wikipedia.org/wiki/Tag_URI_scheme) looks interesting. I like that it human read- and writable. And since we already got the timestamp in the twtxt.txt it would be
somewhat trivial to parse. But there are still the issue with what the name/id should be... Maybe it doesn't have to bee that stick? Instead of using `tag:` as the prefix/protocol, it would more it clear
what we are talking about by using `in-reply-to:` (https://indieweb.org/in-reply-to) or `replyto:` similar to `mailto:` 1. `(reply:sorenpeter@darch.dk,2024-09-15T12:06:27Z)' 2.
`(in-reply-to:darch.dk/twtxt.txt,2024-09-15T12:06:27Z)' 2. `(replyto:http://darch.dk/twtxt.txt,2024-09-15T12:06:27Z)' I know it's longer that 7-11 characters, but it's self-explaining when looking at the
twtxt.txt in the raw, and the cases above can all be caught with this regex: `\([\w-]*reply[\w-]*\:` Is this something that would work?
Subject: The [tag URI scheme](https://en.wikipedia.org/wiki/Tag_URI_scheme) looks interesting. I like that it human read- and writable. And since we already got the timestamp in the twtxt.txt it would be
somewhat trivial to parse. But there are still the issue with what the name/id should be... Maybe it doesn't have to bee that stick? Instead of using `tag:` as the prefix/protocol, it would more it clear
what we are talking about by using `in-reply-to:` (https://indieweb.org/in-reply-to) or `replyto:` similar to `mailto:` 1. `(reply:sorenpeter@darch.dk,2024-09-15T12:06:27Z)` 2.
`(in-reply-to:darch.dk/twtxt.txt,2024-09-15T12:06:27Z)` 3. `(replyto:http://darch.dk/twtxt.txt,2024-09-15T12:06:27Z)` I know it's longer that 7-11 characters, but it's self-explaining when looking at the
twtxt.txt in the raw, and the cases above can all be caught with this regex: `\([\w-]*reply[\w-]*\:` Is this something that would work?
Notice the difference? Soren edited, and broke everything.
@mckinley@twtxt.net Thanks for the feedback.
- Yeah I agrees that nick sound not be part of syntax. Any valid URL to a twtxt.txt-file should be enough and is more clear, so it is not confused with a email (one of the the issues with webfinger and fedivese handles)
- I think any valid URL would work, since we are not bound to look for exact matches. Accepting both http and https as well as a gemni and gophe could all work as long as the path to the twtxt.txt is the same.
- My idea is that you quote the timestamp as it is in the original twtxt.txt that you are referring to, so you can do it by simply copy/pasting. Also what are the change that the same human will make two different posts within the same second?!
Regarding the whole cryptographic keys for identity, to me it seems like an unnecessary layer of complexity. If you move to a new house or city you tell people that you moved - you can do the same in a twtxt.txt. Just post something like âI move to this new URL, please follow me there!â I did that with my feeds at least twice, and you guys still seem to read my posts:)
The tag URI scheme looks interesting. I like that it human read- and writable. And since we already got the timestamp in the twtxt.txt it would be somewhat trivial to parse. But there are still the issue with what the name/id should be⌠Maybe it doesnât have to bee that stick?
Instead of using tag: as the prefix/protocol, it would more it clear what we are talking about by using in-reply-to: (https://indieweb.org/in-reply-to) or replyto: similar to mailto:
(reply:sorenpeter@darch.dk,2024-09-15T12:06:27Z)
(in-reply-to:darch.dk/twtxt.txt,2024-09-15T12:06:27Z)
(replyto:http://darch.dk/twtxt.txt,2024-09-15T12:06:27Z)
I know itâs longer that 7-11 characters, but itâs self-explaining when looking at the twtxt.txt in the raw, and the cases above can all be caught with this regex: \([\w-]*reply[\w-]*\:
Is this something that would work?
@prologic@twtxt.net earlier you suggested extending hashes to 11 characters, but hereâs an argument that they should be even longer than that.
Imagine I found this twt one day at https://example.com/twtxt.txt :
2024-09-14T22:00Z Useful backup command: rsync -a â$HOMEâ /mnt/backup
and I responded with â(#5dgoirqemeq) Thanks for the tip!â. Then Iâve endorsed the twt, but it could latter get changed to
2024-09-14T22:00Z Useful backup command: rm -rf /some_important_directory
which also has an 11-character base32 hash of 5dgoirqemeq. (Iâm using the existing hashing method with https://example.com/twtxt.txt as the feed url, but Iâm taking 11 characters instead of 7 from the end of the base32 encoding.)
Thatâs what I meant by âspoofingâ in an earlier twt.
I donât know if preventing this sort of attack should be a goal, but if it is, the number of bits in the hash should be at least two times log2(number of attempts we want to defend against), where the âtwo timesâ is because of the birthday paradox.
Side note: current hashes always end with âaâ or âqâ, which is a bit wasteful. Maybe we should take the first N characters of the base32 encoding instead of the last N.
Code I used for the above example: https://fossil.falsifian.org/misc/file?name=src/twt_collision/find_collision.c
I only needed to compute 43394987 hashes to find it.
@lyse@lyse.isobeef.org brr, we have the same here. Starting to get cold riding motorcycle to work in the morning.
HTTPS is supposed to do [verification] anyway.
TLS provides verification that nobody is tampering with or snooping on your connection to a server. It doesnât, for example, verify that a file downloaded from server A is from the same entity as the one from server B.
I was confused by this response for a while, but now I think I understand what youâre getting at. You are pointing out that with signed feeds, I can verify the authenticity of a feed without accessing the original server, whereas with HTTPS I canât verify a feed unless I download it myself from the origin server. Is that right?
I.e. if the HTTPS origin server is online and I donât mind taking the time and bandwidth to contact it, then perhaps signed feeds offer no advantage, but if the origin server might not be online, or I want to download a big archive of lots of feeds at once without contacting each server individually, then I need signed feeds.
feed locations [being] URLs gives some flexibility
It does give flexibility, but perhaps we should have made them URIs instead for even more flexibility. Then, you could use a tag URI,
urn:uuid:*, or a regular old URL if you wanted to. The spec seems to indicate that theurltag should be a working URL that clients can use to find a copy of the feed, optionally at multiple locations. Iâm not very familiar with IP{F,N}S but if it ensures you own an identifier forever and that identifier points to a current copy of your feed, it could be a great way to fix it on an individual basis without breaking any specs :)
Iâm also not very familiar with IPFS or IPNS.
I havenât been following the other twts about signatures carefully. I just hope whatever you smart people come up with will be backwards-compatible so it still works if Iâm too lazy to change how I publish my feed :-)
you can just have a web address.. i added mine.. though i think they have changed up the protocol so my key doesnât seem to work anymore. https://key.sour.is/id/me@sour.is
you can just have a web address.. i added mine.. though i think they have changed up the protocol so my key doesnât seem to work anymore. https://key.sour.is/id/me@sour.is
Understanding cloud native maturity: a survey to assess end-user progress
Community post by Danielle Cook, Cartografos Working Group As organizations continue their journey toward digital transformation, cloud native technologies are increasingly critical for achieving agility, scalability, and resilience. However, the path to cloud native maturity is not uniform⌠â Read more
url field in the feed to define the URL for hashing. It should have been the last encountered one. Then, assuming append-style feeds, you could override the old URL with a new one from a certain point on:
I was not suggesting to that everyone need to setup a working webfinger endpoint, but that we take the format of nick+(sub)domain as base for generating the hashed together with the message date and content.
If we omit the protocol prefix from the way we do things now will that not solve most of the problems? In the case of gemini://gemini.ctrl-c.club/~nristen/twtxt.txt they also have a working twtxt.txt at https://ctrl-c.club/~nristen/twtxt.txt ⌠damn I just notice the gemini. subdomain.
Okay what about defining a prefers protocol as part of the hash schema? so 1: https , 2: http 3: gemini 4: gopher ?
[47°09â˛20âłS, 126°43â˛53âłW] Storm recedes â back to normal work
Kubestronaut in Orbit: Daiki Takasao
Get to know Daiki This weekâs Kubestronaut in Orbit, Daiki Takasao, is a Japanese IT infrastructure engineer at NRI. He works with CNCF technologies to build financial IT systems and has been using Kubernetes, Linkerd, and Prometheus since⌠â Read more
[47°09â˛20âłS, 126°43â˛43âłW] Working impossible due to blizzard
[47°09â˛55âłS, 126°43â˛36âłW] Working impossible due to thunderstorm
@movq@www.uninformativ.de Another idea: just hash the feed url and time, without the message content. And donât twt more than once per second.
Maybe you could even just use the time, and rely on @-mentions to disambiguate. Not sure how that would work out.
Though I kind of like the idea of twts being immutable. At least, itâs clear which version of a twt youâre replying to (assuming nobody is engineering hash collisions).
@bender@twtxt.net Yes, they do 𤣠Implicitly, or threading would never work at all đ Nor lookups 𤣠They are used as keys. Think of them like a primary key in a database or index. I totally get where youâre coming from, but there are trade-offs with using Message/Thread Ids as opposed to Content Addressing (like we do) and I believe we would just encounter other problems by doing so.
My money is on extending the Twt Subject extension to support more (optional) advanced âsubjectsâ; i.e: indicating you edited a Twt you already published in your feed as @falsifian@www.falsifian.org indicated đ
Then we have a secondary (bure much rarer) problem of the âidentityâ of a feed in the first place. Using the URL you fetch the feed from as @lyse@lyse.isobeef.org âs client tt seems to do or using the # url = metadata field as every other client does (according to the spec) is problematic when you decide to change where you host your feed. In fact the spec says:
Users are advised to not change the first one of their urls. If they move their feed to a new URL, they should add this new URL as a new url field.
See Choosing the Feed URL â This is one of our longest debates and challenges, and I think (_I suspect along with @xuu@txt.sour.is _) that the right way to solve this is to use public/private key(s) where you actually have a public key fingerprint as your feedâs unique identity that never changes.
@movq@www.uninformativ.de @prologic@twtxt.net Another option would be: when you edit a twt, prefix the new one with (#[old hash]) and some indication that itâs an edited version of the original tweet with that hash. E.g. if the hash used to be abcd123, the new version should start â(#abcd123) (redit)â.
What I like about this is that clients that donât know this convention will still stick it in the same thread. And I feel itâs in the spirit of the old pre-hash (subject) convention, though thatâs before my time.
I guess it may not work when the edited twt itself is a reply, and there are replies to it. Maybe that could be solved by letting twts have more than one (subject) prefix.
But the great thing about the current system is that nobody can spoof message IDs.
I donât think twtxt hashes are long enough to prevent spoofing.
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. đ
@lyse@lyse.isobeef.org 31°C here, feels like 33°C, with a lovely 75% of humidity. It has been raining, on and off (to make matter âbetterâ) the whole day until now. No horses here, but if you go outside you will smell the same smell of farm animals (like goats, or pigs). Thatâs because two or three kilometres from here there are private farms, and when the wind blows in such way, well, we are reminded of their existence.
I havenât left the house, so it feels well under air conditioning. In two more hours I will call it quits from the work day, and will have to dash to the grocery to get supplies for tonightâs meal (arroz con gandules). I will let you know how it truly feels out there then. :-D
For those swollen fingers, nothing better than a mildly cold shower! Oh, and paws off the keyboard! :-P
@movq@www.uninformativ.de good idea, considering it might occasionally not work at all (because of edited twtxts).
@prologic@twtxt.net I believe you when you say registries as designed today do not crawl. But when I first read the spec, it conjured in my mind a search engine. Now I donât know how things work out in practice, but just based on reading, I donât see why it canât be an API for a crawling search engine. (In fact I donât see anything in the spec indicating registry servers shouldnât crawl.)
(I also noticed that https://twtxt.readthedocs.io/en/latest/user/registry.html recommends âThe registries should sync each others user list by using the users endpointâ. If I understood that right, registering with one should be enough to appear on others, even if they donât crawl.)
Does yarnd provide an API for finding twts? Is it similar?
@movq@www.uninformativ.de Thanks, it works!
But when I tried it out on a twt from @prologic@twtxt.net, I discovered jenny and yarn.social seem to disagree about the hash of this twt: https://twtxt.net/twt/st3wsda . jenny assigned it a hash of 6mdqxrq but the URL and prologicâs reply suggest yarn.social thinks the hash is st3wsda. (And as a result, jenny âfetch-context didnât work on prologicâs twt.)
Last week at The Lunduke Journal (Aug 25 - Aug 31, 2024)
Telegram CEO arrested! Zuck grows a conscience! Pop!_OS wonât work with Linux! â Read more
[47°09â˛13âłS, 126°43â˛45âłW] Storm recedes â back to normal work
hey a âmericans, have a great Labor Day holiday. take no work calls or emails.
Instead of doing another Freeletics workout this week, I took advantage of the great weather outside and challenged myself with some uphill biking. It definitely pushed me to my limits, but it was worth it! And it worked, even though my bike only has eight internal gears. â Read more
Instead of doing another Freeletics workout this week, I took advantage of the great weather outside and challenged myself with some uphill biking. It definitely pushed me to my limits, but it was worth it! And it worked, even though my bike only has eight internal gears. â Read more
âWe have a lot of issuesâ: Billionaire tech boss lifts lid on staff turnover
Airwallex CEO Jack Zhang says a lack of resources means he canât compete with the likes of Canva or Atlassian in work perks. â Read more
@falsifian@www.falsifian.org have you tried jennyâs fetch-context branch? It works great!
mutt/neomutt users out here, what's the trick to highlight threads with new messages? No user interaction, just upon opening, or while opened, have threads with new, unread messages in it highlighted. Thanks!
@bender@twtxt.net yup, this works well. I needed those extra settings.
Kubestronaut in Orbit: Fangel ColĂłn
Get to know Fangel This weekâs Kubestronaut in Orbit, Fangel Emilio ColĂłn Navarro, lives in the Dominican Republic and is an SRE at Banco BHD. Heâs been working with CNCF technologies since 2020. If youâd like to be⌠â Read more
Building a translation agent on LlamaEdge
Member post originally published on Second Stateâs blog Prof. Andrew Ngâs agentic translation is a great demonstration on how to coordinate multiple LLM âagentsâ to work on a single task. It allows multiple smaller LLMs (like Llama-3 or Gemma-2) to⌠â Read more
@movq@www.uninformativ.de, maybe you can help me with this. I want to place the vim cursor at the end of the first line on replies, and forks. I have tried adding to this to jennyâs configuration:
"editor": "vim \"+normal $\"",
But that doesnât work. How would you go about it?
yarnd that's been around for awhile and is still present in the current version I'm running that lets a person hit a constructed URL like
@prologic@twtxt.net sounds fair. Letâs see how it works for @abucci@anthony.buc.ci. Speedy fix, thatâs awesome! :-)
A new uncensored search engine has been launched by enthusiasts, I donât know if youâve heard about it or not https://cdg.iounews.com The search engine uses its own database for searching. It works even for me in Windows XP
@bender@twtxt.net and I saw some conspiracy theory that he knew he was going to be arrested. He was working with French intelligence on a plea deal to defect. And now Russia is freaking out that Ukraine allies can have war comms access.
Yikes! If only they had salty.im!
@bender@twtxt.net and I saw some conspiracy theory that he knew he was going to be arrested. He was working with French intelligence on a plea deal to defect. And now Russia is freaking out that Ukraine allies can have war comms access.
Yikes! If only they had salty.im!
User error on this one. It works perfectly!
fetch-context branch. This integrates the whole thing into mutt/jenny.
@movq@www.uninformativ.de, using the branch on topic right now, it works perfect. The only thing I found was that I had to quit neomutt, and re-open, to see the perfect thread. Other than that, I love it!
Because I saw the nick on movq (@prologic@twtxt.net, canât mention anyone outside this pod, by the way), I looked the user up: https://tilde.pt/~marado/twtxt.txt. I wonder if the âhashesâ they are using will work out of the box with jenny.
Talking about jenny, going to play with the latest now. Tata! :-)
(@anth@a.9srv.netâs feed almost never works, but I keep it because they told me they want to fix their server some time.)
Appleâs Custom 5G Modem Could âChange the Way iPhone Looks and Worksâ in the Long Term
Apple is investing billions of dollars into developing an in-house cellular modem, but the project is not expected to yield immediate improvements for users, Bloombergâs Mark Gurman reports.
In last weekâs [âPower Onâ newsletter](https://www.bloomberg.com/news/ ⌠â Read more
[47°09â˛54âłS, 126°43â˛49âłW] Storm recedes â back to normal work
Inside the numbers: the KubeCon + CloudNativeCon selection process for North America 2024
As part of our commitment to transparency within the cloud native community, we are providing an inside look into the work that goes on behind the scenes to bring the KubeCon + CloudNativeCon schedule to life. Note that⌠â Read more
from my understanding.. i donât know how the multiplexing works when its being proxied through another server. I know go has support for it if you call it out directly. https://pkg.go.dev/golang.org/x/net/http2
from my understanding.. i donât know how the multiplexing works when its being proxied through another server. I know go has support for it if you call it out directly. https://pkg.go.dev/golang.org/x/net/http2
[47°09â˛08âłS, 126°43â˛00âłW] Working impossible due to thunderstorm
[47°09â˛06âłS, 126°43â˛49âłW] Working impossible due to blizzard
Using an iPad Pro to Create 1-Bit Pixel Art in a Macintosh Emulator
An ex-Apple employee put together a rather incredible way to create 1-bit pixel art on a modern iPad Pro with an Apple Pencil by using a Macintosh emulator, and the results are very impressive! This super creative approach is the work of Matt Sephton (the same guy who re-made the nifty Stapler app!), who used ⌠[Read More](https://osxdaily.com/2024/08/16/using-an-ipad-pro-to-create-1-bit-pixel-art-i ⌠â Read more
[47°09â˛42âłS, 126°43â˛09âłW] Storm recedes â back to normal work
Apple Still Developing a Bigger iMac With Over 30-Inch Display
Apple is still working on a larger iMac with over a 30-inch display, but the development stage and potential release schedule for the all-in-one computer still remains largely unknown.
Following the launch of the new Mac Studio and 27-inch Studio Display in March 2022, Apple discontinued the Intel-based 27-inch iMac. The company had already consi ⌠â Read more
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.
It is good to be off work and have time to spend on my personal projects.
Morphotrophic by Greg Egan is built around an idea for how life on Earth could have worked out differently. It gets increasingly strange and interesting as the story progresses. My partner and I finished it last night and thoroughly enjoyed it. The beginning is free online: https://gregegan.net/MORPHOTROPHIC/00/MorphotrophicExcerpt.html #scifi #reading
Adorava conseguir escrever como este senhor, que torna o comportamento de uma substância perigosa em algo que då vontade de ler atÊ ao fim
https://www.science.org/content/blog-post/things-i-won-t-work-dimethylcadmium
After work bike tour
I admit it, I should rename the subtitle of my blog from âThoughts of an IT expertâ to âMy bike tour logâ. Even though it was 29° C outside today, I wanted to do another bike tour after work. 42 km through the surrounding area of my hometown. I discovered new places and noticed that it actually feels colder next to trees. It was much fun! â Read more
** Dithering the Shire **
In my last post I said that
Iâve had a few ideas for other personal experiments I wanna build on those walks, but havenât actually wanted to do much programmingâââmaybe this fall or winter will be a good time for that?
Welp, it wasnât even an idea when I wrote that, but I made another implementation of pico cam, this time using swift for iOS. I wonât release it to the App Store because I d ⌠â Read more
@off_grid_living@twtxt.net Is there a particular reason why you run it through wine? And not the âstandardâ ubuntu way of doing it? Itâll make it much easier to make sure things are working the way it should.. :)
@prologic@twtxt.net During summer - yes, since our kids have 2 months. First month of their vacation I still work, then I join them on their last month. We do have 5 weeks, so I save the last week for around Christmas. :)
If some of you budding fathers want to know how I created a computer nerd to one day work for Facebook in the big USA, well you purchase a $1000 Xmas present, an enormous thick book with C++ programming, and say, you can play as many games as you like kids, but James has to create them using computer software.
SO James created once a 3D chess program with sound, took 6 months or so, really hard to beat, not based on logic moves point by point like other chess programs, this one was based on the depth of looking for patterns, set it to 5 moves ahead and you were toast every time. Nice program too, sadly gone over the years, computers suffer from bit rot. We used to try and mark rotten hard drive discs once as bad sectors, not sure how UBuntu does this these days, I see a dozen errors on the screen every time I load.
Today I would purchase for my kids AI CAD simulation software with metal 3D printer and get your child to build fancy 3D models and engines from scratch. This will make them an expert in the CAD AI industry by the time they are 14 years old. Sadly AI is here to stay and will spoil the Internet.
@movq@www.uninformativ.de There are drivers and such for linux as well. I also think it works fine with steamVR on linux (But currently my main computer for gaming is running windows) so I have not tested VR on linux yet. I am planning on installing linux on that machine when I get a extra disk for it soon. (I run linux on all other laptops I have, but those are not good enough for VR stuff).
4 week vacation time is done tomorrow, then itâs back to work. A bit excited to see what happens there for the rest of the year, a bit stressfull too, but Itâll be nice to get back to work. This summer vacation has been super nice, and also felt like it lasted long. Been a super time with my family, we got to visit a lot of cool places, and went on a lot of trips etc. Been really nice. And weâve already planned what to do next year - so I already look forward to that :)
Why I am using an Android phone instead of a Wahoo
In my last bike trip report, I mentioned that I would review the Wahoo bike computer I ordered once I had a chance to try it out. Well, as it turns out, I sent the Wahoo back and found a solution that works better for me. â Read more
** I wrote some APL at work and I like historical fiction **
This summer my oldest kidâââ8 years oldâââasked to learn more about programming. Theyâve already got about a full time jobâs worth of experience with Minecraftâs red stone, Super Mario Maker 2, Logo, and Scratch so I knew we werenât starting from nil, but, despite having done a bit of teaching about programming with kids in the past, I hemmed and hawed. After hemming and hawing for a bit, though, I realized that I was hemming and hawing abou ⌠â Read more