The people who don’t want you to run your own servers are the ones who want to run the servers.

People will happily run their own servers if it’s so simple to do that they don’t even know they’re doing it.


You want people to run their own servers? Design and build servers for individuals, not communities and let communities arise from the interconnections between those servers.


Because that’s the only way we can compete on ease of use with centralised systems. Not by mimicking their complexity but by side-stepping it. There is orders of magnitude difference in complexity between a system designed to serve just one and one designed to serve one, two, or a hundred thousand.

Centralisation thrives on complexity; decentralisation on simplicity.

If we want everyday people to seize the means of communication, we should ensure that those means are easy to hold.

@aral what do you mean by this? i'd think distributed systems are way more complicated

@valerauko @aral They are, due to being a web of interconnected systems which have everything from DNS, to domain names, to TLS certificates, to LAMP stacks, to proxies, to all required software (including updates, libraries, and dependencies), DDoS issues, ISP issues...

As someone who loves decentralisation and knows it's how the web was designed to be, it's not easy by any means. Most people aren't tech literate enough to know what the basics of computers are, never mind hosting servers which are complicated beasts even with documentation.

@valerauko @aral I think that it means that if you want to go distributed+ you have to concede a lot of stuff that's possible to do in centralised arch. Interestingly, natural convergence of masses to centers, perhaps, means that convenience relies on complexity.

@aral have you heard about ? When trump was banned he threw the idea because he wasn't convinced by fedi and it sounds like what you want :anna_chocked:

@aral What I worry about is this: There are many things users want or "deserve" but ultimately, those who do the work get to shape their work. If developers are personally comfortable with editing config files and command-line tools, that's what we end up getting.

@nilesh @aral Be the developer you want to see in the world.

Or, at least, write a design doc and hand copies to every developer you meet until one of them thinks it's cool.

@happybeing @miklo I don’t think we can until we have a system where servers are providing (a) availability and (b) findability. Once we have that scaffolding and we’ve moved people to what is essentially a p2p system with experience guarantees, we can start removing the training wheels. At least that’s my plan.

@aral @miklo as you know Safe Network is the route I'm actively involved with.

Very keen to see how you get on with a less radical separation. I think the pro is easier adoption (migration/integration etc), but the con will be vulnerability to criminal and state attacks (technical and legal attempts to control, censor, surveil, extort, steal etc).

The current architecture isn't robust enough IMO. Hopefulyl Safe Network can shift this by orders of magnitude because all the trends are negative.

@aral @miklo @happybeing I have similar criticisms of Tim Berners-Lee's strategy with Solid. He's betting on Solid as a service, presumably with better regulation but I don't see how that won't repeat the same centralisation as web 2, and it continues to sit it on fragile and insecure infrastructure spread across commercial providers. Ick!

That's why I created a demo of Solid sitting on an early Safe Network testnet. That still looks promising.

@happybeing @miklo His “startup” is VC funded. That’s all I need to know.

@aral @miklo yes, I'm surprised he doesn't seem to see the the causes of web2 centralisation the way we do. He recognises the problem but not the cause or the possible remedies.

@aral I agree, we need to make everything a lot easier to set up , securely, and ensure the person doing so is setting things up securely.

Surely it is possible to build a raspberry Pi image that has everything built, you just insert in to pi (first time) it does the usual resize file system, asks a bunch of easy to answer questions (which you know before hand,, can write down the answers to.

Even better have a online configuration tool that sets up a config file for you, Kind of like the old XFree86 or kernel configuration tool.

@aral I'd say design for three users rather than one.

Individuals running services are often not just individuals - they exist in households or other small groupings, with whom they often share services from the very beginning. Between cooperative housing and inter-generational households, a more than two-adult household with shared resources but multiple semi-independent decision-makers is very common.

@aral My example of a system designed for one is #Grocy, which is totally awesome in nearly every way, but which treats users as places to store different UI settings and nothing more; there is no object ownership or permissions model.

My household is not a nuclear family, and one main reason we haven't switched to the grocy instance we already have running is that we don't want to e.g. [be able to] see roommates' personal chores on the household task list.

@asparagi I understand the use case and agre that it is important but I don’t know how to design for three people. In terms of the architecture of a system I can either design one where a person is in charge of themselves or where someone else is in charge of one other, two other, or a million other people (the exact number doesn’t matter, it only determines the amount of power the person in control has). What I can design, though is a system individuals own/control where they can set the rules…

@asparagi …for their particular three-person household :)

@aral I am lobbying for designing for systems in which multiple people (I agree that the exact number doesn't matter, as long as it isn't special-cased for 2, a la couples' communication apps) are each in charge of themselves, and one or more of them also maintain/support the system.

Assuming there are 3(+) such individuals, one would design for the basic permissions model things/personal data per user, but can ignore e.g. trying to scale to a million users.

@aral Of my personal sample of about 30 households of 2+ members observed closely enough to be able to tell, interest in using tech is distributed more broadly than interest and skill in maintaining it. One or more tech specialists maintain tech for the others, including single-user tech like iPhones, and often set policy for the others.

Household tech seems like the majority use case, over individual, we techies just haven't been seeing it that way.

@aral Just some ideas; I still think you are headed in a better direction than the status quo.

If we have to have a solution that doesn't fit, I'd certainly prefer systems that start with the goal of individual control rather than exploiting herds of faceless consumers.

@asparagi @aral just a though: we may not need traditional (web2/SaaS) permission/security models for household sized services. I have no lock nor safe to "protect" "my" physical belongings from my spouse with whom I live. I may not need software protections either.

Publicly exposed household services must still restric unauthorized (write/admin) access from outside (i.e. internet), but this is true regardless of the number of trusted inhouse users.

@aral So true. But how do we overcome things that are heavily dependant on centralised services? For example push notifications in mobile operating systems. Right now we have no choice but to either use Google FCM, Apple push services or hope for developers to implement their own push services which in mass accumulate to a lot of background activity and thereby battery drain. Almost anything else is easily imaginable in a decentralised manner.


I am just reading The Road to Serfdom from F. A. Hayek

says that cetranl planning leads to totalitarianism

also society grows when individuals are free

I see those as pararells to your opinion

Sign in to participate in the conversation
Aral’s Mastodon

This is my personal Mastodon.