4

Email as a way to federate stuff is so slept on

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

Comments

You must log in or register to comment.

3

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.

2

nitori wrote

I think Mastodon and other fediverse servers already require that your ISP allows outgoing email, since there would be no way for you to send your password reset or account verification emails... Or are those kind of automated emails exempted from ISP restrictions? And deliverability to providers like Gmail is not a big deal to me IMO either, if say Raddle can suddenly talk with people from riseup.net for example, that's a big win to me. The spam filter problem could probably also be circumvented by requiring some authentication before you can talk to the Postmill instance, and being picky on what domains you'd allow. I don't really imagine anyone opening up their Postmill to like everyone on email, that's just going to be PITA. Instead it would be more like a whitelist

I do have to admit I haven't thought much about the dev ecosystem though, or how archives would be accessed (but personally I just access my mailing list archives from the web than Usenet, and this kind of use would still work fine for this theoretical email-powered Postmill because again, the forums are the mailing lists, and all the posts you see are behind the scenes what the archives are returning)...

Anyway you're the actual dev here who has way more experience doing server shit than me so maybe I'm just spouting some BS lol, so I will just defer to your wisdom :)

3

emma wrote

I think Mastodon and other fediverse servers already require that your ISP allows outgoing email, since there would be no way for you to send your password reset or account verification emails

yeah this is true, but if you were to build a whole system around emails, then the contents would be arbitrary and the magnitude would be far greater, increasing the chance of running into problems with spam blacklists which ISPs hate to be on (see, for instance, digitalocean's spam policy)

And deliverability to providers like Gmail is not a big deal to me IMO either, if say Raddle can suddenly talk with people from riseup.net for example, that's a big win to me.

yeah this may or may not be an issue depending on exactly how the system works

Anyway you're the actual dev here who has way more experience doing server shit than me so maybe I'm just spouting some BS lol, so I will just defer to your wisdom :)

i don't think it's BS. i just foresee there being some problems with the idea, and i know from experience having worked with mail servers that it's something i personally never want to touch lol. but if this is a thing you want to build, then i think you should go for it, if only for the learning experience.

2

devtesla wrote

I think there's also an app which is essentially just another email client but it has a UI friendly to real-time chat

Shortwave works like this, it's pretty nice Lol. But it's gmail specific

2

nitori wrote

Huh interesting, maybe I could use that for my university mail, which is hosted by Google

Anyway I found the name of the app I was talking about, it's Delta Chat