This design seems like DRM for personal data.
Whoooah! No, it is not. DRM is fundamentally broken, so, that's not what we're aiming for. Indeed, if you trust your data with someone who is not worthy of your trust, then there is very little technology can do to fix that broken trust. Then, it becomes a really difficult social, psychological and legal problem, where technology can only play a very minor part.
So, what we're doing here is to ensure that you can store stuff on a web server you control. Then, the intelligence sits on your client, so the apps you use will be restricted by the security model of your device, and therefore should not send your data off without your consent.
But the server is pretty simple, and can and will be implemented in many different languages. People are working on a Go implementation too. The nice thing about JS is that much of the same logic is both on the server and the client side, and so it is actually the same code. That's pretty nice for consistency and cost of implementing it.
I'm myself not really impressed with the security of the Node.js landscape, but that's what we decided to do first.
But overall, the server side is intended to be pretty simple.
So basically an old school web server with a permissions protocol slapped on top of it.
You make the stuff that we do sounds really simple, but yeah. That's pretty much it.
But note that in spite of Tim having read-write capability in his first browser, it really never took off. And then we had this document web, when we also wanted a data web and an applications web. So, I guess we got the applications web, but just pretty primitive and constrained ones.
So, yeah, the server side is really very simple. It is like, the UNIX of the Web. But in terms of all the stuff that has been around for 25 years without taking off, there is really a lot to do...
These are very nice puff pieces claiming a lot of good intentions, but how does it work?
I can already create a calendar app -- or download one -- and control all my information by running it on my own web server. That is more hassle than I want.
Ah, but you are pinpointing it right there! It is more hassle than you want, why? If we could fix that problem, so that it wouldn't be more hassle to have it on your own webserver, then what would you do? And that's like iteration 1 of Solid, we're separating those apps from the data, so that you can have your data on your webserver, but you can use any calendar app you want. That way, companies will be competing to create the best apps, not to suck your data out of you. So, Solid is about making the infrastructure and the ecosystem to make sure that all those things aren't a hassle, they will be your preferred way to do it.
How does this new thing let me trust my data to code written by other people, that I probably never see, running on servers I don't control?
Right, good question, because that is the essence. But first of all, they are not running on a server you don't control, they are running on your client. So, Solid is doing a massive shift on where the intelligence will be. It will be mostly on the client. The server side will be pretty simple.
But the rest of the question is still interesting. It is a fairly long and intricate answer, but some of the short story here:
So, in the way it is working in browsers now, is the simple CORS restrictions. It is pretty broken, but it is what we have. So, we're making some hacks to identify web apps. And then, you can assign privileges to them. Since they are running on your device, the security of your browser applies to them.
Still, it doesn't mean that you can necessarily trust them, of course, but then, this is a social technology, so we could establish a Web of Trust around that. We're thinking a lot about that.
How will Berners-Lee's new company make enough money to pay employees and satisfy its venture-capital backers?
So, we don't know that yet. There are a few no-brainer business models of course, but we don't expect them to last long. But we have some really good people on the team, we'll figure it out.
Or perhaps even:
Or even good old fashioned file system corruption being made worse by something like this...
Life in the state of nature is solitary, poor, nasty, brutish, and short. - Thomas Hobbes, Leviathan