Submitted by nitori in technology
Like I don't understand why they have to reinvent the wheel so many times. Usenet, XMPP, Matrix, ActivityPub, OStatus... Ok perhaps Usenet is understandable (it came around a closer period to email was created than the others were), though obviously it just isn't usable as a place for discussion in many topics nowadays.
Like why bother with XML, JSON, and other arbitrary languages when you could just have... plain-text headers. I don't see why group chats and forums couldn't be implemented in the form of mailing lists. In-Reply-To headers have been around for a long time so threading wouldn't be a problem. I think there's also an app which is essentially just another email client but it has a UI friendly to real-time chat. It's possible, and email being the most mature of all federated solutions and having a familiar infrastructure around it, it should be a no-brainer to just build around email, don't you think?
Like instead of just forcefully pushing ActivityPub to Postmill why don't we just turn it into a mailing list software. The UI will still be the same but under the hood all forums are really just mailing lists. And while we're at it all users are essentially email users, so you could use your mail client and login to your nitori@jstpst.net if you want to. That way we get a lot of third-party clients for free
Idk shit about PHP though so I'm afraid I can't implement it myself, but this idea has been at the back of my head for some time now and I don't want to forget it
emma wrote (edited )
ok, so, like, i think the hallmark of a well-designed system is that it's designed in such a way that the developers and operators it's targetting will be familiar with the basic concepts of that system. not necessarily domain details like "what should happen with this value in the BCC field", but like the transport (HTTP, SMTP), message exchange formats (JSON, XML, MIME), the tools needed to deploy the system (web servers, mail transfer agents), and such. in that regard, designing it around email is a mistake.
everyone uses email and it's been around forever, but the tools around it are absolutely archaic and alien-like by today's standards. if you ever have the displeasure of configuring a postfix server for some purpose and have to learn what a "milter" is, you'll see what i mean. you will also have to contend with ISP blocks on outgoing email, delivering email to major providers which are incredibly anal about what mail they will accept, not knowing if mail was delivered successfully, and so on. you also need some mechanism for accessing an archive of messages which typically (for mailing lists) means having an NNTP server and then dealing with even more archaicness on top of it all.
on the other hand, the type of developer who would be interested in making a federated forum would likely already be familiar with HTTP, REST concepts, JSON, how to set up a dev environment, the tools you want to use for testing, the libraries you want to use for building the server, and so on. i believe mastodon is successful because it leverages HTTP, enabling any power-tripping 17-year-old furry and their dad to set up their own instance on a $5 VPS, and creating a healthy developer ecosystem thanks to being made with protocols that are already familiar to anyone who's had the misfortune of working extensively with microservices, which is a fair amount of us.
all this said, i think it was a mistake to use JSON-LD for ActivityPub. i think we'll see more competing protocols, but i'm certain that any even moderately successful competitor would be built on HTTP. anything else in this day and age is just a non-starter.