Thinking about permissions

During the development of our second prototype “Shepherd”, we realised that permissions for truly distributed social media are a thorny thing. Within the decentralised design of Solid, we have to define how spaces are controlled in interactions between users. We also have to be mindful of preserving the context of the interaction, while also respecting the privacy of individuals who might belong to different networks, technical or otherwise.

this is why we can’t have nice things

As you may know, I am involved in, an attempt to build a better social network atop of Solid. The developers are chugging along at a slow but steady pace, expect a new version to come out soon.

Solid itself is a really intriguing and awesome idea: Everything you want to share or publish, regardless of public or for a limited audience gets stored on your Solid Pod, completely uncoupling data from application and publisher.

So your theoretical Facebook posts and likes and comments would not be stored and owned by Facebook. They would just handle the presentation and feed and recommendations and so on. And if you want to change the network, you get to keep all your content and contacts.

Now, the way Solid is designed has one big constraint: You cannot change the URL that points at your pod, ever. If you do, all the links between your content and that of others would get lost otherwise. So, if a pod provider would got belly up, that would be a bad thing.

One of the earliest pod providers is solid​.community. Or rather. Was. The service is shut down. Which is fine, it was advertised as experimental anyway, it was free and purposely only had a very small storage space. It was meant for those earliest of adopters and for developers to see how all this works.

Alas, someone thought it would be helpful to keep it alive and managed to migrate everything to solidcommunity​.net.

Which is also fine and helpful, except two things:

  1. I, as a user on solid​.community learned about this whole thing from someone completely uninvolved in this process, basically by accident. The move included my login data, whatever private data I may or may not have stored on that Pod, everything. I have never agreed to this, nor do I have any idea who the new person is. That is a major GDPR violation, and erodes a LOT of trust.
  2. The move is useless. As I pointed out above, now that the URL is changed, none of the linked data is properly linked anymore. It completely broke everything. And considering the amount of data (I think there was 2 MB of available space), it is not even a thing of „hey, people probably want to keep this!“.
useless people links on my Solid Pod

Seriously, my Fellow Nerds, especially if you work on something that promises privacy: These things matter! No one will adopt your project, if you fuck this up, and here, you fucked up quite a bit.

Before you rant at me: Yes, I am quite aware that what I was using was basically a test system. And I bet that 99,9% of all other users of that system knew this too and acted accordingly. I highly doubt that any actual private data was compromised. And I don’t think there is any foul play involved. People did what they thought would be best. But, well, guess what: They thought wrong!