Lewis Torrington 0:01 Hello, testing, testing. 0:02 Okay, there we go. 0:04 Hi, good morning. 0:06 So yeah, as Boris said, I'm the stand-in for Anirudh, my boss at Tangled. 0:13 Yeah, so what he was going to talk about was Tangled, the business end, as a Mr. 0:18 Business, on how they raise money and how one raises money in general using VC and using ad product together. 0:26 But first of all, he's not here, and I'm an engineer, so I'm going to talk about engineering things, and I hope you guys are all okay with that. 0:36 I do know a modicum of what they went through because I'm a bit of a nepo baby. 0:42 I knew Anirudh from our UpCloud days together, so maybe I can perhaps speak of my perspective. 0:49 This is the Lewis end, so take every single thing you you hear from me with a grain of salt. 0:57 So yeah, architecture diagrams. 0:59 I think I'm going to have it a little more informal. 1:01 I hope that you guys heckle me, actually. 1:03 Like at any moment, raise your hand if you'd like, and we can force Boris to pass around the mic. 1:11 Yeah, so also online people on Streamplace, I would actually like it if somebody, maybe Boris as well, or I don't know, somebody else, if if we could have somebody reading the Streamplace chat so that I can get messaged. 1:26 I didn't have enough time to actually put up OBS Studio on this thing and overlay some sort of Streamplace chat over my computer here so that I could see the questions directly. 1:35 But anyway, I want you to know online that I care about you. 1:42 So yeah, about me. Speaker B 1:45 Question from the stream: who is this little guy? Lewis Torrington 1:48 I'm about to get to that. 1:51 All right, so Yeah, well, @oyster.cafe. 1:56 I thought that was a little more professional. 1:57 I changed it recently. 1:58 I was louis.moët, but there's a connotation to the.moët TLD, so it's on oyster.cafe. 2:05 You know, I like oysters and I like cafes, so. 2:09 Oh, yeah, the arrow's a little misplaced with two screens. 2:12 I couldn't get it right either way, right? 2:14 I'd have to mirror it, but imagine me under both of them right now. 2:18 That is me. 2:19 I actually have this little chick thing in my bag and Fig SCP contained it for me because they had a little box. 2:28 But anyway, if you want to see it later, it's real. 2:30 Wow. 2:33 I'm a software engineer. 2:36 As I said, I've been working at UpCloud, which is a Finnish cloud company, but then a month ago I got hired at Tangled because they raised $3.8 €100 million and started paying me with it. 2:48 No, not all of it. 2:50 Yeah, wow, it all goes to the Lewis Fund. 2:54 No, not really. 2:57 I'm from Australia, but yeah, I'm living in Finland. 3:00 We're tangled, kind of. 3:02 It's in a co-working space at the moment, and I'll talk about that in a sec, maybe. 3:07 But yeah, I mean, that's kind of me. 3:11 Just a little guy. 3:12 Who is this little guy? 3:13 I don't know. 3:16 So yeah, here are the founders, Anirudh and his brother. 3:18 I just kind of screenshotted this straight out of Tangled itself. 3:23 These are the big boys. 3:24 They've been working for a year to make Tangled what it is today, so far. 3:31 And up until a month ago, they had, I think, very little runway to actually do it. 3:36 So it's kind of like a make or break thing. 3:39 And they've done super well, in my opinion, in the Lewis end of things. 3:46 So they have recently hired me and we have a part-time student dev, Boltless, from South Korea. 3:53 So we're kind of like a remote-ish first company. 3:57 And I'm breaking that rule with Anirudh by having this coworking space in Helsinki where I can host all my mini PCs and freaky little Lewis cloud applications. 4:07 Yes, I'd like to talk a little bit about my take on Tangled before joining, like 6 months ago, 9 months ago-ish, because yeah, as I said, I knew Anirudh personally and I was like interested vaguely in what he's doing after he quit UpCloud to do Tangled. 4:27 Actually, this was before Tangled had its own hosted PDS. 4:31 So I had to make a BlueSky account. 4:34 Hmm, I was like, what the— why do I have to do this? 4:37 Why can't I just sign up to Tangled itself? 4:41 So that was an interesting little piece of friction before secondary apps with their own PDSs came into the— became more normal, should I say. 4:53 And my take once I logged in for the first time that it was— It made sense. 4:59 It's a utilitarian thing. 5:00 I'm all about that. 5:02 It just kind of shows you what you need to see. 5:05 Oh, actually, I haven't even said what Tangled is. 5:08 Hands up, who knows what Tangled already is? 5:11 Okay, okay. 5:12 I mean, that's most of you, but not all. 5:14 So Tangled is a GitForge— I don't think I'm allowed to say GitHub competitor, but we're, you know, it's using App Proto. 5:24 The tagline is tightly knit social coding. 5:28 So if you wanted to use Git yourself on a server, you can go ahead and do that and it's all well and good, but if you want issues and PRs and you want to collaborate with people more easily, then you're going to need like an actual social thingy. 5:39 So Anirudh and his brother were like thinking, whoa, what's the best kind of social open infrastructure that we could choose to make that happen or like plug into? 5:49 And what do you know? 5:50 I wonder which one it ended up being. 5:52 So yeah. 5:56 Alrighty. 5:57 Yeah, so I mentioned that it's kind of like a GitHub competitor, but Tangled basically aims to go above and beyond. 6:05 The baseline is having everything that everybody already knows and uses, but then beyond that, there are all sorts of nice features that we got either today already or coming down in the pipeline. 6:17 Right now, this is a screenshot of a stacked PR. 6:20 That I have PR'd. 6:21 It's actually not closed yet, so it's a very— yeah, it's close to my heart. 6:25 It needs to be merged soon, this one. 6:28 But who has used Jiu-Jitsu before? 6:31 The, like, Git superset? 6:33 Oh, we got— okay, less hands. 6:35 Jiu-Jitsu— who knows what Jiu-Jitsu is? 6:37 Okay, okay. 6:39 I mean, kind of the same hands, I think. 6:41 Jiu-Jitsu is like a superset on Git. 6:43 It's nice. 6:45 Was it made by Google originally? 6:48 I don't know the history, but I was kind of not forced to use Jiu-Jitsu when starting Tangled, but they highly encouraged that I try it, you know, like a Brussels sprout, and I tried it and I like it a lot actually now. 7:00 So I'm submitting stacked PRs all the time, and this is one of them. 7:04 Maybe you'll notice that usually when you have a PR in GitHub or anywhere else, the convention is that you want everything in one massive commit so that your commit history isn't horrible after the fact. 7:15 Which means that when you're trying to push big features, you have to make them in entirely separate PRs and then you kind of like lose what's going on. 7:23 You have to have issue trackers or like actual full-on like tracking apps separately from your GitForge. 7:32 Or you have it in one massive PR and that is also just like a monster PR that takes weeks or months to review all in one go. 7:41 So what stacked PRs gives you is that you can kind of chunk things into each commit being its own like separate mini PR and you can go through them one by one. 7:50 You can merge a subset of them if you like. 7:52 So if we said that we like everything up to 1137 there, we could just merge all of those and then continue on the rest of them if we weren't so sure about the rest of them. 8:03 We can clear them one by one. 8:04 It kind of forces me, the submitter of the stacked PR, to also break up my commits into logical chunks. 8:13 I think some people do it like chronologically speaking, but I think that the dimensionality personally for me, how I've been doing it, is that any one of them could be merged like semi-independently of one another, but currently stack PRs can only be merged bottom to top. 8:30 So yeah, that's one value add as an example. 8:35 So So that concludes the normal human slides and now I'm gonna go straight into architecture diagrams. 8:43 I hope everybody's okay with that. 8:45 Let's start easily and simply. 8:49 This is an extremely, extremely simplified view of the blue sky infrastructure, not necessarily at Protospec because we have a relay in there which is, I'll talk about that later. 9:02 So in green, these little arrows with the hole in the arrowhead, those are read requests. 9:08 This is how I see it. 9:09 I don't think— this is not like a standard, I just kind of made this up. 9:12 Because this is, hey, this is Tangled Lewis hands, so this is how I think about things. 9:16 Like a read request goes out and that's in green, and then a write request goes out and that's in red. 9:22 I could make them— I think the standard is to make them bidirectional arrows, but I don't know, it's kind of— difficult for me to understand. 9:30 This is missing some of the separate blue sky infra like FeedGen and Labelers and stuff that goes out to the side. 9:39 I wonder if I can get my mouse over this. 9:40 Yes! 9:41 So you'd have more arrows coming out here for FeedGen and Labelers, yadda yadda yadda. 9:48 But what concerns me is the core here. 9:51 So you only ever talk to your PDS Your personal data server. 9:56 Is anybody— put your hand up if there's something that you want me to explain beyond just saying PDS and I assume that you know what I'm talking about. 10:04 It's a weird, weird question to phrase it. 10:06 I mean, I don't know, I'll just explain everything anyway. 10:10 So a PDS is where you store your data and then that then goes on and makes a write-esque, in quotation marks, request to a relay which then kind of caches in a time-based cache and forwards it on to an app view. 10:27 And I've got like stacked boxes for everything that can have, you know, 1 million of them. 10:33 But in the Bluesky infrastructure, you only have one app view. 10:36 So there's no stack there. 10:39 And then your PDS forwards on read requests to that app view that then has like a pool, like a full cache. 10:46 And why I said app view-like is that I wanted to include Red Dwarf from the get-go. 10:55 So Red Dwarf is like an AppView list, quote unquote, AppView, and just kind of uses Fig's microcosm tools in lieu of an AppView proper. 11:07 So it's a lot easier to run, a lot cheaper. 11:10 And that's something I think is very interesting, and I think it's kind of the future, but that's just my opinion. 11:15 But yeah, Tango. Speaker B 11:16 Probably a great opportunity as well. 11:18 How many people in the room have heard of Red Dwarf? Lewis Torrington 11:21 Yeah, okay, wow, yeah, decent amount of hands. Speaker B 11:24 RedDwarf.app if you want to try it yourself. Lewis Torrington 11:27 Yeah, I like it, I recommend it. 11:29 Very good. 11:30 So this is Blue Sky as an introduction to now what I'm going to show is how I see the current architecture of Tangled in comparison to this. 11:40 So yeah, we've got more arrows, we've got more stuff. 11:44 So in blue we've got the PDS-like like the data storage, permanent storage layer. 11:51 So those are in blue, and then we have our relay, and then we have our app view. 11:55 So does anyone want to give a shot of what I think is something that could be improved right from the get-go? 12:03 One of the easiest wins. 12:05 Anyone? 12:05 Anyone? 12:06 Bueller? 12:07 We got a hand in the back. 12:13 I'll get to that, I'll get to that, I heard it. 12:17 The question was the repos live on the knot? 12:19 Question mark? 12:20 Exclamation mark? 12:21 The thing I've always been confused by is like, why don't I have a repo in my PDS? 12:25 Yeah, so, well, that's a controversial statement, son. Speaker B 12:30 I don't care. Lewis Torrington 12:32 I agree, and we'll get to that because we have Lewis the Tangled and ideal architecture coming up in a couple of slides, but yeah, no, I agree. 12:42 I think that a knot is a kind of PDS. 12:44 Bastard kind of PDS. 12:46 And so is the spindle. 12:48 So yeah, which begs the question, what the heck is a knot and what the heck is a spindle? 12:53 So a knot stores your Git repos. 12:57 So this is, remember, it's a Git fork, so your Git repos have to go somewhere. 13:01 And unless we were going to be really stupid and put your Git repos as some weird layer on the MST in your actual PDS, Yeah, there has to be a second server that is PDS-like because it stores data and it's personal. 13:19 And that's called a knot in Tangled. 13:22 And a spindle is the CI system, so that's a separate server right now that— I mean, all of these can be self-hosted. 13:30 So you can have your own knot and spindle and eat it too, even right now. 13:36 So that's how it goes. 13:40 So they all kind of communicate to each other in a kind of crazy way, which is fine and good. 13:46 Yeah, what was I going to say? 13:51 Yeah, there's a recent introduction to this architecture literally last week that Boltless, our Korean developer, has added, which I think is really great. 14:01 So now there's one more thing. 14:03 This is like a spot the difference picture. 14:05 What? 14:06 What? Speaker C 14:06 What? Lewis Torrington 14:07 What? 14:08 So yeah, there's like a relay-ish thing there, so I've colored that in orange. 14:13 So Knot Mirror saves all your Git repos on all of your knots in one sort of place and uses that like as a cache. 14:21 So it's kind of half AppView, half Relay, but I think it's a nice little piece of architecture that I think takes design inspiration from Fig's work. 14:32 I think I've mentioned Fig a million times already, but yeah. 14:36 Very inspirational person in this room. 14:38 So yeah, I mean, it looks a little crazy, but remember that in the blue sky infrastructure one I specifically said that I made it super simple and didn't include all the feed gen and labeler stuff, but like this is our equivalent, I mean, our Not Mirror Will Do Things TM to people's, well, not doing things to people's Git repos, but like, you know, we'll have better like search and stuff without slamming each, not with crazy requests and digesting the thing all damn day long. 15:10 So yeah, you kind of talk to the app view at time of speaking instead of the PDS directly, but then we trust the app view to write to your PDS. 15:21 So we've got improvements to make, and that's kind of actually why they hired me in the first place, is quote unquote "app rotation." Here's the thing about kind of making a company versus just making something that's like a love project, is that you're kind of on a time constraint. 15:39 So you got to get something out, or somebody else is going to get something out maybe before you. 15:48 And so Tangled has released things into production that need a little like broom sweeping to make them fully @protated. 15:56 For example, when you edit your PDS records, usually that's supposed to then go to the— well, it does go to the relay and then gets uptaken by the app view, but if your records aren't uptaken by the app view for whatever reason, then you can't edit your records. 16:13 So, I mean, there are things that you can edit on Tangled and things that you can't yet, and my job is to make it all work properly. 16:24 And with that, I would like to show you my ideal world. 16:30 So yeah, I think this kind of gratuitously resembles the Blue Sky one. 16:36 It's just with 3 PDS-like things instead of 1. 16:40 I would like to absorb the Not Mirror into an app view-like, so fully going microcosm style like Red Dwarf. 16:48 I mean, again, so take this with a grain of salt. 16:50 This is not Tangled the company's vision, this is Lewis's mystical ideas that he's showing a room of other nerds. 16:58 You talk to the PDS that talks to the knot, or proxies it on with reads and writes, and that talks to the spindle, they all talk to the relay, which means that each of the knot and spindle have to act more like a PDS to be sending events to the relay and not tricking it into thinking that they're PDSs because they are PDSs, right? 17:17 You know, like, wink. 17:19 Right? 17:21 So actual Blue Sky team who are in charge of the protocol, stop me now if you don't like this idea. Speaker B 17:33 Can I ask a question, Louis? Lewis Torrington 17:34 Yeah, you can. 17:35 Yeah, go ahead. Speaker B 17:36 So this is super fascinating. 17:39 So everything becomes PDS is kind of what you're saying. 17:44 Well, if you want an architecture like this. 17:46 I mean, even beyond Tangled. 17:48 Are you going to have those knots have service endpoints in a user's DID doc? Lewis Torrington 17:56 We'll see. 17:57 Remains to be seen. 17:58 Yeah, it just depends how far we're willing to go with it. 18:01 Because imagine this. 18:03 This may be a feature or a bug, depending on how you see it. 18:07 But the consequence of this kind of architecture, the further we take it, is that your Git repo on your Knot could actually kind of, if it has its own DID, it could post on Bluesky. 18:19 Your Git repo. 18:20 Like if you have a new issue or something, there could be like a reference as a post on Bluesky. 18:26 Or like something was merged or something like that. 18:29 I don't know, random updates. 18:30 Like it could be self-labeled as a bot account because it's a Git repo, not a human being. 18:34 I don't know. 18:35 That seems kind of interesting. 18:37 I'd like to show you one more even wackier, wilder idea that I've been kind of dreaming up at 3 AM is that another spot the difference is that there's no relay. 18:49 Hmm, imagine that. 18:51 With more and more people making cheaper and cheaper relays and things, and I've been talking with a lot of people on how to make a cheaper implementation. 19:01 Not just running something cheaper, but doing the spec, implementing the protocol more cheaply, you could just inline it into your AppView or AppView-like thingamajig. 19:14 So there's like less to have to manage. 19:17 This remains to be seen. 19:18 This is kind of far out. 19:19 But I think that maybe you'll hear more from me later in the year about this sort of thing. 19:23 Maybe not even necessarily for Tangled, but maybe I'll contribute some random stuff to other projects that— and talk to some other people who are also thinking relayless behavior. 19:35 So yeah. 19:36 Alright, concretely speaking, I want to talk about this thingy back here. 19:42 Because I mentioned it earlier, so maybe if you're curious about what this first major PR that I've been cooking up for Tangled has been in the past month that I've been here. 19:52 So I haven't got anything else to do, so I'll show you what I'm doing. 19:58 So this is how a knot stores its data about a Git repo. 20:03 Currently. 20:05 Does anybody see something that's not so good about this? 20:10 Hand. 20:11 Roscoe. 20:11 The repo is owned by one did. 20:17 Yeah, that's one, that's one. 20:19 Okay, Roscoe said the repo is owned by one did. 20:23 Yeah, sure. 20:28 I mean, that's the one I was looking for. 20:29 The ID is a handle. 20:30 Hmm. 20:32 So yeah, I mean, on the AT protocol, your ID is kind of like supposed to be a DID, a decentralized ID. 20:39 So the ID right now of a Git repo is literally the string, the owner handle slash the repo name. 20:44 So there's like multiple things that are needing some love. 20:51 You can't really change the repo name if it's in the ID, right? 20:54 If it's the primary key. 20:56 And then, I mean, I actually have kind of not borked one of my Git repos, but I mean, as I said at the start of the slides, I changed my username to oyster.cafe, so all my Git remotes were like looking for louis.moore and I'm like, what's going wrong, what's going wrong? 21:14 So it turns out that the Git remote was my handle that had now changed. 21:19 Mm. 21:21 And so I've got this yin-yang symbol because we do actually have a very nice architecture. 21:27 I'm not here to slam the existing state of Tangle. 21:30 It's very nice as is. 21:31 Like you have one corresponding record on your PDS that says that you do in fact own this so that I can't— let's say I have a knot which has a Git repo on it and I go into the database and I say that the ID and the owner ID is, you know, obama.bluesky.social, and then I have something naughty on that Git repo, and then if there wasn't this corresponding record on the PDS of Obama, it wouldn't validate, 'cause that would be pretty weird to just say that people own certain Git repos. 22:05 So that's the current state. 22:06 So what my PR does is just mint DIDs for Git repos on each node. 22:12 So when you're not upgrading, upgrades, when this thing merges and you're not upgrades, it will basically literally just for loop through all your Git repos and mint a DID for them. 22:24 So I'm sorry to the Bluesky people for all the testing I was doing of like, you know, 10,000 at a time minting DIDs just to see whether this would work very well. 22:37 Yeah, we can talk about that later. 22:38 But yeah, I'm sorry about that. 22:41 So yeah, this brings a lot of benefits actually. 22:45 So you can transfer ownership of Git repos. 22:47 I mean, I haven't got that in the PR, but that would be coming next, right? 22:52 If a Git repo has its own DID, then you can move it around however you like. 22:56 You can transfer ownership, you can transfer it between Knots even. 23:00 You can do all sorts of things. 23:02 You can do anything that you can do with a regular actor on the AT proto. 23:06 Um, yeah. 23:12 So there are some other ways that I could have gone about this. 23:16 I could have just not done a DID. 23:18 And I could have also specified that a knot is specifically in the DID doc that you, when you're minting a DID, I could say that it's a hashtag tangled knot and not a hashtag AT proto-PDS, but I think that this comes to the Lewis end again. 23:37 I think that a Knot is a kind of PDS because it stores data. 23:42 I mean, maybe it's not personal, but yeah, another thing that this unlocks when a Git repo has a DID is that we can probably do collaboration better. 23:51 We already have collaborators as a list that you can add other collaborators who are like co-owners of a of a Git repo, but there's still like one owner. 24:00 I mean, yeah. 24:03 Um, any questions at this point? 24:05 Because I'm gonna start yapping even more yappily after this. 24:10 Alright? 24:12 So if there's random, random time, then there's random topics. 24:16 Um, so we got, we got 7 minutes for me to yap. 24:19 Um, I think I'll start with SIOPS actually, in general, and how that relates at all to Tangled. 24:26 When I was working at UpCloud for the past year, I was also doing marketing as well as software engineering. 24:34 I was kind of like dev reling as a guerrilla marketer, and maybe you know of UpCloud because UpCloud was on Bluesky shitposting. 24:42 And I'm here to say right now why Tangled isn't shitposting the same way. 24:49 Since I got hired, because I can do that and it has been proven to, I don't know, get some people at least giving it a thumbs up. 24:57 And the reason is that it's a psyop. 24:59 UpCloud is in the business of making money and yeah, it's just that there are a lot of civics, ethics, and philosophical people here and I wanted to throw my hat into the ring just a little because I do know a little, like a thing or two about that. 25:15 I tried to go about the psyop at UpCloud as ethically as possible, but it's what it is. 25:22 You know, like UpCloud is trying to get your money, unlike Tangled. 25:27 So that's— it's as simple as that, basically. 25:32 Of course, the Tangled account will reply to people and, I don't know, try to be helpful and show updates and, you know, do the basics to make people happy and give announcements to let people know what's going on under the hood, but I don't think that Tangled should— I don't think it's its place to be posting like a person in the same way that UpCloud and some other companies were doing. 25:54 Like, it's just the same vibe as when, you know, like Arby's and KFC are arguing in Instagram comments. 26:02 Like, it was funny for a little bit, but then you realize that they're still only doing this to, like, get you to go to Arby's, right? 26:10 They don't actually give a shit at all. 26:11 Like, whoever is the face is also pretty funny. 26:16 Haha, me at UpCloud, but you know. 26:19 But again, it's just like when people ask real questions, especially on the Fediverse, they're like asking when are you gonna do BGP as UpCloud, because you know, it's a cloud company and they don't have like managed BGP, or you can't just like send arbitrary BGP things like other clouds. 26:34 And I personally I'm a nerd and I want that also. 26:37 And I pass on every request and, you know, it all— I do my part sort of thing. 26:41 But then you are the face of this like big black entity that's just like, you know, Kawonoshi from that Ghibli film. 26:50 That's how I feel like, or just the mask part of it, I guess. 26:53 And then managers are just like, yeah, yeah, keep up the good work, whatever you're doing. 26:57 Like it doesn't matter because we're not going to like do anything about it, but just like, you know, say whatever it to say whatever it is to say that gets people to buy more upCloud. 27:05 So yeah, Tangle doesn't have that incentive, that perverse incentive. 27:08 Yeah, that's all I had to say about psyops. 27:12 How much time we got? 27:14 Oh yeah? 27:15 We got one question in the audience. Speaker C 27:21 Okay, so this gets into the money question a little bit. 27:23 You just said that Tangle doesn't want your money, but Tangle just took on a bunch of investment. 27:29 Ostensibly because those investors believe that Tangle will be able to pay back that investment. Lewis Torrington 27:35 Yeah. Speaker C 27:36 Which means Tangle will want your money at some point. Lewis Torrington 27:39 Yeah, yeah. 27:40 The way that Tangle is going to try and go about getting money is going to be hopefully fundamentally different to like something like a SaaS, like, or IaaS, or, you know, UpCloud is infrastructure as a service, so there's no like free tier at all. 27:57 This is the Lewis end, so I can't speak to the company itself on how it wants to make money, but I hope, I hope that the direction that we go in is that we do the enterprise pays for the masses to have it for free, you know what I mean? 28:11 Because I want free things also. 28:15 And I want Tangle to be free for people. 28:16 We got another question over there in the audience. 28:20 Run, Boris, run! 28:21 No, you don't have to. Speaker D 28:30 I didn't have a question, I just wanted Boris to do some cardio. Lewis Torrington 28:32 I'm totally kidding. Speaker D 28:36 So my question is actually going back to some of the technical stuff you were talking about, because you were talking about generating DIDs for the Knots, or DIDs for the repositories. 28:46 And so yesterday we saw Brittany Ellis talking about the need to create a DID for like a group, right? 28:55 And so I guess my question is, if we're talking about the repositories needing DIDs and the not sort of acting as a PDS for a non-person, and then we've got other people with these other needs to create like non-person, is this— is there anything that's fundamentally different about a repo needing a DID other than just kind of any non-human entity? 29:17 Or is this kind of pointing to the need for like a— we need to be able to assign a DID to an object? Lewis Torrington 29:23 I think it's the former of the two. 29:26 I think that it'll play quite well into also the permission data stuff. 29:30 Like there's going to be a DID for like a space also. 29:34 So then hopefully this will all plug in quite nicely when that's a spec. 29:39 We can just say that you can also make private repos that way also. 29:43 That the DID that was minted for a Git repo can now be a space DID as well. 29:49 It's like a private— it is an object, it's a space, it's a— you know, at the end of the day it's just an ID. 29:55 From my perspective, I just call an API and I get an ID back. 29:59 Or 10,000 of them. 30:03 Did that answer your question? Speaker B 30:06 I think this is the kind of stuff that's emerging from multiple different corners, but you can start to see patterns. 30:12 There's this actor model that we see that can put all sorts of graphs and links and edges that end up on Fig's infrastructure. Lewis Torrington 30:23 Yeah, exactly. 30:24 Yeah, it's funny. 30:26 Hang on a second. 30:27 We have one minute that I want to yap about Fig stuff. 30:31 So at UpCloud, I was very cloud-native pilled. 30:37 So it's like fast food, like they— it's like, oh, you want to host objects? 30:42 So use object storage, just spin it up, just spin up a managed object storage, it's so easy. 30:47 And then you're kind of locked into that, but then you're like, oh, well, I need a database. 30:50 Well, it's so easy to have a managed Postgres instance. 30:53 And I was like very wrapped up in that, obviously, because 'cause I mean, I just get nerd sniped like the rest of us, and these are all very interesting technologies, but in the month that I have been at Tangled and no longer have free cloud credits, all of a sudden I have to run things on a— I mean, for TranquilPDS that I do in my spare time, the goal is kind of to run it on a vape natively, and so this relates to Fig stuff because we're trying to get things cheap and as small and as, you know, like, I don't know, like perma-computing principles. 31:26 Like, what is the smallest that I can make this that still works and works perfectly? 31:32 You know what I mean? 31:33 I don't know where I was going with that, but I just wanted to stop with that because I guess that's time, basically, right? Speaker B 31:39 Thank you very much, Louis. 31:41 Thank you.