The Vergecast - An impossible journey into self-hosting

Episode Date: October 30, 2023

Today on the flagship podcast of network-attached storage: This is the fourth in our four-part series all about connectivity. This week we're talking about software: how software connects us, how we c...onnect to software, and how software connects to other software. Email us at vergecast@theverge.com or call us at 866-VERGE11, we love hearing from you. Learn more about your ad choices. Visit podcastchoices.com/adchoices

Transcript
Discussion (0)
Starting point is 00:00:00 Support for the show comes from Retool. Too many companies run critical operations on duct taped spreadsheets, Slack workflows, and whatever else they could cobble together. Not because they want to, but because building internal tools means weeks of waiting on someone else's backlog. That's where Retool comes in. Build custom internal tools just by describing what you need. Prompts something like,
Starting point is 00:00:22 Build Me a Revenue Dashboard on our Salesforce data. And Retool actually builds it on your company's data, in your cloud with enterprise security built in. Go to retool.com slash vergecast. We all need to retool how we build software. Welcome to the Vergecast, the flagship podcast of network attached storage. I'm your friend David Pierce, and this is the fourth in our four-part series all about connectivity. Over the last few weeks, we've dug into the ways we connect to content, to each other, and to audiences.
Starting point is 00:00:57 And this week, I want to talk about something a little different. I want to talk about software. How software connects us, how we connect to software, and how software connects to other software. And that story, at least for our purposes today, starts with the computer I bought a little while ago. I bought it on Amazon with essentially no research, but I bought it. It's called the B-Link Mini PC. It has 12th generation Intel chips, 16 gigs of RAM, 500 gigs of SSD storage to find a little computer. And it's just this little box of a thing about the size of like two of the boxes the iPhone comes in. It's pretty small. And I just,
Starting point is 00:01:31 hit it immediately off in the corner of my desk. I bought this thing because I wanted to test a theory. That theory is that maybe self-hosting is the future of technology. Over the last two decades, really, we've been on this race toward cloud software, in which all of the apps and platforms and data you use are stored not on your computer, but on a server somewhere in a Google or Amazon or Microsoft warehouse. There are a lot of good reasons for that shift. There are a lot of good things about cloud software. And there are also a lot of reasons to think cloud software is not going anywhere anytime soon. Here is Peter Van Hardenberg, who works at a research lab called Inken Switch, explaining the upsides, I think, pretty well. The idea of the cloud was that,
Starting point is 00:02:13 hey, it turns out that actually shipping software onto people's computers is a huge pain in the neck. It's out of date. You can't fix it. If it breaks, you have no idea what's happening. There's all these problems. And I think the biggest thing just from like a brass test, tax perspective. It was not a technical problem. It was like an onboarding problem. Cloud software gets users easier. We're going to come back to Peter in a minute, I promise. But cloud software, for all the things it makes easier and more useful, also has lots of downsides. It doesn't work offline, for one thing, because it's not really on your device at all. Also, if that software's developer goes away or pivots to something else or just decides not to deal with you anymore,
Starting point is 00:02:53 the software you rely on can just disappear. The cloud software, is convenient and great, but it's just fragile, and it is so fundamentally not yours. So like I said, I had this theory that self-hosting might be the answer. At least for important stuff, I figured maybe I should stop relying on cloud services and instead build a system that lets me access my own stuff from anywhere through tools that I control. So I bought this B-link and started setting stuff up. It went poorly.
Starting point is 00:03:22 The main thing I discovered is that self-hosting is hard. I'm not the world's most technically capable person, but I know my way around a computer, and still I could barely get things up and running. If you want to set up a Plex server so you can get it your movie collection from anywhere, that's pretty easy. But at least in my experience so far, there's essentially nothing else out there that is that easy. One great guide I found is from an author and entrepreneur named Derek Sivers, who created a really handy step-by-step system for registering a domain,
Starting point is 00:03:52 setting up your own cloud storage and routing everything from files to email to your calendar, all to that system. He calls this guy Tech Independence, which I really like. And it is really useful. You can get through it without knowing a ton going in. But it is so much work. And it requires a lot of technical sophistication just in the sense of you have to know what terminal is and how to open it and what to type in and just time and energy.
Starting point is 00:04:17 It's just a lot. I won't lie to you, I bailed about halfway through the process. I ran into a thing with the FTP server and just gave up. One tool I did manage to set up is called Image. It's a self-hosted alternative to Google Photos. I was thinking about it at the beginning of this process and realized that if all my cloud stuff were to disappear tomorrow, the photos I lost would be the worst part.
Starting point is 00:04:39 So I wanted to switch them over to something that wouldn't go away. And Image is actually a great tool. It has a nice mobile app. It has lots of features. It's a pretty passable Google Photos replacement. But by the time I downloaded Docker and was worrying about virtual machines and containers, it was eating all the memory on my computer, I was just back to feeling totally over my head. I did eventually get it working, but I can't imagine most people are going to want to do all of that work.
Starting point is 00:05:05 Image was created by this guy named Alex Tran, and I kept wondering how he felt about the setup process. So I called him up and asked him. He told me that he started working on Image in the first place because his wife wanted a tool like Google Photos, but didn't want to pay for Google Photos, which as far as I'm concerned is like an extremely universal opinion on the internet. So he set out to build something that was self-hosted and easy, and he found nothing. So when I first started Image,
Starting point is 00:05:31 I used Image as the opportunity for me to learn about, you know, how to build nice software, how to build good software. So I structured it in a way of using Docker. Using Docker is actually coming from the idea from the community on the self-hosted subrediting. that everything should be running from Docker because of the ease of development and maintenance. At the time, I didn't have a lot of experience with Docker, so it's nice. It's perfect for me to learn how to build a Docker image, how to put that into a deployable way.
Starting point is 00:06:04 So I put everything into Docker Compose. And at first, there were a bunch of settings that you have to do before running the Docker Compose Upcom command to bring up the whole application. And over time, that has been simplified, and now we basically move all of the, anything that you can configure through the command, through the environment variable. Now you can do it directly inside image. So it's cut down that initial configuration to the point now that the only thing that you need to change when you're setting up a new image server is the location where you want
Starting point is 00:06:41 to sort a file. And then you just do do Docco Compose up. it would run. Yeah, I found the install package on your website even, which was surprisingly simple. I was impressed with how quickly I got up and running. Yeah, it has gone through a lot of improvement. And for sure, this is coming from the team that has experience with a lot of deployment. So I'm really thankful for them to help me learn. Yeah, that's awesome. But do you think just the fact that it requires Docker kind of immediately rules out most people. Like, I don't think I'm going to convince my wife to, like, even know what Docker is
Starting point is 00:07:19 in order to set up a photo server, right? Is that just kind of the cost of doing software this way? Like, is there a world in which all of this can be made simpler and easier over time and start to feel like, you know, you can install and set up a server just, like, installing and setting up another app? Yeah, there are a lot of requests for that. But from my point of view, when you are doing something, especially for self-hosting, right, and now when it comes to your really important data, like photo, the person who managed the server
Starting point is 00:07:55 should have some technical knowledge about managing the server. I think it is something that a self-hosting person should learn is to how to use Docker, because now when you go into the awesome self-hosted GitHub repository, most of the application you see can be run from Docker because it's just made the development easier, more mainstream, and also the deployment easier and more mainstream. For example, you can deploy it on Debian, Ubuntu, or Fedora, the same way, without worry about which package should be,
Starting point is 00:08:38 compatible with my distro or with this version. Everything is just work from the containerization standpoint. What's your sense of kind of the state of the self-hosting movement in general? Now that you're in it now, you've been talking to people. I feel like there's been this little crowd of people who really believe in self-hosting, and they're mostly very technical, and they understand how to make it work, and they know all of the different sort of underlying systems, and they spend a lot of time in terminal.
Starting point is 00:09:07 But I don't feel like the self-hosting world has ever quite gotten out of that. But part of me thinks it might be starting to happen. Being able to kind of have your stuff on your device but access it from anywhere is starting to be a slightly more mainstream thing. What are you seeing? Do you think self-hosting is about to hit the big time? The recent sentiment is that a lot more people are starting to concern more about their privacy with all the story about the third party. or the services that you use can access your data. So more and more people are starting to be noticing that.
Starting point is 00:09:44 And I think the more people are starting noticing that, then they will start to find a way to get back that control of the data. And it would be a good drive to get people to look into self-hosting more. But of course, this is a very technical feel, right? you would need to have some IT knowledge, some computer knowledge, as well as networking, etc. So that's why it's not that easy for other people to get into, but someone to really be interested in this. So I still feel like there's maybe a long way to go in order to get more and more people to get into self-hosting. But with the trend of, you know, high paying CS degree, high-paying,
Starting point is 00:10:33 CS job, so more people get into computer science. So it's exposed them more to these things. Yeah, it's going to be interesting to see if the trend is that more people gain these skills, or if that these tools and systems become simpler. And it'll probably be a little of both, right? Like, do you think there is a path for, you know, the people who just don't have the interest or expertise to care about Docker to maybe in a few years be able to make use of a tool like this? It seems like we're kind of one really great user interface invention away from this stuff being easier. Do you think there's a way to get there? Yeah, we're always looking for the way to make it simpler.
Starting point is 00:11:14 But as up right now, I think with the limitation of the tool that we have and the tool that we have access to, in order to serve to fulfill the purpose of high performance, easy to maintain, right now I don't see a tool better than Docker, unless we have some invention down the road in this space that compete with Docker and to make things even more streamlined and easier, that would be really cool thing to have. But as up right now, I don't see the alternative. If you do know anything, please let me know.
Starting point is 00:11:49 By the time I'd finish talking to Alex, I'd sort of given up on the idea that self-hosting can be a mainstream solution for people who want more ownership and control of their stuff. Seriously, just the fact that Docker, an app that's all about containerized application development might become a mainstream thing that people know how to use, just seems wrong to me. I just don't think that's going to happen. I don't think it's necessarily impossible to make self-hosted systems that are user-friendly and simple.
Starting point is 00:12:16 I think Plex is actually a really good example of how to do it right, but there's just not much else out there that qualifies right now. But as I was asking around, trying to figure out what might work if self-hosting doesn't, I heard about this concept that a few people mentioned to me. It's called Local First Software. And when we come back from a quick break, we're going to talk about why Local First Software might just be the best of both worlds. We'll be right back.
Starting point is 00:12:45 Support for this show comes from Shopify. Starting something new isn't just hard. It can be really scary, too. So much work goes into this thing that you're not entirely sure will even work. But here's a better thought. What if it did all work? What if your instincts were actually right all along? Shopify wants to help you get there.
Starting point is 00:13:05 They're the commerce platform behind millions of businesses worldwide and nearly 10% of all e-commerce in the U.S., from established brands like Allbirds and Heinz, to companies just getting started. Their design tools make it simple to create the exact online presence you're envisioning with hundreds of ready-to-use templates available. And with built-in marketing tools, you can launch full email and social campaigns in just a few clicks.
Starting point is 00:13:29 So you can connect with customers wherever they are. It's time to turn those what-ifs into with Shopify today. You can sign up for your $1 per month trial today at Shopify.com slash vergecast. You can go to shopify.com slash vergecast. That's Shopify.com slash vergecast. All right, we're back. Okay, local first software. Let's go back 40 years or so to the early days of the computer era.
Starting point is 00:14:03 Computers were huge in boxes and beige and made by a bunch of companies that, mostly don't exist anymore. Back then, cloud services weren't a thing. Nobody was running all their software on servers anywhere because none of that existed. People acquired software by like going to a store and buying a box that had a disc of some kind in it that you plugged into your computer to install a program. That all sounds sort of quaint now. Like can you imagine getting in the car and driving to Target every time you wanted to get a new app on your phone? Hard pass. It's all much better now. But that approach did have one really nice side effect. Your software was yours. It was installed on your computer locally. If the company that made your game went out
Starting point is 00:14:44 of business, you might not get updates, but your game would still run fine on your computer. If the developer of your productivity app made some horrible UI change you hate, no problem. Just don't buy the next version. That's how software worked for a long, long time. One way to think about it is that our computers used to be the home for our software, and now they're just the way that we access software that lives somewhere else. That difference feels. small, but it actually totally changes the way we think about what our devices actually do. Which brings us back to Peter from before. Remember the cloud services guy from Inkin Switch? He is a big believer and promoter of the idea of Local First Software, which he thinks can
Starting point is 00:15:22 combine the best of all of the last four decades of software. Basically, in a local first world, your apps live on your device. Just like they did 40 years ago, they are yours, your software belongs to you. And you can access them offline or without worrying that they'll still be around tomorrow. But you can also connect that software to the cloud and get all of the collaboration and multi-device sync and in general the convenience benefits of having it in the cloud. This sounds like the best of both worlds, right? This is how it should all work, I think. So I called it Peter to ask him how it works, why he's such a big believer in the idea, and why software didn't turn out that way in the first place. He started by telling me a story about a music app that I certainly
Starting point is 00:16:04 had not thought about in a long time, and I bet you haven't either. It's called Ardeo. Ardeo was a great piece of software, but the offline mode for the Ardio app was like a whole other program from the main app. It had different features. It behaved in different ways. It had different bugs. And I just remember this feeling of like, why was the song I just listened to and the playlist I was just looking at? Where did they go when I went into offline mode? Because I had them here.
Starting point is 00:16:32 And so in a sense, what was happening is that this app was deleting my data. Right. And like there's a more sophisticated, like I'm a developer. These are my friends who built this app. I've worked on this stuff. I know the real answer is more complicated, which is that like, you know, the kind of normal way of building apps in this era is that you have a server, which is where the software really lives. And the thing that you hold on your in your hand or the thing that you have on your computer in front of you, that's not really the program. That's just like a mask in front of the program.
Starting point is 00:17:00 And it talks to the program on your behalf. And it presents like a pretend version of the program that's what you use. And I had this feeling of like, especially though, if you have an offline mode, then you need to have the program because you can't talk to the program when there's no internet. Right. But it's crazy because everybody's building like this sophisticated program. They're running it in the cloud. And then on the mobile app in the device for offline mode, they run smaller, worse versions of it that don't actually work the same way. And I was just like, how about this?
Starting point is 00:17:28 How about we write the program? We run it on our computers. And then we talk to the cloud to get the data. And then we have the data in our computers, whether they're on. our pockets or on our laptops or whatever because like when you go in an airplane or in a taxi or take muni and your computer just turns into a paperweight that sucks and not only that but like I was a huge fan of RDO I know a lot of people who loved RDO you can't use it anymore right you can't use it anymore because you never had it I can still run Winnamp I can go and download Winnamp
Starting point is 00:17:58 and I can run Wynamp today I can find all those sweet skins from the 1990s I can use Winnamp But RDO is gone forever. And as I got deeper into this stuff, the more I started to think about that, and the more I realized that, like, not only is this just an inconvenience for me, it's a disappointment, right? Like RIP, Google Reader or whatever your favorite cloud software that's gone. But like, we're in a dark age of software. And I mean that not in like the sense that the software is bad.
Starting point is 00:18:26 What I mean is that every piece of software that runs today that's built the way we build software, everything we built on Heroku, where we used to, you know, to work, all that stuff is going to disappear irrevocably soon. And everything that we've built and everything that we've done in this era, all of our collective communal work will be lost. The thing you're describing, though, where it sort of matches the best of those two things, this idea of local first software, how did we not get to that sooner? That seems like anyone sort of looking at this for a long time should have thought, what if I had the app on my device? Like, Like, Ardeo is such an interesting example, right?
Starting point is 00:19:03 Like, the people at Ardeo, did they just not think someday this will all be gone? Wouldn't it be nice? Like, this is one of the things I go back and forth with all this software is, I understand all the reasons it's easier to build Cloud First software and that it's more, you make more money doing it. That all makes sense. But part of me wonders, like, is the reason just that people don't care about the flip side? I don't think that's it.
Starting point is 00:19:23 I think there are a few elements here, but a lot of it comes, there's two things. There's a technical challenge and there's a narrative dimension. Okay. The narrative dimension is that, you know, everybody wants to build the next big startup and make a billion dollars. Venture capitalists are telling everybody that's how to build software. Everybody thinks that they have to build for Google scale. They're going to need Cassandra. They're going to have a billion users.
Starting point is 00:19:50 They're going to be, you know, it's the thing's the rocket ship, you know, just hop on. And like, when you approach building software with this mindset, then you reach for the tools that other people who have done this task have used. And so a big part of it as well is that, like, you know, there's like the term is path dependence, right? Like, we started making cloud software and we're like, oh, this is great. And then we just kept piling more and more energy onto that, trying to solve the problems of it. And there was very little investment on this other axis. You know, there was like the offline first movement, which I think, you know, is a closely related precursor. But like, the narrative has been like, well, why do you want that? The cloud solves all our
Starting point is 00:20:31 problems, right? Like, internet is everywhere. You've got Wi-Fi at home. You've got Wi-Fi. You make a hotspot with your phone. Everyone's got internet all the time. What's the big deal? Just wait. It'll be there. And so, first, that's not true. I mean, there is internet more and more places. But the other thing is this kind of like the consequences of the cloud took a long time to become clear. Right? When we started working on Heroku, you know, and back in the day, there wasn't killed by Google.com. We didn't have a history of apps that had come and gone. And now we were lost because we hadn't had time to go through that sort of generational cycle. So I think a lot of the problems have, you know, as so often is the case that emerged over time, right? If you look at the
Starting point is 00:21:10 oil era, nobody was like, hey, this awesome energy source might turn out to have some consequences someday. People like, this is amazing. I can go see my aunts and I don't have to like feed a horse to get there. That's very fair. And it does seem like, you know, you mentioned the narrative side and the technological side. And it does seem like with sort of the, I don't know, manifesto of local first software, You did try to get at both of those. Because I think one of the questions I came into this with was, like, to what extent is the kind of heady case for data ownership and longevity and the idea of, like, having a space on the internet that's mine?
Starting point is 00:21:48 How far does that really get you? And I feel like you do make some of that case. And I'm curious how broadly effective you think that case can be. But then there is also, like, at some point, you just have to build better products. And I feel like one thing I liked about the way you guys approached it is you also make the case that this is a way to make better products? Yeah, I think these kinds of philosophical perspectives will motivate a certain audience, but I think that when you make the right thing, the easy thing, people will do it. It's as simple as that. If it's cheaper and easier to build
Starting point is 00:22:18 software local first, then people will do it. And so what we do is we just focus on that problem, which is, you know, we care about some of these things, and we know there are people who care about some of these things, and that's great. And there are people with privacy concerns, like activists and so on. But like, I think when you look at those narrow niche markets, those audiences, they're great people with real problems. And it's great to be able to help people who have those problems. But like, we all want software that works. We all hate when the thing doesn't go, when the keystrokes are too slow when you hit submit and you get a spinner. And if we can just make it easier to build software in a way where that just doesn't happen or happens
Starting point is 00:22:57 less than I think everybody will be happy. So just make the right thing, the easy thing. You were saying, oh, earlier, like, is it harder to build software this way? It's impossible to build software the way we build software. It costs a fortune to build software the way we build software. You need to learn Kubernetes. There's literally like 200 three-letter acronym services that constitute Amazon Web Services. And then on top of that, you have to learn go multi-cloud and learn how to do it on Google and Microsoft as well. It's impossible to build software today, the way we build software. It's like you want to go to the grocery store and you've got to use all the technology to build an aircraft carrier to get there. What we need is bicycles, right?
Starting point is 00:23:41 But all we're building is aircraft carriers. And this is like the Jonathan Edwards line, right? We were promised bicycles for the mine, but we got aircraft carriers instead. It's so complicated to build anything in the cloud. And then on top of that, once you do, you figure out your GraphQL and you're, you know, whether you use Postgres or Mongo and like what front end framework and node or go on the back end and do you need to use OTH Zero? Do you need to use this?
Starting point is 00:24:06 Like all these cloud services, you put it all together. You get the damn thing running. And now you've got to pay every month to keep the thing online. And when anything falls over, you get paged in the middle of the night, woken up. It's impossible to build software. And if you do, you're going to regret it because it's going to cost you a fortune and wake you up. Yeah. And most of the pieces of that equation, you have absolutely no control over.
Starting point is 00:24:26 Like, I'm reminded of this every time AWS goes down. And it's like, oh, the internet dies whenever AWS has an issue. Like fundamentally, we rely on Amazon to keep its data centers up to, like, live our lives. And that's bonkers. Yeah. And also hilarious is just that, like, we've so totally broken the internet as this, like, mesh network that literally, if you and I were in the same room recording this call, all of our data would probably be bouncing off of U.S. East 1 in Ashburn, Virginia. and back to each other's laptops just so that we could collaborate.
Starting point is 00:25:00 It's wild. I think there's a bunch of other interesting problems. I mean, like, there's interesting challenges around, like, you know, the networking stuff, right? It's called a browser, not a keeper. All this app that I'm looking at right now as we're talking, when I close and open the tab, it's not going to be saved. I can't come back to this work. And the browser really assumes that you're just kind of grazing as you use your computer. But it's become the main platform for software.
Starting point is 00:25:26 And so then there's Electron, which is like a wrapper around a browser with a bunch of bells and whistles. But like all this stuff feels kind of unsatisfying. I think, you know, it's tough when like the incentives of the organization that builds the most important piece of software on your computer are to sell you ads. Like the platform we all live every day in is run by an ad company. And, you know, lots of great people at Google, they care about these problems. But like, there's just an incentive structure here that's not favorable for. solving these problems. Yeah. And so there's some of that dimension. But I think in terms of like value and priority, I think one thing that we are really interested in at Inc and Switch is
Starting point is 00:26:07 what we call malleable software after Philip Chernowski's PhD. And this is this idea that, like we live in this weird world where like computers again are meant to be this like very powerful, compositional, informational environment. But increasingly like all of the software we use are these like closed boxes that are given to you by somebody else and you can't do anything with, you know? And so I like to think of the ideal computing environment as being like a wood shop or a kitchen. Like in my kitchen, I can make Indian food or Japanese food. I can go and like reheat some leftovers. And like I have not too many kitchen gadgets, but like you can go a long way with a chef's knife and a cutting board and like, you know, a stand mixer. Yeah. You know, it's a measuring spoons. Like you can do
Starting point is 00:26:53 a lot with like a few good elements. But like the software world is very much like, you know, oh, this note taking that, you can't open the notes from that, you know, taking that. And so I think a lot about like once we have local first software, for us, this is really just the first step, right? If the software is local first and you have the software, then just like if you bring shelving home from IKEA, you know, you can decide whether or not you want to put all the shelves in or if you want to set it up on its side or upright. If you want to cut the legs off the chairs because you're short, you know, you want to paint it a different color to make. You know, you want to paint it to different color to match your space, we're really interested in this problem of like,
Starting point is 00:27:26 once we have the software, can we start to actually use it? Can we make it our own? As we see the local first movement start to build steam, we see so many people getting involved. Our vision is starting to look forward to like the next frontier, which is actually empowering users to not have to care about these things, but to be able to care about these things. right and in your home if you have a challenge you might go to the hardware store and buy the things and fix it for yourself or you might hire a handyman or maybe you live in an apartment and you call your super sure right but whatever that relationship you have to that space is it's something that you can have agency and make choices about and we think that all computing environments should have those properties and we want to start figuring out how to bring that next to the broader world and that's kind of where we think about where this goes after we start to see local first software take off This is all kind of heady, I know. But the app that I was thinking about that helped me understand the idea is this note-taking app called Obsidian. You might have used it.
Starting point is 00:28:26 It's pretty popular. It's a great app. Big fan. Obsidian is above all, just an app you download to your computer that reads and writes text files. If you boil it all the way down, that's what it is. The company offers a service for syncing your files, but that's a separate thing. And if Obsidian goes out of business, you can always sync through Google Drive or Dropbox or lots of other things. and Obsidian is built on a plug-in system,
Starting point is 00:28:47 so the main app is really basic, but you can add all kinds of functionality just by downloading a bit of code or even writing some yourself. If Obsidian ever goes away, you'll still have the app. If a plug-in ever disappears, you'll still have the version that you installed.
Starting point is 00:29:00 And if for some reason way down the road the app ever stops working entirely, you'll still have your folder of text files because that's all it is anyway, and you can just take them somewhere else. Obsidian, the company, is building new tools for sharing and publishing, and lots of other stuff, because, again, the cloud is a good thing.
Starting point is 00:29:17 There are lots of upsides, but you don't have to use any of them. And if obsidian goes away, you'll still have obsidian. That is local first software right there. I love it. All right, we have to take one more break, and then we have one more big idea about software to talk about. We'll be right back. Support for the show comes from Grammarly. You don't need reminding that the world moves fast.
Starting point is 00:29:40 But work today requires clear communication, and when every message counts, sounding rushed or generic, can be getting lost in the shop. Rammaly gives you one place to think, write, and finish your work where you already write, while giving you access to agents that help you sound natural and engaging. No matter what kind of writing you're doing, Gramerly helps you get ideas done faster and move from draft to done with less friction. You can use Gramerly's AI chat to brainstorm ideas, outline a solid draft, then refine it with context-aware suggestions that fit what you're working on.
Starting point is 00:30:15 See why 90% of professionals say Grammarly has saved them time writing and editing their work. In a world of generic AI, you don't have to sound like everyone else. With Grammarly, you never will. Download Grammarly for free at Grammarly.com. That's Grammarly.com. All right, we're back. As I was working on this episode and trying to figure out what it means to take back some control of our software and our devices, I was also reading a new book called The Internet Con by Corey Doctoro.
Starting point is 00:30:53 If you've never heard of Corey, he's an activist and author and blogger, and he's been thinking about the way that the internet should work for a really long time. And this book is basically a step-by-step guide for how to take down the tech giants. He argues, as he often does, that the internet is run by a few huge companies. That's a problem, and we should stop it. Most of that is a conversation for another day. And I don't agree with all of Corey's thoughts on the subject, but it's a really good book. It's really interesting and worth reading. The thing that jumped out at me most about it was Corey's specific idea for how to improve our tech situation. He doesn't argue for breaking up the tech giants or reinventing capitalism altogether, though I suspect he'd be cool with both of those things. He actually makes the case that interoperability, different apps and platforms being compatible with one another, is pretty close to a one-stop fix for everything. Ever since I read the book, I haven't been able to stop thinking about that idea, that maybe instead of,
Starting point is 00:31:48 going back to having all my data only on my device or only using software that works offline, the solution is just to make it so easy to move between services that a few of them going away wouldn't make a difference. I guess like if the whole internet goes down, you're still in trouble, but we're in big trouble anyway if the internet goes down. Anyway, I wanted to understand why Corey thought interop was the answer, like the answer. So I called him up to figure it out. The biggest picture thing you talk about is interoperability and the idea that what we should do is by hook or by crook, open all these platforms to each other and to others. And then I think if I'm not misunderstanding this, web standards are the fastest way to get there,
Starting point is 00:32:29 right? Like I feel like I've spent the last year or so talking to people and betting on the idea that like the open web can be the solution to a lot of our platform problems. If only we allowed it to be, you're making a face. Tell me what you think. So I would say it's not quite web standards are how we get there because first of all, web standards are mandatory. So we've all versions of embrace and extend. So I would say that there has to be a two-pronged approach. One is rules about what you must do. So we might say to Facebook, you have to open up a gateway. And that might be through legislation, but it might be through a settlement, right? Like Facebook and Twitter and all these other companies, they're just incapable of coloring within the lines.
Starting point is 00:33:06 They're just like pathological cheaters. And so they're all already under multiple FTC consent decrees and European Commission consent decrees and whatever. And they're all violating them. are all eventually going to be dragged into a situation where they're going to seek a settlement. And so we might as a settlement say, oh, you have to stand up these gateways. But like in theory, the EU's legislation about interoperability between messaging apps, that's the kind of thing you're talking about. Yeah. And the Digital Markets Act, it's not just messaging apps.
Starting point is 00:33:34 It's a whole bunch of different platforms. They're just starting with messaging, which we can talk about this later, I think, is a mistake. They should be starting with social media messaging if they screw it up is going to, like, expose dissidents and other people to leaks in their messaging. And it's like the next Jamal Khashoggi who's murdered the way Jamal Khashoggi was by someone exploiting a defect in the instant messaging tools that he uses to lure him to his death is going to discredit this whole project. It's a huge mistake. But it's not just those mandates, right? Like, because that's going to roll out over 10 years. In parallel, there's like Facebook violating its consent decree. Google just violating its consent
Starting point is 00:34:11 to create Twitter violating all of these other rules, you know. And they're going to, in parallel with this, someone might just say like, okay, well, if you want to not be fined 10x your market cap and live to fight another day, you're going to have to consent to standing up this interoperable gateway. Twitter is going to have to offer an activity pub gateway or something, right? And the problem with that is it's very hard to administer that remedy. And we're getting into some wonky sort of public administration stuff here. But like, say we say to Facebook, you have to stand up a gateway to activity pub so people can leave, go to a Mastodon server, but still be connected to the people that matter to them and the
Starting point is 00:34:50 customers and the communities and all the things that they are sort of glued to Facebook by. But then Facebook shuts down that gateway and says, we shut it down because we thought there was another Cambridge Analytica that was stealing a billion users data, which is a thing that actual future Cambridge Analyticas are going to try to do, right? They're going to try to exploit this APO. We just saw, you know, 23 and me get scraped for however many million Ashkenazi's genetic records and just like as an Ashkenazi person, a very creepy sentence to say, you know. And so we're going to want them to like have an intrusion detection system in a firewall and
Starting point is 00:35:23 security engineers. But how do you distinguish the pretext from the reality, right? When Facebook says, oh, we're shutting this down once a week because we're worried about vans and active attacks, when everybody who understands Facebook's infrastructure is to a first approximation of Facebook employee and you're like deposing these people and spending like years arguing about whether this was a pretext or not. In the meantime, the new market entrance, these Macedon servers or whatever it is that have stood up to like welcome in Facebook refugees that were evacuating from Facebook, those users are learning that they can't rely on them. The financiers,
Starting point is 00:36:00 the banks or the individuals who funded them are learning that you shouldn't fund these projects. And the people who started them are learning that it's not a fruitful thing to do with their time. It's a waste of their time. So you also need to re-legalize the stuff that Facebook did to MySpace. So when Facebook started, everybody was a MySpace user. And they didn't just say, hey, come hang out on Facebook. We have a better user interface. Eventually your friends might show up.
Starting point is 00:36:26 And in the meantime, you could admire our great color choices. They said, like, here's a bot. Give it your login. Give it your password. It'll go to MySpace several times a day, impersonate you, log in, scrape your inbox, put it in your Facebook inbox, It let you autopilot your responses back out to Facebook. So you, to MySpace.
Starting point is 00:36:42 So you can eat your cake and have it too. So what if we re-legalize that conduct? Because, you know, when people try to do that to Facebook, like Power Ventures did or OG app or other tools that have popped up to do this to Facebook, Facebook just sues them into like radioactive rubble, right? Computer fraud and abuse act, DMC, 1201, tortious interference with contract, patent, trademark, copyright, all these other kind of this thicket of what we call IP, but which is like the right to control the conduct of your customers, critics, and competitors.
Starting point is 00:37:11 And so, you know, if we re-legalize that conduct, then those new market entrance who Facebook locks out of their API could fall back to scraping bots, reverse engineering, and other tools. Now, that's guerrilla warfare with Facebook. In general, I think Facebook will lose that over the long run because for Facebook to successfully defend this, they need to make zero mistakes and to successfully attack their defenses, you need to find one mistake. And so that will privilege them. But I also think Facebook would all other things being equal prefer a managed solution where the API is reliable to a situation where they cannot use the law to stop these adversarial interoperators because guerrilla warfare represents an
Starting point is 00:37:55 unquantifiable risk to Facebook. And shareholders do not like surprises. And we saw Facebook lose a quarter of a trillion dollars after their first report of 2022 to their shareholders when they revealed that they, it wasn't even contraction, it was less growth than they'd anticipated among U.S. users. And the people who bore the brunt of that stock crash were the managers who made the decisions that led to the reduction in users, right? Because they're the ones whose portfolios are primarily stuffed with Facebook stock, right, more than anyone else.
Starting point is 00:38:29 They're the least diverse shareholders, right? And so if we say to Facebook, to the decision makers at Facebook, if you break your API, you will have to contend with guerrilla warfare. And that guerrilla warfare will produce the surprises that will make you personally significantly poorer. Then I think we align their incentives. But of course, no one ever lost money by betting on the hubris of tech executives. So if they do go ahead and do this, then we have a fallback. That's what I mean by like an administrable remedy, right? an actual plan that looks at what Facebook is doing that harms people, what stops people from
Starting point is 00:39:06 getting out of harm's way, what will moderate those harms, and what we'll do when Facebook takes a countermeasure to recover its supernormal profits at the expense of everyday users and how we will counter that. One, like, much lower stakes thing you're making me think about is, like, I'm an obsessive user of note-taking apps, and I switch between them constantly. Are you an Evernote casualty? Oh, yes. And this is kind of, this is actually where I was going, is one of the first.
Starting point is 00:39:31 things you do if you build a note-taking app is you build an Evernote importer because there are a lot of people who have hated Evernote because it's been very bad for 10 years who are stuck there because they have thousands of notes and they want to leave and Evernote makes you export in this like dot E-N-E-X file that is proprietary but also everyone else has figured out how to manage it and so I can now with two clicks pull all of my Evernote notes into some other app which has made it possible to leave Evernote for tons and tons of people who otherwise would not have been allowed out. And what it is in social is like I'm stuck in Evernote for the rest of my life because it is so hard to switch that I will put up with whatever nonsense there is just to be here. And like the note taking is such a smaller version of it, but is like that's how it should work. That's a great example because one of the reasons that that's true is that Evernote started late or started early. If Evernote it started later when they were when they were better developed, more reliable and more widely understood strategies for blocking that reverse engineering. you know, if they were encrypting those databases, then bypassing the encryption would be unlawful. If you could only access those databases through an app that blocked scraping and autopiloting, then they could use terms of service violations to stop you from running something locally that just iterated through every note you had and then spit it out, right?
Starting point is 00:40:51 So like, it shows you that while mandates are important, right, we could, if Evernote were large enough and enough of a hazard, you could imagine a future in which Evernote was legally. required to offer you an export tool. But you don't actually need it some of the time. Some of the time rival firms can just work this out. And that's what Apple did with Microsoft Office. You know, I tell this during the book, I was a freelance CIO running, you know, networks for all these small and medium companies. And a typical company would have 20 people with Windows PCs and a designer with a Mac. And if you tried to send that designer a Word file, an Excel file, an office file and they tried to open into my Mac office, it would either not work or then after they made changes and saved it, it would be corrupt or, you know, some variation. All you had to do
Starting point is 00:41:40 is like wave the Mac office floppy around and files would spontaneously corrupt. And I just started like, first I put PCs on those designers desks that they used as dedicated office workstations. And then when that became unwieldy, I put big graphics cards in their PCs and got them Quark and Adobe for their PC and threw away their Mac. And Apple figured out this was happening. And so they just got engineers to reverse engineer office. And so we get iWorkSuite, pages, numbers, and keynote that reads and writes the Microsoft Office files. And then the really interesting thing is what Microsoft did, because after a few rounds of aggressively changing those file formats and incurring their own engineering expenses, because then they have to update all their own Windows software, they sued for peace. And they standardized the office file formats, which is why we have the X at the end of the XLSX and PPPTX.
Starting point is 00:42:31 and Doc X, which stands for XML. And this is why you can now paste-style text between Word, Google Docs, Webforms. You know, Medium has a parser for it, right? Like if you're composing on Medium, I bet your CMS does. I know the Verge has got its own CMS that you guys built from scratch, but you probably just imported a like a reference library for parsing out those things so you can compose in Word or docs and it just works. Yep.
Starting point is 00:42:57 And so like at a certain point, when you have to use engineers, to block interoperability instead of lawyers, then you just give up. Because lawyers solve the problem forever, right? Lawyers teach every financier, every entrepreneur, and every user. Don't trust interoperable solutions. Engineers, they have to fight and fight and fight, and eventually they lose in these wars of attrition. And so once you take away the lawyers, the company sue for peace.
Starting point is 00:43:25 At least as far as I can tell, like Mastodon and sort of what the whole activity Pub world represents is like the closest extant thing to the kind of interoperability that you're talking about. Yeah. And Activity Pub came out of the W3C at the same time as all this bad standardization was happening. And the reason that this good standard emerged without being interfered with, I think, is that the big tech companies didn't believe it would matter enough to sabotage it. It wasn't like they couldn't.
Starting point is 00:43:56 It's just that they chose not to. And they could have submarineed all kinds of proprietary. advantages and so on into it. And they just didn't. And as a result, we got this thing that just kind of snuck in under the radar because no one thought it was important. It's a bit like what happened with the web itself, right, where like nobody took the web seriously enough. When the web came along, the fight was between AOL and CompuServe. And just like nobody took it seriously enough so Tim Bernersley was able to make a thing that Microsoft didn't extinguish the way they were going after rival online services. And then by the time the web took off,
Starting point is 00:44:30 enough, they tried afterwards, right? It became a success and Microsoft tried all these variations. You know, if you remember, there was a time when MSN meant something new every six months, because they would relaunch MSN as some proprietary thing that was like the web, but not the web. It was Blackbird at one time. All this stuff were they were just trying to lure people into locking into a proprietary technology stack to extinguish the web. And like it just snuck in under the radar. Nobody was paying attention to it. And then all of a sudden it was there. And it was like too big to kill. And, you know, I think that activity pub kind of fits that, that window. It just snuck in when no one was looking. What do you make of the fact that like Adam Masseri is
Starting point is 00:45:11 constantly saying that threads, which is not currently federated very much a closed platform, is going to be part of it? Like, is that a, is that a company sea change? Or is that just a guy saying the right thing at the right moment? Well, I think that even people of goodwill can talk themselves into doing bad things. Like, let's stipulate that Messary is completely sincere, right? But in two years, there's 400 million daily users of threads and they just rationalize that opening those users up to Federation would expose them to risks that Facebook is currently able to defend them from, that they have the, you know, moderation tools and the
Starting point is 00:45:54 other things that are needed to prevent disinformation and so on. And that federating will expose new risks to those users. And it's just unfair to those users. Which to some extent is not untrue. Sure. Particularly if you have a bunch of users who become accustomed to certain practices that don't take account of the risks, but also the benefits of federation. And so you just drop them into the deep end. And so the way that you protect your future weak self is for your present day strong self to do something that is irrevocable in that service.
Starting point is 00:46:27 So like we call these Ulysses Pacts, right? Ulysses in the tail, he's a hacker. He doesn't want to fill his ears with wax when they sail through the sea of the sirens to prevent their calls from luring him to his death in the sea. He wants to hear them. So in this moment of strength before he's hearing the sirens call, he has a sailors lash him to the mast and says, whatever I do, don't untie me so that I can live through this. I can experience the benefits of my strength even in a moment of weakness.
Starting point is 00:46:52 And we've all done versions of this, right? You throw away the Oreos the night you go on a diet, right? that's a form of Ulysses pact. Open source licenses are a form of Ulysses packed because they're all irrevocable, right? Every time an IP lawyer who isn't familiar with open source first encounters an open or a free license like the GPL or even the BSD license or whatever, they go like, oh, this is, this is dumb. Everyone must have missed this. This should have a way for you to revoke the license later if you change your mind. And that is not a bug.
Starting point is 00:47:21 It's a feature because when your investors come to you and say, well, this is. was cute, but if you want the 150 people you convinced to quit their jobs and put their kids' college funds on the line to come work for you, to have a job next week, you're going to make this open source proprietary next week. And you can just say, like, you're the boss, but I can't. Like, I just can't. And so for Facebook to say, well, someday this will be open, trust us, given the company's track record is bananas, right? Because Facebook in 2006, their pitch to MySpace users was like, you love your friends, but did you know that the evil, crapulent Australian billionaire who owns Myspace, Rupert Murdoch spies on you with every
Starting point is 00:48:03 hour that God sends? Facebook is the service that will never spy on you. That was their pitch in 2006, right? We're the surveillance-free social media platform, and we always will be. And in 2008, they pulled their users and said, we're going to start spying on you. Is this okay with you? And they said, no. And they did it anyway, right?
Starting point is 00:48:21 So like, as George Bush taught us, right, fool me once, shame on me, fool me twice, we don't get fooled again. Right. And, and you know what would be a more compelling thing than promising to federate? Federating, right? And if they're not federated, then all it is is a latent capability. And like, computers are touring complete universal von Neumann machines. So every capability is latent in every service, right? Like, unless there's some means by which users can discipline executives who take back. add choices, then we should expect those executives to fall prey to the same folly and rationalization that all of us are capable of. Yeah.
Starting point is 00:49:00 And I think it sounds like you're of the mind of there are sort of two approaches. One is to essentially mandate that threads federates, like put into law that if you have to have activity pub. The other one is blow open enough holes or make it legal for people to blow open holes in such a way that someone else will do it for them. And there's nothing that threads can do about it. I think this is more like two-part epoxy, right? Adversarial interoperability, the right to reverse engineer and stuff.
Starting point is 00:49:28 At EFF, we call this Comcom competitive compatibility because adversarial interoperability is so hard to say. Comcom is very good. Yeah, Comcom is great. So Comcom is great, but it is unstable, right? Because you are finding a blind spot in the intrusion detection system or the anti-automation stuff, and you're exploiting it and you're making it work. You're playing a cat and mouse game with thousands of engineers designed to stop you. Yeah, I mean, they have to make no mistakes. You have to find one mistake. You can stockpile 20 vulnerabilities and roll them out one after another as they plug one and then the other. There are lots of ways that this will be advantageous, but it is unstable. You know, in the days when Mintz started, you know, they were scraping like 6,000 different bank websites. And if the bank took active countermeasures to block them that they couldn't overcome, what they would do is if you were a mint user, they would just pop up a message that says, like, sorry Bank of America customer, we are no longer
Starting point is 00:50:21 capable of scraping this account. Here is the phone number of the lawyer who sent us the C&D for Bank of America. Call them up and tell them your Bank of America customer who wants to access your own financial data. Right. So there are lots of ways around this. And mandates, on the other hand, you know, formal formal requirements, as we said, they're hard to enforce or administer, but they are very strong, right, if firms actually hew to a standard, the standard works. You know, you never buy a USB cigarette lighter adapter in a fishbow at a fishbowl at a gas station only to find that it doesn't work in your cigarette light or receptacle in your car. Standards really work, but they're brittle.
Starting point is 00:50:57 So you have something that is very flexible but also doesn't hold very well. And then you have something that is very strong but is easy to break. And you combine the two and you get two-part epoxy, something that is resilient but strong. And that's why I think we need to combine both of these approaches. And that's why we need to understand that what tech has done through its regulatory capture is on the one hand, get broad latitude to abuse us, and on the other hand, create broad prohibitions on self-help. And we need to reverse that circumstance so that we have broad prohibitions on abuse of conduct by tech firms, whether they're large or small, and we have
Starting point is 00:51:34 broad latitude as users to take measures to help ourselves. After all this time and effort and Amazon purchases and Docker downloads, I've now built a couple of things that stick. I have a Plex server, which rules, and I now use it all the time. I also now have all my notes in a collection of text files, and I'll never use another note-taking app that doesn't read and write to that folder of text files stored on my computer. The two apps I'm switching between right now, if you're curious, are Noteplan and Obsidian. Obsidian, like we were talking about, is super powerful, but NotePlan is just really pretty, so I just keep coming back to it. I also still have image running, but Docker takes up too much memory on my computer most of the time, so I mostly don't
Starting point is 00:52:14 use it. I did rig up a way to use my B-Link mini PC as a universal file backup for all my stuff, but I also still have everything in Google Drive, too, because cloud services are great. It's much easier to get at my stuff in Google Drive. I just like having options. And I like that my stuff works now, even when AWS or Google Cloud doesn't, or when I'm on the train and don't have any Wi-Fi at all. I'm not really doing all this for big moral reasons, or because I'm afraid the cloud is going to get sentient and rule us all, or because I think we should destroy the tech giants. I just like my stuff being my stuff.
Starting point is 00:52:46 And I don't think that's too much to ask. All right, that's it for the Vergecast today. Thanks so much to everyone who is on the show. And thank you, as always, for listening. This is the last episode in our connectivity series. The whole series has been super fun. If you missed the earlier episodes, go check them out. And we have another fun mini series coming up starting next week.
Starting point is 00:53:03 So stay tuned. This show is produced by Andrew Marino and Liam James. The Vergecast is a Verge production and part of the Vox Media podcast network. We'll be back with episodes on Wednesday and Friday, talking about antitrust trials and video games and lots of other stuff. See you then. Rock and roll.

There aren't comments yet for this episode. Click on any sentence in the transcript to leave a comment.