Live data from Hacker News

Reflections: The ecosystem is moving

whispersystems.org

1–10 of 103 posts

Re: Reflections: The ecosystem is moving

#2
Just because it's not super simple doesn't mean we should treat federation as a dead end. Sandstorm is one way for non-admins to have their own server and there's work regarding self-hosting everything. It's unsexy, it's not a money maker like a centralized messenger, but unless we want to live in a world where there's only one or two centralized messaging solutions, we as developers have to eat our own dog food and improve easy hosting and federation.

Re: Reflections: The ecosystem is moving

#4
post #2

Just because it's not super simple doesn't mean we should treat federation as a dead end. Sandstorm is one way for non-admins to have their own server and there's work regarding self-hosting everything. It's unsexy, it's not a money maker like a centralized messenger, but unless we want to live in a world where there's only one or two centralized messaging solutions, we as developers have to eat our own dog food and…

How would apps running on Sandstorm avoid the problems with federation in today's world outlined in the blog post?

Re: Reflections: The ecosystem is moving

#5
post #4
post #2

Just because it's not super simple doesn't mean we should treat federation as a dead end. Sandstorm is one way for non-admins to have their own server and there's work regarding self-hosting everything. It's unsexy, it's not a money maker like a centralized messenger, but unless we want to live in a world where there's only one or two centralized messaging solutions, we as developers have to eat our own dog food and…

How would apps running on Sandstorm avoid the problems with federation in today's world outlined in the blog post?

It looks to me like your article is really arguing for central control of the code, rather than central control of the serving infrastructure. Having everyone running the same code means changes can be made quickly because only one implementation needs to change. Centralized serving infrastructure makes central control of the code easy.

But if you look at mobile, we have central control of the code there without central control of the infrastructure: everyone has their own phone, yet runs the same apps that stay up-to-date via app stores.

Sandstorm is basically taking that model to servers: within 24 hours of an app update, everyone gets a notification and can click one button to update their copy, so everyone tends to stay up-to-date.

(Disclosure: I'm the lead developer of Sandstorm.)

Re: Reflections: The ecosystem is moving

#6
I'll add my thoughts here, since I think a number of people will be disappointed in this post.

There are a number of competing goals when developing software that "the whole world can/will use". And it seems obvious to me that getting the whole world to use a secure, encrypted messenger like Signal (now, Whatsapp) is a noble goal. The obvious competing goal is federation, and the fact that we've failed at improving federated services (e-mail being the best/most important example) is a problem.

Ultimately, Moxie's arguments here hold a lot of sway for me. I think it sucks that constantly-improving services are impossible to address in a federated way, and he's not really offering a solution to that. But instead he presents arguments I hadn't thought about much, which is that perhaps non-federated services can be dramatically better than federated services in the short-term. And in the long term, perhaps we'll move back to federated services; right now, the cost of changing services/ecosystems is very low. So we don't need to be as 'doom-and-gloom' about the fact that Signal does not achieve all the competing goals, because it achieves a number of extremely important goals right now, and we can work on the other goals in the future.

Re: Reflections: The ecosystem is moving

#9
post #2

Just because it's not super simple doesn't mean we should treat federation as a dead end. Sandstorm is one way for non-admins to have their own server and there's work regarding self-hosting everything. It's unsexy, it's not a money maker like a centralized messenger, but unless we want to live in a world where there's only one or two centralized messaging solutions, we as developers have to eat our own dog food and…

Stuff like sandstorm is a massive leap towards practical federation, but it came about 10 years late into the conversation. Not that it doesn't still hold great promise (I'm a huge fan, and 100% target demo), but that span of time has allowed us to see this same dynamic play out in enough software spaces that it's a sound observation and rationale for guiding your business or project.

When something like sandstorm can hide even the abstraction of server maintenance, and either: 1) Creating a service is background to account creation. Like say a private hosted sync point (choose your own host) is created when you install the application. 2) I can deploy via an account or "brand" I have established loyalty with, but maintain true portability.

These are new conversations, not possible before.

Re: Reflections: The ecosystem is moving

#10
I totally get this; federation is hard, and its so much easier and nicer ─ as a developer ─ to have a centralised service. Often centralisation is the right choice for a particular project, and I respect that.

That doesn't mean we should give up trying to federate things, though. The major upside (for me) to federated systems is simple: choice. Choice over the client you use. Choice over the servers you use. Choice. For something so fundamental as how we communicate over the internet that's incredibly important. I want to be able to use the app I want without having to figure out if the other person is using the same app, and i don't want to have to have 10 different apps on my phone just to keep in touch with everyone.

The reason I think that things like email and SMS are still so prevalent is how you don't need to care what service the other people are on, you don't need to worry about how other people are going to talk to you, it all just works. It's true that currently a lot of the email traffic is going through google, that sucks, but:

- If google discontinues gmail then your email still works, people can still talk to you. It's annoying you need to get the new addresses for all your contacts that used to use gmail, but that will get resolved quickly enough.

- A day may very well come where people decide another service is better, but then people are free to move there without having to try and convince all their friends and family to also switch. (Take browsers, for example, the browser that everyone uses to access the internet changes over time. And its great! People use what they want to use, the servers don't care, everything just works ─ well, more or less).

Not everything needs to be federated, often there are situations where its advantageous for there to be a central authority. (The blog post highlights a few of those situations). That's also great! People who want those things are then free to choose to use those things as well. Using 2 apps you want to use is still better than 10 you don't want to use.

Federation is hard, and it imposes constraints, but I really, really hope that we can build something that works before we give up and hand over all our comms to a particular company.

This is exactly why I work at matrix.org; I just want to be able to use the clients I want without having to care what everyone else uses. I don't even have to care if matrix.org goes down (except the fact I have to fix it), I can happily talk to other people since I connect via my own server.

I do actually agree with a lot of what's said, I just disagree with the conclusion. Federation iss hard, but it's just so worth it if we can get right.

Post reply on HN