The Web of Alexandria(worrydream.com)
worrydream.com
The Web of Alexandria
http://worrydream.com/TheWebOfAlexandria/2.html
18 comments
A distributed filesystem like http://en.wikipedia.org/wiki/Tahoe-LAFS or http://ipfs.io/ would become incredibly useful if they got sufficient adoption.
I gotta say, IPFS looks nice. Thanks.
>We need operating systems that treat programs as adversarial rather than trusted
A few client platforms are moving in the direction of isolating workloads: Qubes, Genode, unikernels.
OS X and Windows 10 include hypervisors that could be used to isolate risky workloads, but they are not yet positioned for mainstream use. Recent Intel GPUs include support for 3D graphics virtualization.
With strong isolation, we can localize competing vendors, filesystems, SDNs, DRM, monetization and data retention approaches into isolated VMs on the same device. No need to force all workloads into one walled garden, or put stable workflows at risk from experimental software.
A few client platforms are moving in the direction of isolating workloads: Qubes, Genode, unikernels.
OS X and Windows 10 include hypervisors that could be used to isolate risky workloads, but they are not yet positioned for mainstream use. Recent Intel GPUs include support for 3D graphics virtualization.
With strong isolation, we can localize competing vendors, filesystems, SDNs, DRM, monetization and data retention approaches into isolated VMs on the same device. No need to force all workloads into one walled garden, or put stable workflows at risk from experimental software.
100GB is cheap to store, but it's not cheap to download, for you or for the distributor. (At least, if everyone does it.) With free software, load-on-demand makes way more sense - if you need a purely local install, buy a DVD set.
Well, BitTorrent pretty much solved this problem a decade ago. I imagine that you can download a base image, and then have a torrent sync in the background.
Most people have 100 GB free on their hard disk indefinitely these days, so why not?
Most people have 100 GB free on their hard disk indefinitely these days, so why not?
That used to be true, but I rather not waste 100gb of my SSD in case I wanted the source code to VIM.
Bret expresses uneasiness about accepting that the web and the world that uses it should have permanent memory. My perspective is one that falls more in line with efforts like the Internet Archive: save it all, wholesale.
He mentions technical solutions for enforcing ephemerality, but under the guise of preserving ephemerality. The problem with this is twofold:
Re preserving: The ephemerality guarantee was never there. I've been watching The Americans. (Side note: good show.) If early 1980s Henry or Paige wanted to spend all evening talking on the phone and keep a recorded copy of their conversations, they could have. Tape recorders existed. If something interesting was said, and they realized they wanted to keep it on record after the fact, they could have written it in their journals. The end of ephemerality began long ago, before either the writers of this comment or the linked article were born, and before our Paige and Henry were born into their fictional universe.
Re enforcing: This ephemerality guarantee can't exist. The analog hole is inescapable. If I understand correctly, Snapchat exists to allow expiry of content and even place preconditions on sharing, such as who it can be shared with when using the app's own sharing mechanism. This isn't enforcing a standard for ephemerality that has been lost. It's attempting to enforce a standard for ephemerality that never existed; it exploits the properties of digital transmission to synthesize something that doesn't and can't exist in the analog world. And failing. Because the digital world still has to interface with us through our analog one. So for all the effort that has gone into trying to make Snapchat's protections work, those efforts can be circumvented by something as simple as a 10 year old who can operate a camera or just possesses the ability to recount what he or she has seen or heard.
"Should the web remember, and should we use a medium that has permanent memory for so much of our business?" are the wrong questions, and trying to answer them is a distraction.
He mentions technical solutions for enforcing ephemerality, but under the guise of preserving ephemerality. The problem with this is twofold:
Re preserving: The ephemerality guarantee was never there. I've been watching The Americans. (Side note: good show.) If early 1980s Henry or Paige wanted to spend all evening talking on the phone and keep a recorded copy of their conversations, they could have. Tape recorders existed. If something interesting was said, and they realized they wanted to keep it on record after the fact, they could have written it in their journals. The end of ephemerality began long ago, before either the writers of this comment or the linked article were born, and before our Paige and Henry were born into their fictional universe.
Re enforcing: This ephemerality guarantee can't exist. The analog hole is inescapable. If I understand correctly, Snapchat exists to allow expiry of content and even place preconditions on sharing, such as who it can be shared with when using the app's own sharing mechanism. This isn't enforcing a standard for ephemerality that has been lost. It's attempting to enforce a standard for ephemerality that never existed; it exploits the properties of digital transmission to synthesize something that doesn't and can't exist in the analog world. And failing. Because the digital world still has to interface with us through our analog one. So for all the effort that has gone into trying to make Snapchat's protections work, those efforts can be circumvented by something as simple as a 10 year old who can operate a camera or just possesses the ability to recount what he or she has seen or heard.
"Should the web remember, and should we use a medium that has permanent memory for so much of our business?" are the wrong questions, and trying to answer them is a distraction.
> If early 1980s Henry or Paige wanted to spend all evening talking on the phone and keep a recorded copy of their conversations, they could have
The key word being wanted. Most forms of person-to-person expression were default ephemeral. And failing that (eg a written letter), generally required explicit copying. Contrast with an email - by the time you even read it, how many copies have been made and where do they reside?
I completely agree about "enforcement" being laughable, but there is room for parties voluntarily agreeing to not permanently record things. It can even be beneficial to a would-be recorder (eg legal discovery). Of course it can be quite beneficial to defect. But that calculus may even change as non-signed logs start to hold less weight (eg OTR's auto-repudiation).
However, none of that really applies for explicit publishing mediums like the web. The next generation of content-addressable systems will be ultimately based on persistent data structures, with garbage collection of older versions only being necessary as a storage optimization.
The key word being wanted. Most forms of person-to-person expression were default ephemeral. And failing that (eg a written letter), generally required explicit copying. Contrast with an email - by the time you even read it, how many copies have been made and where do they reside?
I completely agree about "enforcement" being laughable, but there is room for parties voluntarily agreeing to not permanently record things. It can even be beneficial to a would-be recorder (eg legal discovery). Of course it can be quite beneficial to defect. But that calculus may even change as non-signed logs start to hold less weight (eg OTR's auto-repudiation).
However, none of that really applies for explicit publishing mediums like the web. The next generation of content-addressable systems will be ultimately based on persistent data structures, with garbage collection of older versions only being necessary as a storage optimization.
> save it all, wholesale
Is this even feasible now? When so much of the web depends on backend logic? Or transient, proprietary technologies?
Is this even feasible now? When so much of the web depends on backend logic? Or transient, proprietary technologies?
It's why I think that Web Archive (http://archive.org/web/) is one of the most important projects.
We have a perfect solution for the kind of publishing model which Brett is referring to, which operates in sharing and replication rather than central repositories which are historically prone to snuffing out. Just use Bittorrent.
Bittorrent was embraced for pirating music and movies, but it has major benefits if adopted as a back-end protocol for distribution of content on mobile devices. Bandwidth isn't an issue as long as everything is done on WiFi when plugged in, then it's just like a laptop. You are obviously looking at poorer seed ratios than the desktop-centric distribution we are used to, but it will be relatively cheaper for content distributors to support some of the seeding with their data centers than to absorb the entire responsibility. Granted, this is way less efficient than just doing central distribution from a data center, but you gain in resilience, and since you aren't depending on this for the navigation and basic UI, the user experience isn't dependent on real time network transfers which still are very from being dependable. This model might not work for everyone, but I think it is the ideal model for sharing data sets, academic papers, DRM videos and music (though I'd prefer non-DRM), public digital arts projects, and rich interactive news stories (with a collection of video, models, etc). The Web was great when bandwidth was expensive, but today it is cheap and unevenly distributed, and it is time for a new model.
Apps can serve as trackers which curate links (bonus points if Android / iOS bake the protocol into the OS so that your device can keep track of torrents without that information being locked into your app (can probably get some efficiencies in managing sharing if those settings are centralized in the OS). I also wonder if seed ratios can be shared between different distributors and bought and sold from data centers. It seems only fair. It does go against net neutrality though, as I can imagine a situation where people are given less bandwidth because they don't have a seed ratio of 100 or something (i.e., 100 GB of upload for every 1 GB of download). Nonetheless, this may be a fairly healthy way of having people with better means subsidize the content to those less fortunate. You can even run all monetization of this scheme by having the distribution networks downloading it to themselves, jacking up the seed ratios that are possible.
Someone else here mentioned the need for an app ecosystem that treats apps as adversarial. I think that is exactly what we have seen with Android and iOS. Want to use my camera? You need permission. Granted, there are some social engineering issues with people not really considering the rights they give up when they tap on the Install button,even when it is spelled out in simple language (I can say this because I know I don't care as much as I should, so it's not coming from a lack of technical knowledge). I think it's a short matter of time before Android becomes a serious competitor to Windows. iOS is more tricky as it would cannibalize the Mac ecosystem which is heavily built up. Things that would signal things moving in that direction are for example, Adobe releasing a complete version of photoshop on one of these mobile first OS. Also, Microsoft releasing their tools on Android (unless they keep that as a competitive advantage of the windows os, which is likely).
In either case, I think the death of the Web is near on mobile. The benefits include more safety, more functionality, a collection of trusted brands (unfortunately, innovation WILL be hampered by this move. People will accept toy apps that don't take permissions, but otherwise people will have a really hard time competing in the Web ghetto)
Bittorrent was embraced for pirating music and movies, but it has major benefits if adopted as a back-end protocol for distribution of content on mobile devices. Bandwidth isn't an issue as long as everything is done on WiFi when plugged in, then it's just like a laptop. You are obviously looking at poorer seed ratios than the desktop-centric distribution we are used to, but it will be relatively cheaper for content distributors to support some of the seeding with their data centers than to absorb the entire responsibility. Granted, this is way less efficient than just doing central distribution from a data center, but you gain in resilience, and since you aren't depending on this for the navigation and basic UI, the user experience isn't dependent on real time network transfers which still are very from being dependable. This model might not work for everyone, but I think it is the ideal model for sharing data sets, academic papers, DRM videos and music (though I'd prefer non-DRM), public digital arts projects, and rich interactive news stories (with a collection of video, models, etc). The Web was great when bandwidth was expensive, but today it is cheap and unevenly distributed, and it is time for a new model.
Apps can serve as trackers which curate links (bonus points if Android / iOS bake the protocol into the OS so that your device can keep track of torrents without that information being locked into your app (can probably get some efficiencies in managing sharing if those settings are centralized in the OS). I also wonder if seed ratios can be shared between different distributors and bought and sold from data centers. It seems only fair. It does go against net neutrality though, as I can imagine a situation where people are given less bandwidth because they don't have a seed ratio of 100 or something (i.e., 100 GB of upload for every 1 GB of download). Nonetheless, this may be a fairly healthy way of having people with better means subsidize the content to those less fortunate. You can even run all monetization of this scheme by having the distribution networks downloading it to themselves, jacking up the seed ratios that are possible.
Someone else here mentioned the need for an app ecosystem that treats apps as adversarial. I think that is exactly what we have seen with Android and iOS. Want to use my camera? You need permission. Granted, there are some social engineering issues with people not really considering the rights they give up when they tap on the Install button,even when it is spelled out in simple language (I can say this because I know I don't care as much as I should, so it's not coming from a lack of technical knowledge). I think it's a short matter of time before Android becomes a serious competitor to Windows. iOS is more tricky as it would cannibalize the Mac ecosystem which is heavily built up. Things that would signal things moving in that direction are for example, Adobe releasing a complete version of photoshop on one of these mobile first OS. Also, Microsoft releasing their tools on Android (unless they keep that as a competitive advantage of the windows os, which is likely).
In either case, I think the death of the Web is near on mobile. The benefits include more safety, more functionality, a collection of trusted brands (unfortunately, innovation WILL be hampered by this move. People will accept toy apps that don't take permissions, but otherwise people will have a really hard time competing in the Web ghetto)
The other post I read this morning was about Bitcoin, where each party necessarily keeps the entire blockchain...
I'm starting to feel like Bret spends more time saying what's wrong with things than providing solutions. I'm a huge fan, but just saying, hoping to see him ship something representing his ideas.
I don't think that's entirely fair. It's true he hasn't shipped any finished products, but he's shown concrete examples that have inspired a lot of people to do better. One example that comes to mind - livecoding using C++ JIT [1]. The creator of this cited Brett's work as a prime inspiration.
[1] https://www.youtube.com/watch?v=imkVkRg-geI
[1] https://www.youtube.com/watch?v=imkVkRg-geI
Why?
Bret ships ideas. To reify them would provide artifacts for others to obsess over.
Bret ships memes.
You ship the implementation.
Bret ships ideas. To reify them would provide artifacts for others to obsess over.
Bret ships memes.
You ship the implementation.
So he's been a normal blogger lately, rather than the developer of inspiring software we've come to expect from him? Give the man a break. :)
Why doesn't every person with a computer have all the world's open source software on their machine? The entire Debian repository can fit 10 times over on a 1TB hard drive [1].
Why not leverage that tremendous body of free knowledge and work?
The answer I've come up with is that the state of software security is holding us back. Even though we have all this free knowledge, it's not worth it for us to just try new stuff. I remember as a kid I would download new stuff from BBSes and just try it. But no more.
I just stick with a small set of well worn programs that address my needs. Perhaps this is a habit from the Windows days, where installing a new piece of software could break ANY existing piece of installed software. But the risk is still non-zero on Linux distros.
We need operating systems that treat programs as adversarial rather than trusted, and then every computer could have every piece of software installed locally. If you wanted to try out 100 different audio editing programs, you'd be free to do so.
Or perhaps there would be no monetization model for that. Just a thought.
[1] https://www.debian.org/mirror/size