WEBVTT Kind: captions; Language: en 00:00:00.000 --> 00:00:04.000 I am Tracy. I work at the Internet Archive. I've been 00:00:04.000 --> 00:00:05.001 the founding coder since the start. 00:00:06.001 --> 00:00:13.000 And today I'm working on a side project called Blogtini. And the idea is mark 00:00:13.000 --> 00:00:19.000 down only blogs and posts and pages with just a little shim of JavaScript and off 00:00:19.000 --> 00:00:25.000 you go. So I'll get going. So here's the idea. We'll just start right with a 00:00:25.000 --> 00:00:30.000 trick immediately. If you go to blogtini. com, you can see it in action. This is 00:00:30.000 --> 00:00:35.001 an example of a site. You can see some like header, search bar, bunch of stuff 00:00:35.001 --> 00:00:40.000 over here, like posts and tag clouds, all the things you can imagine. Flutters, 00:00:40.000 --> 00:00:45.001 things like that. So that's the site itself. This is a post. 00:00:45.001 --> 00:00:50.001 It looks pretty similar, but now you're looking at a single post. And if you view 00:00:50.001 --> 00:00:57.000 source for the page we just saw, that's it. That's the whole source. So it's 00:00:57.000 --> 00:01:03.000 HTML, but it's actually mark down. So there's front matter at the top. So there's 00:01:03.000 --> 00:01:10.000 YAML key values, just like you'd see in GitHub pages or GitLab pages or similar. 00:01:11.001 --> 00:01:16.000 Down here is the little trick that loads the JavaScript. And then here's your 00:01:16.000 --> 00:01:19.001 content. And your content is in markdown. So you can have paragraphs, bold, 00:01:20.001 --> 00:01:27.000 italics, all the things, headers. So the idea is, you know, as a human or a roach 00:01:27.000 --> 00:01:31.001 in the future, if you saw this, right, or a crawler, you'd know what's going on, 00:01:32.000 --> 00:01:38.001 right? You'd be like, okay, here's some metadata. Here's the content. Simple. So 00:01:38.001 --> 00:01:43.001 what's really going on here? So that JavaScript is the gist is basically it's 00:01:43.001 --> 00:01:49.000 going to read the contents of the body. So when a browser comes and sees this 00:01:49.000 --> 00:01:53.000 weird HTML thing, it just puts everything in the body. So then it reads the body, 00:01:54.000 --> 00:01:59.000 it then goes ahead and parses it into two pieces, the front matter and the 00:01:59.000 --> 00:02:03.000 markdown. The front matter can then be parsed with a YAML parser in JavaScript. 00:02:03.001 --> 00:02:08.001 And the markdown can be processed into mark up from a little package we'll see in 00:02:08.001 --> 00:02:15.000 a second. So here's an example of a blog. I like to bike. So there's some 00:02:15.000 --> 00:02:21.000 biking stuff here. But there's three directories and each has an index HTML that 00:02:21.000 --> 00:02:24.001 just makes your URLs look a little bit nicer. You can name them however you like. 00:02:25.000 --> 00:02:29.000 Doesn't really matter. But it's nice to have them in reverse sort order, like 00:02:29.000 --> 00:02:34.000 some sort of time thing. I like year and month. But if you like your month date 00:02:34.000 --> 00:02:38.000 or wanting to go even further, you can do that too. To keep it simple, I just 00:02:38.000 --> 00:02:42.001 kind of kept all the images in one directory. And you can put them anywhere you 00:02:42.001 --> 00:02:48.001 like. And then there's this, you can see my pointer. Oops. Yeah, sort of. 00:02:49.000 --> 00:02:55.000 There's this sitemap XML file. And that's the thing that tells the processing 00:02:55.000 --> 00:03:00.001 where your posts are and how to process them. We'll see more in 00:03:00.001 --> 00:03:07.000 a second. Yeah. So basically what I was saying, it's all markdown. The 00:03:07.000 --> 00:03:10.001 markdown to markup is using JavaScript. So you don't have to worry about any of 00:03:10.001 --> 00:03:15.000 the formatting. You use the sitemap XML files. 00:03:15.000 --> 00:03:19.000 That's the only thing you have to kind of manage or you can run a little script 00:03:19.000 --> 00:03:23.000 that will manage it for you. That is included if you want to use the blog team. 00:03:25.000 --> 00:03:31.000 And that sitemap is like pointers to your posts and pages. So a sitemap is legal. 00:03:31.000 --> 00:03:35.000 You can point to all over the web. You can point to different websites or URLs. 00:03:35.001 --> 00:03:41.001 That's totally fine. So you can post your stuff on IPFS or storage or other kinds 00:03:41.001 --> 00:03:48.000 of distributed providers. And you can also put on GitHub or getlab.com for free. 00:03:49.001 --> 00:03:51.001 And you can self-host if you want or 00:03:51.001 --> 00:03:54.000 put it anywhere you want because it's static files. 00:03:55.000 --> 00:03:58.001 So what happens is I'll sort of cruise through this kind of briefly. But the 00:03:58.001 --> 00:04:03.001 JavaScript crawls your site. It opens up your sitemap XML, finds your posts, 00:04:03.001 --> 00:04:10.001 starts pulling them down, starts parsing the YAML, starts parsing the markdown, 00:04:11.000 --> 00:04:15.000 and it starts building up like tags and categories. So it can build up like a tag 00:04:15.000 --> 00:04:19.000 and category cloud. Also, if you were going to look at a specific post, this is a 00:04:19.000 --> 00:04:24.000 good time for it to figure out which post you're looking for. Then it takes the 00:04:25.001 --> 00:04:30.001 markup and uses something called showdown that converts it back up to markup or 00:04:30.001 --> 00:04:37.001 HTML, repaints the page, repaints the body tag, and the browser caches that 00:04:37.001 --> 00:04:42.001 crawled site. So the next time you come to the page, it'll be much quicker. And 00:04:42.001 --> 00:04:45.001 it'll update daily, but you can also re-cache it too. 00:04:47.000 --> 00:04:50.000 For searching, which is really nice, there's something called lunar, which is a 00:04:50.000 --> 00:04:55.000 pun on solar if you know solar. And it's client side. It's so cool. You just 00:04:55.000 --> 00:04:58.001 throw in documents and you tell it what fields to analyze, like the description, 00:04:59.000 --> 00:05:05.000 title, tags, categories. And if I remember in halftime, I'll try to hit the live 00:05:05.000 --> 00:05:07.001 search button because it's really fun. It feels like magic. 00:05:08.001 --> 00:05:15.000 Okay. So each post is markdown. Markdown is primary content, archive friendly. I 00:05:15.000 --> 00:05:19.000 work at the archive. I've been there for like 25 years. And all disks fail, all 00:05:19.000 --> 00:05:23.000 storage fails, all network fails, all companies fail. All your providers will 00:05:23.000 --> 00:05:28.000 fail you. So in my opinion, you better have your content if you want it to live 00:05:28.000 --> 00:05:32.001 forever in a really simple format. Like we're talking JPEG, we're talking 00:05:33.000 --> 00:05:38.000 markdown, we're talking maybe PDF or something. And the rest, good luck, right? 00:05:39.000 --> 00:05:43.000 Maybe it'll work a thousand years from now, but who knows? So also the site 00:05:43.000 --> 00:05:46.001 formatting is secondary. That has nothing to do with their content. So don't mix 00:05:46.001 --> 00:05:51.001 it with their content. That's just clutter. There's no build step. There's no 00:05:51.001 --> 00:05:55.000 backend needed. So these can just be static file servers, which is really nice. 00:05:55.001 --> 00:05:58.000 And you can change your theme anytime. So if you don't like the theme you saw 00:05:58.000 --> 00:06:01.000 before, you want something a little more snazzy or more 00:06:01.000 --> 00:06:03.001 nuanced, you can just change it with one line. 00:06:05.000 --> 00:06:11.001 It has good Google SEO, not great, but it's good because we're re 00:06:11.001 --> 00:06:14.000 doing the meta tags in JavaScript. 00:06:14.000 --> 00:06:21.000 So Google will crawl your site relatively well with that, but it's not quite as 00:06:21.000 --> 00:06:25.001 fast and as good as you might want, but it's not bad. And they're working on 00:06:25.001 --> 00:06:32.001 that. So the view source is your original content, no formatting, 00:06:32.001 --> 00:06:38.001 no clutter. You control your content. When you post to Facebook, Twitter, Strava, 00:06:39.000 --> 00:06:44.000 Athlete, where's your content go? What if you want it 50 years from now? 00:06:45.000 --> 00:06:50.000 Where is it? How do you get it? And if you get it, I got a zip of my Twitter when 00:06:50.000 --> 00:06:53.000 I was thinking about, I did go to Mastodon and I was thinking about just dumping 00:06:53.000 --> 00:06:55.000 Twitter. It's a nice zip file. 00:06:55.001 --> 00:07:00.000 It's a nice static site, but what are you going to do with it? So the hope would 00:07:00.000 --> 00:07:04.000 be maybe we'd just start making little filters that filter right into Markdown 00:07:04.000 --> 00:07:08.000 and stuff it into Blogtini or something like that. So what do you, you know, 00:07:08.000 --> 00:07:11.001 things to think about, like what do you want to do later in your life or 00:07:11.001 --> 00:07:16.000 whatever? Like it's your content, right? It's not the people who are making money 00:07:16.000 --> 00:07:22.001 off of you. Life is better client side. It just is much more flexible. So if you 00:07:22.001 --> 00:07:27.001 imagine WordPress, I like WordPress. I had WordPress before. Anyone ever had a 00:07:27.001 --> 00:07:31.001 WordPress site and never had a problem with a WordPress site? Problem with your 00:07:31.001 --> 00:07:34.001 database, problem with your theme, you know, and it's like a hand in your ass. 00:07:35.000 --> 00:07:38.000 You're like, oh, I was just trying to blog something and now I'm spending like 00:07:38.000 --> 00:07:43.000 hours or maybe a day on this. What happens if WordPress goes away, right? Or 00:07:43.000 --> 00:07:48.000 decides to dump your content because, you know, they're not making money off you 00:07:48.000 --> 00:07:53.000 anymore. So here's an example of just some of the tools they're using. So these 00:07:53.000 --> 00:07:57.001 are, this is using ES modules in JavaScript, which is the coolest import system 00:07:57.001 --> 00:08:02.000 ever. You can just pull from anywhere on the web, which is what we do. So you can 00:08:02.000 --> 00:08:06.000 read, you can do a YAML parser and pull it from over here. You can do the 00:08:06.000 --> 00:08:12.001 showdown, markdown to markup here. HLJS is great. So if you write code in your 00:08:12.001 --> 00:08:17.001 post, it'll highlight the code, syntax, whatever. And it's just like one little 00:08:17.001 --> 00:08:22.000 include and one little run, boom, off it goes. Lunar is the client side search, 00:08:22.000 --> 00:08:24.001 super cool. Just some other little stuff. 00:08:26.001 --> 00:08:30.000 So you might wonder, well, what about comments? What about other kind of dynamic 00:08:30.000 --> 00:08:37.000 content? So comments are possible and there's a static man is one approach. 00:08:38.000 --> 00:08:41.001 There's other approaches too, but I like static man because you have like a 00:08:41.001 --> 00:08:45.000 little Docker thing running somewhere, which I host. 00:08:46.000 --> 00:08:51.001 And your people, the people come in, make a comment and they make a pull request 00:08:51.001 --> 00:08:55.001 to your repo, which is pretty wild. And that's your approval process. So you 00:08:55.001 --> 00:09:00.001 approve that, it inserts a little JSON thing into your repo. And then once the 00:09:00.001 --> 00:09:05.001 GitHub pages or whatever does its thing or your static website updates, the 00:09:05.001 --> 00:09:10.000 comment is there. Pretty nice. So you can also approve and just, you know, get 00:09:10.000 --> 00:09:13.000 rid of, just delete the branch if you don't like what they did. 00:09:14.000 --> 00:09:17.001 So that's kind of nice. And then the content is in your repo, right? It's not 00:09:17.001 --> 00:09:22.001 stuck in disk somewhere, which is like who knows where that is. So your comments 00:09:22.001 --> 00:09:29.001 go with your site, which is nice. And if you want to write your own site map 00:09:29.001 --> 00:09:35.001 maker, oh, that's great. I can highlight this way. Or you want to manually do it. 00:09:35.001 --> 00:09:40.000 That's totally fine. But there's also some little GitHub scripts you can do. So 00:09:40.000 --> 00:09:42.001 every time you do a command, it'll just update your site map for you, which is 00:09:42.001 --> 00:09:47.000 kind of nice. So if you wanted to try it, it's like literally the simple. 00:09:47.000 --> 00:09:53.001 You can you could copy this into an index HTML page. 00:09:54.000 --> 00:09:57.000 And it'll just work. It'll give you a site. 00:09:57.000 --> 00:10:01.000 And it does that because of this little JavaScript include here. And here's your 00:10:01.000 --> 00:10:06.001 content. And here's your front matter. And if you just have a little web server 00:10:06.001 --> 00:10:12.001 or something like that in localhost, boom, it'll work. It's really nice. If you 00:10:12.001 --> 00:10:16.000 want to mess around with Safari, you can disable cores, do that your own 00:10:16.000 --> 00:10:19.000 whatever. But that's kind of a nice way to you don't even have to run a web 00:10:19.000 --> 00:10:25.000 server, you can just open with the file colon colon protocol to. Okay, so 00:10:25.000 --> 00:10:28.000 I'll show you this example. 00:10:28.001 --> 00:10:35.001 And let's see, launch that to another tab. Okay, so this is the 00:10:35.001 --> 00:10:38.001 site. And you can see there's a slight delay while it sort of reformats the page. 00:10:40.000 --> 00:10:46.001 But these are just like really simple markdown files. And then I can show you the 00:10:46.001 --> 00:10:49.001 search. If you search and I look for like, talk. 00:10:51.001 --> 00:10:56.000 So that was solar. Really fast, right? Because it's just like, there's, you know, 00:10:56.001 --> 00:10:59.000 even if you had 10,000 posts, I don't think it's going to be any kind of a 00:10:59.000 --> 00:11:04.001 problem. And it comes right up. New this year, we I've been working with a 00:11:04.001 --> 00:11:10.000 volunteer and other volunteer to do a theme setup. And so we've moved things into 00:11:10.000 --> 00:11:12.000 web components, if you know about web components. 00:11:12.001 --> 00:11:17.000 And that means that when you send out the page, it kind of comes out as like, 00:11:17.001 --> 00:11:23.000 we're using like BT post, and with a URL, and it will do the right thing. So you 00:11:23.000 --> 00:11:27.000 can write your own post and set up the way you like. So I could like switch over 00:11:27.000 --> 00:11:30.001 to this grid theme and it'll just work. See 00:11:30.001 --> 00:11:37.000 which which page I'm in, but anyway, 00:11:37.001 --> 00:11:39.001 it does generally work. So that's pretty exciting. 00:11:39.001 --> 00:11:46.001 Back to the main talk. Okay, yeah, and I 00:11:46.001 --> 00:11:50.001 won't show all these. But this is an example of I called it D web teeny. I made 00:11:50.001 --> 00:11:57.000 this last year. So I made posts in GitHub, IPFS, web three, and some other 00:11:57.000 --> 00:12:01.000 providers and archive org. And all of the URLs were different. And it doesn't 00:12:01.000 --> 00:12:04.000 matter. Like, it's like, okay, you got to post here, post here, post here, post 00:12:04.000 --> 00:12:08.000 here. And it all just works. So if you want to see that you can see that you can 00:12:08.000 --> 00:12:14.001 visit that link. Yeah, there's a full IPFS site just as an example with a usual 00:12:14.001 --> 00:12:21.000 lovely URLs, which is just great content has content hashes. And 00:12:21.000 --> 00:12:25.000 yeah, and if you want to make one of your own, you can try this pretty easily. 00:12:25.000 --> 00:12:29.000 You can go to GitHub, make a new account, you can do this no Jekyll thing that 00:12:29.000 --> 00:12:34.000 just means your markdown doesn't get processed. And you can just follow the few 00:12:34.000 --> 00:12:38.001 different steps to include, write a post, include the JavaScript file, and off 00:12:38.001 --> 00:12:44.000 you go. And then for free, you will get your name, dot GitHub, dot IO, and the 00:12:44.000 --> 00:12:48.000 new repository name as a URL. And if you want to get fancy, you can buy your own 00:12:48.000 --> 00:12:53.001 web domain for like 10, 20 bucks a month, a year, excuse me. So extending out 00:12:53.001 --> 00:13:00.001 like the idea of communities, like what if 10 people have 00:13:00.001 --> 00:13:04.000 worries with blog team? What if 10,000 people, what if every family member of 00:13:04.000 --> 00:13:08.001 yours was using blog team or your circles, your tech circles, like you could just 00:13:08.001 --> 00:13:12.000 merge all the feeds into another site, right? An aggregator, because again, the 00:13:12.000 --> 00:13:15.001 site now can point to anything. So you could have something that automatically 00:13:15.001 --> 00:13:20.000 updates. And anytime like Jonathan or myself make a post, it'll just start, you 00:13:20.000 --> 00:13:23.000 know, updating the site, you'll see them released and you could go off to the 00:13:23.000 --> 00:13:28.001 other sites. That sounds lovely to me, a great way to kind of share stuff. 00:13:30.001 --> 00:13:35.000 Yeah, and I like the idea too, that we could write some exporters maybe that 00:13:35.000 --> 00:13:39.001 would pull stuff very easily, simply from WordPress, Twitter, Facebook, Strava, 00:13:39.001 --> 00:13:42.001 whatever, and just slide them right in a markdown, that would be very easy to 00:13:42.001 --> 00:13:46.001 transform. And then you could interlace them all in time and maybe a little 00:13:46.001 --> 00:13:49.001 provider URL, whatever you want to the original content. But now you've got your 00:13:49.001 --> 00:13:54.001 content and you've got a website and now you're all the things we do on social, 00:13:54.001 --> 00:14:01.001 right, is yours again and in one place. Yeah, so I talked about the 00:14:01.001 --> 00:14:06.001 site of many sites, which is pretty easy, just one combination sitemap XML. 00:14:08.001 --> 00:14:15.000 And Christine from, who is the author, co-author of the Activity Pub spec is 00:14:15.000 --> 00:14:20.000 here. So I've been thinking about, could we make notifications once someone posts 00:14:20.000 --> 00:14:23.000 a new blog post or kind of work into that framework? So that's still kind of 00:14:23.000 --> 00:14:30.000 like, hopefully we do that at some point. Just a reminder about GDPR. 00:14:30.001 --> 00:14:36.001 You have the right to get your data back and to put it wherever you want. So 00:14:36.001 --> 00:14:39.001 yeah, think about that. Like, if you get the data and you get a zip file, like 00:14:39.001 --> 00:14:44.001 what do you do with it? So I'm hoping this will be a good way or something to 00:14:44.001 --> 00:14:47.001 think about. Maybe you've got some ideas and maybe that's why you're here. So 00:14:47.001 --> 00:14:53.000 we'll go into questions in just a few minutes. But I just want to impress upon 00:14:53.000 --> 00:14:57.000 you that think about longevity, right? Think about your data. Like what do you 00:14:57.000 --> 00:15:01.000 want your kids or your grandkids or whatever, your colleagues to know about you? 00:15:01.001 --> 00:15:06.000 What if you go away? What if they go away? What if WordPress goes away? If 00:15:06.000 --> 00:15:11.000 WordPress goes away, like maybe it's not likely, but you could imagine a billion 00:15:11.000 --> 00:15:14.001 people could kind of go dark in some way or another. Or if the engine fails or 00:15:14.001 --> 00:15:20.001 the Postgres stops working. Or I guess they use MySQL. That's fine. 00:15:22.000 --> 00:15:29.000 We like MySQL. It's simple. Didn't say secure, but it's simple. Okay. So the 00:15:29.000 --> 00:15:35.000 average web page is gone in about three months, 90 days. Actually it's a little 00:15:35.000 --> 00:15:40.000 bit less we found. So that's another thing to think about longevity. Just it's 00:15:40.000 --> 00:15:44.001 good to know. So I recommend you make your digital life, the things that you're 00:15:44.001 --> 00:15:46.000 contributing to the world or you're telling the 00:15:46.000 --> 00:15:48.000 world about yourself, where your friends are. 00:15:48.001 --> 00:15:51.001 Make it like a vampire and make it live forever. That's the 00:15:51.001 --> 00:15:54.001 hope. Thank you for attending the talk. 00:15:55.000 --> 00:15:58.000 This is from me from last year right here in the Lovely Redwoods. And now I want 00:15:58.000 --> 00:16:05.000 to open it to just any kind of thoughts, questions, discussions. Like I'm working 00:16:05.000 --> 00:16:11.000 with this volunteer and he's great. And he has so many ideas. The last time we 00:16:11.000 --> 00:16:13.000 talked, I took like three pages worth of notes. 00:16:13.001 --> 00:16:17.000 And we got through most of the ideas. He wanted to split out the formatting loop 00:16:17.000 --> 00:16:21.001 from the processing loop and make it so you could anyone could change things. So 00:16:21.001 --> 00:16:24.001 we did that. We moved to web components that seemed like the best and most 00:16:24.001 --> 00:16:30.001 flexible thing. Split out the whole theming from the crawling and everything. And 00:16:30.001 --> 00:16:35.000 he just kind of like that took like weeks to get done. And then just like more 00:16:35.000 --> 00:16:39.000 ideas, more ideas, more ideas. So I'm curious like maybe, you know, if anyone 00:16:39.000 --> 00:16:42.001 feels comfortable, like, you know, what's your interest or what, you know, if you 00:16:42.001 --> 00:16:47.001 were to use something like this, what maybe would be the shortcomings if there's 00:16:47.001 --> 00:16:50.000 something that would be higher in your hit list or something you'd like to 00:16:50.000 --> 00:16:54.000 integrate with anything come to mind. Just I'm curious, like, now that you've 00:16:54.000 --> 00:16:59.001 seen this sort of strange new world, what do you think? Like, what's what kind of 00:16:59.001 --> 00:17:02.000 thoughts are going on? I know it's 10 in the morning. So it's a little bit 00:17:02.000 --> 00:17:03.001 like, it's also a little overcast. 00:17:03.001 --> 00:17:06.001 I get that too. So I appreciate even more that you all came. So 00:17:06.001 --> 00:17:08.001 good on you. Yes, and 00:17:21.000 --> 00:17:27.000 great question. Yeah, I, I have been in my head kind of wondering if I get my 00:17:27.000 --> 00:17:32.000 parents who are, you know, in their 80s, see if I could get one of them to maybe 00:17:32.000 --> 00:17:36.001 make a one and maybe help them through it. And then, you know, bonus points would 00:17:36.001 --> 00:17:42.000 be like, could they modify a post? Could they make a new post? I think, you know, 00:17:43.000 --> 00:17:46.001 most non-technical people that I've seen, if you give them kind of like a thing 00:17:46.001 --> 00:17:50.000 on the side that they can kind of follow, it's not so bad. So it's sort of like, 00:17:50.000 --> 00:17:55.000 okay, like GitHub and GitLab, right? They have the editors right online. So I 00:17:55.000 --> 00:18:00.000 would say like, you know, click this button, say add new page, write out your URL 00:18:00.000 --> 00:18:04.001 or your file name, and then just copy these few lines in, adjust the title, 00:18:05.000 --> 00:18:09.001 adjust your tags, start writing content. And, you know, here's a link to the 00:18:09.001 --> 00:18:16.000 markdown and you know how you can do titles and, or, yeah, headers and things 00:18:16.000 --> 00:18:19.000 like that. But one thing I like about markdown, right, is like a lot of people, 00:18:20.000 --> 00:18:23.000 it's intuitive to go return, return, like, great, you just made a paragraph, 00:18:23.001 --> 00:18:27.000 like, so there are little things like that where you're like, you don't have to 00:18:27.000 --> 00:18:30.001 think about it or, you know, hopefully that's, that's, that's helpful. But that's 00:18:30.001 --> 00:18:33.001 kind of what I think about. So I think maybe more realistically, if I can get one 00:18:33.001 --> 00:18:37.001 of my less technical siblings to do it, then I'll feel like really good and then 00:18:37.001 --> 00:18:42.001 watch them make some posts. But yeah, yeah, good question. And if you have any 00:18:42.001 --> 00:18:47.001 ideas, or if you've been through this before, or you, you know of ways to 00:18:47.001 --> 00:18:52.000 bootstrap, yeah. Yes. 00:18:53.000 --> 00:18:58.000 Is there any room for some more flexibility without, say, sacrificing the ease of 00:18:58.000 --> 00:19:01.000 use that you've done? So like, you know, right now, you know, very 00:19:01.000 --> 00:19:02.001 opinionated in terms of like markdown. 00:19:05.000 --> 00:19:09.000 What if, could you envision someone wanting to write a post in a different format 00:19:09.000 --> 00:19:15.000 and having a way for it to work and kind of just be smooth from that point 00:19:15.000 --> 00:19:19.000 without ruining the, what you were just talking about people who are not super 00:19:19.000 --> 00:19:21.000 tech savvy, just having a nice, easy path? 00:19:22.000 --> 00:19:28.000 I love that question. That is exactly. Yeah. Yes. Perfect. Yes. Yeah, I think so. 00:19:28.000 --> 00:19:33.000 Because, you know, if you have a sitemap or you can do the RSS feed as well, as 00:19:33.000 --> 00:19:36.000 long as it points to something, and as long as we've got like a parser set up, 00:19:36.000 --> 00:19:40.001 like maybe you're, I don't know, you're posting go code, right, or something like 00:19:40.001 --> 00:19:44.001 that, and you want it to like format or do something in the browser, I'm trying 00:19:44.001 --> 00:19:47.001 to think of something that's more active, like the software emulation or 00:19:47.001 --> 00:19:53.001 something like that. Yeah. I mean, as long as the JavaScript can parse it, and it 00:19:53.001 --> 00:19:59.000 can parse text, it can parse binary, right? It doesn't really matter. Sure. Yeah. 00:19:59.000 --> 00:20:05.000 Love that idea. Yeah. So if your post or whatever your thing has just a little 00:20:05.000 --> 00:20:09.001 pointer to a different JavaScript entry point, or you've got a different theme 00:20:09.001 --> 00:20:12.000 where the theme can sort of say what it wants to do with posts. 00:20:12.001 --> 00:20:15.001 Yeah. Easy. Yeah. Good question. 00:20:22.001 --> 00:20:29.000 Oh, time to drive. Oh, almost that time. Darn. I could show more stuff. But yeah. 00:20:30.001 --> 00:20:34.001 What's that? Bernie. Oh, thanks. I think you said Bernie. I'm like, Bernie, yeah. 00:20:35.000 --> 00:20:38.001 Bernie Sanders. A blog teeny for every person here. 00:20:38.001 --> 00:20:43.000 Oh, that's a bad Bernie impression. I apologize. 00:20:47.000 --> 00:20:53.000 I've had one coffee, not two coffees. So we'll just keep it there. But 00:20:53.000 --> 00:20:54.001 yeah, thanks for coming. 00:20:55.000 --> 00:21:02.000 What I really liked about it was, I was going to try to 00:21:02.000 --> 00:21:06.000 show my other site, I'll show you this, just more for 00:21:06.000 --> 00:21:07.001 history, not to show my own site. 00:21:09.000 --> 00:21:13.001 [...] said my own site. So I've been writing a site for 00:21:13.001 --> 00:21:15.001 25 years or something like that. 00:21:16.001 --> 00:21:23.000 Actually, almost 30 years. And it's been in regular markup with junk in it, then 00:21:23.001 --> 00:21:29.000 minimal markup with some JavaScript, then XSLT, weird. Then 00:21:29.000 --> 00:21:32.001 PHP, like three. 00:21:33.001 --> 00:21:39.001 Then WordPress, then Jekyll, then Hugo. I have a problem. But 00:21:39.001 --> 00:21:45.000 the idea, I kept thinking, was like, remove the boilerplate. I just want the 00:21:45.000 --> 00:21:48.000 content. I don't want to put the same crap in everything. 00:21:48.000 --> 00:21:52.001 And I don't want a system that I have to trust like WordPress. I just didn't like 00:21:52.001 --> 00:21:57.000 it. I like the Hugo site. This is on Go right now. But my goal is to rip this off 00:21:57.000 --> 00:22:01.000 and do everything it did, but do it in the browser. So that's kind of like the 00:22:01.000 --> 00:22:06.000 genesis of this idea. And I'm just thrilled that it's working with just your 00:22:06.000 --> 00:22:11.000 content markdown. Boom. And then all of this JavaScript could go away. It could 00:22:11.000 --> 00:22:15.000 be broken. It doesn't matter. You still have your content, right? And you could 00:22:15.000 --> 00:22:19.000 just switch to another theme or another JavaScript file and would do the right 00:22:19.000 --> 00:22:21.001 thing. So yeah. 00:22:23.001 --> 00:22:24.001 Thank you all.