localfirst.fm
All episodes
December 31, 2024

Special episode: Apps vs Files with Gordon Brander, Peter van Hardenberg & Jess Martin.

Special episode: Apps vs Files with Gordon Brander, Peter van Hardenberg & Jess Martin.
Show notes

Transcript

0:00:00 Introduction
0:00:00 Welcome back to the local first FM podcast.
0:00:02 We're currently on holiday break, but we've prepared a special episode for you,
0:00:06 which was recorded as a Twitter space conversation between Gordon Brander,
0:00:10 Peter Van Hardenberg, and Jess Martin.
0:00:13 This conversation explores the ideas and trade offs of apps versus files.
0:00:17 I hope you like it.
0:00:19 All right.
0:00:19 I guess we're going to get started here pretty soon.
0:00:21 So my thinking on this would feel something like we've all been at a
0:00:25 conference and we've heard an interesting talk, maybe enlightening talk even,
0:00:29 where the person shared like five minutes of thoughts, but not even like
0:00:33 a full, they didn't fully elaborate on everything they wanted to say.
0:00:37 And the two of us said, Hey, you want to go sit down at a conference
0:00:39 table and talk through this?
0:00:40 Cause I feel like there's some interesting stuff here.
0:00:42 And I have thoughts on it, and I would like to work them out, out loud.
0:00:46 So that's kind of my framing.
0:00:48 I love that.
0:00:49 We are all, I think, building in one way or another, around this problem as well.
0:00:54 Is that right, Jess?
0:00:55 Yeah, more or less.
0:00:56 Yeah.
0:00:56 Do you want to maybe, like, recap what the motivating question was?
0:01:01 Absolutely.
0:01:01 the reason this is called File, Symbol, App, File over App is, Kepano from
0:01:07 Obsidian posted a little, I guess a Twitter post that also he has, I
0:01:12 guess there is a link on his website to a fuller article about this.
0:01:16 And it's a philosophy that, Kepano holds.
0:01:18 And then the tool called Obsidian, also embodies this philosophy.
0:01:23 And, I'm not gonna go into the whole thing now.
0:01:26 I'm gonna kind of assume that most people are, can like, go and read the, the post,
0:01:31 and kind of get his thoughts, more fully.
0:01:34 But I, the basic idea is that the tools that we use should store that data.
0:01:42 In a way that we own the data, and he calls that files, and
0:01:47 that we, and that the data lives beyond the application itself.
0:01:51 So once we've, like, even if the app goes away, we've still got the file,
0:01:57 and that file gives us some ability to, continue interacting with that
0:02:02 data that we've spent such a hard time, or had such a long time creating.
0:02:07 That's the, that was the impetus.
0:02:09 And I think the reason that I wanted to chat about it and reached out to
0:02:14 Gordon and Peter reached out as well, is because I mostly agree with what
0:02:18 Kepano is saying, and yet there are some subtleties at which I, I think
0:02:22 that probably we would, if Kepano was here, that we would, we would part ways.
0:02:28 So I'm curious to kind of work out where the subtleties are and
0:02:32 then talk about, you know, some real systems that embody this.
0:02:35 Files vs. Apps
0:02:35 Well, let me, let me make the opposing case because I think it's important
0:02:38 to have both perspectives here, which is files got their asses kicked.
0:02:43 Right?
0:02:43 Like, you want to email people your Google Docs?
0:02:47 That, that's the case here?
0:02:48 Oh, I get it.
0:02:49 I get it.
0:02:49 Yeah.
0:02:49 You don't want to be able to share a link to a thing.
0:02:52 You want to have to send it and then choose a file name for it and get it back.
0:02:56 And then, something, something, merging, something, question mark?
0:03:00 Make a small change, change the name of the file, send it back,
0:03:03 final Underscore, final, March
0:03:05 7th, 24th, final, final, as submitted, dot, doc, dot, you
0:03:11 know, word, x, dot, whatever.
0:03:13 so I mean, files got beat because they're worse.
0:03:15 What people want is places, not things.
0:03:17 And so, okay, now I'm going to, I'm going to undermine my argument,
0:03:20 but like the desirable properties of a Google doc are that a Google
0:03:24 doc is a place, not a thing, right?
0:03:26 So when you join a Google doc, you are given a key.
0:03:30 To a place where you can go and collaborate.
0:03:34 Now, everything that's wrong with Google docs also falls out of this, I think.
0:03:38 But like, what's great about a file is also what's bad about a file.
0:03:41 What's great about a file is that it's a thing that you have, you can't take it
0:03:44 away from somebody else who has it, but also they can't take it away from you.
0:03:48 Right.
0:03:48 They have a copy.
0:03:49 They can edit it privately.
0:03:50 Right.
0:03:51 They can share it themselves.
0:03:52 They can decide what they want to do with it.
0:03:54 But like, there are lots of power dynamics as well in terms of
0:03:57 like, places versus things, right.
0:04:00 Which is like, if you've given someone a thing, it's hard to get it back.
0:04:03 But if you let someone into a place, you retain perimeter control.
0:04:06 You can choose who's let in, in the future, if they're allowed back.
0:04:10 Right.
0:04:11 And while there's sort of a fiction about like actually retaining control over
0:04:14 data, like You know, I can screenshot it.
0:04:16 I can copy paste it.
0:04:17 I can exfiltrate any number of ways.
0:04:20 You know, that's like an extra step I have to take versus if I email
0:04:23 you a PDF, you've just got it.
0:04:25 So I think like, that's the, that's the beauty of the place is that it
0:04:28 gives people, it gives the person who creates the data a lot more agency
0:04:32 over its destiny, and it gives you a natural collaboration point,
0:04:38 you know, kind of by definition.
0:04:39 Yeah.
0:04:40 And I think, I know that Gordon was.
0:04:43 Wanting to talk about collaboration as well as like a natural place where files
0:04:46 kind of fall down But I think one of the things that you're mentioning here One
0:04:50 of the things that I think is included in the file over app that isn't mentioned
0:04:54 explicitly is the file system, right?
0:04:57 It's the it's the container for the file of like where does that file live?
0:05:02 What is the place at which it actually lives because it does have a place.
0:05:05 It's just not a Internet accessible place via URL.
0:05:08 and I think that is, that's actually part of Kipano's argument is that
0:05:13 the place where the file lives is a better place than the cloud.
0:05:17 He's saying the file lives on a local file system on a device that you
0:05:21 control, like a hard drive that is yours.
0:05:24 And that makes it.
0:05:25 in some place, in some sense is a special place or a better
0:05:28 place than some of the cloud.
0:05:30 And that's what you were mentioning as well, Peter, that like the cloud places
0:05:34 enable, certain things, file system shaped spaces, places enable certain things.
0:05:40 Like, how can we get the best of both of those worlds?
0:05:42 Oh, well, that's a different thing, right?
0:05:44 You're claiming like, also, this is a little bit of a category error, right?
0:05:47 Like you're arguing, Like Apple over refrigerator.
0:05:51 Oh, between file and app?
0:05:52 You're talking about Kepano or the argument that I just made?
0:05:54 Well, just the, the sort of framing of the discussion, right?
0:05:57 Like, there are plenty of apps that work on files.
0:06:00 Right?
0:06:00 It's, it's not The problem here is, Like, apps do not imply the death of files.
0:06:06 But there is a culture and a community set of values and certain
0:06:10 sets of expectations, right?
0:06:12 Like, are we talking about mobile apps or web apps?
0:06:15 You know, there, this is a, like a, I think there's a, there's a lot of
0:06:18 articulation points potentially here.
0:06:20 For sure.
0:06:21 And I think the only point that I was making to try and simplify
0:06:23 that, that first point is just where does the thing live is whether the,
0:06:28 whether the file or the app, is the file living on my local device?
0:06:33 Is it living in the cloud?
0:06:35 how do I get to it?
0:06:36 Do I have to have a network connection to get to it?
0:06:37 Can I get to it, locally without a network connection?
0:06:40 I think those are all wrapped into Kipano's thinking about
0:06:44 the philosophy of File Over App.
0:06:45 Yeah, I guess, Kipano and, and all of us are kind of, you know, thinking through
0:06:51 Interoperability
0:06:51 I think he's making a pretty strong rhetorical point.
0:06:54 I guess I, I prefer to look at this in terms of design goals and
0:06:58 kind of the qualities of different materials that you can work with
0:07:01 rather than what's good or what's bad.
0:07:03 Though I am personally, I'm very drawn to capturing my notes in files myself.
0:07:09 You know, I've got 10 years worth of notes, you know, in a folder that syncs,
0:07:14 and I've used plenty of SaaS tools over the years, some of which have gone out
0:07:19 of business and I've lost those thoughts.
0:07:21 So when I think about, you know, why files, why, why is
0:07:24 Kapano interested in files?
0:07:26 you know, there's some areas that I resonate with and I, you know,
0:07:29 I think files, to your point, they live in a place that you control.
0:07:35 the file system is a sort of user on substrate.
0:07:39 It's old.
0:07:41 It was designed in, you know, the sixties and seventies and didn't
0:07:44 anticipate a lot of the things that we ended up doing with networks.
0:07:48 It has a lot of problems around security and conflicts and many
0:07:53 other things that we can get into.
0:07:54 But I guess the one thing it does do.
0:07:57 That the web tends not to do and many apps tend not to do is it does
0:08:01 leave you in control of that content.
0:08:03 And that's kind of interesting because it means often you can
0:08:06 open that data in multiple apps.
0:08:10 no one can
0:08:11 tell you no.
0:08:13 That the opening in multiple apps was the other side of this thing that
0:08:16 I think is like, not actually true.
0:08:21 Except in a few very narrow cases, which are the ones that
0:08:24 programmers live in, but that much of the rest of the world does not.
0:08:28 Well, you know, much of the rest of the world doesn't live on desktop
0:08:32 machines with file systems anymore.
0:08:34 I think, again, it's just, it's not about it is or it isn't.
0:08:37 It's about, there are different jobs that people are solving.
0:08:40 I think, you know, there are actually a number of things
0:08:42 that open up in multiple apps.
0:08:44 They tend to have strong power laws.
0:08:46 Like there's only a handful that end up.
0:08:49 working out in this way, but I think that it's better when you have this
0:08:52 sort of user owned substrate where those use cases can emerge, permissionlessly.
0:08:58 Well, the thing is,
0:08:59 like, I'm reflecting on like the file format wars of the nineties, right.
0:09:03 And like the EU legislation to try and like force Microsoft to open,
0:09:08 you know, the office suites file formats to other participants.
0:09:11 And, you know, I don't think that was terribly successful, but, you
0:09:14 know, that, that this is, um, just because you have the file doesn't mean
0:09:18 that you really own it in a sense.
0:09:20 Like there are certain properties of it that are quite desirable.
0:09:23 And I think this longevity is, is really remarkable and a really
0:09:26 excellent point to bring up, but yeah, there's a tension here between like,
0:09:31 open file does not imply openness.
0:09:33 Sure, though that can emerge retroactively.
0:09:36 Like we saw that happen with PSD and with, you know, the doc format.
0:09:40 Like PDFs were proprietary, right?
0:09:42 Like they I was going to say PDFs
0:09:43 the same way.
0:09:44 So the thing that lets that emerge is that, that substrate
0:09:48 that belongs to the user.
0:09:48 If it was up to the app, if it was up to Photoshop, they would say, no,
0:09:52 a competitor can't open up our file.
0:09:54 but they don't get to make that choice.
0:09:55 I can open it up and, you know, Affinity Designer or in.
0:09:59 some sort of other app.
0:10:00 And we saw the same thing happen around image formats, around
0:10:03 video formats, around 3d formats.
0:10:06 They tend to be things that are pretty low level and have like very broad
0:10:09 expressive power so that there's a wide range of jobs to be done.
0:10:13 That people want to, to do with them.
0:10:16 I also think there's like a Lindy effect around these things.
0:10:18 They consolidate around a few, like text, plain text has a lot of problems,
0:10:22 but I fully expect it's going to be here in, you know, 10 years, 20 years,
0:10:26 maybe even a hundred years, define it in whatever way you like, but I,
0:10:30 I suspect whatever way you define it, it's going to last longer than, you
0:10:34 know, the, the Notion API, like notion.
0:10:37 com.
0:10:37 Oh, certainly.
0:10:37 Yeah, yeah.
0:10:39 Yeah, I guess I'm just pointing out plain text.
0:10:40 It's, I often think of it as a fixed point, but.
0:10:43 You know, if you look back at, the history of plain text, right, we go
0:10:46 from like ASCII encoding and having to, you know, I don't know if you
0:10:50 were ever opened up like, fileid.
0:10:53 diz from like Eastern European countries, which had different ASCII encodings than
0:10:57 your, you know, Windows computer did, back in the like late eighties, early
0:11:00 nineties, but you get these sort of,
0:11:02 Yeah, plain text across Windows and Mac had, different file endings.
0:11:07 That's right, yeah.
0:11:08 You would hand a text file back and forth, and it would, you
0:11:10 wouldn't have line breaks where you expected them to be, or you'd have
0:11:13 additional line break characters.
0:11:14 Control M symbols, yeah.
0:11:16 no, that's, I thought, there was, there was a couple areas, like,
0:11:20 I think, Gordon made the point that Kapano's making a really
0:11:23 interesting rhetorical argument here.
0:11:25 I love that he picks a fight here, and that he has a very, it's
0:11:28 a really nice mantra, but he's definitely cheating a little bit.
0:11:31 He cheats files as if they don't have an encoding, like, as if, like,
0:11:35 plain text is some given thing, but plain text is an encoding.
0:11:40 that we had to, like, as you come to adopt it widely enough that there are a
0:11:44 large set of readers for that file format.
0:11:47 And I think that when you get beyond, I think whether it's
0:11:51 programmer usage or not, it's when you get beyond the document format.
0:11:54 That's when things start to get, this argument is more
0:11:58 difficult to, not as clear.
0:12:01 because, you know, I, like canvases, for example, are everywhere now.
0:12:06 And there's no single file format for exporting the contents of a canvas,
0:12:12 whether it's Muse export or tldraw has the tldr file, all of these things, they're
0:12:17 not compatible with one another, it feels like the early days of text files,
0:12:20 like BDH was just mentioning, where you've got a bunch of different formats.
0:12:25 And the weird part about saying file over app is that you still
0:12:28 need a reader for the file.
0:12:30 Like you have to have some code somewhere that reads that file.
0:12:34 And so it saying files are better than apps or files or
0:12:37 should be preferred over apps.
0:12:39 It's like, well, a file without an app is literally useless.
0:12:42 Like you have to have an app to, manipulate that file in some way.
0:12:46 Can you define what you mean?
0:12:48 Like the word app is, is carrying a lot of water here.
0:12:50 Can you, can you unpack that word a bit?
0:12:53 Sure.
0:12:54 I think when I simplify file over app, I think what he's saying is data over logic.
0:12:58 Okay.
0:12:59 In other words, the, the data or data over behavior, the data stored at rest in some
0:13:05 way that you can carry it into the future, own it, copy it from device to device,
0:13:09 that's his idea for files, I believe.
0:13:11 and he's making that, I think he's making, And then for app, he's saying,
0:13:18 he's basically, I feel like collapsing, apps into databases, basically, of
0:13:24 like databases that you don't own.
0:13:25 you can't take your individual records from that database and,
0:13:29 and do something with them.
0:13:30 They're stored in this, mash of things.
0:13:33 at least that's why I understood it is like data over the application logic.
0:13:36 The term we use at Ink & Switch is tools, not apps.
0:13:39 Can you expand on that a little bit?
0:13:41 the concept is that an app in its sort of cultural construction, though
0:13:47 not necessarily in its technical requirements, generally implies that,
0:13:51 you know, it holds the data inside it.
0:13:53 I think mobile apps and web apps both have different kind of habits here, right?
0:13:57 Like, For the most part, a mobile app is a hermetically sealed box.
0:14:01 Nothing gets in or out of it.
0:14:03 You can't open your Apple Notes in Dropbox or, you know, Notepad
0:14:06 or, you know, anything else.
0:14:08 That's not necessarily true, but it is practically, culturally the case.
0:14:12 And so the idea is that tools operate on some kind of material, right?
0:14:16 And so Obsidian has strong tool culture.
0:14:19 Right?
0:14:19 Like one of the interesting things with Obsidian and reflecting on
0:14:22 Gordon's comments is just that like Markdown and like plain, Obsidian
0:14:26 doesn't operate on plain text.
0:14:28 It operates on Markdown, but there's no such thing as Markdown.
0:14:31 There's like as many Markdowns as there are apps that use some grammar
0:14:35 of Markdown, but you get like a certain amount of interoperability
0:14:39 because it's like these really nice, graceful degradation patterns.
0:14:43 Yeah.
0:14:43 Markdown is like an escalator.
0:14:45 It can't break.
0:14:45 It can only become text.
0:14:47 Right.
0:14:48 So like, it's kind of an inspired choice from that perspective, but I think your,
0:14:53 your point is well taken like these formats, they tend to layer and it sort
0:14:59 of necessarily like interoperability is an ecological condition.
0:15:02 It's something that emerges over time.
0:15:04 You don't design it.
0:15:05 This is often, this, this is actually why for me, sort of permissionless
0:15:08 substrates, substrates that belong to the user where their data saved
0:15:12 seems important because it allows interoperability to emerge retroactively.
0:15:18 But in any case, like these things, they tend to emerge over time where,
0:15:23 you know, one person creates a format, another kind of app implements it.
0:15:28 it doesn't happen often, but when it does happen, it tends to be very valuable.
0:15:32 It's often oppositional though, isn't it?
0:15:34 It's often oppositional and often happens in layers.
0:15:37 Like I think that, you know, text is on top of, you know, bytes and
0:15:41 then markdown is on top of text.
0:15:43 And then we have like Obsidian layering their own sort of like bespoke
0:15:47 markup forms on top of markdown.
0:15:50 And, and these layers tend to move at different speeds with the lowest layers
0:15:54 kind of necessarily moving slower.
0:15:56 Like the part of the problem that's standardized and that people can
0:15:59 interoperate around is necessarily the part that has to move slowly.
0:16:03 Well markdown's not standardized, right?
0:16:05 Like it's that's an emergent Like cultural phenomenon.
0:16:09 It's de facto, right?
0:16:10 Like there's sort of flavors that people converge on, like GitHub flavored.
0:16:14 And you know, like all, all standards are sort of cultural
0:16:17 constructions at some level.
0:16:18 Yeah, you're right.
0:16:19 It's, it's not like standardized in like the W3C or IETF sense.
0:16:22 Or even in the Unix POSIX sense, right?
0:16:24 Like files are.
0:16:25 You know, these kinds of bytes and these kinds of orders, and
0:16:28 this is how you end a file.
0:16:30 But there, there are a couple of emerging standards, right?
0:16:32 We're at the, we're at the situation where there's multiple plain
0:16:35 text formats of Markdown, right?
0:16:37 There's Common Mark and different parsers that you can adopt that give you.
0:16:41 true, guarantees around the way that markdowns, but there's as
0:16:44 you said, there's no one Yeah,
0:16:46 this this actually seems important to me Like I think a lot of people think
0:16:50 about standards and interoperability as these sort of platonic forms that we
0:16:53 design in standards bodies And you know, while that's true that there are people
0:16:57 who craft that kind of material it's like Typically done in retrospect and
0:17:02 in real life cooperation usually happens in the sort of ad hoc or de facto way.
0:17:07 And when our systems aren't designed to support that, it's not a huge surprise
0:17:12 that, you know, interoperability doesn't emerge and then we can sort of
0:17:14 point and say, well, nobody wants to interoperate and it's like, well, yeah.
0:17:17 Cause the material doesn't support it.
0:17:19 Like, like there's a kind of chicken or the egg problem here.
0:17:21 Right.
0:17:22 I think both in your work and Jess's work and our work, right?
0:17:26 We're all exploring.
0:17:28 Different ways of exposing the substrate in more interoperable ways.
0:17:33 Yeah.
0:17:33 And it's not so much like locking the door open as like, right now, I think
0:17:39 like the political economy of choosing files over these other things, right?
0:17:43 Like if it's so much harder and worse for you as a developer to choose, Like a
0:17:48 file like thing over an API like thing.
0:17:52 You're probably going to pick the API like thing.
0:17:54 Indeed.
0:17:54 Some of this is like technical capability and some of it is cultural norms.
0:17:58 Yeah.
0:17:59 Like files are just the thing that's there.
0:18:01 And they're actually in many ways, an odd.
0:18:03 odd shaped thing for the problems we're trying to solve, but they're
0:18:07 just, uh, at least in the app store and on the web, there aren't really
0:18:13 good, viable alternatives yet.
0:18:15 Like in the browser, we're starting to get things like the file API and I, you know,
0:18:20 on, on iOS, we're starting to get like a little bit of a sort of file system.
0:18:25 So it was very charming when Apple excitedly announced
0:18:28 files like they'd invested in.
0:18:29 Yeah, totally.
0:18:30 Right.
0:18:30 But I, I, it's actually kind of telling that like, why, why is
0:18:34 it actually that we want this?
0:18:36 It seems like a lot of knowledge work that
0:18:41 needs to cross boundaries of multiple apps.
0:18:44 and this is just the only tool we currently have to do it.
0:18:47 Mostly because there haven't, I think, haven't been good
0:18:49 commercial incentives to build.
0:18:51 Right.
0:18:52 Interoperability layers that, that makes sense on the network, at least not
0:18:56 yet.
0:18:57 Well, you still need a data container, right?
0:18:59 Like it's one of the nice things that files make is like this, you know,
0:19:02 relatively, this thing that has boundaries that contains a certain amount of data
0:19:07 that you can then pass around via a whole bunch of different, units of
0:19:11 sharing.
0:19:12 Yeah, exactly.
0:19:14 So I, I'm actually curious.
0:19:15 So for people who are listening, who don't know, Peter's work, he's working
0:19:20 on a, CRDT, which is, basically a data structure you can think of it's called
0:19:24 Automerge and Automerge actually calls their, unit of, merging a document.
0:19:31 So.
0:19:32 Peter, do you guys think of documents, Automerge documents, as files in this
0:19:37 file like way we've been describing, or do you think of them in a different way?
0:19:41 The specific stated intention of Automerge is to invent the
0:19:45 new file system of computing.
0:19:48 Like, the CRDT thing is just like an implementation detail.
0:19:51 The problem is, We don't want places and we don't want things.
0:19:54 We need properties of both, right?
0:19:56 There's a wave particle duality here.
0:19:58 We don't want to give us the good things about files, things that we have,
0:20:02 things that we can hold, things we can maintain, things we can keep for as long
0:20:05 as we want that we can use in whatever way that we want, we can pop open the
0:20:09 hood and peer under the covers, right?
0:20:10 Like all that stuff is, is I think vital, but like, it's so apparent that the POSIX
0:20:18 metaphor of the 19th, literally 1970s.
0:20:22 Right.
0:20:22 The series of bytes, it assumes single access, right?
0:20:25 Like, God, the amount of my career I've spent trying to figure
0:20:28 out how to lock a file system.
0:20:31 There's so many, so many tricks that, that we use in like professional
0:20:36 contexts to cope with shared
0:20:37 mutable state, shared mutable state.
0:20:39 And the whole idea behind Automerge was to say like, look, what if you could.
0:20:43 Really think about this, really take your time, really sweat all the details, not
0:20:47 be in the rush that a startup's in, not, you know, spend years with Martin Klepman
0:20:52 proving the algorithm correctly, then spend years with, you know, Orion and
0:20:56 Alex Good getting the performance right.
0:20:57 And people are like, Oh, Automerge is this, Automerge is that, Automerge
0:21:00 is just getting started, right?
0:21:02 Like this is a, this is a 10 year project.
0:21:04 It's a 50 year project.
0:21:05 It's, it's a thing that you just keep working on until it works.
0:21:09 And I think at this point a lot of the pieces are in place and we're
0:21:11 starting to see that pay out and if anybody's following Ink and Switch's
0:21:14 patchwork project right now, right, like what we're seeing is like this
0:21:19 ability to do ad hoc, like new forms of real time and asynchronous version
0:21:25 control on top of this substrate because it has the right primitives.
0:21:30 And of course, this is a research project, so in the process of working on this we're
0:21:34 discovering the ways that the APIs are insufficient or where we need to add new
0:21:38 kinds of indexing to improve performance or, you know, all those other kinds of
0:21:42 things, but it's sort of like we, We've talked to so many people, you know, I
0:21:46 was talking to, someone over at Scratch the other day and they were saying like,
0:21:49 oh, I did this in my thesis, but like, it wasn't actually possible to build
0:21:53 because we didn't have the material.
0:21:54 Right.
0:21:55 And like a former collaborator, Blaine Cook, who was a coauthor on
0:21:58 the Upwelling paper we did last year, you know, he was saying like, it's so
0:22:01 amazing getting to work on this stuff.
0:22:02 He did a startup five years ago or something.
0:22:05 Where you tried to build, you know, text editing tools, but like
0:22:07 they didn't have the material.
0:22:09 And so it's about trying to figure out what the shape of that material is.
0:22:12 And you know, I, I hadn't brought it up before because I don't want this to
0:22:17 be about a particular like concept that I have or that we have about a single
0:22:21 technology, but it's about like really thinking about what the opportunities
0:22:25 are and the potential, but I think a lot about this question, right?
0:22:28 Like I don't want my computer to be a mall where I go in and I take
0:22:34 products out one at a time, you know, and bring them home and consume
0:22:38 them and put them in the trash.
0:22:39 I want my computer to feel like a wood shop where I have my stock of lumber and
0:22:44 I've got my tools and if I want to make something, sure it's going to require a
0:22:47 little more thinking and expertise, but I can make anything, I can do anything,
0:22:51 I can work with other people, right?
0:22:53 Like it's, it's a different kind of productivity.
0:22:56 Like a kitchen is very much the same thing as well, right?
0:22:58 We buy groceries, we buy staples, you know, and a handful of like basic
0:23:02 tools, cutting board, a heat source, a knife, you can do almost anything in
0:23:07 the kitchen with a few extra things.
0:23:09 You can do remarkable things.
0:23:10 Right.
0:23:11 And like, you know, we, we reject the idea of unit task devices.
0:23:15 Often we make fun of people who buy the one off gadgets for the
0:23:18 kitchen, but then we live in a world of these one off gadgets on our
0:23:23 devices, you know, on our computers.
0:23:25 I'm trying to think like, if, if we're gonna invent tools, we also need to
0:23:29 figure out what the stock material is.
0:23:31 And like Yeah.
0:23:32 Text files are cool 'cause they're old and, and like what's old is good.
0:23:36 Like I don't mean that in a dismissive way.
0:23:38 Like it, it is cool because, and it stood the test of time.
0:23:40 Exactly.
0:23:40 It's, and it will stand the test of time.
0:23:42 It'll still be here in 50 years if it was here in 50 years.
0:23:45 For 50 years SQLite is amazing too.
0:23:47 Simon Wilson's super inspiring.
0:23:49 They're working on, Like data set and these kinds of ideas where
0:23:52 it's like, yeah, like a database is a file like that's awesome.
0:23:56 Yeah
0:23:57 It's more or less written by actual monks as well It's it really does feel
0:24:03 like a kind of cathedral of technology.
0:24:05 That'll be here in a thousand years Yeah,
0:24:10 I think that's, I love that woodshop metaphor and it's often one that I
0:24:16 think about, it, it's so evocative because if you've worked in a woodshop
0:24:20 and you understand all the things that you're, the, the ways that
0:24:24 you're able to modify your shop and your tools in order to get work done.
0:24:28 And then you just put that same lens and look at your computer.
0:24:32 You realize how incredibly rigid, the computer is, even when you're a software
0:24:36 developer who has, an ideological commitment to using open source
0:24:41 software, where you have the source of every single application that you use.
0:24:46 The difficulty in modifying those applications to your own
0:24:50 custom specifications is, is astronomical compared to working
0:24:54 models and metaphors.
0:24:56 Mm
0:24:56 hmm.
0:24:56 Yeah, the new materials you're talking about.
0:24:58 It's great.
0:24:59 I was reading, uh, Brian Kernighan's biography.
0:25:02 it looks like the C programming language, but it's his, his self published thing.
0:25:06 Unix, a history and a memoir.
0:25:08 And, um, it's a funny book.
0:25:10 But there's some really great parts in it where he talks about sort of like the
0:25:13 invention of Unix pipelines and how it was sort of like somebody would ask how you
0:25:18 could do X with a computer, you know, or with this new pipes thing they'd built.
0:25:22 And then, you know, him or Richie or somebody would go off and, like,
0:25:26 write the next little piece, you know, sort or whatever, so that
0:25:29 they could answer that puzzle.
0:25:31 And I just love this sort of, like, they discovered the Lego bricks, they
0:25:34 you know, they built the shape and then they just filled in a few pieces and
0:25:37 then after a little while it was kind of like, yeah, all the major pieces
0:25:40 are there and that was good enough and they stuck you know, it's still
0:25:43 out there and you can still use it.
0:25:44 But it's not really the best way to do spellcheck anymore, you know?
0:25:48 Such a glorious vision though.
0:25:50 You know, I guess for me, like files are not the thing, but what they are,
0:25:54 at least for particular formats is like a kind of Lego dot and producing Lego
0:25:59 dots like this that allow you to compose things together, like Unix pipe is
0:26:03 another kind of Lego dot this strikes me as important in like a laws of physics.
0:26:08 Kind of way.
0:26:09 Like, one of my favorite books,W.
0:26:10 Brian Arthur's the nature of technology.
0:26:14 I always get it confused with Kevin Kelly's book, but the, the nature of
0:26:17 technology, he basically makes this, this very sort of, mathematically grounded
0:26:21 argument that innovation at its core is a combinatorial process and not just
0:26:26 like technological innovation, but, you know, evolution, language, art, like
0:26:31 these are about taking pieces, composing them together to produce something
0:26:36 new in a sort of recursive process.
0:26:39 And like early computing was all kind of like, I don't know if this was
0:26:43 intuitive or chance or what, but all of these early pioneers of computing
0:26:47 designed their systems in this way.
0:26:49 And we saw this kind of Cambrian explosion of really interesting
0:26:53 new things emerge very rapidly.
0:26:55 Like actually we've had mobile phones, for Longer than it took the browser to be
0:27:01 invented after the introduction of DOS.
0:27:03 So it's just like, like a lot happened in like a very short
0:27:06 amount of time in that first wave.
0:27:08 Right.
0:27:08 And that's part of me kind of wonders that if, We sort of reduced the
0:27:12 combinatoriality of technology to actually slow the rate of innovation.
0:27:16 not necessarily like there's someone scheming in a room, but sort of the
0:27:20 purpose of the system is what it does.
0:27:22 And like, like big money, but also kind of governments and people.
0:27:26 It's eternal September, right?
0:27:28 Yeah.
0:27:28 It's like
0:27:29 if
0:27:30 you have a bunch of silos and those silos do one thing, like on Instagram,
0:27:34 you post photos and on TikTok, you post short videos and on, like you, There is
0:27:39 no such thing as combining those into some new medium because they don't let you.
0:27:44 And so you kind of have these known quantities that you can regulate
0:27:47 and control and also extract 30 percent taxes on pretty efficiently.
0:27:52 So there's this kind of like striation that's happened of the space.
0:27:56 Some of this is probably inevitable, but I do kind of want to click the dial a couple
0:28:00 notches in the other direction, just by
0:28:02 nature.
0:28:03 I kind of think this is, the way you describe that is, to me, a lost cause.
0:28:08 Or maybe lost cause isn't actually the right term for it.
0:28:11 What I mean is that, actually, a television is great if you
0:28:15 want to watch Love is Blind.
0:28:17 Is everything necessarily a television?
0:28:20 No.
0:28:20 Well, this is, this is the point.
0:28:22 And so what I think though is like,
0:28:25 I don't think we should be trying to convince the mainstream systems
0:28:28 to change their minds or solve the problems we want to solve.
0:28:31 It's that we need to, you know, like a woodshop is not the right way to build
0:28:35 an IKEA, you know, assembly line, right?
0:28:38 Like, but we need the existence of this other kind of computing.
0:28:41 It is, it is not.
0:28:43 a replacement for, it is an alternative to, for the people
0:28:47 who want it and need it.
0:28:48 Yeah, we don't disagree.
0:28:49 Like there's always going to be Facebook, and there's always going to be like the
0:28:52 Big Bang Theory or whatever, but I would love for there also be like a world where
0:28:57 like there can be, you know, I don't know, independent films or hell, like,
0:29:01 uh, Dune II is like something that's, kind of in the air and kind of strikes, that
0:29:05 balance in a nice and interesting way.
0:29:07 It just feels like Like what we want is diversity.
0:29:10 We want like a technological ecosystem that can actually support
0:29:14 a plurality of, of different ends and not just like Walmart.
0:29:19 Yeah.
0:29:19 And well, and the political economy is the challenge here, right?
0:29:21 Which is that right now it costs so goddamn much to write a piece of software.
0:29:26 It's like completely untenable to build or operate software at all.
0:29:29 And I say this as somebody who has done quite a lot of it at all
0:29:33 scales, you know, in production.
0:29:35 It is just insane.
0:29:37 We think of software as an informational good, right?
0:29:39 Like that's sort of the like conceptual model.
0:29:42 Oh, it's just some bits on, you know, floating around, but it's not, it's
0:29:45 like a whole, like massive amount of extremely expensive infrastructure that's
0:29:50 operated by a, you know, a priesthood of like DevOps people who sacrifice
0:29:56 themselves to get up at three in the morning to figure out why the transaction
0:29:59 wraparound on the Postgres has happened again, you know, like it's hell.
0:30:03 It's crazy.
0:30:04 Yeah.
0:30:04 The strange economics of, software, I guess, support that
0:30:08 kind of, like, rising floor.
0:30:10 Because if you do have a hit, it tends to make a ton of money and
0:30:13 then all of that's a rounding error.
0:30:15 Yeah.
0:30:15 It's the
0:30:15 network
0:30:16 effects.
0:30:16 The complexity of software is determined by the economic value that
0:30:19 can be extracted from the software.
0:30:21 Yeah.
0:30:22 Yeah.
0:30:22 And that, that sort of sets the floor as well.
0:30:24 Right?
0:30:25 Like if you're, if you're making not thousands, but billions on a success,
0:30:29 then you can afford, you know,
0:30:31 Yeah.
0:30:31 To burn out a bunch of, software engineers and, you know, leave them
0:30:35 staggering around, their hometown, gazing bleary eyed into the morning light and
0:30:40 wondering where their life went wrong.
0:30:42 At the same time, like these economic incentives, they create individual
0:30:46 choices for like, individual developers.
0:30:48 And I think that's, I think that's where a lot of the slowdown has happened is
0:30:53 when you, there aren't, there weren't options if you were into computers in
0:30:58 the sixties to go make whatever the sixties equivalent of 450, 000 a year.
0:31:04 and kind of at a cushy job where they.
0:31:06 You know, bring food to your table and you can get up and take
0:31:09 foosball breaks whenever you want.
0:31:10 like the, the cruise ship mentality, I think, lures a lot of people away.
0:31:16 and I think it's really hard to kind of wake them up to the fact that
0:31:21 software doesn't have to be this way.
0:31:22 We might have to do a little work.
0:31:24 We might have to be a little uncomfortable for a little while.
0:31:28 You got
0:31:28 to make the right thing.
0:31:29 The easy thing.
0:31:30 That was the lesson we learned at Heroku.
0:31:32 If you make the right thing, the easy thing, people will do it.
0:31:34 All the, you know, all of the principles and ideals, like, yeah, there's a
0:31:39 certain amount of cultural affinity and there'll always be some, like, weirdos
0:31:43 and early adopters, but ultimately if you want to win the day, you have to
0:31:45 make the right thing the easy thing.
0:31:47 But you need some people doing that, making the right thing, the easy thing.
0:31:51 And I think that's what I'm talking about is like, I want to find that 2 percent
0:31:55 or 3 percent of the developer population who actually wants to do the work and
0:31:58 make the right thing, the easy thing.
0:32:00 and that, and for that, you need to talk to people.
0:32:02 You know, you need to have, these wonderful mantras that, Kepano and
0:32:05 that, um, Peter and, Gordon, you guys have honed over the years.
0:32:10 actually, Gordon, I, to turn the conversation a bit to your work,
0:32:14 because you are working on a, network tool, network thinking tool that
0:32:19 captures those thoughts in documents, files, one might say, and, You
0:32:24 have not chosen to use Markdown.
0:32:27 You've chosen, you've made some interesting technical choices.
0:32:30 So I'm curious how, when you, when you look at file over app, are you like,
0:32:34 yes, that, that aligns with my, The decisions that I'm making right now
0:32:39 for the tool that I'm building, or how are your thoughts different from kind
0:32:43 of what you've seen Kapano lay out?
0:32:45 Yeah, that's a good question.
0:32:46 I guess what we are building is a sort of notebook app called Subconscious
0:32:50 powered by this decentralized note graph protocol, and the protocol is multiplayer.
0:32:56 So the notion is like, what if you had your Roam graph or your Obsidian graph,
0:33:00 but it could sort of freely network with other graphs in this cloud of graphs.
0:33:05 But that cloud of graphs doesn't live on my server where I can sort of, you know,
0:33:10 extract a 30 percent text or whatever.
0:33:12 It exists on this decentralized network.
0:33:14 I actually, that's not quite right either.
0:33:16 The protocol is local-first.
0:33:18 so basically it syncs your slice of the graph, like your content plus the content
0:33:22 of people you follow onto your devices.
0:33:24 So you have your files.
0:33:25 and then this was clear,
0:33:27 right?
0:33:27 They're, they are actually files.
0:33:29 They're actually files.
0:33:30 If you
0:33:30 run orb on a, or what you guys used to call it, orb.
0:33:34 Yeah, it's called orb.
0:33:34 Yeah, no, it's called orb.
0:33:35 There's, so there's a couple of things, right?
0:33:37 There's the app, but there's also like a command line interface.
0:33:41 You can use if you're a developer, that's like git.
0:33:43 And, and actually it works a lot like git.
0:33:45 The whole thing uses kind of git like, versioning semantics.
0:33:48 the difference is that it syncs not just your code, Quote unquote
0:33:52 repository of notes, but also kind of the, those are the people you follow.
0:33:56 So you have your own little internet archive, I guess.
0:33:58 Right.
0:33:58 You like Git, uh, it's like Git sub modules or that's a terrible example,
0:34:01 but it's like, No, don't say
0:34:03 that.
0:34:03 That's mean.
0:34:03 It's not like that.
0:34:04 I promise.
0:34:05 It's, it's, it's all, it's much, much better than that.
0:34:07 It's all versioned together.
0:34:09 I mean, I, yeah, without getting deeply into the details, it's
0:34:13 Data Ownership
0:34:13 This is part of, I guess, what's.
0:34:15 That's what's a little bit different from something like Git or why you can't
0:34:18 just use Git, but right, you know, I guess a lot of what we're doing, yeah,
0:34:23 at some point during your usage of this, you will end up with actual
0:34:27 files on your device, like, yeah, very different than most other systems that
0:34:32 we interact with right now, Obsidian being one of the ones that you do
0:34:35 end up with files on your device.
0:34:37 But that's a choice you guys made.
0:34:39 The files are, I guess you could say they're a lens over
0:34:42 the data on the protocol.
0:34:44 And, for me being able to get a live synced, instance of those files
0:34:49 on a device is sort of proof of, of what, what we call credible exit.
0:34:53 So this is like our minimal definition of what Sort of user ownership of data should
0:34:59 mean for our tools for the way we choose to build for it It's like you should be
0:35:03 able to take your stuff and leave or bring it into another app or whatever Now I
0:35:07 think Obsidian actually has credible exit as well And they do this through through
0:35:10 files, but I think they have some maybe tricky edge cases around multiplayer And
0:35:16 this is because, you know, f files, one of the shortcomings of files is they don't,
0:35:20 they're, they just don't do multiplayer really well on, on two axes, actually.
0:35:24 One is, most file formats are not designed to sort of freely merge updates
0:35:30 from a bunch of different sources, like Peter edits the file, I edit the file,
0:35:35 how do we resolve those conflicts?
0:35:36 The other sort of axis around which file systems are not really well designed
0:35:42 for multiplayer is around security.
0:35:44 so once you have multiple players, it's sort of an adversarial environment,
0:35:49 or you have to design for that anyway.
0:35:51 You have to predict
0:35:52 the emergence of an adversarial environment.
0:35:54 Yeah, because, you know, imagine you're reading and writing these files and
0:35:58 then you just connect this thing to the internet, what if 4chan suddenly
0:36:01 has write access to your hard drive?
0:36:02 Like that's the, that's the worst case that you need to the mistakes
0:36:06 Scuttlebutt had too, right?
0:36:07 Which is they did this like replicating friends of friends thing and then you
0:36:10 only had to compromise one person's friend graph and all of a sudden
0:36:14 you were, you know, you could sort of sneak someone into the graph and
0:36:17 then have everybody else back up your objectionable content for you.
0:36:21 Right, which is, and then this became a major problem because everything was
0:36:24 append only and everything was replicated and everything was encrypted and all of
0:36:29 a sudden you're downloading gigabytes of like terrible hate speech or other
0:36:33 kinds of nasty stuff because, you know, somebody made like a face account,
0:36:38 you know, infiltrated a community and then like, you know, linked in all
0:36:42 their like hateful people that they want to follow and now everybody else
0:36:45 is like stuck mirroring their content.
0:36:47 I guess, yeah, you know, again, this, this system of replicating
0:36:54 friends of friends content.
0:36:56 Is very easily gamed by an adversary.
0:37:00 Yeah, I guess it's important to kind of define your, Risk profile.
0:37:07 Yeah, yeah.
0:37:07 The threat model.
0:37:08 Yeah.
0:37:09 Like is your threat model that, like about replicating friends of friends content?
0:37:13 I like, I think, browsers for example, are even coping with this in a more
0:37:17 pedestrian, not a decentralized way, but like they're introducing the, the
0:37:21 file API, which actually will allow you to save files out from the browser in a
0:37:25 sort of, so you could go to photoshop.
0:37:27 com, edit a photo and that saves it out to your disk.
0:37:29 And this is something I worked on when I was at Chrome a
0:37:32 little bit, and it has a lot of.
0:37:35 Thorny issues.
0:37:36 Actually, most of the browsers only partially support it right now or
0:37:40 support, you know, certain parts of it because the way the web secures content
0:37:46 around domains is very different.
0:37:49 sort of comes in at an odd angle to the way file systems think about security.
0:37:54 And so anytime you have these two sort of security models budding up against
0:37:57 each other, you have this turbulence zone where all sorts of funny, scary things
0:38:01 can happen and you need to deal with that.
0:38:03 So this is actually, this is a pretty tricky problem.
0:38:05 You know, it's one that we've, taken a stab at for our use case.
0:38:09 but I think often you'll run into this dilemma that isn't immediately
0:38:13 obvious, but you can sort of, typically you can either have.
0:38:16 sort of files or, or, or data ownership or multiplayer.
0:38:21 but not both, unless you start picking apart some of the security problems
0:38:27 that the web has, you know, sort of left us with some of that security stack.
0:38:32 Gordon, when you say, unless you pick apart some of the security
0:38:34 problems, what I hear you saying is like, you have to solve for sort
0:38:38 of the identity slash network slash authentication authorization piece in
0:38:44 order to get files and collaboration.
0:38:46 Like it implies that there are multiple, you know, Writers that have different,
0:38:51 that are different, you know, and, and you have to somehow allow them to
0:38:54 communicate with one another, allow them to identify one another, and then
0:38:57 also, allow them to secure content, set up the rules for who can write
0:39:02 when, how, all of that kind of thing.
0:39:05 Is that?
0:39:06 Yeah, I think that's right.
0:39:07 I've personally become convinced of the, the value of and this is rather
0:39:12 low level stuff, but signing everything with a key that maps one to one to you.
0:39:17 And I think, you know Hold on, everything?
0:39:18 What does
0:39:19 everything mean?
0:39:19 Because this is a specific technical problem that we're, like, quite
0:39:23 deeply investigating right now.
0:39:25 Because, like, you sign every keystroke on a 200, 000, keystroke
0:39:30 essay, like the Embark essay.
0:39:31 And what you have is mostly signatures.
0:39:33 I like the way that you, you, you love mip mapping, don't you, Peter?
0:39:37 Like going one level more, granular with definitions.
0:39:41 Well, it's tough because like this is this, like you have to constantly
0:39:44 be moving up and down these hierarchies of abstraction when you're
0:39:47 working on these problems, right?
0:39:48 So like, you know, Newsphere is cool because, you know, you can operate
0:39:53 at this very coarse, chunky grain.
0:39:55 But when you say everything, this is why I'm asking, like, you
0:39:58 know, like, does this exclude that kind of lower real time thing?
0:40:02 Maybe this is a solvable technical problem.
0:40:04 Just curious what you think about that.
0:40:06 Well, and I suppose you might be able to sign at the
0:40:08 granularity you care about, right?
0:40:10 I guess what I mean is, the web anchors security to domains.
0:40:15 So the way the web thinks about security is, it's guaranteed by a domain.
0:40:20 if you want to start making attestations about, people or individuals or actors
0:40:26 on the network, then you start, maybe wanting to give those actors keys.
0:40:30 In some capacity.
0:40:31 And now I think there's, you know, sort of the cypherpunk view of it, which is
0:40:35 that these keys should be self sovereign.
0:40:36 And I, I sort of think that that's a possibility that a protocol
0:40:39 should allow for, but a lot of people are going to want to escrow
0:40:43 those keys or have them recovered.
0:40:44 It doesn't, a detail that users shouldn't have to care, care about most of the time.
0:40:47 Right.
0:40:48 And an important one too.
0:40:49 Yeah.
0:40:49 Yeah.
0:40:50 But, what signing with keys does is.
0:40:54 It allows for what a cryptographer called non repeatability.
0:40:57 Like you can basically say this person definitely signed this at this time,
0:41:00 or at least the person who had control of these keys, and if you keep those
0:41:04 keys secure, you can actually sort of compose, trust at pretty high levels
0:41:08 in pretty useful ways, mathematically.
0:41:11 So in any case, I think where the file system and the network tend to run up
0:41:17 against each other at odd angles is the, the internet or the web rather tends to
0:41:21 think about security in terms of origins and, of domains and actually apps by and
0:41:26 large adopted that security model as well, like, like iOS apps, Android apps, and the
0:41:30 file system tends to think of, Security in terms of who has access to the device.
0:41:38 And these, these two ways of thinking about security don't, don't mix
0:41:42 very well without some sort of trust boundary or sandbox boundary
0:41:46 that mediates that relationship.
0:41:49 Can you, can you talk more about this?
0:41:50 Cause this is, I've had many conversations with like browser heads
0:41:54 and like, I get the idea of an origin and let me see if I can say this in
0:41:58 a way that like a non browser head.
0:42:01 I mean, maybe I'm a browser person now, too, by, by fate, but like an
0:42:05 origin is basically like somebody owns the SSL cert for this DNS.
0:42:12 And so we're just going to trust everything within that domain
0:42:15 that's signed by that cert, period.
0:42:17 But we're, but we're going to prevent mixing of that data.
0:42:21 You know, unless it helps us sell ads with any data from any other origin period.
0:42:28 I mean, I'm a little bit snide when I say that, but it is a very real concern
0:42:32 and it is very empirically how ads work and, you know, however you feel about
0:42:37 that, that's just, it is the case.
0:42:39 That sounds like a pretty accurate description to me.
0:42:44 Decentralized Protocols
0:42:44 Do we want to keep going?
0:42:46 Well, the reason why I think it's relevant to the files conversation where
0:42:49 we started and the apps conversation is that origin model is like so Like, many
0:42:56 people I meet who work on these kinds of problems They get really frustrated by
0:43:00 like cores and like same origin policies.
0:43:04 And the browser keeps ratcheting these tighter and tighter and tighter
0:43:07 over time, you know, yeah, exactly.
0:43:10 And so to me, this is actually a really fundamental problem.
0:43:14 Where it's like, well, but it's my computer.
0:43:16 I want to decide what I do with my data.
0:43:18 And then in the JavaScript console, it's like, browser says no.
0:43:21 Yeah, actually it's the, um, right.
0:43:23 But like the, the most secure web would be one where each website is hermetically
0:43:28 sealed and you can neither interact with it nor receive output from it.
0:43:32 Just little pocket universes.
0:43:35 So, I mean, there's a sort of like reductio ad absurdum to this, where
0:43:38 like we started with a pretty simple, it was like a reasonable solve right at
0:43:42 a time, especially in the early days of the web when they were like, I think
0:43:46 the mental model was that you might run a, a server out of a closet or perhaps
0:43:50 your school would run a server, like it was this very utopian kind of flat
0:43:54 Notion of what a network would be.
0:43:56 And so the server was assumed to be the agent of the, you know, let's say,
0:44:01 uh, Gordon's email would be like a computer that was like in my , my closet.
0:44:07 And so like, yeah.
0:44:07 Gordon com Right.
0:44:09 Was a, yeah.
0:44:11 And so if that, if that server is signing things, you know, you can sort of say,
0:44:16 Oh, well, Gordon signing things, but that's not really the world we ended
0:44:19 up with because of network effect, because of Facebook signs, everything.
0:44:24 Yeah.
0:44:24 Yeah.
0:44:25 Now.
0:44:26 Keys are tricky, like, because there are these funny little things
0:44:29 that you can't lose, just like in real life, or you'll be locked out.
0:44:33 Except there are no locksmiths.
0:44:35 There are no locksmiths, yeah, at least unless the NSA has its way, you know, but,
0:44:41 No, but I do, I do have some hope that we're going to see some, some interesting
0:44:46 kind of new calculus emerge around this problem with, the advent of like trusted
0:44:50 computing modules, like secure enclave, on the iPhone, or I forget what the Android
0:44:54 version is called, which makes me a bad former Googler, but you can sort of stash
0:44:58 keys on these secure pieces of hardware, and then you have a pretty, you know,
0:45:03 maybe your threat model is the NSA has your phone and is trying to crack into
0:45:06 it, but that's less the world I'm trying to solve for, and more the world of like.
0:45:10 It'd be kind of nice to know if,
0:45:12 this I think Bonsy Buddy is a, is a, is a really credible threat model, right?
0:45:16 Like, that's sort of the core threat model for, that browser
0:45:18 vendors think about, right?
0:45:20 Which is, you've got some, like, hostile agent on the user's computer.
0:45:23 They've installed a search, ostensibly a search toolbar,
0:45:26 or some kind of browser plugin.
0:45:28 Which is now like extracting their credit card information or their bitcoins
0:45:32 or just other private information.
0:45:34 So so why does this matter?
0:45:35 Well, so like this this origin security model inevitably results in silos
0:45:40 like by definition data silos Like the the silo is the website the the
0:45:45 whole security models that the data can't make it out of the website
0:45:48 And so you just sort of end up with,
0:45:50 Well, it does at the server, right?
0:45:52 That's, that's the funny thing.
0:45:53 The server.
0:45:54 That's right.
0:45:54 So they run an API so you can come in from other places there, but the
0:45:57 user can't do it for themselves.
0:46:00 Yeah.
0:46:00 and then this puts the server in a very privileged and powerful
0:46:04 position on the network because an API can, can cut you off.
0:46:08 so data that might be notionally yours, is in practice, it's not really.
0:46:13 I don't know.
0:46:14 If you want to try to solve for that problem in some capacity, like multiplayer
0:46:18 and some kind of data ownership or the ability to take your content with you.
0:46:23 I think there's only three ways to solve this.
0:46:27 one is with a decentralized protocol.
0:46:30 Without going too much deeper into it, the protocol also has to
0:46:32 have certain security qualities.
0:46:34 I think the other is actually with local-first data, and this is, Peter's
0:46:38 working on this problem of CRDTs.
0:46:39 The reason local-first data gets you this is because you know, a server might cut
0:46:44 you off, but it's like, screw you, buddy.
0:46:46 I already have my content, right?
0:46:47 It was already synced to my device.
0:46:49 No, but that's not true.
0:46:51 Like I wish, I appreciate the compliment implied there, but I think you still
0:46:55 require the first thing, right?
0:46:56 Cause like when you get the data, like this idea of local-first data,
0:47:00 if it's happening in your browser, it's still being written into an
0:47:03 indexed DB or an OPFS or whatever else that's owned by the origin, there is
0:47:08 the ability to write real files, but it sucks and doesn't really work.
0:47:12 And I see some folks here who have, like, built apps, like, no one is making a
0:47:16 user click, like, allow access to this folder every time they open an app.
0:47:21 Gosh, yeah.
0:47:21 Uh, so that's what the, that's like the file access API.
0:47:25 Yeah.
0:47:26 Right, like, so it is, it, all of that data is still trapped inside the origin.
0:47:30 Yeah, I'm sure that's true.
0:47:31 I, so, Peter, you were saying, I have, wait, I have a third, third point.
0:47:36 Yeah.
0:47:37 So, and actually I do want to say CRDTs are still important.
0:47:39 You're talking totally, totally, but it
0:47:41 doesn't solve the, it
0:47:42 doesn't solve
0:47:42 the origin thing.
0:47:43 And that's the part I don't have a good,
0:47:45 let me circle back to this.
0:47:46 I just want to throw out one time over coffee.
0:47:48 You told, you told me.
0:47:49 You don't need to care about which protocol you get the data from if
0:47:52 the file knows how to merge itself.
0:47:54 And I thought that that was a wonderful provocation to sort of like
0:47:57 argue in favor of the CRDT thing.
0:47:59 And, and all of these are satis satisficing, right?
0:48:01 Like a protocol, a CRDT, these are not going to give you perfect exit in any
0:48:06 case because, you know, in the worst case you might be shut out from the app.
0:48:09 That lets you use this stuff in a useful way.
0:48:11 But I do think they give you the ground conditions for things like
0:48:14 adversarial interoperability to emerge.
0:48:17 But the third thing, and the one that I think is underexplored, and I haven't
0:48:20 even thought through it fully, is, something like a legal contract that
0:48:25 guarantees the user access to their data along some axes, as long as a
0:48:29 service continues to be maintained.
0:48:31 You mean like a, like a
0:48:32 UCAN or like an actual, like.
0:48:34 Like TNC.
0:48:35 Like something like, so, and this is the thing, nothing like this exists today,
0:48:40 but there's no reason you couldn't write something like a EULA where
0:48:43 the valence goes the other direction.
0:48:45 Instead of the user signing away their rights, the user is granted
0:48:49 certain rights over their data.
0:48:51 Hey, I'll take that To my lawyer and yeah, no, actually I've been
0:48:55 thinking, I've been asking for
0:48:57 this.
0:48:57 I sent some, I sent some irony there, but if you're interested in, I was
0:49:02 thinking about actually going to a lawyer and see, like asking, is this crazy?
0:49:06 Cause like open source would have been crazy at one time, but you
0:49:10 know, it's interesting, right?
0:49:11 Like we actually can bend contract on some interesting directions to solve
0:49:15 using Social technology is things that are difficult to solve with, you
0:49:19 know, bits and, atoms technologies.
0:49:23 Right.
0:49:23 Well, the challenge here is not even, could you write a
0:49:26 contract that would do this?
0:49:27 The question is like, how would this affect your ability to fundraise?
0:49:31 Or what would happen when you told your VP of sales what you were doing?
0:49:37 Yeah, maybe so.
0:49:38 I think you run into a lot of these same problems when you say, Hey, we're going
0:49:41 to give users control over their data through a protocol or through a CRDT
0:49:44 anyway, so, you know, it's like in a lot of ways, like, this condition of things.
0:49:50 Not interoperating and users not owning their data, like, an investor might look
0:49:55 at that and say, that's a moat, right?
0:49:57 It is a moat.
0:50:00 Yeah.
0:50:00 I tend to think about this in like longer terms that, you know, it's like in some
0:50:04 ways, like Google doesn't have like a lock on search, like it keeps trying with
0:50:09 things like the open graph, but I, like, I think it's perfectly possible to build
0:50:12 a defensible business without data lock in, but it is, it's something you get for
0:50:17 free with the current software paradigm.
0:50:19 And so we're sort of stuck in this metastable state where extra work.
0:50:24 This is where I think things like your protocol or Automerge or other kinds
0:50:27 of similar projects have potential.
0:50:30 If you can crack the, like what you need is enough benefit from
0:50:34 participating in the ecosystem that allows you to get like a network style
0:50:39 returns from interoperation over time.
0:50:42 Yeah.
0:50:42 You need a low enough activation costs that you can bootstrap
0:50:45 the ecosystem around it.
0:50:46 That has to be enough value from adopting the technology to see that
0:50:50 kind of like a feedback on the returns.
0:50:53 And I think the other thing that we haven't talked about that, but that
0:50:55 is implicit in all of this is like the political economy of the software.
0:51:00 That is available to us is determined by like the market economy of the
0:51:04 labor market and the VC funding market and everything else.
0:51:07 And like, it's all well and good to like hand wave that away, but it is empirically
0:51:11 the case, you know, like information may want to be free, but my rent isn't.
0:51:16 I think I look at this as in like a kind of scrappy, maybe
0:51:22 like entrepreneurial way.
0:51:23 I'm looking for the cheap hat because I don't want to wait, abolish, wait
0:51:26 for the abolition of capitalism to improve software somewhat.
0:51:29 And I do think there are these kinds of judo moves, these interventions, like
0:51:34 CRDTs that can change the calculus.
0:51:39 Yeah, maybe I'm wrong, right?
0:51:40 and, and maybe you're wrong.
0:51:41 Maybe we're all wrong, but I, I don't think so.
0:51:43 I, I think that it requires great ingenuity and creativity to find
0:51:47 the strategic angle of intervention.
0:51:49 But yeah, you know, people do this all the time.
0:51:51 They do it, for, they, They apply strategy to find an entry into a market in order
0:51:57 to gain, because incumbents don't want new entrants in the market either.
0:52:00 And I think we have to put that hat on actually, if we're going
0:52:02 to, to change the, the balance of power, that users have.
0:52:07 How do you think about that with what you're
0:52:08 doing?
0:52:08 Oh, sorry, Jess.
0:52:09 No, it's okay.
0:52:10 I was going to mention, I think there's, so I, I love your three things, Gordon.
0:52:14 The, there's three ways you can solve the problem.
0:52:16 Like some decentralized protocol that, Or two, local, distributed local file
0:52:20 state, like distributed local state.
0:52:22 And then the third, sort of a legal contract.
0:52:25 And I think the one, Peter was pointing out that the market economics right now,
0:52:29 what is easy is also very profitable and therefore the label market and the funding
0:52:34 market were, it, it drives against the, any of these values and it supports sort
0:52:38 of the data modes that we were talking about before with the same origin policy.
0:52:42 And I think the biggest funding mechanism that I see, Peter's not going
0:52:46 to love this, that is alternative to VC right now, is there is a large lump
0:52:51 of money in the Web3 blockchain world.
0:52:55 And you do see some of those projects putting that to use
0:52:58 to try to solve this problem.
0:53:00 I see.
0:53:01 Famously anti capitalist distributed wealth system of
0:53:06 the cryptocurrency market.
0:53:08 Known for its transparency, honesty, and, Fair outcomes for all involved, yes.
0:53:14 You're not wrong, and also there's a lot of money there.
0:53:17 And so this is kind of like, it's basically the flip of
0:53:20 what you were just saying.
0:53:21 It's like we have to acknowledge the reality of the market economics.
0:53:24 Well, the reality of the market economics is that there is billions of dollars
0:53:27 in these decentralized protocols that are basically payment rails for
0:53:31 Distributing tokens and things like that.
0:53:33 And a lot of shady, crazy stuff is happening there for sure.
0:53:36 but they are, tell me about the
0:53:38 stuff that's not, cause I think that's interesting.
0:53:40 So here's the one that I wanted.
0:53:41 This is the reason I brought it up is I don't know if you guys have been
0:53:44 paying attention to the Farcaster protocol, but they're distributed
0:53:48 social media protocol and they have been iterating on this thing called
0:53:52 frames and frames are like a micro app.
0:53:57 Within a tweet, if you could embed.
0:53:59 And the, the interesting thing about it, they're opting for Gordon's
0:54:04 option one for distributing state and, access and, and all of that.
0:54:09 Yeah, they actually,
0:54:10 their, their protocol is not too different from BlueSky or even our own, Neosphere.
0:54:15 but it does make a couple of choices around key rotation that,
0:54:19 and they use a blockchain for this.
0:54:20 I could get into the why, if we want to later on.
0:54:23 Well, here's the more interesting thing.
0:54:24 Just today, they showed off, frames that allow for, money tra uh, sorry,
0:54:30 token transfers to happen inside of it.
0:54:32 So basically they built into their protocol, micropayments.
0:54:36 And the reason I think this is really interesting is because I think
0:54:40 one way out of this, the current.
0:54:42 uh, world that we're in with browsers and same origin policy and the sort
0:54:46 of, the dead end, but it's a happy dead end where the web is, is a, is
0:54:50 building a payment protocol into the, the primitives of the network itself,
0:54:56 such that people can renumerate each other directly, and You know
0:55:00 the web was meant to have this?
0:55:01 There's an HTTP code for payment, like pay per view.
0:55:05 It just never got, yeah, yeah, yeah, yeah, yeah.
0:55:08 This is like Tim Berners Lee just stuck it in there.
0:55:10 There's it's, it's along there with like, uh, what is the, there's
0:55:13 another code for I am a teapot.
0:55:15 Um, there's like these funny, like reserved codes for just in case that Tim
0:55:18 Berners Lee stuck in there and payment was one, uh, we just never got it.
0:55:22 Yeah.
0:55:23 I don't know.
0:55:23 I don't know what you're going to ask with regard to Web3.
0:55:26 I think the idea of like digital payments is not crazy on its face,
0:55:30 and it would be interesting to think about ways to do that with a protocol.
0:55:33 I think my stance with regard to Web3 is sure to piss literally everyone off
0:55:38 on both sides of this very kind of like divisive issue, which is that, uh, I
0:55:43 think that, I look at a blockchain as a really interesting technological
0:55:45 artifact that does solve some problems that are very difficult to solve in other
0:55:50 ways, but the number of people who want to solve those problems is small, and
0:55:53 nevertheless, they can be high value.
0:55:57 So these are things like key rotation, which Farcaster uses.
0:56:01 There's been this, there's always been a challenge with key rotation
0:56:04 where you need like a third party to, to basically handle that rotation.
0:56:09 And that third party is kind of like a point of failure if someone, co ops it,
0:56:13 but in any case, you know, I, here's where I'm going to piss everyone else
0:56:18 off, uh, on the crypto side is like.
0:56:21 I think all of the problems of crypto are not crypto problems.
0:56:24 They're, market problems.
0:56:25 And if you look at them point for point, like, you know, tulip mania,
0:56:28 wildcat banking, crazy token pump and dump, these are literally all things
0:56:33 that we had to go through with regard to, capitalism in general, markets
0:56:37 in general, for the last 200 years.
0:56:39 And then we accrued this enormous edifice of regulation.
0:56:45 Around markets in order to get them to function.
0:56:47 So my personal attitude toward this stuff, which probably a lot of people
0:56:52 are going to agree, disagree with for one ideological reason or another, it's like
0:56:55 markets are kind of like nuclear reactors.
0:56:57 They can generate a lot of interesting outcomes.
0:56:59 but they also have a tendency to melt down, without cooling rods.
0:57:03 And, and this is just kind of what I see happening with, with crypto.
0:57:06 And I think it'll continue to happen up until the point that it gets
0:57:09 some sort of enlightened regulation, which may never come because it
0:57:12 seems like nobody's actually invested in that outcome on either side.
0:57:16 so there's Gordon's unpopular take with regard to Web3.
0:57:21 So Web3 is speed running 200 years of financial market regulation.
0:57:25 Yeah, and, and actually,
0:57:27 especially To me, like, proof of stake blockchains are a really interesting
0:57:31 technology that solve, like, a interesting problem of, like, decentralized,
0:57:35 totally ordered, sort of, source of truth that's credibly neutral.
0:57:39 These terms all have to be qualified because, you know, they're all, all
0:57:42 of that is also kept afloat by, like, basically, The financial function
0:57:48 that a chain is supposed to serve.
0:57:52 but I think the product market fit that chains have found right now is
0:57:54 basically Vegas and, you know, crypto just recently skyrocketed back up again.
0:58:00 So I've come to the conclusion that Vegas is actually anti
0:58:03 fragile and you can't kill it.
0:58:05 but that's also something that is, Vegas is not personally my favorite place to be.
0:58:09 so.
0:58:10 If I engage with it, it's, it's, you know, kind of, with, with care and
0:58:14 with a little bit of self protection.
0:58:16 Yeah, I mean, I, I think Jess, has certain expectations about my
0:58:21 perspective on these things that are not entirely unfair, but I, I would
0:58:24 say I'm not anti crypto conceptually.
0:58:27 I'm just opposed to getting dragged into the kinds of communities that I've seen.
0:58:33 You know, I just, like the ideas are reasonable.
0:58:37 It's just, the outcomes seem.
0:58:39 Odious.
0:58:40 So I'm just like,
0:58:41 so many things when,
0:58:43 when there's like a healthy, high functioning, cryptocurrency for like
0:58:47 micropayments that isn't like a, like an insane pump and dump, a penny
0:58:53 stock, gambling, whatever, right?
0:58:55 Like, yeah, like, but that would be cool.
0:58:58 I, I always ask if anybody has one in mind and nobody does, but in the
0:59:02 meantime, I also think it's a little bit irrelevant cause like, Oh man, use PayPal.
0:59:06 Use, like there's lots of, use Square Cash.
0:59:09 Like there's, use a freaking credit card.
0:59:11 Like there's, payment is, is, yeah, there's more friction
0:59:14 than, than you'd like.
0:59:16 But like Stripe is pretty good.
0:59:18 There's alternatives and Wraparate.
0:59:19 Like these are hard problems, but they're so much less hard than they used to be.
0:59:24 And they're, you know, Apple Pay is pretty great.
0:59:26 Like, you know, like we don't need to invent a whole new
0:59:31 financial economy to do payments.
0:59:34 But I do think broadly, like we've got a little bit off
0:59:38 track here, which is like files.
0:59:40 Well, no, it's files over apps.
0:59:42 And I think again, like we have to ask why, why are things the way they are?
0:59:47 And so things are the way they are because you can make a living
0:59:49 building software that way.
0:59:51 You can get investment from other people to build software.
0:59:54 And if you can't get investments and you can't make a living, then you're
0:59:56 not going to have the ability to attract, attract top talent, right.
1:00:01 To bring in the investment it takes to build a team in advance of revenue.
1:00:05 Right.
1:00:05 And like the problem with crypto money is that it always ends up being predicated on
1:00:11 like the promise of crypto style returns in sort of the, you know, idealized case.
1:00:16 And so what you see is like ecosystems aligning around trying
1:00:19 to generate one of those crypto pops, because that's the expectation
1:00:23 that comes with the investment.
1:00:24 And I think, I don't want to call anybody out.
1:00:26 I'll just say that there have been very interesting and promising
1:00:29 projects that have over time had to realign themselves to generating
1:00:33 crypto Interest style returns.
1:00:37 And that, that, that has very frequently been to the detriment of their mission.
1:00:41 Right.
1:00:42 Yeah.
1:00:42 Token pumping tends to be an unstoppable force.
1:00:45 Yeah.
1:00:46 And getting that doom loop.
1:00:48 Yeah.
1:00:48 And I wasn't necessarily bringing up web three to say that that was
1:00:50 the solution, but I do think the acknowledging there, there's two things
1:00:55 that I think are interesting here.
1:00:57 One, how do you fund the.
1:00:59 The research into making, making easy what we want, what we believe to be the future.
1:01:04 and one of those funding sources that is non VC is a pool of cash that is Web3 that
1:01:10 has all sorts of other challenges with it.
1:01:13 Right, but look at what's happened there, right?
1:01:15 Like, like really specifically look at what's happened there.
1:01:18 Well, I do actually, I want to take Jess's, perspective on this for a minute.
1:01:22 Cause I, I sort of gave my, you know, like very boring, ambivalent take on it.
1:01:27 But like, I think actually there, if you, if I remove my moral valence,
1:01:33 like there are a lot of things that seem crazy on their face, that generate
1:01:36 unexpected outcomes and like, I see a lot of money getting dumped into
1:01:40 things like ZK proofs, which is a general purpose cryptographic technology
1:01:44 that has nothing to do with chains.
1:01:46 Work has been mostly funded by, blockchain maxis.
1:01:50 I see interesting work on elliptic curves.
1:01:53 you know, like, uh, like Zuko Wilcox's work on elliptic curves,
1:01:57 that's being done around this.
1:01:59 they use IPFS.
1:02:00 IPFS ecosystem has this new kind of, I guess you could think of it as like
1:02:04 a zip format for blocks that, you can stream in and it's all sort of like
1:02:10 signed in the way that you can sort of streaming, uh, stream this stuff in
1:02:14 and, and cryptographically verify the blocks as they come in is it's using
1:02:17 this elliptic curve technology that was, you know, it's ultimately developed by
1:02:21 Zuko Wilcox for ZK stuff, uh, Zcash, I
1:02:25 believe.
1:02:25 And, uh, UCANs, from the Fission team are another great example.
1:02:28 I think they've taken, you know, a lot of research funding
1:02:31 from those kinds of sources.
1:02:32 I think that's good stuff.
1:02:34 Yeah, I think
1:02:34 we're also, we're seeing like Farcaster and BlueSky and Nostr and various sort
1:02:39 of stabs at decentralized, protocols that actually don't really have a
1:02:43 crypto component, but I think are benefiting greatly from the mental
1:02:47 models developed by crypto researchers, cryptographic researchers, as well
1:02:51 as, Cryptocurrency researcher.
1:02:53 So I think, you know, it's, it's like, there's this quote I really
1:02:55 like from this, evolutionary biologist who says, containment can lead to
1:02:59 contagion, and a degree of isolation is of, great, Importance in sort
1:03:04 of new forms of being a false.
1:03:06 So it's like the island ecology thing Like if something's off to the side
1:03:08 and it's under a set of different selection pressures You could be like
1:03:11 those selection pressures are perverse.
1:03:13 They're terrible.
1:03:14 Maybe they are but you're gonna get some weird and interesting critters
1:03:18 that emerge out of that primordial soup for good or ill, right?
1:03:22 Like I definitely think we're seeing some things emerge out of the crypto
1:03:27 landscape that wouldn't emerge out of the incentives of like the web 2.
1:03:32 0 aggregator kind of landscape.
1:03:35 Well,
1:03:37 we're, we're about a little over an hour and let me see if I can try to
1:03:40 land the plane here and kind of recap the conversation we've had so far.
1:03:43 So we kind of jumped in with this files over apps and kind of talking about each,
1:03:48 some of our different work around this.
1:03:51 And then, there was a lot of history discussion around sort of how
1:03:55 did we get to the current system where apps could even be used in
1:04:00 a sentence like file over app.
1:04:02 and what does that, what does that mean for where we are today?
1:04:05 And then I think the, the most recent exploration has been
1:04:07 how do we get somewhere else?
1:04:09 How do we get to a place where files to open, to echo Peter's opening
1:04:13 comment, where files didn't get their butts kicked and where we can actually
1:04:17 rely on some of the file like goodness that we get, where we can get this,
1:04:22 a combination of files and places.
1:04:24 And, Yeah, there's been some really great work, that, Gordon and Peter and
1:04:30 certainly, I've been trying to chip in as well on, moving us in this direction.
1:04:34 Really appreciate Obsidian and Kapano for kind of, being a
1:04:37 working piece of software that embodies these concepts as well.
1:04:41 we've talked a lot about, local-first software as well.
1:04:45 that's another term.
1:04:46 If you're not familiar with it, you should definitely look for the original
1:04:50 article from Ink and Switch that defined the term local-first software.
1:04:53 And if you want to kind of hear more conversations like these,
1:04:56 there's a podcast by Johannes, which I noticed is sitting in
1:04:59 the audience, called localfirst.
1:05:02 fm.
1:05:02 And that'll kind of take you on the journey of, local-first and which
1:05:07 really does, not 100 percent overlap with the file over app, philosophy,
1:05:11 but there's a lot of overlap there.
1:05:13 And there's a lot of technology that's being developed that can
1:05:15 hopefully get us from where we are.
1:05:17 And sort of this current ecological conditions to a new place.
1:05:22 but Gordon or Peter, do you guys have any closing comments before we
1:05:26 wrap up?
1:05:27 I do, I do, which is, I liked Peter's put that we need to make
1:05:31 the right thing, the easy thing.
1:05:33 I think it's actually extraordinarily difficult right now to build an app
1:05:37 that, puts the user in control of their data in any meaningful sense.
1:05:41 Almost literally, no matter how you define user ownership of data.
1:05:44 And, you know, the work Peter's doing in CRDTs, and I think the many decentralized
1:05:49 protocol projects, including our own, are all attempts at trying to lower the floor
1:05:55 so that more people can, can build apps that actually do put users in control.
1:05:59 I think that's, that's necessary.
1:06:01 cause otherwise it's going to continue to be prohibitively
1:06:03 expensive to make that a reality.
1:06:07 Yep, absolutely.
1:06:09 Absolutely.
1:06:09 Peter, anything to wrap us up?
1:06:11 I don't think we have an answer yet.
1:06:14 Like, I don't mean us here, though, also that.
1:06:17 But, like, I think that, there's a lot more work to do and a lot more to say.
1:06:21 And, you know, I have plenty of like pet theories and, and ideas as I'm sure
1:06:25 everybody here on this call, does, but I think, I've tried not to, I've tried
1:06:32 not to fall into solutioneering in this conversation because I think it's, it's
1:06:36 easy to get, jump into the why don't we just, kind of mode, but I think that
1:06:40 like a good, clear understanding of the opportunity, the challenge and the
1:06:45 benefits and like a, uh, Like I just feel like very often people sort of
1:06:49 lament the way things are, but I think Gordon's approach to kind of analyzing
1:06:55 the, not just the technical landscape, but like the political and cultural
1:06:59 landscape as well is part of why I so enjoy these conversations that we have.
1:07:05 And I really, thank you, Jess, for, for allowing me to
1:07:08 jump in and be a part of it.
1:07:10 Likewise.
1:07:11 It was great.
1:07:12 But yeah, I'm, I'm, I'm very, uh, Excited to see folks like yourself, you know,
1:07:18 like actively engaging kind of one rung closer to sort of market forces.
1:07:23 And, you know, I don't think there's a wrong thing to try.
1:07:27 Like if you're doing things, I wouldn't, I'm doing things you wouldn't.
1:07:30 I think that's great.
1:07:32 I'm not here to be a bigot for an approach or a technology.
1:07:35 I'll speak my mind and tell you what I think.
1:07:36 And if your thing works, I will celebrate, you know, that's, I hope that we all
1:07:41 have that mindset of like, You know, it's not about arguing for ideological
1:07:46 purity or like the one true solution.
1:07:50 I think it's just we got to get out there and try and make things that work
1:07:53 for people and then See what people say when they try them and then keep, keep
1:07:56 going, keep iterating, keep trying again.
1:07:59 So if you're sitting and listening to this, I don't
1:08:01 know how many people are here.
1:08:02 There's a bunch of people wandered in.
1:08:03 yeah, like go, go make things, I guess.
1:08:06 Or try some of the things that we've made and complain about
1:08:09 the ways they don't work for you.
1:08:10 That's, that's honestly, that's honestly a pretty good, pretty good contribution too.
1:08:15 Such a gift.
1:08:16 Such a gift.
1:08:17 All right, guys.
1:08:17 Well, thanks.
1:08:18 And, yeah, look forward to the next time I get to chat with both of you.
1:08:21 I see it, Jess.
1:08:22 Take
1:08:23 care, y'all.
1:08:23 Oh, Hey.
1:08:23 And if anybody out there wants to see, I think you're going to the
1:08:27 local-first conf in person, right?
1:08:28 Yes.
1:08:29 I will.
1:08:29 Yeah.
1:08:30 I'm going to be there.
1:08:30 Gordon, are you coming?
1:08:31 I'm so sad to miss it.
1:08:33 Yeah, I will not.
1:08:35 Yeah.
1:08:36 I think it's going to be glorious though.
1:08:37 It's, it's going to undoubtedly be an interesting cross section of people.
1:08:41 I feel like this is a, an idea that's just breaking into
1:08:44 sort of broader consciousness.
1:08:46 and the people who have been investing in it for a long time,
1:08:48 I'm sure are all sure to be there.
1:08:49 And it's, it sounds like it's going to be a real party.
1:08:51 Yeah.
1:08:52 local-first conf I mean, not everybody will be there, but hey, that's the idea.
1:08:55 local-first conf, it's in Berlin, end of May.
1:08:58 yeah, you should look it up.
1:09:00 Berlin is amazing too.
1:09:02 That should be like excuse enough.
1:09:04 Oh my goodness.
1:09:05 What a place.
1:09:06 Alright.