Live data from Hacker News

So this guy is now S3. All of S3

chaos.social

381–390 of 522 posts

Re: So this guy is now S3. All of S3

#381

Earlier quoted context omitted.

There is a lot more information here: https://twitter.com/bluesky/status/1511811083954102273?lang=... From my own understanding, the biggest useful differences for me personally is: account portability, domains as usernames and content-addressable from the ground up. - Account portability - Useful if/when you want to move between servers - Domains as usernames - Ties into the same value as account portability. I've o…

Since you seem to default to sending me to RTFM :D, I'll give you a similarly short reply: ActivityPub can identify users based on their domain too. Probably better than BlueSky does, because it uses better standardized mechanisms - the URI needs to dereference to a valid ActivityPub actor and the community has converged to using webfinger for discovery. The fact that web-finger is generally used for user discovery m…

I don't work on the AT protocol, and don't have any deeper insights into it, I just started reading about it a week or two ago and still putting all the pieces together myself. I linked the twitter thread not as a "Go read this you fucker" but more like "there is no point in me repeating what has already been written elsewhere". I'm just trying to help understanding, not convince you of something, I have zero horses in this race :)

But something I can answer directly to as I have deeper expertise with it, is this:

> how in the world a hash would make it easier to sync content than a URL I don't know

URLs are pointing to a location while content-hashes point to specific pieces of content. Moving from URLs to hashes as URIs gives you the benefit of being able to fetch the content from anywhere, and cache it indefinitely.

Basically any large distributed system out there, no matter if it deals with caching or not is built on top of content-addressable blobs, as it reduces the complexity by magnitudes.

Suddenly, you can tell any of your peers "Give me content X" and you don't really care where it comes from, as long as it is verifiably X. Contrast that to URLs which point to a specific location somewhere, and someone has to server it. If the URL is unresponsive, you cannot really fetch the content anymore.

Content-addressing used in this manner is not new or invented by Bluesky, but a old concept that has been used for multiple use cases, caching is maybe the most common one, but definitely not the only one. Probably the first time I came across it was in Plan 9 (Venti) around ~2000 sometime. First time I actually used it in production was with Tahoe-LAFS, which must have been around ~2010 sometime I think.

Re: So this guy is now S3. All of S3

#382

Earlier quoted context omitted.

Oh man, then you really don’t want to know about a product I once created. Reader could have an optional Flash plugin, and better yet, you could configure the PDF interactive plugin to dynamically download the swf file to run. I built an entire Flex based rich UI that was dynamically loaded by the 1kb PDF you’d receive in email, the Flex app retrieved and posted data via HTTP APIs. Because reasons. That product was l…

oh looooooooooooord. O_O

impressive, but still haha

Re: So this guy is now S3. All of S3

#383
post #163

Earlier quoted context omitted.

> I have been shouting about this for 10 years, none of the industry incumbents care. The internet is run by morons. Or maybe, just maybe, hear me out on this... maybe your proposal is not as smart as you think it is. For one thing: > Cert request signed by the private key of the domain owner, sent to the registrar to verify, the registrar signs it if its true What exactly does the registrar verify, and how?

The person who owns the domain creates a private key and uploads the public key to the registrar when they buy the domain. Literally a 68 byte string. Not exactly hard to store. The domain name itself may be longer. The domain owner creates a CSR and signs it using their private key. Sends it to the registrar. The registrar uses the public key the user uploaded to validate the signature. This happens millions of time…

How does the CA get the registrar's public key in a way that cannot be spoofed or hacked like you say DNS and HTTP verification can? If your thread model already includes hacking a CA's network infrastructure, getting them to accept the wrong key as valid doesn't seem any more difficult than the others.

Re: So this guy is now S3. All of S3

#384
post #353

Earlier quoted context omitted.

[flagged]

Someone on one server trying to get a user on another server is maybe a bit much, but I don't know the content of the posts in question. For me it'd have to be something pretty extreme to take those actions, otherwise if I saw something that irritated me I'd just consider ignoring or blocking that person depending on the severity. Remember though that the war is a pretty delicate subject and that a position that from…

> Remember though that the war is a pretty delicate subject

That’s good advice for a dinner party, not a valid defence of censorship on a social network.

Re: So this guy is now S3. All of S3

#385
post #353

Earlier quoted context omitted.

Someone on one server trying to get a user on another server is maybe a bit much, but I don't know the content of the posts in question. For me it'd have to be something pretty extreme to take those actions, otherwise if I saw something that irritated me I'd just consider ignoring or blocking that person depending on the severity. Remember though that the war is a pretty delicate subject and that a position that from…

> Remember though that the war is a pretty delicate subject That’s good advice for a dinner party, not a valid defence of censorship on a social network.

