Hacker News new | past | comments | ask | show | jobs | submit login

Paging Kenton Varda and the company/product/system he and his team created that does something very similar called Sandstorm: https://sandstorm.io/. (Kenton also led the protocol buffers team at Google which is their main format for data interchange).

I'm curious how this is different.




Hello... you paged?

It looks like Solid has progressed since the last time I really looked into it. But, from what I recall, Solid focuses on standardizing data formats and storage... but not compute. That is, all of your personal data is stored in some central location chosen by you, and then web apps can access that data (if you give them permissions). The web apps themselves still run on their own servers, controlled by the respective developers.

I'm skeptical of this model because:

1) If the code still runs on the developers' servers, there is no way to place technical restrictions on what they can do with your data. They can make a complete copy of whatever data you give them access to, they can store additional telemetry on the side, etc.

2) I think developers will resist standardized data formats because it makes it hard to develop new features. If you want to build any feature that requires storing additional data, it needs to be supported by the format. Perhaps the formats are extensible, but if multiple vendors do not agree on the extensions, then your data is no longer portable, defeating the purpose. I find it hard to imagine that any developer will voluntarily restrict themselves in this way without a huge incentive, and I don't see what that incentive is. (Certainly, not enough people care about data sovereignty for that to be an incentive.)

My opinion is that data sovereignty efforts must focus not just on storage, but on compute. The servers on which code actually runs should report to the user, not to the developer. Developers should build apps, which run on the user's servers. This way, developers are still free to create whatever data formats they want, but the user ultimately controls the storage. Other developers can attempt to develop "compatible" software which can read the same data, but this doesn't hold anyone back from adding new features to their own software.

But my own attempt to create such a platform didn't work out. So, you know, you shouldn't necessarily listen to me...


If I may, I’ve been bankrolling a project for about 7 years along these lines, and I remember being very impressed with Sandstorm. Our approach was a bit more “Wordpressy”:

See the video on qbix.com and qbix.com/platform

We just wanted to focus on developing a general-purpose “operating system” for social networking, so startups and any communities can build their social networks by just installing the system, getting plugins and throwing reusable components on pages (like chatrooms, collaborative documents, group rides, etc.)

That way we can get real user and community adoption and then gradually decentralize things like so:

https://qbix.com/blog/2018/08/28/vision-for-a-new-truly-dece...

To date we have about 5-6 million users download our apps, and around $1M in revenues that we can reinvest into this thing. I would love to speak more to you by email if it makes sense... please look at the above links and let me know your thoughts.

I really believe that the project that will really make this take off will have to work backwards from user adoption (by doing for social networks what Wordpress did for blogging) and then incrementally move towards the decentralized architecture where everyone owns only what they are entitled to. The key is to avoid painting yourself into a corner, so that you can decentralize your own software later without losing features. But until now we focused on actual killer use cases, like this:

https://youtu.be/Z7Q7IzVv1VU


Reading this comment, I'm saddened again that Sandstorm failed, and that you had to abandon it to work on something that, while technically interesting, doesn't advance end-user freedom as Sandstorm tried to.

And I'm ashamed that I didn't do more to get behind Sandstorm sooner. I suppose this is too little, too late, but I just signed up for the Oasis power-user plan. I suppose if a few thousand of us did that, then you and a handful of other people could work on Sandstorm full-time again.


Thank you for your kind words.

FWIW, while my current day job (Cloudflare Workers) is not immediately aiming to solve the same "political" problem as Sandstorm, it turns out we have to solve many similar technical problems, in that we are building a massively distributed platform for applications. For example, we'd like it if an application built on Cloudflare can store each user's data in the closest Cloudflare location to that user. That means applications need to be designed to treat each user's data as a separate unit that can independently migrate. If we succeed in getting applications to do that, then it becomes a much smaller technical step to say, OK, now let's store the data on the user's own machines.

It may turn out that this is a much better technical basis for what Sandstorm wanted to do, while making the "political" problem far less ocean-boiling. That's my hope, anyway.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: