8 ms·
I hope we never stop trying to find a solution to what just _has_ to happen some day: everyone should have their own server. If I make an app, I can safely ass
by augustl 7y ago
I hope we never stop trying to find a solution to what just _has_ to happen some day: everyone should have their own server.
If I make an app, I can safely assume that the user has a bank account, an e-mail address, etc. What would happen to the app economy if we could also assume that the user had a server? Imagine all the apps that would be made possible if the app makers didn't have to pay for and scale a back-end service!
Sandstorm.io, https://solidproject.org https://solidproject.org by Tim Berners-Lee, many people have tried, hopefully someone will succeed.
- Carpetsmoker 7y agoWhy does that "have" to happen? This is a genuine question, because as a user I'm fairly happy with SaaS services, especially when they're built on open protocols or have a good export (meaning I can switch easily).
- diafygi 7y agoThe third party doctrine. Unfortunately, it's unlikely that we (at least in the US) will find the political will to change the law that says if you give your data to a third party, it is no longer protected by the fourth amendment and doesn't require a warrant to obtain. So self-hosting your own data seems to be the only way you can keep your data protected by the fourth amendment.
- Carpetsmoker 7y agoNot everyone feels all their data needs that kind of protection though. And it doesn't really apply to some services, for example, everything I do on GitHub is already public anyway.
- augustl 7y agoA good example would be things like a todolist app and other personal things. It would be nice to make an app like that without having to also scale an entire set of servers and just have the syncing etc be provided by the user of the app instead of by me. Something like that could even be integrated into iCloud if it becomes popular. Then your "user provided server" would probably only work with other Apple products, Apple style. But for many users that would probably be good enough. And you wouldn't be limited to having only one of these "user provided server thingies", either.
- rjeli 7y agoand urbit :)
- Karunamon 7y agoI was just about to mention them. Urbit is one of those technologies I sincerely hope takes off, they've got one of those "just-crazy-enough-to-work" ideas if the rough edges can be polished.
- cxr 7y agoKenton Varda did a really good job laying out the argument for this in a post that might as well be called The Sandstorm Manifesto. https://sandstorm.io/news/2014-07-21-open-source-web-apps-require-federated-hosting https://sandstorm.io/news/2014-07-21-open-source-web-apps-re...
- mr__y 7y agoI guess that for most apps a Raspberry 0 or something similiar would be sufficient and to make it easier on the consumer side it could be built-in into the wifi-router[0] to avoid the necessity of having additional device. On the other hand another approach would be to use more client-side processing[1] in the existing environment. This would not completely remove the need for the server on app maker side, but could possibly offer a significant reduction of the resources needed. The third approach could be to change the billing model only, where processing would be done on a (very small and short term) cloud instance run by the mobile operator and the customer being billed for usage of that. In other words have computation-as-a-service as a part of mobile operator service. This would also have quite complicated privacy implications. [0] And if the router-route would be taken, it would make things much cheaper since the routers CPU could be used. Even if additional cores would be required this is still much cheaper than having a separate server-device. Also much better energy-wise since for most of the time the server cores could be off/stand-by and a small process on router-cores would wake them up only if needed. [1]Given how diverse client-devices are it's not that easy to have client side processing on all platforms. I wonder if WASM will make client-side processing more common.
- olah_1 7y agoI'm partial to Freedombox https://www.freedombox.org/ https://www.freedombox.org/ My parents can understand something like a physical box that sits next to their router. They just need to start specializing rather than being a "jack of all trades, master of none." For example, being a best-in-class way to host a Matrix server. Become a best-in-class Google Photos alternative, etc.
- ocdtrekkie 7y agoI think it'd be really nice to offer Sandstorm in a pre-built box someday. I run Sandstorm on an Intel NUC which is a little overkill for the task, personally, but the form factor is pretty nice. I think it's hard to sell people on a cloud box that can't do everything people want to do on the cloud. One missing app can (and sometimes does) make or break someone's interest in a platform.
- olah_1 7y agoYep. And so many of the apps are useless if you're not a system admin. So in that sense, having too many highly specialized (or low quality) apps can also be a turn off because it just confuses people.
- eloff 7y agoYou still have to make the back-end service, no matter where it runs. That's the expensive part. The cost of servers is always a rounding error in the budget everywhere I've worked compared to the cost of human labor to program them.
- solidasparagus 7y agoI worked in that space for a while but I came to the conclusion that pretty much no one wants to run/manage their own servers. Outside of a small number of privacy-centric hackers, the benefit just isn't worth the hassle.
- noizejoy 7y agoThat argument held for many technologies in the past. e.g. to figure out your location, you had to be able to operate sextant. In the early days of the automobile you had to have considerable mechanical skills to keep one running. Cameras required special skills. And not very long ago, you needed quite a bit of skill to run a computer. Now almost everyone carries a computer in their pocket, which conveniently doubles as camera and sextant and more. A server is also a mashup of functionality. I can’t see any reason why it cannot be made as easy as a smartphone sometime not too long from now. And making things easy and inexpensive enough can also create a market, even if there didn’t appear to be one.
- smacktoward 7y ago> If I make an app, I can safely assume that the user has a bank account Sure, but that doesn't mean you assume that the user operates their own bank. They have some third party they trust to hold their money for them. There are risks to that, but in practice it turns out those risks are much less grave than the risks associated with everybody holding their life savings under their mattress. This is why I've always been skeptical of the "everyone should have their own server" vision: servers require administration, administration requires technical skills that most people will never have, and even lots of those that do have them aren't necessarily skilled enough to be able to keep them reliable and secure. For all those people, having some professionals at a third party deal with that stuff will yield better results than DIY will. There are risks here too, but it'll probably be easier to mitigate them via regulation than it would be to teach everyone in the world to speak Unix. (The one way out of this trap would be if we could come up with some kind of server that did not require administration -- that had guaranteed 100% uptime, that never required security updates, that scaled automatically to meet any level of demand, that didn't have physical parts that wear out over time, etc. It's telling that the closest thing we have to that today is less a server and more something like AWS, which... requires trusting a third party.)
- zenhack 7y agoThe key thing is the user has somewhere they can actually run your app; it doesn't necessarily have to be their own box, it could be one provided by a friend or a hosting provider. That said: > The one way out of this trap would be if we could come up with some kind of server that did not require administration To a large extent this is actually a goal of sandstorm. I'd contest some of your requirements though: /Nobody/ has 100% uptime, even AWS. And most individuals are not in a position where an outage is going to cost them millions. It might suck, but people trudge through worse problems with their PCs; no reason a personal server ought to be different. So I think the bar is a bit lower than you suggest; I think it's possible to get a server to the point where it can be "administered" by someone who's capable of "administering" a laptop. We're obviously not there yet; you still need to set up a Linux box before installing Sandstorm itself, and we don't really have a great Story wrt backups yet. But Sandstorm itself is already mostly fire-and-forget; it auto-updates itself, our security track record is rock solid, and I can't remember the last time I had to do anything that felt like sysadmin work for my Sandstorm box. There are a couple things I think still need to happen: 1. We need an automatic backups & recovery story. 2. We can't require the user to install Linux first; we'd need a "sandstorm distro" so folks can do the whole business together. The OS should be hardened by default and self-update with Sandstorm, as well as integrate with the admin panel for scheduling reboots. 3. Ideally, there'd be hardware you could buy that's just already running the sandstorm distro.
- oscargrouch 7y agoAs someone working on something that i think is somehow related to both Sandstorm and Solid(at least in some of the key goals), i've turned into a distinct path. The most reasonable thing to do, of course is something like Sandstorm did. You get the technological 'status quo' of the web and mix it into a self-sustained, autonomical node. I think that when you need to have this level of autonomy, the design meant for the web doesnt solve this very well. This is the reason why i think both Sandstorm and Solid didnt 'hit the nail' yet, because we need a couple more "iterations" to solve this in a more satisfying way, and it goes deep down into the architectural choices. Having said that i think Sandstorm, Solid, DAT and IPFS have the right mindset, and the sort of meditation that are pointing us to a future. The real danger here, is that the web on its own will get trapped by the mobile walled gardens of both Apple and Android were you dont have any choice of distribution or reach without saying yes to a digital overlord that can terminate your channel within the digital realm over any bogus reason presented. And unfortunatelly our legislators are still not prepared to deal with our current digital citizenship and to make the proper stand on our civil rights. Without a proper solution, we are heading to a dystopic digital feudalism, and this is one of the reasons why im also working hard to launch something that will at least try to make this dark looking future not so unavoidable. (And thats why i have a utter respect for projects like Sandstorm and Solid) I repeat; The web stands no change and will become a "channel" within a bigger internet ecosystem, and a symptom of this is the web being embedded as a app platform for mobile and in the near future desktop apps. The web has a great future as a application platform, but this free, utopian world where we have a more free and descentralized way to share information is losing a lot of ground, and if we dont keep some great values the web stand for in new tech incarnations, we stand no chance to keep all this.
- deleted 7y ago[deleted]
- pjkundert 7y agoThe bridge between the centralized world of DNS, CAs, server hosting, etc., and decentralized world is being developed: https://holo.host https://holo.host. Deploying a decentralized app that can go from Zero to Twitter scale overnight is the goal, and seems to be within grasp. Of course, Holo doesn’t solve the problem of governments or the mob quenching your liberty, but it’s a start. It’s a stepping stone to fully decentralized distributed applications where every user is also a host of a full node.