Transcript
[[!template text="""Hello, welcome to this talk on hyperdrive.el. I'm Joseph""" start="00:00:00.000" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Turner presenting on behalf of ushin, a tiny independent""" start="00:00:03.920" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""information freedom nonprofit. hyperdrive.el is an Emacs""" start="00:00:07.440" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""interface to the hyperdrive peer-to-peer file sharing""" start="00:00:12.040" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""system built by Holepunch. Like other peer-to-peer file""" start="00:00:14.960" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""sharing tools, such as BitTorrent, hyperdrive lets you""" start="00:00:18.400" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""share unlimited files directly with other users without""" start="00:00:22.120" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""having to go through a central hub. One thing that sets""" start="00:00:25.960" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Hyperdrive apart is that the files you share can be""" start="00:00:29.520" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""modified. Since hyperdrive has built-in versioning,""" start="00:00:32.520" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""you can explore the history of changes that you make to your""" start="00:00:35.760" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""files or others make to theirs. You can stream video and""" start="00:00:38.520" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""audio. There's no sign-up or account creation process""" start="00:00:42.200" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""required. It's all free software. This means that the""" start="00:00:45.640" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""community has the legal right, the tools, and the""" start="00:00:49.320" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""information necessary to participate in the development""" start="00:00:52.320" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""process, or even fork the project""" start="00:00:55.360" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""and go cimarron. Since""" start="00:00:58.338" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""last year's talk, we've added a few new features. It's now""" start="00:01:00.800" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""much easier to get started using hyperdrive.el, since we""" start="00:01:04.920" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""added the hyperdrive-install command, which downloads the""" start="00:01:08.560" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""gateway program and installs it on your machine. We added a""" start="00:01:12.400" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""peer graph feature, which lets you visualize your network""" start="00:01:16.400" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""of sources of information. We also published a new package,""" start="00:01:19.960" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""hyperdrive-org-transclusion, which lets you display live""" start="00:01:24.720" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""updating snippets of hyperdrive files in Org documents.""" start="00:01:29.080" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Let's get started. Let's say you get an email from your""" start="00:01:34.600" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""friend Alice inviting you to check out hyperdrive.el.""" start="00:01:37.320" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Let's click on the link here to look at the manual. Let's go""" start="00:01:41.080" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""down to the installation section. It says you need to have""" start="00:01:45.520" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""GNU Emacs version 28.1 or later. I'll assume you have it""" start="00:01:50.240" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""installed, but if not, you can click this link.""" start="00:01:54.640" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""You need to have curl installed,""" start="00:01:57.480" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""which is likely already the case, but if not,""" start="00:01:59.400" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""hyperdrive.el will let you know.""" start="00:02:01.920" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Now from within Emacs you can install hyperdrive.el.""" start="00:02:04.720" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Run M-x package-refresh-contents.""" start="00:02:10.880" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Then, M-x package-install, type in hyperdrive,""" start="00:02:14.400" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""and hit return. Next, we'll install hyper-gateway-ushin.""" start="00:02:20.920" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Let's run M-x hyperdrive-install. It's prompting me to""" start="00:02:26.080" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""download and install the gateway, which is 51 megabytes.""" start="00:02:33.000" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""I'll press y.""" start="00:02:35.881" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""I will skip most of the download process. The download is""" start="00:02:39.781" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""wrapping up.""" start="00:02:44.160" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Now, it's prompting me to start the gateway. I can either run""" start="00:02:49.440" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""M-x hyperdrive-start, or I can press this button. And""" start="00:02:53.400" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""after a few moments, we'll see that the gateway will start.""" start="00:02:59.280" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""It's ready. You can also click this button, "View hyperdrive""" start="00:03:03.480" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""User Info Manual", to view the same manual that we were""" start="00:03:07.280" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""viewing in the browser. The info manual comes with""" start="00:03:10.240" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""hyperdrive.el and is available offline. Now that""" start="00:03:13.480" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""everything's installed and the gateway is running, we're""" start="00:03:17.320" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""back at Alice's email. Let's click on the link to her""" start="00:03:20.560" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""hyperdrive. Here's Alice's hyperdrive. Let's open her""" start="00:03:23.400" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""hello.org file.""" start="00:03:28.720" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""I'm being prompted to mark Alice's hyperdrive. Currently,""" start="00:03:33.080" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""it's unknown. I'll press ? to see more details.""" start="00:03:37.320" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text=""""safe", "unsafe", "unknown". I'll press e for "explain". In the info""" start="00:03:41.880" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""manual, it says that if a hyperdrive is marked as safe, that""" start="00:03:48.280" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""means files in that hyperdrive will automatically have""" start="00:03:54.140" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""their major mode enabled based on their file extension. In""" start="00:03:57.800" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""this case, if I mark Alice's hyperdrive as safe and I click on""" start="00:04:02.560" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""this hello.org file, Emacs will automatically enable Org""" start="00:04:06.720" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""mode in that file. Since I know Alice directly, I'll mark her""" start="00:04:10.520" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""hyperdrive as safe. I'll click on the file hello.org again,""" start="00:04:14.920" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""and now I'll press Shift-s for safe.""" start="00:04:19.640" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Now I'm going to set Alice's petname. hyperdrive.el has""" start="00:04:25.680" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""different ways to name a hyperdrive. The public key is the""" start="00:04:30.640" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""drive's unique identifier. You can also assign yourself a""" start="00:04:34.680" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""public nickname, which you announce to the world. Then""" start="00:04:38.720" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""users on their own machines can assign each hyperdrive that""" start="00:04:42.360" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""they are aware of a private petname. I'll assign Alice a""" start="00:04:45.960" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""petname, which is the way that I will identify Alice just on""" start="00:04:50.440" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""my own machine. I'll type in "My Friend Alice".""" start="00:04:54.080" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Then when I refresh her drive,""" start="00:05:01.907" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""we see that it says petname in the top left.""" start="00:05:03.708" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Now I'll do what she asks,""" start="00:05:07.360" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""which is to right click on her name and""" start="00:05:09.393" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""open her peer graph. In the context menu, I see a few""" start="00:05:11.614" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""different actions I can take, but I'll click on "Peer Graph".""" start="00:05:15.260" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""It's prompting me to pick the max hops for sources. Default 3.""" start="00:05:19.160" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""I'll choose the default. Same for blockers. I'll explain""" start="00:05:22.960" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""what that means later.""" start="00:05:26.800" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""This is Alice's peer graph. Here we can see that Alice has two""" start="00:05:30.380" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""direct sources, Bob and Eve. Both Bob and Eve have assigned""" start="00:05:35.960" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""themselves nicknames, and so we see Bob and Eve here. Eve has""" start="00:05:41.280" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""assigned this other hyperdrive to be a source. But this""" start="00:05:45.920" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""other hyperdrive, whose public key is "kb3zr6mq"""" start="00:05:50.480" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""and so on--if we hover over the hyperdrive, we'll see the full""" start="00:05:55.960" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""public key--has not assigned itself a nickname. So we""" start="00:05:59.520" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""just see the truncated short public key. Because we've""" start="00:06:03.240" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""assigned a petname for Alice,""" start="00:06:08.000" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""we see Alice's petname show up here.""" start="00:06:10.918" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Now I'll open the peer list view to show the same""" start="00:06:14.559" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""information in a different way. Since I'm using a large""" start="00:06:17.840" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""font, I'll widen this window so we can see everything going""" start="00:06:21.480" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""on in the peer list. We see that the root hyperdrive is""" start="00:06:25.200" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""petname "My Friend Alice", nickname "alice", public key "dm1",""" start="00:06:29.320" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""and so on. We've set the sources max hops to three, which means""" start="00:06:33.640" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""that we will go out at most three hops from Alice in order to""" start="00:06:38.360" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""find sources. One hop from Alice are Bob and Eve. One hop""" start="00:06:42.360" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""from Eve is "kb3", which is two hops from Alice. Now we've set""" start="00:06:49.840" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""the max hops for sources to three, but in this case, the""" start="00:06:55.840" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""network is small, and "kb3" has no sources. So we can only go""" start="00:06:59.160" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""out two hops from Alice until we run out of sources. In the""" start="00:07:04.280" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""future, we plan to add a search feature based on this list of""" start="00:07:07.960" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""sources. You type in a query, and you get back a list of""" start="00:07:11.160" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""results published by Eve, Bob, or "kb3". It's also possible to""" start="00:07:14.480" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""block peers. I'll open the transient menu by pressing""" start="00:07:19.880" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""question mark. For now, let's turn on showing blocked""" start="00:07:23.240" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""peers. I'll press "s x", and now it says blocked sources.""" start="00:07:28.760" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Now we can see Mallory also shows up. Mallory has been""" start="00:07:35.440" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""included as a source by Eve, but is blocked. So in the end""" start="00:07:38.840" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""result, she does not show up in the list of sources. Instead,""" start="00:07:43.400" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""she shows up as a blocked source. But how is it that Mallory""" start="00:07:47.040" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""ended up being blocked? Let's open up the transient menu""" start="00:07:51.840" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""once more and click "s b" to show blockers. Now we can see that""" start="00:07:55.040" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Bob has blocked Mallory. This means that Bob is not""" start="00:08:02.760" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""interested in seeing search results from Mallory. Since""" start="00:08:07.080" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Alice has included Bob as a blocker, that means that Alice""" start="00:08:12.520" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""trusts Bob to block people on her behalf. So since Bob has""" start="00:08:17.640" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""blocked Mallory, Mallory does not show up in Alice's""" start="00:08:23.440" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""peergraph as a source. Well, now I'm curious to see what it is""" start="00:08:27.480" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Mallory published that drove Bob to block her. I'll""" start="00:08:31.920" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""right-click on Mallory, and in the context menu, "Open Hyperdrive"""" start="00:08:35.920" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""and... Wingsuit Flying Grand Canyon Point of View Not Clickbait?""" start="00:08:39.440" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""I gotta check this out! [playing: Rick Astley's "Never Gonna Give You Up"]""" start="00:08:44.320" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""No! Disgusting! No wonder Bob blocked Mallory. Let's go""" start="00:08:49.880" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""back to Alice's peer graph. Mallory is a blocked source.""" start="00:08:56.160" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Are there any peers who are blocked but who aren't sources?""" start="00:09:01.840" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""I'll open the transient menu and I'll press "s x". Now we're""" start="00:09:05.600" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""looking at blocked non-sources. Darth, who's been blocked""" start="00:09:11.740" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""by Bob, has not been added by any of Alice's sources as a""" start="00:09:16.840" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""source. So Darth is a blocked non-source. I'll open the""" start="00:09:20.760" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""transient menu again and I'll press "s x". Now we're""" start="00:09:25.560" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""looking at all blocked peers. Both Mallory and Darth show""" start="00:09:29.700" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""up. If I scroll down in the peer list, we'll see that Mallory""" start="00:09:34.640" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""is listed under blocked sources, and Darth is listed under""" start="00:09:37.960" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""blocked non-sources. This view has gotten a little bit busy.""" start="00:09:42.520" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Let's say that we're only interested in how Alice""" start="00:09:45.560" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""relates to Mallory. I'll open the transient menu, and I""" start="00:09:49.320" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""will filter the graph to show paths only to Mallory. I'll""" start="00:09:54.520" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""press "o a", type in Mallory, and hit enter. Now we see that""" start="00:09:58.520" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Mallory has a bold border and "kb3" and Darth are missing from""" start="00:10:05.520" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""the graph. Eve shows up because there's a path from Alice to""" start="00:10:11.480" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Mallory that goes through Eve. Same for Bob. We can also add""" start="00:10:16.680" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""more than one peer in this view. I'll press "o a" again, and""" start="00:10:22.480" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""this time I'll choose Darth. Now Darth and Mallory have bold""" start="00:10:28.600" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""borders, and "kb3" is still missing. We can remove Mallory and""" start="00:10:34.720" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Darth one at a time with "o r", or we can press C-u, the""" start="00:10:38.840" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""universal prefix argument, and then "o r" to remove both""" start="00:10:42.800" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Mallory and Darth from the list. Now we're back to seeing""" start="00:10:47.680" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""everybody. This view of the graph is somewhat simplified""" start="00:10:51.240" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""because we're showing only""" start="00:10:55.680" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""the shortest paths between peers.""" start="00:10:57.538" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""If I press Shift-s now we're looking at all paths.""" start="00:11:00.239" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Here, we can see that in addition to going from Alice to""" start="00:11:06.040" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Bob as a source directly, we also go from Alice to Bob through""" start="00:11:10.040" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Eve as a source. Let's go back to showing only the shortest""" start="00:11:15.520" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""paths. Currently, the max hops for sources and for blockers""" start="00:11:21.080" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""is set to 3. Let's see what happens if we set the""" start="00:11:27.720" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""blockers max hops to 0.""" start="00:11:31.680" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""After the graph reloads, we now see that Mallory""" start="00:11:35.800" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""shows up as a source, not as a blocked source.""" start="00:11:39.480" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""This is because Bob,""" start="00:11:43.287" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""who is one hop away from Alice, is no longer included as a""" start="00:11:44.760" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""blocker, because we've set the blockers max hops to 0. And""" start="00:11:49.200" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""since Bob is not a blocker, the fact that Bob blocks Mallory""" start="00:11:52.480" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""doesn't factor in. While Alice is the only one who gets to""" start="00:11:57.520" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""decide who her direct sources, blockers, and blocked peers""" start="00:12:01.720" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""are, anyone can view Alice's peer graph, tinker with the""" start="00:12:05.960" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""sources or blockers max hops, and use her list of sources to""" start="00:12:10.240" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""do a search. Let's see what happens if we set sources max""" start="00:12:14.440" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""hops to 2. Well, the graph doesn't change, because we only""" start="00:12:19.240" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""ever went out 2 hops anyway. Let's set source's max hops to 1.""" start="00:12:24.720" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Now we only see Bob and Eve, since "kb3" and Mallory are""" start="00:12:30.140" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""2 hops out. Source hops 0. Now we're left with just Alice.""" start="00:12:35.160" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Now I'd like to create a new hyperdrive and add Alice as a""" start="00:12:44.120" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""source. I'll run M-x hyperdrive-new.""" start="00:12:48.000" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Now it's prompting me""" start="00:12:52.732" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""for a new hyperdrive seed. A seed is a string of characters""" start="00:12:53.813" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""that's combined with your secret key, which is generated""" start="00:12:57.480" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""for you by the gateway program, in order to create a new""" start="00:13:01.360" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""public key for each new hyperdrive. I'll type in "Joseph".""" start="00:13:04.720" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""A new drive. Now, I'll right-click on my own name, and in the""" start="00:13:10.680" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""context menu, I'll choose "Set Relation From". From Joseph...""" start="00:13:15.320" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""to Alice...as a source. Now, I'll right-click on my name again,""" start="00:13:21.600" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""and click on "Peer Graph". Sources max hops, let's say three""" start="00:13:32.280" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""and [three] for blockers as well,""" start="00:13:40.920" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Here's the peer graph from my newly created""" start="00:13:45.440" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""hyperdrive's perspective. Mallory is included as a""" start="00:13:49.400" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""source, three hops from the root. Let's open the list view.""" start="00:13:54.200" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""If we were to mark Alice as a blocker by clicking on this""" start="00:14:01.220" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""button in the blocker column next to the petname for Alice,""" start="00:14:06.440" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Then we see that Mallory shows up as a blocked source. Only""" start="00:14:12.120" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""now that Joseph includes Alice as a blocker does the fact""" start="00:14:16.960" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""that Bob blocked Mallory take effect. You can click on""" start="00:14:21.360" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""another peer to set them as the root hyperdrive. I'll click""" start="00:14:26.400" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""on Eve. Now we're looking at the peer graph from Eve's""" start="00:14:30.540" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""perspective. This peer graph view has a history. If I open""" start="00:14:35.000" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""the transient menu, you'll see here there's a back and a""" start="00:14:39.520" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""forward button. Back is bound to "l" for "left". If I press "l",""" start="00:14:42.360" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""we're looking at the graph from Joseph's perspective. If I""" start="00:14:48.440" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""press "l" again, now we're looking at Alice, as at the""" start="00:14:51.840" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""beginning. I'll press "r" to go forward, and "r" again, and now""" start="00:14:56.280" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""we're back at Eve. Now, I'd like to show you""" start="00:15:01.440" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""the hyperdrive-org-transclusion package we published.""" start="00:15:04.735" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""I'll open up the hyperdrive manual""" start="00:15:08.338" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""to see how to install it.""" start="00:15:10.359" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Now, from here, I'll press "m" and type in transclusion to jump""" start="00:15:15.680" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""straight to the "Org-transclusion integration" section of""" start="00:15:21.000" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""the manual. To summarize, we can install""" start="00:15:23.600" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""hyperdrive-org-transclusion with""" start="00:15:27.080" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""M-x package-install RET hyperdrive-org-transclusion.""" start="00:15:32.220" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Then, once this is done, we will copy the following snippet""" start="00:15:37.000" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""and add it either to our init.el file or, in this case, I'll""" start="00:15:43.780" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""just evaluate it. Now, hyperdrive-org-transclusion-mode is""" start="00:15:47.560" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""enabled.""" start="00:15:52.440" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Let's go back to the hello.org file in Alice's hyperdrive.""" start="00:15:58.100" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""I'll right-click on Alice, then click "Open Hyperdrive", and""" start="00:16:01.480" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""hit RET on hello.org. This time, I'm not prompted to mark""" start="00:16:07.240" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Alice's hyperdrive as safe, since we did it already. I'll""" start="00:16:11.360" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""navigate to the "Check out my peers" heading. Then I'll run""" start="00:16:16.200" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""M-x org-store-link. Now, I'll create a new file in my""" start="00:16:20.720" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""hyperdrive by running M-x hyperdrive-find-file. I'll""" start="00:16:28.360" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""select my hyperdrive and I'll call this new file""" start="00:16:32.960" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""response-to-alice.org.""" start="00:16:38.489" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Now, I'll paste in a response that I've written.""" start="00:16:45.920" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""I'll go to the bottom and I will run M-x org-insert-link""" start="00:16:50.781" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""and I'll insert the link""" start="00:16:57.980" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""that I stored earlier. As a link""" start="00:16:59.424" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""description, I'll change it to""" start="00:17:02.800" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text=""""Snippet from Alice's hyperdrive file".""" start="00:17:08.880" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""I'll save my hyperdrive file.""" start="00:17:12.700" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Now, to show that the link works, I'll just kill this buffer""" start="00:17:18.400" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""showing the hello.org file, and I'll click on the link.""" start="00:17:21.840" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Now, in addition to linking from my file""" start="00:17:27.100" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""to the heading in Alice's file,""" start="00:17:29.488" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""I'd like to transclude this heading's content in my file.""" start="00:17:31.489" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""So I'll go to the link in my file and run""" start="00:17:35.700" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""M-x org-transclusion-make-from-link""" start="00:17:38.635" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""and I'll save my file again.""" start="00:17:45.401" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""All that's been added is another link,""" start="00:17:47.880" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""prefixed with this transclude keyword.""" start="00:17:50.505" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""To make the transclusion show up inline,""" start="00:17:54.434" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""I'll run M-x org-transclusion-add. The content""" start="00:17:57.035" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""of Alice's file hasn't been copied into mine. It's just""" start="00:18:02.360" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""being transcluded. If I run M-x org-transclusion-remove,""" start="00:18:05.360" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""you'll see that the underlying content is still""" start="00:18:12.960" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""just the transclude keyword and the link.""" start="00:18:15.440" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Now some time has passed and Alice has updated her""" start="00:18:21.640" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""hyperdrive file. She wrote, "Please add me as a source." Since""" start="00:18:24.320" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""the transclude link that I added in my file does not specify a""" start="00:18:29.880" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""version, it will always transclude the latest version of""" start="00:18:33.560" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Alice's hello.org file. If I run M-x org-transclusion-add""" start="00:18:36.880" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""once more, we'll see that the latest version of Alice's""" start="00:18:42.640" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""file gets transcluded into mine. Let's say that I want to""" start="00:18:46.720" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""transclude the previous version of Alice's hello.org""" start="00:18:51.680" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""file, and I don't want my transclusion to change when Alice""" start="00:18:54.960" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""updates her file. That's possible too. I'll go over to her""" start="00:18:58.880" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""file and run M-x hyperdrive-open-previous-version. Now""" start="00:19:02.920" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""when I widen the window a little, we can see in the mode line""" start="00:19:09.760" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""that this is version 57. For an explanation of what the""" start="00:19:14.080" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""version numbers mean, check out the last video or the info""" start="00:19:18.280" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""manual. For now, I'll go down to her "Check out my peers"""" start="00:19:21.600" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""heading and run M-x org-store-link. Now, in my response to""" start="00:19:25.760" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Alice, I'll insert the link. I'll run org-transclusion-make-from-link.""" start="00:19:33.000" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Now there are two transclusions. The first""" start="00:19:39.160" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""transclusion will update whenever Alice updates her file,""" start="00:19:44.760" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""and the second transclusion is pinned to version 57.""" start="00:19:47.720" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""That covers hyperdrive-install, the peer graph, and""" start="00:19:52.920" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""hyperdrive-org-transclusion.""" start="00:19:53.357" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Feel free to check out the hyperdrive.el""" start="00:19:58.299" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""info manual in the ushin hyperdrive here, or on the""" start="00:20:00.520" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""ushin.org website. Thanks to the folks at Sopranica, we""" start="00:20:04.120" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""have a public XMPP group chat you can join, either using an""" start="00:20:08.440" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""XMPP client or anonymously from your browser. If you use""" start="00:20:11.880" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Matrix, there's also a bridge. Thank you for watching, and""" start="00:20:15.920" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""Thank you to the EmacsConf organizers and all the""" start="00:20:19.800" video="mainVideo-hyperdrive" id="subtitle"]]
[[!template text="""presenters who made this wonderful event possible.""" start="00:20:22.520" video="mainVideo-hyperdrive" id="subtitle"]]
Captioner: sachac
Q&A transcript (unedited)
[[!template text="""Thank you for the call. And we can hear you as well. Great. If""" start="00:00:00.549" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""you want to put on your webcam as well, that'd be good.""" start="00:00:02.771" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""Hello. Okay, great. We're back. Sorry for having to call""" start="00:00:10.817" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""you, but just I needed to catch your attention somehow. No,""" start="00:00:12.458" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""it's great. It's perfect. So how are you doing? I'm doing""" start="00:00:16.381" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""very well. How are you? I'm doing good as well. I'm starting""" start="00:00:19.544" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""to get tired because it's about to be 10 p.m for me and the""" start="00:00:23.332" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""energy cost of hosting is starting to take a toll on me but I'm""" start="00:00:23.332" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""fully there presently and I'm really happy to be here to""" start="00:00:23.332" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""field you some questions although I don't see any just yet.""" start="00:00:23.332" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""Let me just get how long we have until we need to go to the next""" start="00:00:40.440" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""talk. We have until 4.05 which leaves us about 15 minutes""" start="00:00:40.440" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""Joseph, I'll first start with a question. Well, first, I'll""" start="00:00:49.523" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""obviously thank you for your presentation, which I""" start="00:00:50.984" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""personally found to be very didactic, because I know that""" start="00:00:50.984" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""Prat already presented Hyperdrive last year, and you are""" start="00:00:50.984" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""presenting this year with something a little more visual,""" start="00:00:50.984" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""and I found it to be very didactic. So, first, thank you for""" start="00:00:50.984" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""all this. And I wanted to give you the opportunity as well""" start="00:01:09.388" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""if... Oh, let me just make sure. Do we have audio on? Let me""" start="00:01:11.688" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""check. Let me just check something. Let me just make sure""" start="00:01:19.635" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""that we have audio on. I have a few things I wanted to mention""" start="00:01:22.418" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""first before any questions come in. One was that...""" start="00:01:24.599" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""Can you hear me? Let me just ask the little helps in the""" start="00:01:30.584" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""background. Sure.""" start="00:01:35.529" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""Not sure if my audio is working or not.""" start="00:01:42.855" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""have someone to verify for us.""" start="00:01:50.014" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""Leo, is my audio working? Yeah, I can hear you just fine and I""" start="00:01:54.337" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""think we fixed it now. One thing I wanted to mention was that""" start="00:01:58.020" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""as with last year, I just released a new version of""" start="00:02:02.523" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""hyperdrive.el and it depends on the latest release of""" start="00:02:02.523" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""transient.el and so if you are going to install this""" start="00:02:02.523" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""package, make sure that you restart your Emacs after you""" start="00:02:20.188" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""install it, if you aren't already up to date with transient,""" start="00:02:20.188" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""which was released yesterday. Otherwise, since it, this""" start="00:02:20.188" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""latest version of transient.el updates the transient""" start="00:02:34.512" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""prefix EIEIO class, and it won't work unless you restart""" start="00:02:34.512" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""Emacs. Okay, well, good to know. I think that's a small price""" start="00:02:34.512" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""to pay to be on a bleeding est of bleeding edges. All right, I""" start="00:02:51.594" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""see there's a question here. Let me see if I can read it. Yeah,""" start="00:02:58.558" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""sure. Do you want me to field it to you or do you want to read it?""" start="00:03:01.439" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""Oh, sure. Go ahead. I'd love to hear you read it. Sure. Thank""" start="00:03:03.820" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""you. So first question. Hi there. Thank you for the talk. I""" start="00:03:06.628" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""enjoyed watching it. I tried this tool last year and it""" start="00:03:10.311" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""seemed to work well, but I don't know anyone who actually""" start="00:03:11.953" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""uses it. Network effects are tricky. Do you know of any""" start="00:03:11.953" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""public shares people can join to try to try this tool out""" start="00:03:18.198" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""properly? Thank you. Network effects are indeed tricky.""" start="00:03:18.198" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""Yeah. That's kind of part of the purpose of the peer graph is""" start="00:03:26.925" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""to make it easier to discover peers in a way that's more, uh,""" start="00:03:29.447" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""more reliable and consistent than just somebody puts a""" start="00:03:34.898" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""public key on Reddit and then it's lost unless somebody""" start="00:03:34.898" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""finds it. Um, but the, the public keys that I know of are,""" start="00:03:34.898" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""there's the public key for the ushen hyperdrive, which is""" start="00:03:45.725" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""basically just the same content that's on the website""" start="00:03:45.725" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""mirrored to a hyperdrive. Um, and then there are a few other""" start="00:03:45.725" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""ones. There's like, uh, hypha.coop has some WebZine""" start="00:03:59.814" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""content accessible via HyperDrive and also via IPFS. And""" start="00:04:04.261" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""then movesignweaver has a blog that's also available on""" start="00:04:15.584" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""Hyper. So that's blog.move.moe.""" start="00:04:15.584" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""But besides that, that's kind of the purpose of this""" start="00:04:28.427" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""PureGraph thing is to make it easier to discover other""" start="00:04:28.427" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""peers. Yeah, to make it also very visual in a way, because,""" start="00:04:33.035" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""you know, I personally, it's funny because it reminded me of""" start="00:04:36.337" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""talks that I did in the past about the trust system for PGP""" start="00:04:36.337" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""keychains, because at the end of the day, you know, this""" start="00:04:36.337" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""trust system, whether you trust someone absolutely or""" start="00:04:36.337" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""relatively, the blocking system, it feels very related.""" start="00:04:36.337" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""Any kind of a chain of trust like this, feels very""" start="00:04:56.450" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""reminiscent, obviously, but it felt very nice that for you,""" start="00:04:59.392" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""you had a dynamic display of this web of trust. Whereas for""" start="00:04:59.392" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""me, I had to make fancy diagram in ticks, in latex, just to""" start="00:05:06.739" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""make sure that people understood what was actually going""" start="00:05:06.739" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""on. Yeah, one thing I want to point out is just the difference""" start="00:05:06.739" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""in utility for something like the PGP web of trust versus""" start="00:05:15.346" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""this kind of network of peers is, if I understand right, the""" start="00:05:24.207" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""main purpose of web of trust is to identify that a certain""" start="00:05:24.207" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""public key is actually created by the person that they claim""" start="00:05:24.207" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""to be. So you have a way of identifying that a key actually""" start="00:05:24.207" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""matches like a government identity. Whereas this kind of""" start="00:05:45.900" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""network of peers has nothing to do with authenticating a key""" start="00:05:51.023" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""or associating a key with an identity, like a government""" start="00:05:53.752" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""identity. The purpose is exclusively just to get more peers""" start="00:05:53.752" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""to be able to discover more peers who have things that are""" start="00:06:00.959" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""worth reading.""" start="00:06:00.959" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""Yeah, it's a different take on a concept, but even though the""" start="00:06:13.038" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""concept might be the same, I find there's a wealth of things""" start="00:06:13.038" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""that can be done thanks to this, because as you said, you""" start="00:06:13.038" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""trust someone to send you a file that is trustworthy. Well,""" start="00:06:13.038" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""with PGP, it's mostly about communication, but about file""" start="00:06:26.743" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""sharing, it just opens up completely new avenues. Yeah. Do""" start="00:06:26.743" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""you have anything else to add? And about that, I think one of""" start="00:06:37.547" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""the barriers to the PGP web of trust is that it required""" start="00:06:42.168" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""getting together to have key parties to meet people and""" start="00:06:42.168" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""verify identities. Whereas with this kind of thing,""" start="00:06:42.168" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""there's no need to do that because so long as your content is""" start="00:06:52.635" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""interesting, it doesn't matter that you're not who you""" start="00:06:52.635" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""claim to be or that you don't even claim to be anybody. Yeah, I""" start="00:06:52.635" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""mean, again, as you mentioned, it's not about identifying""" start="00:07:03.898" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""people, it's just about identifying value, in a way, in the""" start="00:07:03.898" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""content that people share. It has nothing to do with""" start="00:07:03.898" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""verifying their actual identity. But again, it's the same""" start="00:07:12.024" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""technology, it's the same understanding, but for""" start="00:07:14.906" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""different applications, which is lovely because""" start="00:07:14.906" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""programming is fractals all over. The same problems repeat""" start="00:07:14.906" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""themselves and the same solutions show up for widely""" start="00:07:23.773" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""different scenarios, which is always good. Yeah. Anything""" start="00:07:23.773" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""else? One more thing. Yeah. One more thing is that I wanted to""" start="00:07:32.165" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""give some kudos to, um, some of the other projects that""" start="00:07:33.785" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""inspired the pure graph work. One of them is Adam Porter's or""" start="00:07:33.785" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""graph view, um, which is a, um, a tool for visualizing""" start="00:07:42.467" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""different nodes in an org file and how they link to one""" start="00:07:42.467" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""another. Um, he did. the pioneering work to figure out how to""" start="00:07:42.467" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""render interactive graphs with GraphViz. And so we worked""" start="00:08:00.814" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""together on it and kind of hacked down the last parts that""" start="00:08:09.120" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""weren't working correctly. And so this is inspired a lot.""" start="00:08:09.120" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""The user interface is inspired a lot by Adam's work. And then""" start="00:08:19.347" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""also the idea of having people that you mark as blockers and""" start="00:08:22.389" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""block is inspired by another project called TrustNet by""" start="00:08:22.389" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""Alex Cobbly. I can type in the link there. Alex, how do you""" start="00:08:31.189" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""spell it? Cobbly? Yeah, I'll type it in here. Thank you. And I""" start="00:08:38.410" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""think the link is cba.org slash TrustNet. I think that is it.""" start="00:08:46.292" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""I'm not totally sure. But yeah. Okay well that's very good""" start="00:08:53.233" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""and thank you for giving credits to the inspiration because""" start="00:08:59.182" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""again nothing is done without context and it's always nice""" start="00:08:59.182" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""in the free software world to acknowledge people who have""" start="00:08:59.182" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""influenced us because it's very nice when people start""" start="00:08:59.182" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""contributing, maintaining software, publishing stuff""" start="00:08:59.182" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""that they actually start collaborating with people who've""" start="00:08:59.182" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""inspired them which is a nice way to climb over the shoulders""" start="00:08:59.182" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""of giants which this community likes so much. All right,""" start="00:08:59.182" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""moving on to the next question. We are, we have about seven""" start="00:09:27.842" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""more minutes for questions, so we're still good. Second""" start="00:09:29.203" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""question, one use case for this sharing and building upon""" start="00:09:33.687" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""second brain, sorry, one use case for this is sharing and""" start="00:09:33.687" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""building upon second brains, i.e. Zettelkasten, that's""" start="00:09:33.687" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""denote or what I'm actually doing, but a blocker for me""" start="00:09:42.534" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""wanting to make one public is wanting to use a block list or""" start="00:09:42.534" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""whitelist so that I can make them Cautioning?""" start="00:09:42.534" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""Quarantining? Containing. Yes, definitely containing.""" start="00:09:54.924" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""Why did I go for quarantine rather than containing? I guess""" start="00:09:58.987" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""my brain went to a dark place from the 2020s. So I can make""" start="00:10:01.509" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""containing useful information for only me while also being""" start="00:10:06.493" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""useful in a public sense. Yes, I think your question is about""" start="00:10:06.493" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""how to keep some of the content of your Zettelkasten private""" start="00:10:15.920" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""and only have certain parts of it be public. If your desire is""" start="00:10:24.226" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""to only share certain files in your Zettelkasten, then you""" start="00:10:30.167" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""can use the hyperdrive mirror command that we demonstrated""" start="00:10:30.167" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""in the Emacs 2023 talk. In short,""" start="00:10:30.167" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""It lets you specify either a regular expression that""" start="00:10:51.562" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""matches only some of the files that'll get uploaded from a""" start="00:10:51.562" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""directory of files on your machine. And only the files that""" start="00:10:51.562" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""match that regex will be put into the hyperdrive and shared""" start="00:11:03.045" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""with the world. But it doesn't have to be a regex. It could be a""" start="00:11:03.045" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""lambda. So it could match based on file size or modification""" start="00:11:10.728" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""time or really whatever you like. So I hope that answers your""" start="00:11:12.028" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""question. Great. And I personally, as someone who loves""" start="00:11:20.011" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""tinkering with my ELSP, I particularly like the ability to""" start="00:11:23.435" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""specify things with a lambda because it just opens up the""" start="00:11:23.435" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""ceiling of the possibilities with interactions between""" start="00:11:23.435" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""different parts of software. And, you know, As I have worked""" start="00:11:23.435" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""significantly in Orgrim, I could definitely see""" start="00:11:38.730" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""interactions with lambdas here to make sure that we can send""" start="00:11:38.730" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""and share files based on the filter list that is""" start="00:11:38.730" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""incrementally added to thanks to those lambdas. So thanks""" start="00:11:38.730" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""for this. One more thing I want to add about that is that the,""" start="00:11:53.022" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""that same question of being able to upload only certain""" start="00:11:55.384" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""files while leaving others to, to be private. was something""" start="00:11:55.384" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""that was inspired by Carl Voigt. I had an email thread with""" start="00:12:05.751" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""him in which he talked about how he uses his file tags project""" start="00:12:09.094" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""to organize his files. And he'll put a public tag on the files""" start="00:12:09.094" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""in his org database that he wants to have be published to his""" start="00:12:20.886" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""website. And so you could very easily just set a regular""" start="00:12:20.886" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""expression matches that public tag and then all of the other""" start="00:12:30.939" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""files would be not shared. Yeah, and, oh, sorry, I was, I""" start="00:12:30.939" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""misclicked, I was talking to production for a second. First""" start="00:12:39.659" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""time it happens today, so I think this is a testament to the""" start="00:12:45.461" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""level of tightness. But yeah, as you were saying, whatever""" start="00:12:45.461" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""heuristics you want is actually a good thing. I think people""" start="00:12:49.022" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""are a little antsy because they tend to brain dump into their""" start="00:12:53.163" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""Orgrimm, Zellcastan, Zellcastan slash e-note, and they""" start="00:12:53.163" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""really don't want some of their personal notes being out""" start="00:12:53.163" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""there. And well, if you are worried about this, I think""" start="00:12:53.163" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""learning some Elisp and implementing some Lambda function""" start="00:13:05.946" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""that allows you to filter with intention might be the best""" start="00:13:05.946" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""solution for you. So I hope we've covered the question as""" start="00:13:05.946" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""well as we could have. Next question is more about an idea""" start="00:13:16.411" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""about trying hyperdrive to distribute the work. Does that""" start="00:13:22.073" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""make sense to you? Yeah, I mean, you could distribute""" start="00:13:27.336" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""whatever you wanted. I think that'd be a great idea. Okay,""" start="00:13:28.896" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""great. Moving to the next question, and we have about three""" start="00:13:34.881" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""minutes, so I think we'll cover the last two questions and""" start="00:13:36.962" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""we'll move on to the next talk after that. Could you comment""" start="00:13:36.962" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""on the visualization thing, org visualization, and your""" start="00:13:43.547" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""experience with this type of content in buffers and the""" start="00:13:43.547" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""various possibilities, SVG, et cetera?""" start="00:13:43.547" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""Sure. So one thing that we worked on was I added a patch that""" start="00:13:55.515" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""was merged as part of Emacs 30, which fixes the way that image""" start="00:14:03.021" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""maps scale when images are scaled. So as an Emacs 30, if you""" start="00:14:03.021" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""zoom in on an image or shrink an image or rotate an image, now""" start="00:14:14.869" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""the image map, which is the overlay, so it's not actually an""" start="00:14:14.869" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""overlay, but it's, so to speak, it's an overlay that allows""" start="00:14:14.869" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""the images to be clickable based on, you know, where the""" start="00:14:29.540" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""actual visual display is. You can also click on it or hit help""" start="00:14:29.540" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""echo. And as of Emacs 30, now that scales with the image""" start="00:14:33.843" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""itself.""" start="00:14:36.986" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""The code to make that work on previous versions of Emacs, you""" start="00:14:44.512" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""can see the advice that we added in HyperDrive SBB view that""" start="00:14:44.512" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""file in hyperdrive.el. If you're curious to see how you""" start="00:14:44.512" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""could polyfill that code, so to speak, to make it work on""" start="00:14:57.081" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""previous versions of Emacs before Emacs 30. But it works""" start="00:15:00.905" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""great. The way that this works is we generate a GraphViz""" start="00:15:08.191" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""string that will be sent to GraphViz to render an SVG and also""" start="00:15:09.091" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""render a CMAPX string. We pipe those back into Emacs and then""" start="00:15:09.091" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""we generate the image map from the CMAPX file and then we put""" start="00:15:23.042" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""that image map with the SVG, and we render it in a buffer.""" start="00:15:31.436" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""Works pretty well. You can check out the code to see exactly""" start="00:15:36.381" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""how it works. OK, great. Well, sadly, I think we are a little""" start="00:15:38.103" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""short on time to cover the last two questions. So Joseph, if""" start="00:15:42.821" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""you want to take a little bit of time maybe to answer the""" start="00:15:46.243" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""questions in the BBB, you can just do this, even though the""" start="00:15:46.243" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""stream will be moving to the next talk. But I'll use the""" start="00:15:46.243" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""opportunity to thank you both for the talk and for your""" start="00:15:56.150" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""answers, because they were very insightful. And thank you""" start="00:15:56.150" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""so much for taking the time to be with us today. Thank you,""" start="00:16:02.554" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""Leo. Enjoy the rest of the conference. Any last words in""" start="00:16:05.816" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""about 15 seconds? Thank you. I'm grateful for your taking""" start="00:16:07.878" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""all this time to make this conference possible. Well, you""" start="00:16:11.344" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""know, the conference would be nothing without the speakers""" start="00:16:16.107" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""coming and chatting, so you are the ones to thank. I mean, we""" start="00:16:16.107" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""like the thanking, obviously, but it's mostly you doing the""" start="00:16:21.751" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""work. All right. Thank you, Joseph. We'll see you later.""" start="00:16:21.751" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""Bye-bye.""" start="00:16:29.017" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""Okay, we are offline. So Joseph, if you wanna finish""" start="00:16:34.935" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""answering the two questions on your own, feel free to. And""" start="00:16:36.316" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""whenever you finish, just leave the room. It will stop""" start="00:16:39.738" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""without you having to do anything. Okay, thank you, Leo. No""" start="00:16:41.579" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""worries, bye-bye. Bye.""" start="00:16:47.582" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""All right, could I, let's see. I'll just answer these few""" start="00:16:52.925" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""questions and then type in some responses. What is""" start="00:16:56.047" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""something surprising about how you or somebody else that""" start="00:17:02.236" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""you didn't expect from using the HyperDrive network?""" start="00:17:02.236" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""I think the question is about something surprising from""" start="00:17:11.860" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""using the HyperDrive network.""" start="00:17:11.860" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""Don't quite understand the question. I think the""" start="00:17:22.185" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""surprising use case for it is to be able to share say a bunch of""" start="00:17:24.046" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""org files link between those org files you could use""" start="00:17:31.973" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""transclusion to to have a discussion and then You could""" start="00:17:31.973" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""collaborate on on projects Using this sort of asynchronous""" start="00:17:31.973" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""communication using using hyperdrive files If there's a""" start="00:17:31.973" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""more specific question, I'm happy to answer it better You""" start="00:17:31.973" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""mentioned streaming audio and video. Could you confirm""" start="00:18:01.667" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""that this is in reference to consumption of media and not""" start="00:18:03.308" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""broadcasting of it? So this is all shared on a peer-to-peer""" start="00:18:03.308" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""network. So if I have a file on my machine that's a video or""" start="00:18:08.909" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""audio and I'm advertising on the network that people can""" start="00:18:13.071" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""download it from me, then if you want to download that video""" start="00:18:13.071" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""and I have it, I have a copy of it, When you click on that video""" start="00:18:13.071" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""in your hyperdrive, not only does it download it from me, but""" start="00:18:29.301" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""also you can stream it so you don't have to download the whole""" start="00:18:29.301" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""thing before watching it. So it is both in terms of serving""" start="00:18:29.301" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""the file and downloading the file.""" start="00:18:41.143" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""So I'll stay in the big blue button room. as I type in these""" start="00:18:53.745" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""answers. And if anything else comes in, I'll answer it.""" start="00:18:59.048" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""Hey there. Hey, so I think you're just waiting for me to come""" start="00:19:27.989" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""through and close out the recording and say thank you very""" start="00:19:30.302" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""much and goodbye. I believe the stream is now cut away to the""" start="00:19:30.302" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""next thing as of 10, as of 40 seconds ago or something. Sorry,""" start="00:19:37.889" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""it took me a minute to get over here. We had to coordinate for a""" start="00:19:46.416" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""second. No, it's all good. Thank you again. I'm just typing""" start="00:19:48.118" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""these answers into the pad. Hang on, I got too much""" start="00:19:53.883" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""crosstalk. Let me mute this other garment. I mean, these""" start="00:19:58.337" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""other fine people that all want my attention.""" start="00:20:02.258" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""Thank you, Corwin. My nephew's name is Corwin. Oh, yeah,""" start="00:20:09.019" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""neat. It's a good name. I personally recommend it. Yeah, so I""" start="00:20:14.320" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""was just going to say you can actually go as long as you want""" start="00:20:18.400" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""to. And then when everybody leaves, it'll kind of shut the""" start="00:20:18.400" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""room down. Like I didn't want to, and if you have like a, you""" start="00:20:24.402" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""should be able to like basically take the screen to or""" start="00:20:27.677" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""whatever, like control that. If you want to share anything""" start="00:20:27.677" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""yourself, if you can't let me know. Thank you. I think I'll""" start="00:20:36.504" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""just type in these answers. I think I can leave the room now,""" start="00:20:41.527" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""but it's not a super. Oh, okay. Well, if you're shutting""" start="00:20:42.808" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""down, then I'll just go ahead and force shut down the room.""" start="00:20:45.870" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""And thank you very much for any other questions you want to""" start="00:20:49.673" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""answer off the pad and everything like that. Okay. Thank""" start="00:20:49.673" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""you, Corwin. Thanks again for your talk, Joseph. Bye. Bye.""" start="00:20:55.558" video="qanda-hyperdrive" id="subtitle"]]
[[!template text="""You are currently the only person in this conference.""" start="00:21:04.911" video="qanda-hyperdrive" id="subtitle"]]
Questions or comments? Please e-mail [contact@ushin.org](mailto:contact@ushin.org?subject=Comment%20for%20EmacsConf%202023%20hyperdrive%3A%20New%20in%20hyperdrive.el%3A%20quick%20install%2C%20peer%20graph%2C%20transclusion%21)