If you want your message to be heard, you're going to think about how someone will respond to what you have to say. This isn't unique to the fediverse, to social networking or even to the internet - this is just how humans interact.

If you want to just run your mouth and then complain about censorship when you get booted for violating someone's TOS or pissing off a mod, go nuts. No skin off my nose.

Re: So this guy is now S3. All of S3

#386
post #330

Last night I opened this, saw the HTTP 429 and figured "ah too many requests, I'll check the comments and try in the morning". The comments were all people swooning in shock about why some non-specific they (S3? Amazon? Someone else?) didn't use ".well-known" and others complaining about Mastodon and/or the fediverse. I had to read multiple comments to piece together the story, I swear it was like Elden Ring[0]. What…

[flagged]

Or they should have just put configured caching of static content. This has nothing to do with Ruby, nor even the architecture of Mastodon (the software) which is not great, but about a server not being set up properly - any static cache or, even better, fronting it by a CDN, will trivially beat the most optimised compiled dynamic content generating framework.

Re: So this guy is now S3. All of S3

#387
post #353

Earlier quoted context omitted.

[flagged]

Someone on one server trying to get a user on another server is maybe a bit much, but I don't know the content of the posts in question. For me it'd have to be something pretty extreme to take those actions, otherwise if I saw something that irritated me I'd just consider ignoring or blocking that person depending on the severity. Remember though that the war is a pretty delicate subject and that a position that from…

Barring context, I'm going to guess that this was simply regular users on chaos.social ticking the box in the reporting interface that forwards the report to the originating server - an option that's vital in a federated system when reporting anything that you see as bad enough rather than just a violation of your own instances rules, but of course will be used for things not against either instances rules all the time on any larger instance.

Re: So this guy is now S3. All of S3

#388

Earlier quoted context omitted.

So server software is not written with high performance in mind? I've read somewhere that federation is done via regular HTTP requests which ends up really hogging down servers if someone has a lot of followers.

Mastodon is written in Ruby on Rails and there are some inherent performance issues with that, it generates a huge number of Sidekiq jobs that can bog down a server quite easily. There are other, non-Ruby implementations aiming for compatibility with the Mastodon API though, so I’m curious to see how it will all shake out.

While Rails doesn't help, it also isn't really the problem here. The problem is a mix of deployment instructions that are complex and doesn't emphasise the need for robust caching enough (this should be behind a properly configured Nginx cache, and the entire site also ought to be behind a CDN), combined with a Mastodon-specific architecture that as you say is really aggressively generating async jobs. Mastodon is really unnecessarily heavy to run.

Re: So this guy is now S3. All of S3

#389

Earlier quoted context omitted.

Steve, it's "Mastodon" like the animal and like the band. It hurts to read 4 paragraphs of good relevant text and cringe every time you misspell the name. :(

Ah yeah. I struggle spelling certain words. This is one of them. Thank you and sorry. (I spell the animal and the band this way too. Working on it.)

At least you're not alone in this one - it's so common that e.g. anyone registering anything (domains etc.) with mastodon really ought to keep it in mine and register the equivalent with mastadon.

Re: So this guy is now S3. All of S3

#390

Earlier quoted context omitted.

Since you seem to default to sending me to RTFM :D, I'll give you a similarly short reply: ActivityPub can identify users based on their domain too. Probably better than BlueSky does, because it uses better standardized mechanisms - the URI needs to dereference to a valid ActivityPub actor and the community has converged to using webfinger for discovery. The fact that web-finger is generally used for user discovery m…

I don't work on the AT protocol, and don't have any deeper insights into it, I just started reading about it a week or two ago and still putting all the pieces together myself. I linked the twitter thread not as a "Go read this you fucker" but more like "there is no point in me repeating what has already been written elsewhere". I'm just trying to help understanding, not convince you of something, I have zero horses…

You can treat a URL as a hash into a content-addressable store just fine. Mastodon does just that. Yet that URL also tells it where to retrieve the content if it's not available locally in a way that doesn't require tools to have any additional knowledge. If they do have additional knowledge, say of another caching layer or storage mechanism, they can use that just fine.

That is, I can just paste the URL for this article into my Mastodon instance, and if it has it, it'll fetch it from the local storage, if it doesn't it'll try to fetch it from the source, but there's nothing preventing a hierarchy of caches here, nor is there anything preventing peer to peer.

But while ActivityPub says that object id's "should" be https URL's for public objects, the basic requirement of ActivityStream is just that it's a unique URI, and there's nothing stopping an evolution of ActivityPub allowing URI's pointing to, say, IPFS or similar by content hash instead of a https URL.

Post reply on HN