It wasn't supposed to be like this
Where did we go wrong?
There have been on going jokes about where is my jet pack, flying car, robot, space station vacation, and so on; for years. A lot of views of the future have come and gone and they rarely look like what we have today. Artist and dreamers views aside, there were views of the engineers who set the actual technological wheels in motion though that shouldn’t be that far off but are.
I was very early to the Internet, working with it every day in the late 80s. What we could do boiled down to the following:
- Move files
- Login to a remote system
- Chat
OK, so that sounds like a lot of today, but we could only do it on a screen with one color ASCII character set. If you were lucky you could have more than 80 characters across and 24 lines down. There was no “window” to overlay multiple connections nor was there graphics unless you were working on a high end workstation. Even then the interface was still text.
As the 90s started we saw where things were going. Our interaction with data was going to encompass multiple types of media (audio, images, video). The interfaces were going to be richer. Touch screens and audio prompting were already showing signs of real usefulness. We saw that oceans of data were coming online at a rapid pace and interacting with the physical world was starting to take real shape.
All of our systems were capable of talking to all our other systems. Everything was going to get an IP address and we had to make more of them. We would have digital assistants that managed the daily flow of information for us. If I wanted to access anything, I would log into my house and just do it. The promise of all that was awesome and one that I looked forward to.
But we have all those things.
Sort of. You can smart home your space like there is no tomorrow and in ways that we never dreamed of. We all carry multimedia devices in our pockets that are able to touch any of these devices as if we are standing next to them. Three digital assistants are fighting for our attention right now to win the corporate lottery. The problem is we don’t own or control any of it.
When these were first concepts it was thought that it would run on a PC in the house. Maybe a server in the basement. No one could kick you out of the systems or turn these things off because they were obsolete. If I wanted to run trash can monitor 2006 far too long it was my business not yours.
Now do you run any of these things? If you do can you run them without someone else’s server/service? I know that we always believed that Internet connections would be required, but I didn’t think my life support would be leased from the Cloud for a dozen low monthly prices, or worse the real estate of my eye balls and time.
We have been boxed into a Potemkin village of sorts. It looks a lot like that digital future that the early Internet pioneers believed would come. We have access to huge mountains of data at our finger tips. Almost every device can be remotely controlled and we can talk to anyone in the world. The reason I call it a Potemkin village is very simple. We can only do these things by the good graces of large corporations that want to make money from us doing these things. They run huge infrastructures to make it look simple to us.
I ran my own email and web server out of my basement for years. We controlled every aspect of each and could read our email through a decent web interface or over IMAP secured via TLS. Problem was I had to keep patches applied and sometimes didn’t have a huge window to apply them. We got smartphones and wanted calendar and other features that come for “free” from Gmail. In the end it was just too appealing to move our mail server to Gsuite enterprise and pay a monthly cost for Google to do all the hard work.
Pick a service online and there is an equivalent story that can be told. I could run an equivalent, but I couldn’t promise more than one 9 of up time, on time security patching, or the latest glitzy features without it being a full time job. I have a job and switching to run my own servers isn’t going to pay as well.
The Cloud, the cloud!
The cloud is an amazing piece of infrastructure. Multiple companies setup excess compute resources and sell them to anyone that wants them for cents on the dollar per minute, hour or month. I can setup an ephemeral service in minutes and scale it up in a few more minutes. Do what I need and then tear it down. It’s cost effective, backed by large teams in terms of up time and security and quicker to setup than I can blow the dust off a PC let alone buy one. So long as I don’t need long term online storage it is about as cheap as things get.
The problem is I don’t own anything really. There are agreements in place where the bits are mine for most cloud services (not all), but who else has access to them? In almost all cases the cloud providers provide me good security and privacy, but with millions of servers and services even a small amount of problems can impact a lot of people.
This blog is hosted on a $5/month cloud instance. I own the bits, but everything else is shared for the cost of getting an afternoon tea and snack. To own the whole stack I would have to setup a server and have enough bandwidth to handle all the requests. I can do both but I won’t any time soon. I only have 30 Mbps going out of my house. Someone downloading a few pages could get slow response and ruin the quality of the multiple video calls happening at once. Not to mention the server upgrades I would have to keep up on as I would now be exposing a foothold into my network. For $5/month it isn’t worth it.
The list goes on and on. Our security cameras are cloud based even though I could make raspberry pi ones that would be fully controlled here at the house. Our thermostat is a popular cloud based one. We could do it fully in house but accessing it from outside the house requires that secure remote access again. The list goes on and on.
The cloud services act as digital Sherpa, but we are mistaken in thinking that we are doing any of the climbing. They haul us up the mountain while we are asleep and let us believe the two steps a day is a huge accomplishments. It’s not. [Note: This is a Simpsons reference but I didn’t want to put up an image as fair use rights have eroded over time.]
What’s worse is that many of these service providers control the life of our devices. If my security camera service decides to turn off my cameras they are paper weights screwed into my house’s outer walls. In many cases the companies will keep them going for some time, but not always and not always for as long as you want. There are stories in the news all the time of companies pulling support for devices and making them worthless junk. In many cases if I wanted to hack the device to keep it running I might be in violation of laws like the DMCA. Do I even own the hardware in these cases?
Why?
Why have we gotten here rather than the future we thought was coming? There are many reasons. Probably the biggest is the technology has gotten to be unwieldy. Software layers on top of software layers of abstraction. It is rare that that gets cleaned up as the processors keep getting faster making the shambling pile of technology viable for another year and another layer of abstraction.
Don’t believe me? Let’s take 3 common tasks and check. First email, the interfaces have gotten fancier but the basic functionality is no different than the IMAP servers that I had in the 90s. The underlying format hasn’t really changed much since then either.
Second looking something up. Google has been around for 20 years and the search feature has been really good for most of those. We has directory services like Yahoo and DMOZ before that and they worked well. Wikipedia is run on software that has been stable almost as long. Both Google and Wikipedia can be used from simple devices and PCs from the 90s. It’s everything else they reference that you might have problems with.
Third, word processing. Has Word really added new features that people use everyday in the last 25 years? Are your documents any better written than they would have been 30 years ago with Wordperfect? Sure your documents look nicer in the more modern versions, but I doubt they look as nice as TeX/LaTeX did in the 80s.
There is no reason that we can’t run equivalent cloud services on cheap hardware. The Raspberry Pi community is trying to prove that every day and they are doing a good job of it. It will take a lot of open source development to clean out the technical debt, but it is all doable.
Another problem stemmed from this one. A lot of companies have made huge piles of money by running these complex services for you. Let’s look at Apple. They want you locked into their version of things so you buy their hardware to run their software that connects to their services. They aren’t going to let go and see revenue slip. Don’t believe me? Apple promised to open up Facetime years ago, but refused to as it sold more Apple products. Of course there are thousands of these examples. Facebook wants social media regulated right before it becomes decentralized. Amazon encouraged online sales tax collection after building a massive system to do it. These hurdles are how large companies keep their markets.
What can we do?
At this point none of us are going jump off the cloud, nor should we. It is a wonderful resource that is helping humanity. What we should be doing is taking ownership back. Start with your bits. Figure out how to store them in a way that you control. You can keep using the cloud solutions, but make sure that isn’t your only way of using your bits. With Digital Rights Management (DRM) you may only be able to own the bits you create, but make sure you do. Pictures and videos of the family? Having a copy in the cloud and at home is a good option.
Own your hardware. Make sure that when you have an option to buy hardware that you really control that you buy it over the other options. This sends a loud message to the manufacturers. Support alternative firmware, some of them are really good options and only help make things better.
File storage and archiving is the first big step in my mind. Being able to store your files safely and securely without the cloud is a big step forward. It requires some major shifts in how we think about doing these things, but it is worth doing.
I’ve been messing around with a way to do just that. There is a simple way of doing it that I am working on that is good, and a more robust one that I am also working on. As I get more done I will put details here and share the code and concepts. In the end this is a big part of what anticryptography is.