You know what, this is silly (except for the part about Obama's record on civil liberties and security).
First of all the problem, as it often is, comes from centralization on the internet. If the web was decentralized, as it was meant to be from the beginning, there wouldn't be such outrage. Remember all the outcry of privacy on facebook, no government involved? I do. Or how about companies like Path sucking up your phone records from your phone and sending it to their servers?
At the end of the day, it is we who choose to have an account with a large company running web software so they can "take care of" our email. Giant data centers delivering our movies to our doorstep instead of P2P. It wasn't always like this. People used to run desktop software on their desktop.
It will be like this again, but it will take a long time. My favorite example is how git and mercurial have eclipsed svn a long time ago, and github / bitbucket are way more popular than, say, sourceforge. Bitcoin has gotten a lot of attention over currencies that can be controlled by a central authority. Adobe Cirrus and WebRTC are growing. The same kind of revolution is going to happen in multi user communication platforms. Once that happens, and everything is encrypted end-to-end and there is off-the-record messaging, those using it will take back control.
We can already do almost everything in a decentralized manner except good social networking. Privacy "nuts" can run their email, etc. on a VPN and store encrypted backups in other places. To make it more mainstream, however, we will need friendlier clients. And social networking!
Finally, the web itself was built to be client-server, which kind of indirectly encouraged this sort of centralization. Clients were easy to install -- netscape's business model even involved giving it away for free -- but not many people ran servers. And so it led to this. The long and short of it is, we need more user-friendly opensource servers, standardized protocols, and encryption. Those who care will then run their own servers.
I'm sorry, but why do you think Google and AWS are the best we can do?
We have to rely on Google to "not be evil". A lot of businesses depend on traffic from google, and if it decides to cut them off, well too bad. Many governments including the US government constantly look into google to prevent a monopoly. You want a monopoly in search? And how about the direction of where your hosted software will go ... when Larry Page took the reins, he decided that Google+ should feature prominently in every product. I agree with him but others may not. And what about killing off Google reader just like that? Do you think people come to rely on these things and then the centralized company can just kill the product?
And as for building stuff "in the cloud", what happens when your AWS availability zone goes down? Lots of big internet sites go down. Centralization on the internet also got us facebook, and when facebook goes down or shuts off a site, "Connect with Facebook" doesn't work on that site anymore until they fix it.
(responding to your edit) As for the iPad, etc. ... yes, the original platforms are usually proprietary walled gardens, but eventually the tech gets commoditized (sometimes after a protracted software patent fight). Rather than expound on it here, you can read my complete thoughts on multiple app stores and reputations: http://magarshak.com/blog/?p=114
NOW THE DISCLAIMERS:
I will admit, that Google is also full of extremely bright people and does awesome stuff with all the money it makes. Self-driving cars, google glasses, and much more. But you are still relying on Google to maintain its data liberation and open technologies, and to some extent their commitment has lessened.
Also, Amazon's impressive commitment to low margins is a net win for all of us consumers (including the developers). At the scale that Google and Amazon build, a lot of amazing research is possible. That is the upside of centralization. And I am not saying that we should "abolish" centralized services. Especially the ones which are open and have great tools.
What I AM saying is that the open source foundations need to step up their game and produce SERVERS that are user friendly and easy to install, maintain and run. This new generation of servers should automatically link together. I really do believe that at the end of the day, history has shown that open PLATFORMS lead to the greatest good for humanity, as everyone can build apps on top of them without favoritism. For example Apple's iOS favors twitter and facebook sharing over any other companies, because they made a deal with them. There needs to be competition between the "centralized sector" and the "open source sector", which will lead to the server software becoming commoditized and more user friendly, just as browsers are today.
> I'm sorry, but why do you think Google and AWS are the best we can do?
Please don't set up a straw man. You seem to be claiming that I'm arguing in favor of complete centralization. I'm not.
Google and AWS both need competitors.
That also doesn't mean that we as a society haven't benefitted monumentally from Google and AWS existing.
Centralization has vast benefits. We should not discount those simply because it also makes a juicy target for evildoers. It's throwing the baby out with the bathwater to say "this is the fault of centralization".
Your approach works and benefits people even if we as an industry continue to primarily build centralized services (and we will, because it is tremendously more cost-effective). I encourage you to pursue it in parallel.
I think we're saying the same thing. As I mentioned, I am NOT saying centralization doesn't have benefits -- I even mentioned some major ones, including having enough money to do awesome R&D and move humanity forward. What I am saying is that open source foundations need to step up their game, and build servers that automatically talk to each other, are easy to install, maintain, and are user friendly. Kind of like the new WebRTC P2P client/servers.
I hear what you're saying, but I think it's a bit of a red herring. The real problem is the abuse, not the topology of the Net/Web.
That is, even if we all ran our own email servers, etc., the government could work with the ISPs to protocol-sniff or otherwise hook into our communications if it had the will. At the end of the day, data must be put on the wire (or in the air). Outlaw encryption above NSA-crackable standards (as they did for exported browsers/software) and away they go. This is not to mention wireless carriers which must be centralized to some extent. At the end of the day, it is not a very practical matter for many of these services to be decentralized, especially for those who are not tech savvy.
And, yes, we could try to evolve technologies which decentralize more of these services for the masses. And, we can hope that endpoint encryption wouldn't be outlawed (in fact, as we now all know, the NSA now claims the right to hold on to encrypted communications indefinitely as it attempts to crack them), but this is not unlike the cat-and-mouse between virus writers and antivirus companies. Stronger encryption would be cracked, data would traverse some centralized conduit, and the government would get the information.
The problem here is not the topology of the network, but the government's intent and its frank violation of our privacy, period. We are a nation of laws, and the government should be constrained, not by the limits of technology, but to the law itself and to both the letter and spirit of our Constitution.
First of all the problem, as it often is, comes from centralization on the internet.
Which is a matter of government policy. When the internet was invented, hackers and cypherpunks said it should be decentralized. Lobbyists and Congressmen said it would be subsidized as something along the lines of television: few senders, many receivers. And then ISPs even said: we'll take public subsidies for infrastructure and not even build the infrastructure.
The result is that America and Canada in specific have crappy net access, and the world at large has a centralized internet rather than a decentralized one. Why? Because nobody ever required that we commoners receive publicly-visible IP addresses and symmetric bandwidth with which to run our own servers.
First of all the problem, as it often is, comes from centralization on the internet. If the web was decentralized, as it was meant to be from the beginning, there wouldn't be such outrage. Remember all the outcry of privacy on facebook, no government involved? I do. Or how about companies like Path sucking up your phone records from your phone and sending it to their servers?
At the end of the day, it is we who choose to have an account with a large company running web software so they can "take care of" our email. Giant data centers delivering our movies to our doorstep instead of P2P. It wasn't always like this. People used to run desktop software on their desktop.
It will be like this again, but it will take a long time. My favorite example is how git and mercurial have eclipsed svn a long time ago, and github / bitbucket are way more popular than, say, sourceforge. Bitcoin has gotten a lot of attention over currencies that can be controlled by a central authority. Adobe Cirrus and WebRTC are growing. The same kind of revolution is going to happen in multi user communication platforms. Once that happens, and everything is encrypted end-to-end and there is off-the-record messaging, those using it will take back control.
We can already do almost everything in a decentralized manner except good social networking. Privacy "nuts" can run their email, etc. on a VPN and store encrypted backups in other places. To make it more mainstream, however, we will need friendlier clients. And social networking!
Finally, the web itself was built to be client-server, which kind of indirectly encouraged this sort of centralization. Clients were easy to install -- netscape's business model even involved giving it away for free -- but not many people ran servers. And so it led to this. The long and short of it is, we need more user-friendly opensource servers, standardized protocols, and encryption. Those who care will then run their own servers.