First published 2024.04.18
Last updated 2024.10.26
Prior Art: Solid
We’ve outlines three perspectives:
What would an ecosystem that addresses these three points of view look like? We’re describing a system where web developers don’t handle any of their users data, but users do manage it through independent, third-party authentication providers. Each of our three perspectives rely on their relationship with the other two, creating a healthy ecosystem.
This ecosystem of interrelated systems does have a big hurdle to cross before it can really be successful. Why would someone sign up for one of these providers if there aren’t any apps that support them? Why would a developer build an app that relies on these providers if no one has one? And why would anyone start one of these providers if there are no apps and no users? Once all these things do exist, then they can work together, but while they are still rare and unusual the incentives to build that network in the first place just aren’t there.
It turns out that I’m not the first person — and far from the smartest person — to see how this ecosystem of tools could be the future of the internet, and there are efforts to build this system out to kick-start the critical mass phase of adoption.
Tim Berners-Lee started the Solid Project to make the independent third party authentication and storage provider a reality, where users themselves control and own the data they create through web applications. There are several Solid Server implementations today, with more in the works. There are Applications today that operate against Solid Providers. You can get yourself a Solid account today, with Providers to choose from.
Solid is built on a collection of open W3C specifications that directly handle the concerns of authentication, access control, and data storage. It’s built on the same data exchange format as Mastodon’s own open specification ActivityPub, and allows for server federation and the creation of links across data providers.
All three pieces of the puzzle exist today, and are in use. Developers are making apps that store data on Solid providers where users own and control their own data. But the critical mass of the network effects isn’t there yet, and with some exceptions like Dokieli the applications are mostly proof-of-concept technical demos. The teams that are working on these problems seem to be either academic or government-focused, and are using SOLID to address a need for public data access and transparency.
For the small private application however, there still isn’t a clear cut answer to the pair of questions “why would I want to sign up for this” and “why would I want to develop for this”.
Who is doing this today?
Berners-Lee and his company Inrupt are trying to bring this ecosystem to that critical-mass point of adoption, with a focus on enterprise and civic tech use cases. Accounts on Inrupts Enterprise Solid Server are free – albeit in “developer preview” – and Inrupt could easily grow to be the primary server for these sorts of providers, creating a massive instance and single failure point of failure for the entire ecosystem. Inrupts Enterprise Solid Server is important, and having a rock solid, enterprise, government sponsored server will go a long way to creating the legitimacy that Solid needs. But it’s not going to be enough in of itself.
One of the powerful things about the Fediverse is that anyone can run their own Mastodon server under any terms they want. Anyone can implement a Mastodon server because the thing that makes it work is that open specification. The resulting community is robust, flexible, and a wide range of dedicated people who are all working to make it better. And as it gets better, it gets better for everyone.
Solid is a very close cousin to ActivityPub, and they use some of the exact same specifications. An ecosystem where Solid can thrive is one that has many different providers, trying many different things. As each provider grows, and each new app comes online, the whole system gets more valuable for everyone.
Our call to action here is clear: if this is going to be the future of the internet, than each of the three legs of the stool need to be as easy, simple, and joyful to accomplish as possible. Their value propositions need to be incredibly clear, and their stories straightforward and compelling. The tools need to be there for users, developers, and providers, and it should be easier than the alternative – maintaining the current status quo.