WEBVTT

00:00:11.355 --> 00:00:16.071
<v Chris>Hello, friends, and welcome back to your weekly Linux talk show. My name is Chris.

00:00:16.071 --> 00:00:16.971
<v Wes>My name is Wes.

00:00:16.971 --> 00:00:18.036
<v Brent>And my name is Brent.

00:00:18.593 --> 00:00:21.501
<v Chris>Hello, gentlemen. Coming up on the show today, we're going to take a look at

00:00:21.501 --> 00:00:22.911
<v Chris>a handy tool that Brent's been

00:00:22.911 --> 00:00:26.571
<v Chris>using to crank out a great-looking static site in really just minutes.

00:00:26.571 --> 00:00:29.431
<v Chris>How it works, what it does, and why we're starting to like it.

00:00:29.431 --> 00:00:31.370
<v Chris>Then we're going to round out the show with some great boosts,

00:00:31.817 --> 00:00:35.421
<v Chris>some really great picks, and a lot more. So before we get to that,

00:00:35.421 --> 00:00:37.211
<v Chris>and man, you're going to want to stay around just for the picks,

00:00:37.211 --> 00:00:39.079
<v Chris>let me tell you what. I'm excited.

00:00:39.497 --> 00:00:42.847
<v Chris>Let's say hello to our virtual lug. Hello, Mumble Room. Time appropes.

00:00:43.921 --> 00:00:46.312
<v Mumble>Hello. Hello, Chris. Hey, Wes. And hello, Brent.

00:00:46.550 --> 00:00:51.380
<v Chris>Hey, guys. Thanks for joining us. Nice to have you here. Mumble Room's always going during the show.

00:00:51.989 --> 00:00:55.451
<v Chris>We love it if you join us. Details on our website. And good morning to our friends

00:00:55.451 --> 00:00:57.307
<v Chris>over at Defined Network.

00:00:57.922 --> 00:01:01.361
<v Chris>Go check out Defined.net slash unplugged and meet Manage Nebula,

00:01:01.361 --> 00:01:07.412
<v Chris>fast, decentralized VPN built on the open-source Nebula platform we love, we use every single day.

00:01:07.841 --> 00:01:11.361
<v Chris>and history being my teacher, I learned it over and over and over again.

00:01:11.361 --> 00:01:15.721
<v Chris>When it comes to something as foundational as my network and everything that

00:01:15.721 --> 00:01:20.392
<v Chris>runs on top of it that I build over the next few years, I want to own that stack end to end.

00:01:20.757 --> 00:01:24.081
<v Chris>Nebula gives you that control with industry-leading encryption,

00:01:24.081 --> 00:01:27.654
<v Chris>optional self-hosted lighthouse nodes, and a design originally built to connect

00:01:27.898 --> 00:01:32.054
<v Chris>Slack's global infrastructure of all of their customer data.

00:01:32.530 --> 00:01:34.585
<v Chris>You know, their goldmine.

00:01:35.102 --> 00:01:37.901
<v Chris>And that's how strong it is. And now you can use it too. It's resilient enough

00:01:37.901 --> 00:01:40.018
<v Chris>for the enterprise, simple enough for your home lab.

00:01:40.239 --> 00:01:43.781
<v Chris>You can connect to 100 hosts for free. You can get them for free,

00:01:43.781 --> 00:01:48.141
<v Chris>no credit card required, and support the show by going to defined.net slash

00:01:48.141 --> 00:01:50.618
<v Chris>unplugged. That is defined.net slash unplugged.

00:01:51.048 --> 00:01:54.101
<v Chris>Thank you to Define for sponsoring the Unplugged program. Appreciate you guys.

00:01:56.607 --> 00:02:00.405
<v Chris>All right, boys, I've been doing the math three ways, checking my list,

00:02:00.405 --> 00:02:03.561
<v Chris>checking it twice. So that's a lot, math and list.

00:02:04.055 --> 00:02:07.405
<v Chris>And I just don't see it feasible for the crew to make it down to Texas Linux

00:02:07.405 --> 00:02:09.714
<v Chris>Fest this year. I hate to say it.

00:02:10.289 --> 00:02:13.015
<v Chris>I really hate to say it because we love Texas Linux Fest.

00:02:13.015 --> 00:02:13.691
<v Wes>We sure do.

00:02:14.312 --> 00:02:20.018
<v Chris>But the funding is getting tighter, right? Because energy costs are up and housing costs are up.

00:02:20.523 --> 00:02:24.511
<v Chris>And so even though we could maybe afford a flight, we couldn't afford anything else about it.

00:02:25.220 --> 00:02:27.629
<v Chris>And that's really just the reality of it. It's very expensive.

00:02:28.110 --> 00:02:32.515
<v Chris>And there also really isn't any great economic incentive for a sponsor to send

00:02:32.515 --> 00:02:35.703
<v Chris>us because it's kind of expensive to send us down to cover an event.

00:02:36.667 --> 00:02:38.695
<v Chris>And there's not a direct return for them. It's not like we're going to spend

00:02:38.695 --> 00:02:42.089
<v Chris>the entire time talking about them. We would plug them, but we wouldn't spend the entire time.

00:02:42.873 --> 00:02:45.875
<v Chris>And really where it does make economic sense is for the events to send us,

00:02:45.875 --> 00:02:48.885
<v Chris>but they don't A, have the budget and B, they don't have people that are organizing

00:02:48.885 --> 00:02:52.532
<v Chris>sponsors to bring us because, you know, we kind of bring publicity for the show, for the events.

00:02:53.368 --> 00:02:56.415
<v Chris>So there's just not really any way to make it work as far as I can tell.

00:02:56.415 --> 00:02:59.275
<v Chris>And it doesn't feel like the right time to go to you, the audience,

00:02:59.275 --> 00:03:02.149
<v Chris>and ask for the money either. I think everybody's feeling tight these days.

00:03:04.095 --> 00:03:07.745
<v Chris>And it just doesn't feel like the right time to say, hey, send us to Texas Linux

00:03:07.745 --> 00:03:12.917
<v Chris>Fest. And it's really kind of makes me a little sad, not because we can't ask, but because...

00:03:13.886 --> 00:03:18.782
<v Chris>It's like if a tree falls in the forest, in a sense. Texas Linux Fest is special.

00:03:18.782 --> 00:03:22.652
<v Chris>It's very special to the Linux community in the sense that very few tech communities

00:03:22.652 --> 00:03:24.347
<v Chris>have these types of grassroots events still.

00:03:25.316 --> 00:03:28.192
<v Chris>But nobody really covers them. And once the weekend is over,

00:03:28.192 --> 00:03:30.698
<v Chris>it can kind of feel like it just never really happened to the rest of the world.

00:03:31.557 --> 00:03:33.031
<v Chris>Which is sort of the hard part about it.

00:03:33.200 --> 00:03:37.272
<v Wes>Yeah. Yeah, it's easy. If you weren't there, you didn't make the connections,

00:03:37.272 --> 00:03:39.452
<v Wes>you didn't see that one random talk you didn't expect to.

00:03:39.492 --> 00:03:41.472
<v Chris>You don't know that these things are kind of important. Yeah.

00:03:42.112 --> 00:03:45.482
<v Chris>Yeah, and plus there's always something brewing at Texas Linux Fest that ends

00:03:45.482 --> 00:03:47.642
<v Chris>up being really good for us to learn about.

00:03:47.642 --> 00:03:48.223
<v Wes>Oh, for sure.

00:03:48.705 --> 00:03:51.302
<v Chris>Great connections, too. But the economics are what they are,

00:03:51.302 --> 00:03:53.692
<v Chris>and I wanted to say it now because if you're planning to go,

00:03:54.192 --> 00:03:56.894
<v Chris>I just wanted to let you know that it doesn't seem like we're going to be able to make it.

00:03:57.394 --> 00:04:00.502
<v Chris>We think it's a great event, and we think you should go. And if we could make

00:04:00.502 --> 00:04:01.799
<v Chris>it, we absolutely would go.

00:04:02.583 --> 00:04:06.612
<v Chris>But that's just sort of the state of it right now. And I don't want anybody

00:04:06.612 --> 00:04:10.402
<v Chris>making plans thinking we're going to be there and then show up, and we're not there.

00:04:10.681 --> 00:04:14.739
<v Chris>so i wanted to let you know that's currently our intention is we'll try to cover as we can.

00:04:15.116 --> 00:04:18.030
<v Wes>But uh also just a quick shout out to listener big cookie.

00:04:18.338 --> 00:04:18.785
<v Chris>Big cook.

00:04:18.889 --> 00:04:21.525
<v Wes>Who sent us uh some delicious cookies.

00:04:21.786 --> 00:04:24.816
<v Chris>Oh yeah i put that in the feedback but i agree that was we should grab them

00:04:24.938 --> 00:04:28.312
<v Chris>i well we'll grab them for the no no we get it go good go ahead i was gonna

00:04:28.312 --> 00:04:31.302
<v Chris>say we'll grab it for the feedback yeah we've been snacking on cookies and one

00:04:31.302 --> 00:04:34.812
<v Chris>of them brent is a maple shortbread cookie oh Ooh.

00:04:36.012 --> 00:04:37.303
<v Brent>Yeah. That one's for me, right?

00:04:37.901 --> 00:04:44.332
<v Chris>Well, it might have been. We still have a lot of the classic Hermit ones because

00:04:44.332 --> 00:04:47.992
<v Chris>the kids came and they kind of like locusts came in and ate them all.

00:04:48.712 --> 00:04:51.932
<v Chris>It's a really nicely packaged, made right there in Vermont.

00:04:51.932 --> 00:04:53.654
<v Wes>Yeah, covered bridge cookies.

00:04:53.770 --> 00:04:57.982
<v Chris>Big Cook sent them to us and they're just delicious. Just absolutely delicious.

00:04:57.982 --> 00:05:01.122
<v Chris>So thank you very much. That was a nice treat. We got them after the show last

00:05:01.122 --> 00:05:05.357
<v Chris>Sunday and we really enjoyed them. It was a great post-show snack, as it were.

00:05:05.845 --> 00:05:07.952
<v Chris>You know what? Probably be this week's post-show snack, too.

00:05:12.173 --> 00:05:17.201
<v Chris>All right. So, Brentley, you sat down to build a website this week,

00:05:17.201 --> 00:05:19.842
<v Chris>and I can only imagine you must have started it.

00:05:20.840 --> 00:05:23.591
<v Chris>I mean, you must have started at what you had built in the past and tried to

00:05:23.591 --> 00:05:27.939
<v Chris>decide if that was the way to go. Take us there, Brentley. Tell us, tell us about it.

00:05:30.603 --> 00:05:37.270
<v Brent>Well, once upon a time, I woke up and built my website, and that was one day

00:05:37.270 --> 00:05:41.365
<v Brent>in 2012. And for some reason, I never planned this.

00:05:42.150 --> 00:05:43.830
<v Brent>It's just like, what today?

00:05:43.830 --> 00:05:44.150
<v Chris>Wow.

00:05:44.150 --> 00:05:50.000
<v Brent>Yeah, 2012. And I was super proud of this thing. It was meant to be like my

00:05:50.000 --> 00:05:54.500
<v Brent>main photography portfolio website, and that it did.

00:05:54.500 --> 00:05:59.010
<v Brent>So I took, I don't know, a whole day to build this thing and I worked on it

00:05:59.010 --> 00:06:01.650
<v Brent>for weeks after that and kept updating it and stuff like that.

00:06:01.650 --> 00:06:07.475
<v Brent>But it was built on WordPress, of course. That was like the modern stuff at the time.

00:06:08.340 --> 00:06:12.220
<v Brent>And it was kind of cool back then. I had a responsive theme,

00:06:12.220 --> 00:06:15.220
<v Brent>so it looked good on mobile and everything. And that was the big thing back

00:06:15.220 --> 00:06:20.501
<v Brent>then, right? And really cool photo galleries that showcased.

00:06:20.746 --> 00:06:23.450
<v Chris>Just plugging away, you know, plugging a photo gallery. You got a photo gallery.

00:06:23.654 --> 00:06:27.420
<v Brent>Yeah and like super high quality too if you wanted it there were ways of getting

00:06:27.420 --> 00:06:31.790
<v Brent>like you know the high res stuff for anybody who had a decent internet connection or whatever.

00:06:32.413 --> 00:06:38.270
<v Wes>It's really hard for my like this is all true it's just really hard for my brain to get it's been so.

00:06:38.270 --> 00:06:39.490
<v Brent>Long that i spent.

00:06:39.490 --> 00:06:42.550
<v Wes>With wordpress solely as like legacy.

00:06:42.870 --> 00:06:43.780
<v Brent>Yeah but you're right.

00:06:43.780 --> 00:06:48.020
<v Wes>I mean it was it really opened up a lot of and you could sell easy self-hosting

00:06:48.020 --> 00:06:52.554
<v Wes>yeah it sort of changed the activation potential for even having a website.

00:06:52.729 --> 00:06:55.735
<v Brent>Yeah what was really attractive to me was that um,

00:06:56.350 --> 00:07:00.340
<v Brent>i guess wordpress allowed you to take control of your own website right it was

00:07:00.340 --> 00:07:05.203
<v Brent>the thing that felt like everyday users could just build something really cool yeah

00:07:05.640 --> 00:07:10.110
<v Brent>and being a little bit more technical of course i could host it at like some

00:07:10.110 --> 00:07:15.050
<v Brent>shared hosting and have it be reasonably fast you know and,

00:07:16.424 --> 00:07:20.410
<v Brent>enough security in place that it wasn't you know i wasn't getting totally swamped

00:07:20.410 --> 00:07:22.311
<v Brent>with yep bots and stuff like that.

00:07:22.508 --> 00:07:26.110
<v Chris>And then years later too as it kind of went on like there was like optimization plugins you could.

00:07:26.110 --> 00:07:26.775
<v Brent>Do to.

00:07:26.955 --> 00:07:30.350
<v Chris>Make sure it was like cached and you know all the things you would do to a wordpress

00:07:30.350 --> 00:07:33.690
<v Chris>site to try to make it faster reprocess your images yeah yeah.

00:07:33.690 --> 00:07:39.190
<v Brent>Yeah right yeah yeah and so like that was pretty cool back then but it turns

00:07:39.190 --> 00:07:42.670
<v Brent>out i haven't changed that website uh since then,

00:07:43.550 --> 00:07:48.630
<v Brent>and uh it's not so cool anymore so uh the other thing is i don't really do photography

00:07:48.630 --> 00:07:54.950
<v Brent>these days and it's been a while gents uh quite a while so for me this website

00:07:54.950 --> 00:07:57.226
<v Brent>was just getting stale uh,

00:07:57.970 --> 00:08:02.710
<v Brent>and wasn't serving me really any purpose if anything it was confusing folks

00:08:02.710 --> 00:08:06.990
<v Brent>that like associated that url with me because they would go there and be like hmm,

00:08:07.751 --> 00:08:10.415
<v Brent>he never talks about photography anymore this doesn't make any sense,

00:08:11.402 --> 00:08:16.917
<v Brent>So this week, I woke up, and for some reason, I felt very motivated to make a website.

00:08:16.917 --> 00:08:21.987
<v Brent>So I thought, geez, I'm going to tackle this to-do I've had on my list for the

00:08:21.987 --> 00:08:28.254
<v Brent>last, what, four years or a long time anyways. And it turns out I did.

00:08:28.684 --> 00:08:33.513
<v Brent>Made myself a new website. And it was way easier than it was back then. Took way less time.

00:08:34.019 --> 00:08:39.037
<v Chris>When I get those kinds of inspirations, I do try to act on them because if I

00:08:39.037 --> 00:08:43.637
<v Chris>wait like a week, it'll fade and it won't really be did you have that?

00:08:43.637 --> 00:08:47.397
<v Chris>So you kind of almost it's like an artificial time box in a way but it's still an important time box.

00:08:47.397 --> 00:08:50.187
<v Wes>And there's something about the spark too right where you're like okay right

00:08:50.187 --> 00:08:55.097
<v Wes>now this doesn't feel like a project it's not a big task I want to do it I can just do it right now.

00:08:55.097 --> 00:08:55.414
<v Chris>Yeah.

00:08:55.670 --> 00:08:58.347
<v Brent>Whatever I ate that morning just inspired me you know.

00:08:58.707 --> 00:09:04.377
<v Chris>I'm gonna bet that you probably consider going Hugo out of the gate just because

00:09:04.377 --> 00:09:07.907
<v Chris>you have experience with it from working with the community to build the new JB.com.

00:09:08.598 --> 00:09:15.964
<v Brent>Yeah definitely When we built the new JB website, I had on my list to build myself a new website.

00:09:16.301 --> 00:09:23.277
<v Brent>And we had a bunch of amazing community members help us build this website with some really cool tech.

00:09:23.277 --> 00:09:29.057
<v Brent>And static websites seemed like kind of amazing and was new to me.

00:09:29.057 --> 00:09:34.337
<v Brent>So I went into the project thinking, yeah, okay, I'm going to use Hugo because

00:09:34.499 --> 00:09:37.512
<v Brent>I had such a good experience with it, building our website with the community.

00:09:38.151 --> 00:09:42.213
<v Brent>and um it's simple enough that like i don't,

00:09:42.869 --> 00:09:46.474
<v Brent>i could just edit the markdown whenever i feel like it and that's all i need,

00:09:46.950 --> 00:09:52.117
<v Brent>right so that's what i went into this project thinking i was going to choose

00:09:52.117 --> 00:09:55.808
<v Brent>but like vastly simplified from our website because i don't need,

00:09:56.377 --> 00:09:59.567
<v Brent>you know all the features that we have i don't even need a menu or anything

00:09:59.567 --> 00:10:01.404
<v Brent>i was picturing just a landing page.

00:10:02.229 --> 00:10:06.047
<v Chris>The other thing if i were building a personal site today and i'm wondering if

00:10:06.047 --> 00:10:07.273
<v Chris>you thought about this you probably We did.

00:10:08.278 --> 00:10:13.444
<v Chris>I don't think I'd want to go through the expense or hassle of setting up a VPS

00:10:13.784 --> 00:10:15.744
<v Chris>with a database and Nginx.

00:10:16.847 --> 00:10:18.246
<v Chris>So did you think about how to host it too?

00:10:19.354 --> 00:10:24.174
<v Brent>Well, I knew that a lot of people use just static site hosters.

00:10:24.174 --> 00:10:29.144
<v Brent>Like, I guess GitHub does their pages and Cloudflare has some.

00:10:29.144 --> 00:10:31.744
<v Brent>And, you know, a bunch of these are popping up all over.

00:10:32.284 --> 00:10:34.084
<v Chris>So you did consider it. You don't have to tell me what you did yet,

00:10:34.084 --> 00:10:35.214
<v Chris>but I'm curious if you considered it.

00:10:35.804 --> 00:10:39.934
<v Brent>100%. I knew I wanted to do this because I'm spending, I don't know what it

00:10:39.934 --> 00:10:44.344
<v Brent>is, like $150 a month for mail and hosting of my current website,

00:10:44.344 --> 00:10:45.664
<v Brent>which doesn't serve me, you know?

00:10:45.664 --> 00:10:46.624
<v Chris>Yeah, okay, that's a bit much.

00:10:46.624 --> 00:10:48.684
<v Brent>This is a complete waste of money. What am I doing?

00:10:49.104 --> 00:10:50.874
<v Chris>We should be doing more with that box is what I'm hearing.

00:10:50.874 --> 00:10:56.154
<v Brent>Well, exactly right. And so I knew I wanted to not do that.

00:10:56.154 --> 00:11:00.744
<v Brent>And I knew I needed just a really simple website that didn't,

00:11:00.744 --> 00:11:03.924
<v Brent>you know, I didn't need to host photos and all this media or stuff anymore.

00:11:03.924 --> 00:11:06.670
<v Brent>So as simple as possible was my goal.

00:11:07.302 --> 00:11:13.484
<v Brent>And turns out you can go extremely simple these days and it's still really quite effective.

00:11:13.484 --> 00:11:18.274
<v Brent>You know, back in 2012 that you'd have to write an HTML page or something like

00:11:18.274 --> 00:11:22.895
<v Brent>that. So I knew I wanted it to be hosted as simply as possible.

00:11:23.301 --> 00:11:27.964
<v Chris>Okay. All right. So you didn't go with Hugo. I'm hearing the but in the sentence.

00:11:27.964 --> 00:11:31.364
<v Chris>You didn't go with Hugo. So tell us where you did end up. Yeah.

00:11:31.985 --> 00:11:35.956
<v Brent>Well, I started with some explorations. Like, I...

00:11:37.099 --> 00:11:42.154
<v Brent>Well, okay, I'm going to be honest. I used the robot to help me and I used the

00:11:42.154 --> 00:11:47.264
<v Brent>heck out of DeepSeq V4 Flash, but to do some explorations.

00:11:47.264 --> 00:11:51.864
<v Brent>Like literally the opening question was, hey, I think I want to build a website

00:11:51.864 --> 00:11:54.084
<v Brent>with Hugo. Should I? And what are the alternatives?

00:11:54.744 --> 00:11:59.514
<v Brent>because like I have an idea maybe it's the wrong idea right if uh if someone

00:11:59.514 --> 00:12:01.344
<v Brent>definitely knows better than I do so um,

00:12:02.331 --> 00:12:07.484
<v Brent>it turns out even compared to when we did the website a couple years ago there

00:12:07.484 --> 00:12:10.234
<v Brent>are new alternatives that are really really cool that are kind of in the same

00:12:10.234 --> 00:12:14.597
<v Brent>ballpark so the one that kind of caught my eye was Zola,

00:12:15.398 --> 00:12:20.501
<v Brent>and uh one of the main reasons it caught my eye was that it's written in rust of course.

00:12:21.082 --> 00:12:21.884
<v Chris>Oh it is is.

00:12:21.884 --> 00:12:24.794
<v Brent>It uh-huh all right well.

00:12:24.794 --> 00:12:26.556
<v Chris>If you if you hold on do you would you like it.

00:12:26.985 --> 00:12:28.814
<v Brent>I would i vote very much.

00:12:29.156 --> 00:12:29.545
<v Chris>There you go.

00:12:29.789 --> 00:12:33.028
<v Brent>Ah see it just feels like success.

00:12:36.070 --> 00:12:36.910
<v Chris>So Zola.

00:12:37.909 --> 00:12:43.667
<v Brent>Yeah, Zola, which, you know, is a fast static site generator written in Rust,

00:12:43.667 --> 00:12:47.452
<v Brent>they say. I was like, that seems really simple and exactly what I need.

00:12:48.915 --> 00:12:54.797
<v Brent>But the benefit of using a little bit of AI to help here was that I was like,

00:12:54.797 --> 00:12:56.537
<v Brent>well, compare these for me.

00:12:56.857 --> 00:13:02.847
<v Brent>And let's write a little snippet because I want the simplest website to maintain

00:13:02.847 --> 00:13:06.317
<v Brent>as possible and to edit as possible. I was like, give me a markdown file,

00:13:06.317 --> 00:13:07.526
<v Brent>and that's basically all I want to do.

00:13:08.066 --> 00:13:12.557
<v Brent>And so I had to make some snippets side by side.

00:13:13.517 --> 00:13:17.347
<v Brent>Let me compare them. And Zola was just simpler. I don't know.

00:13:17.347 --> 00:13:19.705
<v Brent>It just felt better. And the technology seemed good.

00:13:20.117 --> 00:13:26.015
<v Brent>And the author wrote a note that I thought was really important.

00:13:27.437 --> 00:13:31.019
<v Brent>because they said, I wrote Zola and,

00:13:31.750 --> 00:13:36.977
<v Brent>its Terra engine from an intense dislike of the insane Golang template engine

00:13:36.977 --> 00:13:42.575
<v Brent>and therefore of Hugo that I was using before for about six plus websites.

00:13:43.109 --> 00:13:45.737
<v Chris>I mean, sometimes you need a muse, a motivation.

00:13:46.883 --> 00:13:49.721
<v Wes>Development by spite goes a long way.

00:13:49.936 --> 00:13:54.037
<v Brent>And that quote alone made me go, hmm, all right, I'm going to try something

00:13:54.037 --> 00:13:57.703
<v Brent>new then. We'll see how this goes. Turns out it went pretty well.

00:13:58.742 --> 00:14:05.528
<v Chris>All right. So Zola, Z-O-L-A, and you can find it at getzola.org.

00:14:06.797 --> 00:14:10.247
<v Chris>When I looked at it, a couple of things jumped out at me that seemed like you're

00:14:10.247 --> 00:14:10.997
<v Chris>obviously going to like.

00:14:11.977 --> 00:14:16.076
<v Chris>Obviously the markdown stuff. But it looks like the actual...

00:14:18.166 --> 00:14:22.101
<v Chris>I don't know, size of it is pretty small. You could get down to a single executable

00:14:22.101 --> 00:14:25.933
<v Chris>to build the entire website if you want. I have to imagine that simplicity also spoke to you.

00:14:26.612 --> 00:14:31.641
<v Brent>Yes, and it was available in Nix packages, which also deeply spoke to me,

00:14:31.641 --> 00:14:36.051
<v Brent>because it meant I could just try it without really needing to install anything like that.

00:14:36.471 --> 00:14:39.062
<v Brent>It's such a beautiful... Nix OS is such a beautiful thing.

00:14:39.463 --> 00:14:41.271
<v Chris>It's packaged for several distros, yeah.

00:14:41.691 --> 00:14:47.751
<v Brent>Sure, and I think that's great. But for me, it was like a zero setup trial to

00:14:47.751 --> 00:14:49.431
<v Brent>just give this a shot. Right.

00:14:49.431 --> 00:14:52.851
<v Chris>Yeah. Well, if it's, if it's one executable, you can really just run it on anything.

00:14:53.371 --> 00:14:53.601
<v Brent>Yeah.

00:14:53.601 --> 00:14:54.022
<v Chris>Yeah.

00:14:54.405 --> 00:15:01.081
<v Brent>And I was building this from my cabin, uh, on the other side of a river in like,

00:15:01.452 --> 00:15:04.494
<v Brent>you know, Northern Ontario over a cell connection.

00:15:05.371 --> 00:15:10.341
<v Brent>Oh, so I didn't really have much bandwidth to be downloading like massive binaries

00:15:10.341 --> 00:15:15.843
<v Brent>or anything like that so it helped that it was teeny tiny and i have to say,

00:15:16.621 --> 00:15:20.556
<v Brent>it was super fast like insanely fast.

00:15:21.102 --> 00:15:24.961
<v Chris>Tara you mentioned tara is that like an end a rendering engine that zola uses

00:15:24.961 --> 00:15:26.623
<v Chris>and it's that's the part that's written in rust.

00:15:27.058 --> 00:15:27.821
<v Wes>Well it's all rust.

00:15:27.821 --> 00:15:28.441
<v Chris>That's all rust.

00:15:28.441 --> 00:15:34.241
<v Wes>Okay yeah so tara ends up being a template engine in rust that takes a lot after

00:15:34.241 --> 00:15:38.387
<v Wes>the style of other popular template engines like Jinja and Django's templates.

00:15:38.527 --> 00:15:43.901
<v Chris>Okay. And so you can do things like, I imagine templates and themes and different

00:15:43.901 --> 00:15:45.417
<v Chris>kinds of styles and all that kind of stuff.

00:15:45.685 --> 00:15:48.524
<v Wes>Yeah, and the template comes in right because you ultimately want HTML,

00:15:49.063 --> 00:15:54.151
<v Wes>but you have Markdown or maybe Toml at the front matter of your Markdown.

00:15:54.151 --> 00:15:56.063
<v Wes>And so you need to somewhere to get that content,

00:15:56.905 --> 00:16:00.002
<v Wes>into the actual form. And so the template is the thing that sort of binds those

00:16:00.002 --> 00:16:02.722
<v Wes>and abstracts that together so that you can have one template that knows how

00:16:02.722 --> 00:16:08.689
<v Wes>to render a blog post or a, you know, resume site or whatever.

00:16:08.863 --> 00:16:14.782
<v Wes>And then the building engine, Zola or Hugo or whatever, takes all of your source

00:16:14.782 --> 00:16:18.402
<v Wes>files, feeds them to the right templates, gets HTML out, and then you're done.

00:16:18.402 --> 00:16:23.412
<v Chris>Okay. But Brent, this simplicity that Zola offers, it must come at the cost

00:16:23.412 --> 00:16:25.791
<v Chris>of some features that Hugo has that Zola doesn't have?

00:16:26.487 --> 00:16:32.732
<v Brent>And I mean, yes, I needed so few features actually that that worked in my favor.

00:16:33.232 --> 00:16:36.752
<v Chris>Sure. That often is the case. Like if you just want a quick dashboard,

00:16:36.752 --> 00:16:41.542
<v Chris>I was actually thinking like, I just, I could use Zola to get myself just like

00:16:41.542 --> 00:16:45.492
<v Chris>reports, just render my, you know, cause right now I'm getting them in Markdown. Why not?

00:16:45.492 --> 00:16:46.740
<v Brent>True. Yeah. Make them pretty.

00:16:47.309 --> 00:16:47.532
<v Chris>Yeah.

00:16:48.132 --> 00:16:52.609
<v Brent>So Zola and Hugo are like super similar, which is why I think I felt,

00:16:53.270 --> 00:16:57.442
<v Brent>comfortable trying something brand new um because it was like well like i already

00:16:57.442 --> 00:17:03.446
<v Brent>know the concept of these static site generators so both are really fast at compiling static sites,

00:17:04.097 --> 00:17:10.342
<v Brent>that's great uh hugo's written in go and zola of course is in rust and uh but

00:17:10.342 --> 00:17:16.705
<v Brent>there's that bigger philosophical difference in the templating so zola's got tara as wes mentioned.

00:17:17.210 --> 00:17:20.262
<v Chris>Menus i'm i think one of the things i remember reading is like hugo has support

00:17:20.262 --> 00:17:22.760
<v Chris>for menus and zola doesn't have support for menus.

00:17:23.114 --> 00:17:29.552
<v Brent>Yeah, Hugo's much more mature, and it has like a thousand plus themes,

00:17:30.392 --> 00:17:33.434
<v Brent>and it's well-known, it's battle-tested themes.

00:17:34.425 --> 00:17:39.493
<v Brent>I guess for the show, we don't use that. We want to use something crazy,

00:17:39.493 --> 00:17:41.658
<v Brent>right? And that's your fault. So thanks, Chris.

00:17:41.821 --> 00:17:44.843
<v Chris>I don't know. I mean, it's like if you need a corporate website with certain

00:17:44.843 --> 00:17:48.993
<v Chris>menu navigations and community built things, then Hugo might be the right answer.

00:17:48.993 --> 00:17:53.723
<v Chris>But if you need a personal resume website or a dashboard or something like or

00:17:53.723 --> 00:17:59.921
<v Chris>a link list just for our start page, Zola is perfect in its simplicity and it's really its speed.

00:18:00.043 --> 00:18:03.688
<v Wes>I think that shows up too, where it sort of has a little, like you don't need,

00:18:04.002 --> 00:18:08.173
<v Wes>it has fewer concepts and you don't need as much to get started necessarily,

00:18:08.173 --> 00:18:12.663
<v Wes>right? Like you might just need one global config file and then like a directory

00:18:12.663 --> 00:18:14.468
<v Wes>tree and then you can have a website.

00:18:14.648 --> 00:18:20.173
<v Chris>Yeah. Also kind of timely because Zola 0.23 was released in August,

00:18:21.661 --> 00:18:23.100
<v Chris>September as we record right now.

00:18:23.559 --> 00:18:27.713
<v Chris>the developers describe it as one of the most big, large, breaking changes of

00:18:27.713 --> 00:18:29.078
<v Chris>Zola that they'll ever have,

00:18:30.384 --> 00:18:33.809
<v Chris>they moved to Terra 2 the shortcode system was also removed,

00:18:34.274 --> 00:18:37.292
<v Chris>and markdown content was promoted to more first class,

00:18:38.413 --> 00:18:42.453
<v Chris>so like kind of just went through the transitions you needed,

00:18:42.453 --> 00:18:45.779
<v Chris>Brent to be the tool that you needed last month.

00:18:46.452 --> 00:18:51.483
<v Brent>Like I didn't notice any of this so it's all completely by chance You know,

00:18:51.483 --> 00:18:55.093
<v Brent>had I been on the other side of that transition, maybe I would have been really

00:18:55.093 --> 00:18:57.749
<v Brent>angry, but this is somewhere for me.

00:18:58.080 --> 00:19:02.393
<v Wes>It is nice to be on this side. Like, okay, well, clearly they're still investing.

00:19:02.393 --> 00:19:03.723
<v Wes>This is the new shiny version.

00:19:03.723 --> 00:19:08.083
<v Chris>I'll just learn the new API. Yes, yes, exactly. All right. So with that in mind,

00:19:08.083 --> 00:19:09.719
<v Chris>I'm curious to hear what you built.

00:19:18.699 --> 00:19:22.778
<v Brent>All right so i woke up that morning feeling very website-ish and i think i should

00:19:22.778 --> 00:19:28.131
<v Brent>describe how this all went for me uh i described what i wanted and what i found,

00:19:30.354 --> 00:19:34.938
<v Brent>but the process was just like kind of amazing because like i mentioned i teamed

00:19:34.938 --> 00:19:40.008
<v Brent>up with deep seek v4 flash which is super fast super cheap and totally understands

00:19:40.008 --> 00:19:43.427
<v Brent>this stuff uh which is great and I,

00:19:44.228 --> 00:19:47.848
<v Brent>suggested that it just like, go find public information about me.

00:19:47.848 --> 00:19:51.438
<v Brent>There's tons, like take the JB website, I don't know, go scrape LinkedIn or

00:19:51.438 --> 00:19:54.428
<v Brent>something and certainly go take the stuff off my old website.

00:19:55.201 --> 00:20:03.848
<v Brent>and compile it into something that looks nice, right? Like, I could do that, but I want you to do it.

00:20:04.328 --> 00:20:06.497
<v Wes>You just told the bot, hey, do you know who you're working with here?

00:20:07.368 --> 00:20:09.388
<v Chris>Yeah, I'm kind of a big deal. Go look me up on the internet.

00:20:11.368 --> 00:20:14.880
<v Wes>This is an ego-based project that I'm going to need you to get this way.

00:20:15.568 --> 00:20:17.118
<v Brent>Well, isn't that what a website is?

00:20:17.118 --> 00:20:17.666
<v Wes>I mean...

00:20:18.084 --> 00:20:19.568
<v Chris>Also make me look good, no mistakes.

00:20:20.598 --> 00:20:24.928
<v Brent>What was nice, though, is that it just, like, compiled all those things into

00:20:25.328 --> 00:20:28.548
<v Brent>a few different options that I could put on this one landing page.

00:20:28.548 --> 00:20:31.248
<v Chris>It successfully e-stocked you, is what you've just demonstrated.

00:20:31.248 --> 00:20:32.583
<v Brent>Yeah, yeah, 100%.

00:20:32.861 --> 00:20:36.168
<v Wes>See, I noticed he shared the ultimate thing that he built with us.

00:20:36.168 --> 00:20:37.588
<v Wes>He didn't share this part of it.

00:20:37.588 --> 00:20:38.278
<v Chris>No, I didn't.

00:20:38.278 --> 00:20:40.418
<v Wes>There's no brent.json that was shared.

00:20:40.418 --> 00:20:44.098
<v Chris>And for all we know, he's doing the same thing on us, and keeping dossiers now,

00:20:44.098 --> 00:20:46.428
<v Chris>or something with his buddy Deep Freak over there.

00:20:47.333 --> 00:20:49.128
<v Brent>Yeah, your website will be ready tomorrow. That's fine.

00:20:49.128 --> 00:20:51.867
<v Chris>Oh, thank you. Thank you. Okay. Interesting, okay.

00:20:52.122 --> 00:20:56.383
<v Brent>Because this is such a fast and efficient,

00:20:56.877 --> 00:21:02.958
<v Brent>static site generator it like when you make changes to like i was primarily

00:21:02.958 --> 00:21:05.944
<v Brent>making changes to the content itself so it was just a markdown file,

00:21:06.402 --> 00:21:12.048
<v Brent>and i would hit save and almost immediately it would get updated in the browser

00:21:12.048 --> 00:21:17.558
<v Brent>so like the time that's nice at which you could see the result of what you were

00:21:17.558 --> 00:21:19.313
<v Brent>doing it was instant basically,

00:21:19.818 --> 00:21:23.478
<v Brent>And that is not the experience that you have with WordPress,

00:21:23.478 --> 00:21:24.803
<v Brent>if you remember how that goes.

00:21:26.608 --> 00:21:31.388
<v Brent>The whole WordPress experience that I had previous to building this website

00:21:31.388 --> 00:21:36.459
<v Brent>was like, add a thing, wait a really long time for the page to load, and then,

00:21:37.162 --> 00:21:41.938
<v Brent>go to the actual website and refresh it, and then wait for that to load.

00:21:41.938 --> 00:21:45.028
<v Chris>Make sure your browser didn't cache it, make sure the performance optimizing

00:21:45.028 --> 00:21:48.028
<v Chris>extension you use doesn't have cache, and then maybe you need to go back into

00:21:48.028 --> 00:21:49.718
<v Chris>the admin dashboard and clear that one.

00:21:50.142 --> 00:21:52.378
<v Chris>Then clear your browser cache, then refresh the page.

00:21:52.378 --> 00:21:57.028
<v Wes>Oh, you probably have a Clash Clearing plugin that you have to go hit if it wasn't wired up right.

00:21:57.028 --> 00:21:58.518
<v Chris>You've got to do this often, so...

00:21:59.912 --> 00:22:04.100
<v Brent>It describes exactly the process I would go through every time I would change

00:22:04.100 --> 00:22:08.120
<v Brent>my WordPress website, which is why I stopped changing it, because it was such a terrible experience.

00:22:09.080 --> 00:22:13.321
<v Chris>That's why. I love it. I thought it was because you lost it in all your tabs.

00:22:13.760 --> 00:22:20.580
<v Brent>Well, you know, sometimes. So I found that live editing was really nice.

00:22:20.580 --> 00:22:24.953
<v Brent>And because I was on such a terrible internet connection,

00:22:26.240 --> 00:22:33.470
<v Brent>building everything locally before I deployed it to the actual website was beautiful

00:22:33.470 --> 00:22:36.586
<v Brent>because it was like as fast as it possibly could be.

00:22:37.167 --> 00:22:41.416
<v Brent>Didn't need the internet really at all. And it was instant. Yeah.

00:22:42.588 --> 00:22:45.846
<v Brent>I don't know. It was even better than I had imagined this process would go,

00:22:45.856 --> 00:22:49.496
<v Brent>which I'm glad because had it gone worse, maybe we wouldn't be making a show

00:22:49.496 --> 00:22:50.297
<v Brent>because it wouldn't be done.

00:22:52.828 --> 00:22:59.396
<v Brent>But the process, like Zola worked so well that the hardest part of the process

00:22:59.396 --> 00:23:02.714
<v Brent>of making the website for me wasn't the new technology I was trying.

00:23:03.468 --> 00:23:06.686
<v Brent>It was the terrible network I was using.

00:23:06.686 --> 00:23:08.263
<v Chris>So, yeah, sure.

00:23:08.623 --> 00:23:12.956
<v Brent>Like i i thought it was probably a good idea to like archive my old website

00:23:12.956 --> 00:23:17.376
<v Brent>and that took freaking forever also because oh sure it's wordpress you got to

00:23:17.376 --> 00:23:19.715
<v Brent>click through stuff images and,

00:23:20.499 --> 00:23:25.356
<v Brent>well exactly and so that was actually the most frustrating part of the whole

00:23:25.356 --> 00:23:28.690
<v Brent>thing was like everything that wasn't the new website,

00:23:29.514 --> 00:23:33.537
<v Brent>right like the downloading of archiving stuff and The technical debt.

00:23:34.676 --> 00:23:42.291
<v Brent>Yeah, exactly. So I ended up deciding to deploy it with GitHub Pages because,

00:23:42.807 --> 00:23:44.756
<v Brent>it was super simple. I know it's battle-tested.

00:23:45.396 --> 00:23:49.706
<v Brent>Another option was Cloudflare Pages, and you can host this. It's such a simple

00:23:49.706 --> 00:23:51.236
<v Brent>website. You can host it any way you want.

00:23:52.296 --> 00:23:56.616
<v Brent>But that got me up and running almost immediately. And I have to say,

00:23:56.616 --> 00:23:59.880
<v Brent>when I switched the DNS to it, it was instant as well.

00:24:00.054 --> 00:24:00.626
<v Chris>Oh, nice.

00:24:00.626 --> 00:24:06.010
<v Brent>And yeah, so it was like in a very short amount of time, in quite a time-blocked

00:24:06.376 --> 00:24:11.866
<v Brent>session, I went from start to finish with a technology that was totally new

00:24:11.866 --> 00:24:15.256
<v Brent>to me and with a result that I'm pretty happy with.

00:24:15.796 --> 00:24:18.516
<v Chris>And now you don't have to pay for that VPS eventually.

00:24:18.516 --> 00:24:20.237
<v Brent>Yeah, exactly. Someone remind me to cancel that.

00:24:21.884 --> 00:24:26.483
<v Chris>And it produces a really nice, clean kind of like bio page that's just super simple. Yeah.

00:24:27.552 --> 00:24:30.819
<v Chris>Really nice links, your face.

00:24:31.226 --> 00:24:32.585
<v Brent>Yeah, my face. Yeah, yeah.

00:24:32.718 --> 00:24:34.777
<v Chris>You know, kind of just what you need if you want to like a domain,

00:24:35.237 --> 00:24:37.624
<v Chris>you know, kind of thing. So with a landing page.

00:24:38.569 --> 00:24:41.827
<v Chris>I like that. It looks professional, you know?

00:24:42.541 --> 00:24:42.977
<v Brent>Wow. Thank you.

00:24:44.777 --> 00:24:46.957
<v Chris>Was that an existing theme? Did you just kind of browse through some of the

00:24:46.957 --> 00:24:49.747
<v Chris>community themes and land on one you like? Or was that kind of a mix?

00:24:49.747 --> 00:24:51.177
<v Chris>Or how did you land on that look?

00:24:51.177 --> 00:24:55.637
<v Brent>I'm going to be honest. Like I asked it to just generate me like a first go

00:24:55.637 --> 00:24:59.027
<v Brent>so that I could be really critical about the themes. And like we would then

00:24:59.027 --> 00:25:00.373
<v Brent>look at options and stuff in it.

00:25:00.756 --> 00:25:04.647
<v Brent>This is the first one that showed up. I was like, hmm, wow, this is exactly

00:25:04.647 --> 00:25:09.617
<v Brent>what I was picturing. So I didn't even have to do like the browsing through

00:25:09.617 --> 00:25:12.047
<v Brent>a bunch of themes and stuff. So it was super, super easy.

00:25:12.338 --> 00:25:15.290
<v Brent>I got to say. And I got lucky. I think there's a lot of luck based here.

00:25:15.760 --> 00:25:20.857
<v Chris>So that's a great example of a nice, clean, simple page. probably really right

00:25:20.857 --> 00:25:23.272
<v Chris>now, you know, very much Zola's sweet spot.

00:25:23.916 --> 00:25:27.388
<v Chris>And so they're not really, Hugo and Zola aren't maybe direct competitors,

00:25:28.630 --> 00:25:34.081
<v Chris>but we decided to do the right thing and try to see if we could make Zola do what Hugo does.

00:25:34.406 --> 00:25:38.537
<v Chris>And so, Wes, you took a crack at seeing if you could get Zola to render the

00:25:38.537 --> 00:25:43.317
<v Chris>JupyterBroadcasting.com Hugo website using the Zola stack.

00:25:43.317 --> 00:25:44.217
<v Wes>Yeah, why not?

00:25:44.217 --> 00:25:44.967
<v Chris>Why not?

00:25:44.967 --> 00:25:49.847
<v Wes>Because here it is a tool that's broadly in the same sort of capability set,

00:25:49.847 --> 00:25:53.397
<v Wes>right? We have a bunch of markdown files and templates and stuff,

00:25:53.397 --> 00:25:54.817
<v Wes>and it turns it into a website.

00:25:54.817 --> 00:25:55.054
<v Chris>Yep.

00:25:55.275 --> 00:25:56.327
<v Wes>We want the same thing.

00:25:56.327 --> 00:25:56.680
<v Chris>Sure.

00:25:56.894 --> 00:26:00.157
<v Wes>And, you know, as we've talked about, like, it has a bunch of the same stuff,

00:26:00.157 --> 00:26:02.572
<v Wes>single binary, markdown in, um...

00:26:04.296 --> 00:26:08.793
<v Wes>Well, let's just see. So if you go to zola.jupiterbroadcasting.com,

00:26:08.793 --> 00:26:12.213
<v Wes>you should see. It is running on my laptop at the moment.

00:26:12.213 --> 00:26:13.783
<v Chris>Oh, my God, Wes.

00:26:14.645 --> 00:26:16.123
<v Wes>So why not be that fast?

00:26:16.643 --> 00:26:18.883
<v Chris>Oh, my God. People are going to crash your laptop.

00:26:18.883 --> 00:26:20.553
<v Brent>Oh, and loaded almost instantly for me.

00:26:20.553 --> 00:26:21.483
<v Chris>Instantly loaded.

00:26:21.483 --> 00:26:23.543
<v Brent>Instant. Wow.

00:26:23.543 --> 00:26:27.843
<v Chris>It actually kind of looks. Okay, so we don't have the menu. Oh,

00:26:27.843 --> 00:26:31.183
<v Chris>but we do have a hamburger menu that does give you everything.

00:26:31.323 --> 00:26:34.523
<v Wes>And you should have the normal menu. I think you just don't have quite enough screen.

00:26:35.743 --> 00:26:38.553
<v Chris>Oh you're right if I expand the browser I do have the normal menu it's just

00:26:38.553 --> 00:26:41.214
<v Chris>because I have it captured for the screen that actually works really well.

00:26:41.493 --> 00:26:43.757
<v Wes>Hey it collapsed was helping me test it.

00:26:43.925 --> 00:26:46.573
<v Chris>And then look if I go into the show I noticed that you're just using the embedded

00:26:46.573 --> 00:26:47.203
<v Chris>player because the domain.

00:26:47.203 --> 00:26:51.402
<v Wes>Difference yeah so we did make some simplification choices there which we can get into chapters.

00:26:52.279 --> 00:26:53.873
<v Chris>Did we do that or did you do that.

00:26:53.873 --> 00:26:58.163
<v Wes>No no that's so we tried to as part of this I wanted to highlight some of the

00:26:58.163 --> 00:26:59.963
<v Wes>stuff that was in there that we don't normally show.

00:27:00.283 --> 00:27:02.101
<v Chris>That's a great idea Wes.

00:27:03.175 --> 00:27:06.423
<v Wes>Just because part of a big part of doing it we can get into it but a big part

00:27:06.423 --> 00:27:09.893
<v Wes>of it was dealing with like the data model that we have especially because we

00:27:09.893 --> 00:27:13.323
<v Wes>have like a scraper several scrapers generations of scrapers involved hundreds.

00:27:13.323 --> 00:27:15.223
<v Chris>And hundreds and hundreds of posts.

00:27:15.223 --> 00:27:19.703
<v Wes>Yes um but uh in doing the episode page it was like well what data do we already

00:27:19.703 --> 00:27:23.153
<v Wes>have that we could be put in here that we just haven't yet but i don't know

00:27:23.153 --> 00:27:24.553
<v Wes>what do you think did it does it work.

00:27:24.553 --> 00:27:30.623
<v Chris>I'm i am shocked i don't know if you looked at that i don't know if you could

00:27:30.623 --> 00:27:33.653
<v Chris>tell that's not the Hugo site other than maybe it loads faster.

00:27:33.653 --> 00:27:37.483
<v Wes>There are a couple of pages like the live page and there's a few picks and stuff.

00:27:37.483 --> 00:27:41.893
<v Chris>I should do a little side by side. I should. Cause I can see like a little bit

00:27:41.893 --> 00:27:46.133
<v Chris>of font rendering difference, but I actually prefer the way Zola's doing it.

00:27:46.133 --> 00:27:47.599
<v Chris>It's a little bigger and bolder.

00:27:49.281 --> 00:27:52.567
<v Chris>I'm just toggling between the two right now. It's surprisingly consistent.

00:27:53.432 --> 00:27:55.677
<v Chris>I actually forgot which one was which just for a second.

00:27:55.677 --> 00:28:00.247
<v Wes>Yeah, I did that several times. Well, because I wanted them both up right as

00:28:00.247 --> 00:28:01.658
<v Wes>I was developing on this one.

00:28:01.814 --> 00:28:06.547
<v Chris>Wow, Wes. It's spot on. Were you impressed by this?

00:28:07.007 --> 00:28:14.143
<v Wes>Yeah. Because at first, I mean, it took a little while to do enough to make it work, I guess.

00:28:14.352 --> 00:28:16.287
<v Wes>Like, the actual rendering worked really well.

00:28:16.802 --> 00:28:22.113
<v Wes>But the biggest thing is Hugo's a lot more flexible, right?

00:28:22.966 --> 00:28:25.697
<v Wes>In some of the templating stuff, which we can talk more about,

00:28:25.697 --> 00:28:30.507
<v Wes>but then also in, and this is a trade-off, but in like the types of concepts

00:28:30.507 --> 00:28:33.827
<v Wes>it has and the number of things it can represent and how it understands those

00:28:33.827 --> 00:28:35.707
<v Wes>and the relationships between them.

00:28:35.707 --> 00:28:38.917
<v Wes>Whereas the data model in Zola is a little more constrained,

00:28:38.917 --> 00:28:41.877
<v Wes>which can be really nice because you don't need to deal with all of these concepts

00:28:41.877 --> 00:28:43.997
<v Wes>that you maybe don't need to care about for a simple website.

00:28:43.997 --> 00:28:44.352
<v Chris>Sure.

00:28:44.735 --> 00:28:49.177
<v Wes>But we have grown a website over many years now that also brought over a bunch

00:28:49.177 --> 00:28:53.727
<v Wes>of past history and sort of, so we're using a lot more of those concepts.

00:28:53.727 --> 00:28:55.027
<v Chris>And so- Do you make your own in Zola?

00:28:55.794 --> 00:28:58.772
<v Wes>Not quite in the same way that you can in Hugo.

00:28:59.143 --> 00:29:04.107
<v Wes>So what I ended up actually doing is doing a round of Python pre-processing,

00:29:04.767 --> 00:29:09.777
<v Wes>to sort of take all of the data in the Hugo format and then convert it to a Zola-friendly format.

00:29:09.847 --> 00:29:11.587
<v Chris>That's a little bit of a cheaterade, but I like it.

00:29:11.970 --> 00:29:14.791
<v Wes>Well, there basically was no way around. doing that.

00:29:14.791 --> 00:29:17.223
<v Chris>Right. So if you're willing to pre-process the files, then Zola works.

00:29:18.309 --> 00:29:19.754
<v Wes>And to be clear, there's,

00:29:20.539 --> 00:29:24.397
<v Wes>Like some amount of this was because Zola doesn't offer things.

00:29:24.397 --> 00:29:25.717
<v Chris>Well, we have a lot of weird stuff.

00:29:25.717 --> 00:29:29.740
<v Wes>And then some amount of this is basically we designed the current data model

00:29:29.937 --> 00:29:33.257
<v Wes>knowing we were building a Hugo website. They co-evolved together.

00:29:33.257 --> 00:29:34.767
<v Wes>So it can only tell you so much.

00:29:35.336 --> 00:29:38.424
<v Chris>That's why I'm so impressed. It works as well as it does. Yeah.

00:29:38.831 --> 00:29:41.447
<v Wes>And that's where the Python stuff was. A lot of it was mostly just sort of like

00:29:41.447 --> 00:29:45.547
<v Wes>normalizing, changing some key names, dealing with things like Brent likes to

00:29:45.547 --> 00:29:47.447
<v Wes>put emojis everywhere on the website.

00:29:47.747 --> 00:29:49.732
<v Brent>I was hoping those would break something at some point.

00:29:49.860 --> 00:29:52.567
<v Wes>And one of the differences is there's times where Hugo will,

00:29:52.567 --> 00:29:57.697
<v Wes>by default, sort of just, if it runs into something, it'll just not worry about

00:29:57.697 --> 00:30:00.247
<v Wes>it and move on. And Zola will very loudly err.

00:30:01.007 --> 00:30:02.627
<v Chris>Which, you know, you could argue either way.

00:30:02.627 --> 00:30:04.977
<v Wes>Yeah. You can make both regimes work.

00:30:04.977 --> 00:30:07.687
<v Chris>When a website's like 10 years old, you're like, oh, just build.

00:30:07.987 --> 00:30:10.447
<v Chris>When a website's brand new and you want it nice and tight and efficient, you want to know.

00:30:10.447 --> 00:30:14.247
<v Wes>So there was some stuff that, like, probably want it to be handling that it

00:30:14.247 --> 00:30:15.537
<v Wes>wasn't because it was just skipping over.

00:30:15.537 --> 00:30:19.307
<v Wes>but the flip side was there was stuff it was just dealing with that Zola immediately

00:30:19.307 --> 00:30:22.207
<v Wes>choked on that we had to like iterate through to make that work,

00:30:23.387 --> 00:30:27.986
<v Wes>reasonable things though yeah and so some of that was like well we have tags

00:30:28.265 --> 00:30:31.907
<v Wes>and it wants to kind of think of those as a taxonomy and then it can automatically

00:30:31.907 --> 00:30:36.305
<v Wes>build you right like oh here's all the episodes that have tags and that kind of stuff right but,

00:30:37.947 --> 00:30:41.377
<v Wes>the way Hugo does it and handles emojis ends up being different than the way

00:30:41.377 --> 00:30:45.347
<v Wes>Zola does it and then you have to come up with a different workaround that involves

00:30:45.747 --> 00:30:48.817
<v Wes>perhaps pre-processing so that you can separate those out so they can still

00:30:48.817 --> 00:30:52.017
<v Wes>be displayed as tags but they can't actually live in the full this.

00:30:52.017 --> 00:30:52.692
<v Chris>Is what you get.

00:30:52.820 --> 00:30:54.294
<v Brent>I'm so sorry Wes.

00:30:54.672 --> 00:31:01.057
<v Wes>Yeah so some of this was you know that kind of stuff things we did to ourselves

00:31:01.057 --> 00:31:03.401
<v Wes>but there was also limitations just in terms of like,

00:31:04.874 --> 00:31:09.462
<v Wes>So I think the Zola templating language Terra, I mean, A, it's more familiar

00:31:09.462 --> 00:31:13.681
<v Wes>to other things, you know, like Jinja, that are quite popular out there.

00:31:14.662 --> 00:31:17.860
<v Wes>And it's nicer for a lot of the common stuff that you're going to do,

00:31:18.255 --> 00:31:21.593
<v Wes>but it isn't quite as flexible.

00:31:21.883 --> 00:31:25.972
<v Wes>Now, I have mixed feelings about templates in general, at least in a more general

00:31:25.972 --> 00:31:29.343
<v Wes>programming language environment, and how much logic you should put into a template.

00:31:30.202 --> 00:31:34.972
<v Wes>But when the alternative is some other logic like living in a pre-process or

00:31:34.972 --> 00:31:37.132
<v Wes>whatever, sometimes it makes sense to just have it in the template.

00:31:37.132 --> 00:31:41.214
<v Wes>And so you have a lot more ability to sort of like iterate through and filter,

00:31:41.702 --> 00:31:46.282
<v Wes>and chain access to your content in the template in a way that Terra doesn't

00:31:46.282 --> 00:31:48.081
<v Wes>really offer you in the same way.

00:31:48.922 --> 00:31:51.802
<v Chris>That sounds like the kind of thing that you get when you have tens and tens

00:31:51.802 --> 00:31:53.732
<v Chris>of thousands of users for many, many years.

00:31:53.732 --> 00:31:57.422
<v Wes>Right. So like a big one here, right, is like Zola templates can only loop through

00:31:57.422 --> 00:32:01.952
<v Wes>lists and things like this, not ask questions in a way that Hugo can ask questions, right?

00:32:01.952 --> 00:32:06.492
<v Wes>So like we have some scripts in this setup now that have to figure out like

00:32:06.492 --> 00:32:08.722
<v Wes>for the shows to display on the main page,

00:32:09.274 --> 00:32:13.332
<v Wes>in Hugo, you can just sort of dynamically get the most recent episodes sorted

00:32:13.332 --> 00:32:16.332
<v Wes>through your whole collection or your different collections combined into one

00:32:16.332 --> 00:32:20.013
<v Wes>collection and then filter through that. And you don't really have an easy way to do that.

00:32:21.186 --> 00:32:21.609
<v Chris>Right.

00:32:21.813 --> 00:32:22.828
<v Wes>Zola with Jara.

00:32:23.136 --> 00:32:29.411
<v Chris>So let me flip it around. If we were building JB.com today and we knew we were using Zola.

00:32:30.678 --> 00:32:33.956
<v Chris>We really wouldn't be hitting these snakes, right? Like these would,

00:32:33.956 --> 00:32:36.471
<v Chris>would we be missing certain functionality? We'd still have to.

00:32:36.732 --> 00:32:39.836
<v Wes>There would be some, if you wanted it to have exactly the same functionality.

00:32:39.836 --> 00:32:42.746
<v Wes>So like the pagination is, is, is the result of this, right?

00:32:42.746 --> 00:32:43.037
<v Chris>Okay.

00:32:43.147 --> 00:32:49.811
<v Wes>Where you got, Hugo handles that a little more for you. Pagination is sort of per tree in Zola.

00:32:50.217 --> 00:32:54.306
<v Wes>Whereas we wanted something that was cross tree in Hugo and Hugo can kind of

00:32:54.306 --> 00:33:01.292
<v Wes>just do that, but then it does it by generating like each pagination result is a pre generated html,

00:33:01.931 --> 00:33:05.646
<v Wes>thing okay so for every page you click through yes it's pre-generated uh-huh

00:33:05.646 --> 00:33:09.266
<v Wes>but you can have hugo do all of that yeah whereas we there wasn't necessarily

00:33:09.266 --> 00:33:14.306
<v Wes>as clear of a way to do that given the hierarchy of our data as we have it in zola,

00:33:14.806 --> 00:33:17.986
<v Wes>and so a pre-processing script kind of just goes and figures that out and then

00:33:17.986 --> 00:33:21.056
<v Wes>can just write out oh here's the most recent 80 episodes we'll just display

00:33:21.056 --> 00:33:24.476
<v Wes>those or whatever and then so now it uses a bit of javascript to sort of do

00:33:24.476 --> 00:33:28.964
<v Wes>the pagination versus this like pre-computed step so there's trade-offs there too.

00:33:29.521 --> 00:33:32.166
<v Chris>I mean here's what i'm noticing is a lot of you are talking about the things

00:33:32.166 --> 00:33:36.416
<v Chris>it doesn't do but then you both seem to really like it is that fair do you like

00:33:36.416 --> 00:33:38.286
<v Chris>it it seems like you're impressed by it to a degree.

00:33:38.816 --> 00:33:46.466
<v Wes>Yeah i think um like i like rust more than i like go okay right and i also never

00:33:46.466 --> 00:33:53.723
<v Wes>liked the go templates yeah yeah i would still say the jb site should be using hugo but,

00:33:54.425 --> 00:33:58.706
<v Wes>i think if you aren't using any of the more complicated features if you don't

00:33:58.706 --> 00:34:01.786
<v Wes>need the robust sort of template library or like if.

00:34:01.786 --> 00:34:06.817
<v Chris>If you were going to build fullpane.com as like a bio site for yourself would you use zola.

00:34:07.484 --> 00:34:11.751
<v Wes>Yeah i think if i wanted a static site generating tool i think zola would be my default.

00:34:11.966 --> 00:34:13.800
<v Chris>Yeah or Like reports. Yeah.

00:34:14.195 --> 00:34:16.546
<v Brent>That means I made the right decision. Thank you, Wes.

00:34:16.546 --> 00:34:19.816
<v Chris>I mean, I think I'm going to use it. I think I'm going to use it to review reports

00:34:19.816 --> 00:34:21.375
<v Chris>and just get them in an HTML format.

00:34:22.421 --> 00:34:27.958
<v Wes>Because a lot of the stuff, like, I don't think you'll run into a lot of the limitations. Sure.

00:34:28.092 --> 00:34:31.265
<v Wes>And this is why I wanted to test on the JB site, was to try to figure out,

00:34:31.265 --> 00:34:33.085
<v Wes>like, where will it really break?

00:34:33.085 --> 00:34:34.125
<v Chris>Yeah, it's a great test.

00:34:34.125 --> 00:34:37.902
<v Wes>I think Zola rewards when you can kind of adapt your content to it,

00:34:38.355 --> 00:34:41.229
<v Wes>and Hugo is a little more willing to bend towards your content.

00:34:41.571 --> 00:34:45.665
<v Chris>Yeah, okay. Which is perfect for what Brent's doing. It's because he's starting over again, right?

00:34:45.665 --> 00:34:46.621
<v Wes>Yes, exactly.

00:34:47.353 --> 00:34:51.405
<v Chris>This is a and it's such a simple tool to get started with and markdown is such

00:34:51.405 --> 00:34:56.465
<v Chris>an approachable language that it and it's so common online now that I think,

00:34:57.295 --> 00:34:59.945
<v Chris>this is this is one to keep if you're not interested in a site now it's one

00:34:59.945 --> 00:35:05.289
<v Chris>to keep in your back pocket so it's Zola and you can find it at getzola.org but we'll put a link,

00:35:06.183 --> 00:35:10.065
<v Chris>to several things like the CLI command usage there's some whole CLI set there

00:35:10.065 --> 00:35:13.595
<v Chris>that's really good to have they have some search stuff and indexing stuff that

00:35:13.595 --> 00:35:16.614
<v Chris>you can bolt on which is really nice a bunch of good things in there.

00:35:17.642 --> 00:35:21.705
<v Chris>Nice find there, Brentley. Now you've got to keep it updated somehow.

00:35:21.705 --> 00:35:25.241
<v Chris>But I suppose all you have to do is, right, you just update the markdown,

00:35:25.531 --> 00:35:28.550
<v Chris>commit it, push it, and page is updated.

00:35:29.025 --> 00:35:29.425
<v Brent>Exactly.

00:35:30.505 --> 00:35:34.070
<v Wes>And I've got to give props to Brent. He did make sure he got himself a nice little flake there.

00:35:34.233 --> 00:35:34.695
<v Chris>Yeah, I saw that.

00:35:34.695 --> 00:35:37.845
<v Wes>And what's great too is when you do it with Nix, you can have the build just

00:35:37.845 --> 00:35:41.390
<v Wes>use Zola, and then the output derivation is the static files,

00:35:41.588 --> 00:35:44.835
<v Wes>and then you just either upload that or you serve that behind engine next you

00:35:44.835 --> 00:35:45.685
<v Wes>do whatever you need to do.

00:35:45.685 --> 00:35:46.394
<v Chris>Whatever you got to do.

00:35:46.638 --> 00:35:50.475
<v Brent>You know the only reason I made a flake.next was because I knew Wes would require.

00:35:50.475 --> 00:35:54.752
<v Chris>It makes him so happy and it's worth doing it just it's worth it for how happy it makes him,

00:36:02.924 --> 00:36:05.592
<v Chris>Well, we got some feedback into the show, and Greg the Lawyer writes,

00:36:05.592 --> 00:36:10.562
<v Chris>Hey, Chris Wesson, Brent, episode 682 was a banger. I love hearing your breakdown

00:36:10.562 --> 00:36:14.395
<v Chris>of QuickShell and had to chime in with what I have been building over on my side.

00:36:14.755 --> 00:36:17.721
<v Chris>I put together my own setup called Wintermute OS.

00:36:18.174 --> 00:36:20.810
<v Chris>I call it that because I'm a big fan of Gibson's Neuromancer.

00:36:21.146 --> 00:36:24.912
<v Chris>In the book, Wintermute is an existing AI orchestrate that orchestrates its

00:36:24.912 --> 00:36:27.572
<v Chris>own emergence into a higher state of consciousness.

00:36:28.019 --> 00:36:31.798
<v Chris>It seems to fit given how AI is unlocking new levels of Linux power for us all.

00:36:32.269 --> 00:36:36.882
<v Chris>Wintermute is Nix OS, Wayland, Hyperland, and Quickshell.

00:36:36.882 --> 00:36:37.932
<v Wes>All right.

00:36:38.312 --> 00:36:42.990
<v Chris>Very, very nicely done. With Quickshell, my bar is exactly what I want, where I want it.

00:36:43.205 --> 00:36:46.742
<v Chris>I took inspiration from Ama Archie, Home Assistant plugin, and I have configurable

00:36:46.742 --> 00:36:49.662
<v Chris>panel controls, entities, and I get some sensor readings when I want them.

00:36:49.662 --> 00:36:50.177
<v Wes>Love it.

00:36:50.589 --> 00:36:53.522
<v Chris>I showed off my SingThing panel in the Matrix room in episode 681 as a testament

00:36:53.522 --> 00:36:58.572
<v Chris>to the power of agents in Quickshell. I created that panel during 681.

00:36:58.572 --> 00:37:00.352
<v Wes>Putting the quick in Quickshell. I love it.

00:37:00.660 --> 00:37:05.240
<v Chris>Two custom panels, different apps. Quickshell pulls all my theming to make the desktop feel unified.

00:37:05.611 --> 00:37:09.367
<v Chris>One of my favorite quality of life additions is a custom camera settings pop-up.

00:37:09.756 --> 00:37:13.252
<v Chris>I have a Logi webcam, and without an app running, its settings consistently

00:37:13.252 --> 00:37:15.300
<v Chris>default to less than ideal.

00:37:15.660 --> 00:37:19.412
<v Chris>Quickshell to the rescue. Now, right-clicking on the existing screen recording

00:37:19.412 --> 00:37:24.452
<v Chris>glyph pulls up a panel with a button to instantly apply my defaults to addition

00:37:24.452 --> 00:37:28.860
<v Chris>to direct controls for exposure, focus, pan, tilt, and color balance on the fly.

00:37:29.220 --> 00:37:33.442
<v Chris>This used to be done with external GUI utilities or terminal commands before

00:37:33.442 --> 00:37:35.095
<v Chris>I could even do a call or recording.

00:37:35.437 --> 00:37:40.932
<v Brent>We do this exact thing in studio. And Chris, you hate it every single time.

00:37:40.932 --> 00:37:44.673
<v Chris>It is such a pain in the butt. I should think about this. NixOS pulls QuickShell Plus...

00:37:45.811 --> 00:37:49.769
<v Chris>thinkers, I think, is letting me build a personalized declarative desktop that

00:37:49.769 --> 00:37:50.854
<v Chris>doesn't really feel janky.

00:37:51.179 --> 00:37:54.649
<v Chris>The setup bridges Unix philosophy to my desktop. Instead of a pre-built environment

00:37:54.649 --> 00:37:57.964
<v Chris>that I have to either submit to or alter until it's unrecognizable,

00:37:58.343 --> 00:38:02.644
<v Chris>I can use these building blocks to craft just what I need.

00:38:03.142 --> 00:38:06.365
<v Chris>And now I have a premium desktop experience that works just how I want it to,

00:38:06.742 --> 00:38:08.767
<v Chris>and I can reproduce it across multiple machines.

00:38:09.128 --> 00:38:12.367
<v Chris>Thanks for the great show and keep up the awesome coverage. Cheers, Greg, the lawyer.

00:38:12.715 --> 00:38:16.899
<v Chris>He's also not criticizing Genome says or any of that love it all I agree and

00:38:16.899 --> 00:38:20.799
<v Chris>what a great project winter mute OS kind of took what I was thinking about and

00:38:20.799 --> 00:38:22.659
<v Chris>just ran with it to the next level Greg.

00:38:22.659 --> 00:38:23.399
<v Wes>Yeah it looks really.

00:38:23.399 --> 00:38:25.949
<v Chris>Nice thank you for sharing it's always.

00:38:25.949 --> 00:38:27.373
<v Wes>Fun to see what people build.

00:38:27.692 --> 00:38:29.723
<v Chris>Screenshot of the JB website too gotta love that,

00:38:31.912 --> 00:38:33.283
<v Chris>thank you Greg appreciate the value,

00:38:35.460 --> 00:38:39.419
<v Chris>or the email I guess thank you Greg appreciate the form of e-value he usually

00:38:39.419 --> 00:38:43.981
<v Chris>does boost it he will boost in And he, in fact, is our second booster. So let's get to that.

00:38:48.704 --> 00:38:52.530
<v Chris>However, producer Jeff sneaking in right now with a baller boost,

00:38:52.530 --> 00:38:56.582
<v Chris>66,666 Satoshi's spooky.

00:38:58.921 --> 00:39:01.350
<v Chris>Jeff's been figuring out another way to boost without bolts.

00:39:01.350 --> 00:39:04.980
<v Chris>Experimenting, but swap market, swap market.github.io worked well for me to

00:39:04.980 --> 00:39:08.917
<v Chris>use my liquid stash. Still experimenting. Hope to boost more again soon.

00:39:09.225 --> 00:39:10.299
<v Wes>Oh, well, we appreciate it.

00:39:10.595 --> 00:39:16.870
<v Chris>Yeah. Check out DJ, also the Blockstream app, you know, and if you're on the

00:39:16.870 --> 00:39:20.069
<v Chris>Lightning Network, moving between lightning wallets is ain't no thing.

00:39:20.307 --> 00:39:22.466
<v Chris>Ain't no thing. Thank you, PJ.

00:39:22.658 --> 00:39:23.930
<v Wes>I like he's out there experimenting.

00:39:23.930 --> 00:39:25.050
<v Chris>Mm-hmm.

00:39:25.050 --> 00:39:29.519
<v Wes>Oh, well, it's like you saw the future. Greg the lawyer booths in with 30,000 sats.

00:39:32.021 --> 00:39:33.931
<v Chris>Hello, Greg. Good to hear from you again.

00:39:34.076 --> 00:39:36.330
<v Wes>Short and sweet. Live long and prosper.

00:39:36.330 --> 00:39:36.793
<v Chris>You too.

00:39:39.574 --> 00:39:40.450
<v Wes>Live long and quick show.

00:39:42.110 --> 00:39:45.646
<v Brent>We've got an otter brain here with 10,000 sats.

00:39:51.542 --> 00:39:55.252
<v Brent>As a college educator, I arrived at an AI course policy.

00:39:56.127 --> 00:40:01.627
<v Brent>I am prohibiting use for quizzes and exams, and students are not allowed to

00:40:01.627 --> 00:40:03.855
<v Brent>generate responses to homework prompts.

00:40:04.899 --> 00:40:11.157
<v Brent>I am allowing use for help with finding sources, however, or help with describing

00:40:11.157 --> 00:40:13.102
<v Brent>a concept introduced in class.

00:40:13.514 --> 00:40:18.297
<v Brent>For homework and presentations, I ask for a brief citation of model and prompt.

00:40:18.739 --> 00:40:22.437
<v Brent>I'm curious to see how this is going to work long term. I'm hopeful for the

00:40:22.437 --> 00:40:29.907
<v Brent>strengths of this tooling is that it can help learners to build confidence and ask good questions.

00:40:30.499 --> 00:40:32.067
<v Chris>I think it's a pretty balanced policy.

00:40:32.067 --> 00:40:32.787
<v Wes>Yeah, I like it.

00:40:32.787 --> 00:40:36.497
<v Chris>Pretty thoughtful. I'm curious if you want to share Otter without maybe revealing

00:40:36.497 --> 00:40:42.794
<v Chris>too much, how you will know if they used AI, if you have a system to detect that and if it works.

00:40:43.468 --> 00:40:46.003
<v Chris>I'd just be curious to have any more information you can share.

00:40:46.410 --> 00:40:52.871
<v Chris>You know, what kind of bakes my noodle about this banning AI in schools thing,

00:40:53.892 --> 00:41:01.700
<v Chris>and I'll just quickly address this, is I spent the 90s fighting tooth and nail,

00:41:02.205 --> 00:41:08.759
<v Chris>to get OpenOffice or StarOffice and the Linux desktop on any school system I could get.

00:41:09.229 --> 00:41:14.047
<v Chris>And I came up with every scheme, every way to save money, to repurpose old hardware.

00:41:14.297 --> 00:41:18.848
<v Chris>You know, I did the math to compare the licensing costs on Microsoft Office.

00:41:20.125 --> 00:41:24.084
<v Chris>And over and over again, the school board rejected it for one reason.

00:41:24.281 --> 00:41:28.207
<v Chris>And I listened to this reason for probably five, six years. I mean,

00:41:28.207 --> 00:41:32.287
<v Chris>it started the year I moved into the school district. And the reason was...

00:41:34.069 --> 00:41:38.214
<v Chris>When the students leave school, the applications they'll be using in the workforce

00:41:38.214 --> 00:41:40.675
<v Chris>will be Microsoft Office and Microsoft Excel.

00:41:41.099 --> 00:41:45.024
<v Chris>And if we put OpenOffice on their machines, or LibreOffice wasn't around yet,

00:41:45.024 --> 00:41:49.724
<v Chris>but if we put a StarOffice or OpenOffice on their machines, they'll be learning

00:41:49.724 --> 00:41:52.561
<v Chris>something that isn't in the workplace and it won't serve them.

00:41:52.881 --> 00:41:56.834
<v Chris>And so we must spend hundreds of thousands of dollars a year to the licensing

00:41:56.834 --> 00:41:59.766
<v Chris>regime so that way the students are prepared for the workplace.

00:42:02.100 --> 00:42:06.464
<v Chris>And yet we are just dismissing that logic now i think otter brain has the good

00:42:06.464 --> 00:42:08.764
<v Chris>balance here i think that's the right way to do it but i'd be curious to know

00:42:08.764 --> 00:42:12.424
<v Chris>how you actually enforce it thank you otter brain good discussion appreciate

00:42:12.424 --> 00:42:13.448
<v Chris>you uh keeping us in the loop,

00:42:13.970 --> 00:42:18.412
<v Chris>hey gene beans here with a row of ducks 2 222 cents,

00:42:18.875 --> 00:42:21.904
<v Chris>i'm so impressed to hear that omicon foundation is sponsoring devs for multiple

00:42:21.904 --> 00:42:26.050
<v Chris>years yes in fact i believe they are now at a total of 12 million in funding

00:42:26.352 --> 00:42:30.862
<v Chris>and they've also launched individual funding and they're already at like $50,000

00:42:31.280 --> 00:42:33.331
<v Chris>in individual contributions from end users.

00:42:34.084 --> 00:42:36.256
<v Chris>So it seems to be getting speed, Gene Bean. Nice to hear from you.

00:42:36.685 --> 00:42:39.820
<v Wes>Magnolia Mayhem comes in with $5,289.

00:42:43.661 --> 00:42:45.711
<v Wes>Well, first we get a boosty, boosty, boost.

00:42:45.711 --> 00:42:47.922
<v Chris>Oh, of course we do. Here you go, buddy.

00:42:50.047 --> 00:42:56.171
<v Wes>And then Mayhem goes on. Some years ago, I promised that my next boost would be from Boost CLI.

00:42:56.771 --> 00:43:02.321
<v Wes>I guess those days have come and gone, but I hope you'll accept this LBCLI boost in its place.

00:43:02.321 --> 00:43:03.363
<v Chris>That's neat.

00:43:03.845 --> 00:43:04.588
<v Wes>We sure do. Yeah.

00:43:05.952 --> 00:43:10.138
<v Chris>I mean, boosting from the CLI is pretty cool, however you're doing it, right?

00:43:10.910 --> 00:43:14.317
<v Chris>That's great. Thank you. nice to hear from you mayhem appreciate the value.

00:43:15.159 --> 00:43:21.667
<v Brent>Well thomas english boosted in a row of sticks 11 1111 sets.

00:43:23.391 --> 00:43:28.766
<v Chris>Thanks guys i vibe clanked nixos into every computer to hand out but my phone has eluded me

00:43:29.201 --> 00:43:33.351
<v Chris>i got my nubal flakes going my hermes and trek project across the sardia skillfully

00:43:33.351 --> 00:43:36.401
<v Chris>extracting descriptions from restaurants just liked and the pattern matching

00:43:36.401 --> 00:43:41.617
<v Chris>ones that we should eat at next nom nom nom lm wiki for our holiday habits next.

00:43:42.192 --> 00:43:43.981
<v Wes>There's a lot cooking there. I love it.

00:43:43.981 --> 00:43:47.788
<v Chris>I mean, like he's making his bot an expert on his favorite restaurants,

00:43:48.072 --> 00:43:52.181
<v Chris>making a wiki out of it, and then going to start planning holiday habits next.

00:43:52.181 --> 00:43:53.494
<v Wes>It's like a restaurant DJ.

00:43:53.610 --> 00:43:58.660
<v Chris>I love it. And also, yeah, turning your phone into like a Trek tricorder would be high on my list.

00:43:59.009 --> 00:44:02.201
<v Chris>I just, I don't even need it to actually be a tricorder.

00:44:02.201 --> 00:44:03.293
<v Wes>It just needs to be more like it.

00:44:03.809 --> 00:44:07.861
<v Chris>Just look and sound like a tricorder. That's all I'm asking for is. Oh, it's not a big deal.

00:44:08.041 --> 00:44:08.971
<v Wes>Okay. Shouldn't be.

00:44:09.331 --> 00:44:11.013
<v Chris>No, I'm not asking for too much. I don't think.

00:44:11.942 --> 00:44:16.151
<v Wes>Well, how about a ginkgo salad? Because ginkgo salad boosts in with 10,000 sets.

00:44:18.421 --> 00:44:25.578
<v Wes>Have you seen TryNix.dev? Boot any package Nix packages ever shipped in this

00:44:25.578 --> 00:44:27.928
<v Wes>tab. There's a good blog post on it as well.

00:44:27.928 --> 00:44:31.728
<v Chris>Have you ever seen these websites and you're like, how do they do this?

00:44:31.728 --> 00:44:34.648
<v Chris>It's unfortunately under a little bit of load at the moment as we're live.

00:44:34.648 --> 00:44:37.448
<v Chris>So I don't know if it'll actually load for me. But did you see,

00:44:37.448 --> 00:44:38.476
<v Chris>I saw this before the show.

00:44:38.783 --> 00:44:43.558
<v Wes>I did not. No, this looks great. Oh, it's made by Farid Zakaria. Of course it's great.

00:44:43.558 --> 00:44:47.438
<v Chris>It's not loading for me, but yeah. So you basically can type in a Nix package.

00:44:47.438 --> 00:44:52.208
<v Chris>searches it and you're going to boot it up and try it and it's so cool it's

00:44:52.208 --> 00:44:56.338
<v Chris>really it's really amazing that kind of technology you know run whole computers in a browser.

00:44:56.808 --> 00:45:03.402
<v Brent>Does that mean you could run zola in a browser to make a website for yourself.

00:45:04.395 --> 00:45:06.525
<v Chris>I think that's that's blowing my browser.

00:45:07.222 --> 00:45:10.928
<v Wes>Yeah uh if you haven't checked out uh farid has a lot of great resources about

00:45:10.928 --> 00:45:14.398
<v Wes>learning nix explaining nix concepts just recently a very cool article about

00:45:14.398 --> 00:45:18.198
<v Wes>turning sqlite databases into actual executable files on.

00:45:18.198 --> 00:45:18.488
<v Chris>Linux.

00:45:19.188 --> 00:45:23.012
<v Wes>And I think this is also... Yeah, it's great. I'll include a link to that too.

00:45:24.004 --> 00:45:27.498
<v Wes>And then any Nix package live in your browser is the write-up for this neat

00:45:27.498 --> 00:45:28.996
<v Wes>little tool. Well, there you go.

00:45:29.751 --> 00:45:32.028
<v Wes>Thank you, Ginkgo, because I had not seen that.

00:45:33.118 --> 00:45:39.665
<v Chris>Hey, we got some Fiat boost too. And Blackhost is coming in as our Fiat baller with $250.

00:45:44.698 --> 00:45:48.568
<v Chris>Very nice. Blackhost is just moving the needle. plus one on the AI podcast.

00:45:48.568 --> 00:45:50.188
<v Chris>Thank you very much, Blackhawks.

00:45:50.188 --> 00:45:50.568
<v Brent>Thank you.

00:45:50.568 --> 00:45:51.788
<v Chris>And strong.

00:45:51.788 --> 00:45:52.878
<v Wes>We sure appreciate it.

00:45:52.878 --> 00:45:56.958
<v Chris>Thank you very much. Mobile Home Labber comes in with $10 in fiat.

00:45:56.958 --> 00:45:58.978
<v Chris>Hey, first time, a long time.

00:46:00.243 --> 00:46:03.233
<v Chris>Nice to hear. Freeman was looking at Markdown editors and found Neo,

00:46:03.547 --> 00:46:06.269
<v Chris>a novel writing tool created by a novelist.

00:46:06.913 --> 00:46:12.052
<v Chris>Oh, and they are the author of the Silo series. No kidding. App image release.

00:46:12.052 --> 00:46:12.858
<v Chris>Just thought it was cool.

00:46:13.467 --> 00:46:16.342
<v Chris>But now I got to go take a look at this. So it's Neo, N-E-O.

00:46:16.342 --> 00:46:18.407
<v Chris>It's on GitHub. MIT licensed.

00:46:18.819 --> 00:46:22.742
<v Wes>Neo understands from the moment you install it that you're writing books and

00:46:22.742 --> 00:46:27.539
<v Wes>nothing else. No bloat, no distractions with manuscripts that look like books as you write them.

00:46:28.729 --> 00:46:30.612
<v Chris>Pretty great. Pretty great.

00:46:30.612 --> 00:46:32.200
<v Wes>We're finally getting that novel then, Brent.

00:46:32.374 --> 00:46:35.852
<v Chris>Nice to hear from you. Yeah. Yeah, where is that? Nice to hear from you,

00:46:35.852 --> 00:46:38.312
<v Chris>Mobile Home Labber. Thank you very much. You know, Brent, you should write a

00:46:38.312 --> 00:46:41.712
<v Chris>book on how to go to restaurants with gluten and dairy allergies.

00:46:41.712 --> 00:46:44.842
<v Brent>I'll get right on that. I got to wait for a morning where I wake up inspired.

00:46:46.172 --> 00:46:48.412
<v Chris>You want to take our first member boost there, Wes?

00:46:48.792 --> 00:46:52.174
<v Wes>Yeah, we got two anonymous member boosts here.

00:46:52.894 --> 00:46:56.982
<v Wes>After many months, I finally switched from DMS to Noctalia just a couple of

00:46:56.982 --> 00:47:00.402
<v Wes>weeks ago, having had regular crashes and quick show whenever the screen locked

00:47:00.402 --> 00:47:05.152
<v Wes>oh okay looks like those are fixed in zero three one so switching back i'd have

00:47:05.152 --> 00:47:07.072
<v Wes>missed that update so thanks for the heads up.

00:47:07.072 --> 00:47:10.822
<v Chris>So apparently i jumped on just at the right time like brent's jump on in zola just.

00:47:10.822 --> 00:47:15.196
<v Wes>The right time some good try and stuff luck let's hope that continues yeah yeah,

00:47:15.692 --> 00:47:20.862
<v Wes>okay and then here we go star trek question i am not a diehard trek fan however

00:47:20.862 --> 00:47:25.749
<v Wes>i do enjoy the content i've recently He started watching Strange New Worlds and found it enjoyable.

00:47:26.440 --> 00:47:30.044
<v Wes>For those that are really into Star Trek, how is Strange New Worlds perceived?

00:47:30.712 --> 00:47:35.232
<v Chris>I think, you guys tell me if you think this is wrong. I don't speak for all Star Trek fans.

00:47:36.252 --> 00:47:42.181
<v Chris>But I feel like a lot of long-timers, we would describe Strange New Worlds as best of the new batch.

00:47:42.524 --> 00:47:45.601
<v Brent>Yeah. Best of the new batch. That's a good way to put it.

00:47:45.751 --> 00:47:50.692
<v Chris>It's not like, you don't build a 60-year franchise on this television show,

00:47:50.883 --> 00:47:54.047
<v Chris>right? This is the television show you get after a 60-year franchise.

00:47:54.442 --> 00:47:57.518
<v Chris>And so it's enjoyable, but it isn't representative of what...

00:47:58.302 --> 00:48:04.612
<v Chris>The original Star Trek was written by sci-fi novelists who wrote fantastic novels

00:48:04.612 --> 00:48:09.018
<v Chris>with followings and had entire careers writing sci-fi novels.

00:48:09.273 --> 00:48:12.629
<v Chris>And then Gene came to them and said, hey, will you write for my TV show?

00:48:12.948 --> 00:48:16.292
<v Chris>And these really good sci-fi writers wrote for television.

00:48:16.791 --> 00:48:21.435
<v Chris>And now what we have is new hires that have never worked in TV before or written.

00:48:21.951 --> 00:48:25.232
<v Chris>Their first job is working for Bad Robot.

00:48:25.232 --> 00:48:29.232
<v Chris>And so this is what they're writing. and that's not a judgment it's just a fact

00:48:29.232 --> 00:48:32.504
<v Chris>and so it just doesn't quite hold up in our opinion but it's still very good

00:48:32.747 --> 00:48:36.202
<v Chris>we still enjoy it I'm currently watching it I have not watched the most recent

00:48:36.202 --> 00:48:37.479
<v Chris>episode but I did get through the puppet episode.

00:48:38.892 --> 00:48:42.722
<v Wes>Yeah and of course Gene also himself had done a bunch of previous television

00:48:42.722 --> 00:48:46.116
<v Wes>stuff and westerns and all kinds of storytelling for the screen.

00:48:47.260 --> 00:48:49.882
<v Chris>It's beautiful too I really think the strange I love the sets.

00:48:49.882 --> 00:48:53.652
<v Wes>It does I think it is the closest that feels that got closest to the feeling

00:48:53.652 --> 00:48:56.020
<v Wes>of like I'm watching this and it feels like I'm watching.

00:48:56.258 --> 00:48:59.562
<v Chris>Star Trek And it's the one that probably feels the closest to part of the entire

00:48:59.562 --> 00:49:02.262
<v Chris>universe out of, I think, all the new Trek as well.

00:49:02.262 --> 00:49:03.612
<v Wes>Rather than its own thing.

00:49:03.612 --> 00:49:04.303
<v Chris>Yeah. Yeah.

00:49:05.436 --> 00:49:07.150
<v Chris>Good question. Not that we like talking about Star Trek.

00:49:07.150 --> 00:49:07.967
<v Wes>No, what? No, never.

00:49:08.860 --> 00:49:14.570
<v Brent>Slightly off topic. Amadeus sends in a member boost.

00:49:14.570 --> 00:49:15.263
<v Chris>Hey.

00:49:15.705 --> 00:49:19.720
<v Brent>Thank you. I'm delighted Quickshell is getting funding. I made a resource widget

00:49:19.720 --> 00:49:24.407
<v Brent>that turns different colors based on the CPU, memory, and disk thresholds.

00:49:25.283 --> 00:49:30.090
<v Brent>so now i can play factorio during colmina builds and know when it's time to

00:49:30.090 --> 00:49:35.450
<v Brent>return to work faithfully reenacting the ancient xkcd my code is.

00:49:35.450 --> 00:49:37.280
<v Wes>Compiling amazing.

00:49:37.280 --> 00:49:40.620
<v Chris>You've basically created your own lunch whistle right when the code goes green

00:49:40.620 --> 00:49:42.700
<v Chris>again it's time to get back to work the lunch whistles oh.

00:49:43.220 --> 00:49:43.990
<v Wes>Build's done.

00:49:43.990 --> 00:49:47.730
<v Chris>I think that's so good thank you for sharing that that's actually and color

00:49:47.730 --> 00:49:49.890
<v Chris>coding is such a good way to go you just get it by a glance.

00:49:50.395 --> 00:49:53.470
<v Wes>I was seeing another someone who'd rigged up it started as like a monitoring

00:49:53.470 --> 00:49:56.590
<v Wes>widget for system d service status but then they kind of just put in more and

00:49:56.590 --> 00:50:00.990
<v Wes>more things to like a little green right green light red light yellow light

00:50:00.990 --> 00:50:03.677
<v Wes>sort of setup yeah there's a lot there's a lot to that.

00:50:04.809 --> 00:50:09.267
<v Chris>Unnoticed 92 87 sent in a free member boost.

00:50:09.540 --> 00:50:12.365
<v Chris>I'm not sure how long I've been listening, but how long does one have to be

00:50:12.365 --> 00:50:16.365
<v Chris>listening to be called a long timer? Low 400s, maybe the high 300s first time

00:50:16.365 --> 00:50:19.075
<v Chris>booster relatively new member. Keep up the great work. Well,

00:50:19.075 --> 00:50:20.140
<v Chris>thank you for becoming a member.

00:50:20.941 --> 00:50:24.955
<v Chris>Um, here's, I think people usually go by like, well, I joined when system D

00:50:24.955 --> 00:50:27.655
<v Chris>was the topic or I joined topic eras.

00:50:27.655 --> 00:50:32.105
<v Chris>Yeah. Well, because new people think, oh my God, all these guys do is talk about

00:50:32.105 --> 00:50:36.175
<v Chris>Nix or, oh my God, all these guys talk about AI, But long timers know that we're

00:50:36.175 --> 00:50:38.726
<v Chris>just following where Linux is going and there's eras.

00:50:39.341 --> 00:50:41.483
<v Chris>And there has now been many eras over the show.

00:50:41.738 --> 00:50:43.275
<v Wes>I want to see a map of those eras.

00:50:43.275 --> 00:50:45.695
<v Chris>Right. Because there was a time when like, oh my God, all the show talks about

00:50:45.695 --> 00:50:48.425
<v Chris>is system D. And oh my God, all we talk about is Pulse Audio.

00:50:48.425 --> 00:50:49.285
<v Wes>Or Arch Linux.

00:50:49.285 --> 00:50:53.529
<v Chris>Or WireGuard or ButterFS or, you know, these things. And then it's just,

00:50:53.691 --> 00:50:57.464
<v Chris>it's all quantitative to the actual size and impact and scale it is on the Linux community.

00:50:58.009 --> 00:51:02.728
<v Chris>And so usually what people do unnoticed is they say, I joined during that topic era.

00:51:03.955 --> 00:51:07.014
<v Chris>Or, you know, or like, I joined when Matt was still hosting or something like that.

00:51:07.838 --> 00:51:09.475
<v Brent>During the Arch Challenge.

00:51:09.475 --> 00:51:11.935
<v Chris>Yeah, the Arch Challenge. Thank you very much for being here,

00:51:11.935 --> 00:51:13.707
<v Chris>and it's nice to hear from you. Please do keep it up.

00:51:14.496 --> 00:51:15.845
<v Wes>I'll hear this one's for you, Chris.

00:51:15.845 --> 00:51:16.035
<v Chris>Okay.

00:51:16.395 --> 00:51:19.925
<v Wes>Lawson member boosts in to say, Chris, I know you mentioned that you fought

00:51:19.925 --> 00:51:24.055
<v Wes>with how Bitwarden fills in finding the button and how they keep changing what

00:51:24.055 --> 00:51:24.895
<v Wes>clicking where it means.

00:51:25.988 --> 00:51:29.075
<v Wes>As you are moving to a more keyboard-centric workflow with Hyperland,

00:51:29.075 --> 00:51:31.119
<v Wes>you can use the shortcut Control-Shift-L.

00:51:31.804 --> 00:51:34.875
<v Chris>What? I can use a Hyperland shortcut to do a Bitwarden fill?

00:51:35.607 --> 00:51:36.721
<v Wes>Or is it a...

00:51:38.555 --> 00:51:39.402
<v Chris>That's great.

00:51:39.842 --> 00:51:41.642
<v Brent>Say more. You got to try it out.

00:51:41.982 --> 00:51:42.162
<v Chris>Yeah.

00:51:42.162 --> 00:51:43.012
<v Wes>Let us know how it works.

00:51:43.012 --> 00:51:43.634
<v Chris>Yeah.

00:51:43.843 --> 00:51:45.752
<v Wes>Is it a Bitwarden shortcut that gets registered?

00:51:45.752 --> 00:51:48.612
<v Chris>Either way, I got to look into that. That is great.

00:51:48.612 --> 00:51:50.809
<v Brent>You should write it down on your notebook there, Chris, I think.

00:51:51.262 --> 00:51:53.672
<v Chris>Bring it home with you. You know what? I really have to thank everybody.

00:51:53.672 --> 00:51:54.605
<v Chris>The show really turned around.

00:51:55.942 --> 00:52:00.289
<v Chris>When we sat down to do the show, we didn't even crack 100,000 sats for support this week.

00:52:00.991 --> 00:52:03.252
<v Chris>But things are looking much better. So let's round it all up.

00:52:03.252 --> 00:52:06.012
<v Chris>I want to say thank you to all of you who streamed sats as you listened.

00:52:06.413 --> 00:52:13.239
<v Chris>16 of you did that. And collectively, you 16 stacked 28,789 sats for the show. Thank you.

00:52:15.231 --> 00:52:19.102
<v Chris>When you bring it all together with the fiat boost converted to our local currency,

00:52:19.439 --> 00:52:22.324
<v Chris>or local currency, you know what I'm trying to say, current value for sats,

00:52:23.062 --> 00:52:32.093
<v Chris>bringing the live boost, our bar boost, and all of it, it brings the show to a respectable 491,318.

00:52:33.382 --> 00:52:33.822
<v Wes>Sats. All right.

00:52:33.822 --> 00:52:35.962
<v Chris>Which is way better than we were looking at going into the future.

00:52:35.962 --> 00:52:36.232
<v Wes>Out.

00:52:36.232 --> 00:52:38.385
<v Chris>Yes. Thank you, everybody.

00:52:43.001 --> 00:52:47.920
<v Chris>boost.jupiterbroadcasting.com support the show and keep us going and thank you

00:52:47.920 --> 00:52:52.585
<v Chris>to our members who put their support on autopilot we appreciate you.

00:52:54.304 --> 00:52:58.489
<v Brent>Could I pull I think I want to pull a boost forward here.

00:52:58.733 --> 00:53:00.596
<v Chris>Go for it yeah always welcome alright.

00:53:00.898 --> 00:53:06.088
<v Brent>So Harpo sent in a row of sticks basically 1111 sats,

00:53:07.022 --> 00:53:10.709
<v Brent>and has a great message here in case anyone is interested I've created both

00:53:11.022 --> 00:53:16.189
<v Brent>knives the Home Assistant add-on that connects an LM of your choice with Assist.

00:53:16.815 --> 00:53:20.980
<v Brent>It has local memory, so it remembers things between diff conversions,

00:53:20.980 --> 00:53:25.551
<v Brent>can reason, and can even create automations for you by just speaking.

00:53:26.253 --> 00:53:28.691
<v Brent>Been using it in my house for months.

00:53:29.852 --> 00:53:36.780
<v Brent>And two, Knives on Omarchie plug-in, which allows you to speak to Home Assistant from your desktop.

00:53:36.780 --> 00:53:42.287
<v Chris>Oh, my goodness. Here we go, boys. You know, that's a nice little combo right there.

00:53:43.410 --> 00:53:47.170
<v Chris>Good call. Harpo, thank you for sending that in. We'll link those in the show

00:53:47.170 --> 00:53:49.473
<v Chris>notes as well. Knives, N-I-V-E-S.

00:53:49.723 --> 00:53:53.270
<v Wes>There is something interesting about the idea of an embedded bot in the home

00:53:53.270 --> 00:53:56.270
<v Wes>assistant. It's the personality of the home.

00:53:56.270 --> 00:54:02.310
<v Chris>Mm-hmm. Mm-hmm. Yep. My home assistant is named Rosie after the robot in the

00:54:02.310 --> 00:54:05.190
<v Chris>Jetsons, and I've always wanted to take that a little bit further.

00:54:06.330 --> 00:54:08.580
<v Chris>I think that'd be a lot of fun. Thank you, everybody who supports the show with

00:54:08.580 --> 00:54:11.950
<v Chris>a membership or a boost. We have the 2000s at cutoff. We do read them all.

00:54:11.950 --> 00:54:14.197
<v Chris>And every now and then we do pull one forward as well.

00:54:15.363 --> 00:54:16.790
<v Wes>Now someone's been picking.

00:54:16.790 --> 00:54:22.264
<v Chris>Oh, I am excited. I can't wait to go home tonight and try this on Dylan's Mouse.

00:54:23.628 --> 00:54:29.648
<v Chris>It's called OpenMouse, and you can go to openmouse.app. And this allows you

00:54:29.840 --> 00:54:35.624
<v Chris>to configure the DPI, the polling rate, your buttons, if your mouse has RGB.

00:54:36.991 --> 00:54:40.464
<v Chris>All these things that you normally would require, a proprietary Windows app,

00:54:40.464 --> 00:54:45.211
<v Chris>can now be done in a web app. It uses the WebHID HID protocol.

00:54:46.123 --> 00:54:51.254
<v Chris>The downside is it's currently Chromium only. And your mouse has to be on the supported list.

00:54:51.707 --> 00:54:56.386
<v Chris>but there are 117 individual mice with a real focus on gaming mice.

00:54:56.850 --> 00:54:59.190
<v Wes>And something tells me that list will be growing. Yeah.

00:55:00.658 --> 00:55:02.133
<v Chris>Oh, actually it already has. It's 120 now.

00:55:03.824 --> 00:55:04.904
<v Wes>Hey, what are my predictions?

00:55:06.812 --> 00:55:10.324
<v Chris>It worked, Wes. You did it. Oh, the MX Master's on here. Good,

00:55:10.324 --> 00:55:11.421
<v Chris>good, good. I have one of those.

00:55:11.792 --> 00:55:16.584
<v Brent>It's nice. They have a list here with a ton of requests and also you can vote.

00:55:16.944 --> 00:55:20.784
<v Brent>So I guess the developers just see like, you know, Get working on the one that

00:55:20.784 --> 00:55:23.464
<v Brent>has the most votes and keep going. That's a good system.

00:55:23.844 --> 00:55:27.224
<v Chris>It's so cool that you can do this in the browser. Yes, it requires Chromium.

00:55:27.224 --> 00:55:28.839
<v Chris>But any Chromium browser, I believe, will work.

00:55:29.566 --> 00:55:33.606
<v Chris>The actual app is control.openmouse.app, and it is GPL3.

00:55:34.053 --> 00:55:37.584
<v Wes>I know. I was impressed when we were doing our, and you can do it for regular

00:55:37.584 --> 00:55:41.134
<v Wes>old Android too, but our giraffine installs and being able to do that right

00:55:41.134 --> 00:55:44.944
<v Wes>from the browser installer. So more things that can handle these kind of fussy

00:55:44.944 --> 00:55:48.004
<v Wes>device interactions without having to install janky software, the better.

00:55:48.004 --> 00:55:52.774
<v Chris>That's why I genuinely wonder if I could build a web app that rips DVDs with

00:55:52.774 --> 00:55:54.828
<v Chris>like some sort of web-based MakeMKV.

00:55:55.524 --> 00:55:57.906
<v Wes>We'll compile MakeMKV to WebAssembly.

00:55:59.037 --> 00:56:00.518
<v Chris>All right. So this next one.

00:56:01.973 --> 00:56:05.178
<v Chris>I think initially, at first glance, it looks like a finance tracker.

00:56:06.049 --> 00:56:09.938
<v Chris>But I think a lot of people have that workflow baked in. Maybe, maybe not.

00:56:10.966 --> 00:56:15.472
<v Chris>But the thing that still kind of is hard for me to keep track of is not just

00:56:15.472 --> 00:56:19.689
<v Chris>the subscriptions I've signed up for, but like the ones my kids end up signing up through their phone.

00:56:20.664 --> 00:56:23.172
<v Wes>The whole network of subscriptions that ultimately come back to you.

00:56:23.172 --> 00:56:27.792
<v Chris>And on the Apple devices, I can from my phone see they have subscriptions.

00:56:27.792 --> 00:56:30.742
<v Chris>I cannot see what they are. So I do not remember. Remember, I have to go to

00:56:30.742 --> 00:56:34.927
<v Chris>their phone and look it up individually in the settings app on every one of their devices.

00:56:36.117 --> 00:56:41.152
<v Chris>So enter WallOS, an open source personal subscription tracker,

00:56:41.152 --> 00:56:45.262
<v Chris>a self-hostable web application designed to empower you for managing your finances with ease.

00:56:45.562 --> 00:56:46.142
<v Wes>WallOS.

00:56:46.142 --> 00:56:49.902
<v Chris>It simplifies the process of tracking expenses and helps you gain a better understanding

00:56:49.902 --> 00:56:53.381
<v Chris>of your finances. And the big thing here is subscription management.

00:56:53.654 --> 00:56:56.092
<v Chris>Keep track of your reoccurring subscriptions and payments.

00:56:56.649 --> 00:57:00.422
<v Chris>Make sure you never miss a due date or lose track of them. it has automatic category,

00:57:01.262 --> 00:57:04.332
<v Chris>sorting it can go look up the logos for you so that way it looks good it gives

00:57:04.332 --> 00:57:07.972
<v Chris>you a nice dashboard you pull up you can see you got your Google subscriptions

00:57:07.972 --> 00:57:10.935
<v Chris>on here your Netflixes and your Spotify and kind of this one dashboard here,

00:57:11.429 --> 00:57:13.310
<v Chris>and you can dig in give more information,

00:57:13.954 --> 00:57:17.436
<v Chris>multi-currency support if you happen to be paying in different currencies around the world,

00:57:18.370 --> 00:57:23.012
<v Chris>data's all yours like I mentioned the logo search is really nice category management

00:57:23.012 --> 00:57:26.162
<v Chris>I think is really good you do get statistics and graphs you can get perspectives

00:57:26.162 --> 00:57:27.769
<v Chris>on what you're spending who you're spending it with.

00:57:28.001 --> 00:57:30.212
<v Wes>I see it has some notion of like inactive.

00:57:30.212 --> 00:57:31.022
<v Chris>Subscriptions. Yeah.

00:57:31.022 --> 00:57:32.712
<v Wes>They have a demo instance, which I'm checking out.

00:57:32.712 --> 00:57:37.702
<v Chris>Yes, they do. They do. So you can, you go to the GitHub page on the GitHub page,

00:57:37.702 --> 00:57:41.162
<v Chris>which we'll link in the notes. They have a demo that you can go to and the login

00:57:41.162 --> 00:57:43.007
<v Chris>is just like demo, demo. Yeah.

00:57:43.831 --> 00:57:49.601
<v Wes>Oh yeah. Here's the stats page. Okay. Yearly cost fun. Most expensive subscriptions cost. Nice.

00:57:50.066 --> 00:57:50.572
<v Chris>Yeah.

00:57:50.572 --> 00:57:51.712
<v Wes>Some stuff you don't want to know.

00:57:51.712 --> 00:57:52.122
<v Chris>But yeah.

00:57:54.651 --> 00:57:57.992
<v Chris>Especially when you're spending too much money on tokens. and then you have

00:57:57.992 --> 00:58:02.162
<v Chris>like your upcoming you get a snapshot of what your monthly budget and spend is oh that's.

00:58:02.162 --> 00:58:03.522
<v Wes>Nice if you're trying to keep track of.

00:58:03.522 --> 00:58:04.352
<v Chris>Things yeah,

00:58:05.740 --> 00:58:09.015
<v Chris>It's kind of nice. And I like that it's not trying to solve everything.

00:58:09.015 --> 00:58:11.562
<v Wes>That's what I was going to say. You're not necessarily trying to have this be

00:58:11.806 --> 00:58:14.025
<v Wes>categorized every single transaction that flows through my cats.

00:58:14.125 --> 00:58:17.006
<v Chris>It's not like QuickBooks or whatever you might be using out there these days.

00:58:18.040 --> 00:58:20.165
<v Chris>It's just because so many things are subscription-based.

00:58:20.165 --> 00:58:22.905
<v Wes>So what's the onboarding like? I mean, how do you get, does it automatically

00:58:22.905 --> 00:58:25.005
<v Wes>find it? Do you kind of just go plumb it up in the UI?

00:58:25.125 --> 00:58:27.365
<v Chris>Yeah, and then it goes in an API. Gets the logos and things like that.

00:58:27.365 --> 00:58:32.651
<v Chris>Yes. And also, it will support OIDC with OAuth if you want to do that.

00:58:33.138 --> 00:58:36.165
<v Chris>And then they have a tie-in, although it's not really a major feature,

00:58:36.165 --> 00:58:39.419
<v Chris>but they do have an AI tie-in where they'll generate recommendations.

00:58:39.657 --> 00:58:41.175
<v Chris>It can use ChatGipity over the

00:58:41.175 --> 00:58:45.555
<v Chris>API, Gemini, or if you've got local llamas going, it can use that as well.

00:58:46.530 --> 00:58:50.595
<v Brent>The fact it even has an API is really brilliant because a lot of these types

00:58:50.595 --> 00:58:51.585
<v Brent>of tools just don't even...

00:58:52.800 --> 00:58:59.545
<v Chris>And GPL3. I mean, come on. Is that some banger picks or what?

00:58:59.545 --> 00:59:02.395
<v Wes>Mostly PHP. Haven't had one of those for a minute, so that's nice.

00:59:02.395 --> 00:59:05.698
<v Chris>Wow. Well, it's cool again. php is cool again,

00:59:06.621 --> 00:59:11.845
<v Chris>you know i really think the real unlock though from like a long-term linux user

00:59:11.845 --> 00:59:19.478
<v Chris>perspective is the open mouse stuff that has been the domain of proprietary windows apps,

00:59:20.401 --> 00:59:24.835
<v Chris>for so long and now like so that's one of the downsides that my kids have had

00:59:24.835 --> 00:59:29.495
<v Chris>is all of their friends have fancy gaming nieces with rgb and some of them got

00:59:29.495 --> 00:59:33.532
<v Chris>fans and high DPI's you can turn ups and stuff like that,

00:59:34.356 --> 00:59:39.964
<v Chris>and it's all Windows and now I'm going to just say go over there if your mouse is supported.

00:59:40.156 --> 00:59:43.705
<v Wes>It is pretty funny we got to the like actually the games run just great but,

00:59:44.205 --> 00:59:46.518
<v Wes>we can't really deal with your gaming peripherals.

00:59:46.895 --> 00:59:49.374
<v Chris>Especially weird esoteric Mies made for Windows users,

00:59:50.633 --> 00:59:54.777
<v Chris>All right, links to all of that will be at linuxunplugged.com slash 683.

00:59:55.515 --> 00:59:59.099
<v Chris>Find the whole back catalog over there. You can become a long-timer just by

00:59:59.099 --> 01:00:00.077
<v Chris>listening to the back catalog.

01:00:00.722 --> 01:00:04.263
<v Chris>Jump in the time machine, go back, automatically become a long-timer.

01:00:04.716 --> 01:00:06.527
<v Chris>And we also, we haven't mentioned this for a while.

01:00:07.456 --> 01:00:10.179
<v Chris>Two things before we go. Number one, we do love time travel boost.

01:00:10.179 --> 01:00:13.699
<v Chris>So if you're in the back catalog, we always like it when you check in. It's just fun for us.

01:00:13.699 --> 01:00:17.169
<v Wes>Yeah, that's right. We have zip code boost. That's sort of a spatial domain

01:00:17.169 --> 01:00:18.936
<v Wes>boost. And then we have a time domain boost.

01:00:19.638 --> 01:00:23.667
<v Chris>And then I'm going to make an ask that I don't think we've made for at least five years.

01:00:23.910 --> 01:00:26.939
<v Chris>And I'm going to say, if you've made it this far in the podcast and you're listening

01:00:26.939 --> 01:00:31.097
<v Chris>on Apple Podcasts, go give us a nice review if you would.

01:00:31.567 --> 01:00:34.379
<v Chris>We've had one recently and it was actually really nice because for years now

01:00:34.379 --> 01:00:35.569
<v Chris>we've been taking it in the pants.

01:00:35.569 --> 01:00:38.899
<v Chris>We're talking about Knicks or talking about whatever.

01:00:38.899 --> 01:00:42.709
<v Chris>I think one person dinged it because we talked about immutable distributions

01:00:42.709 --> 01:00:44.729
<v Chris>and others said, you know, it's like random stuff.

01:00:44.729 --> 01:00:47.699
<v Chris>maybe talk about whatever was that's whatever personal pet peeves are,

01:00:48.309 --> 01:00:53.509
<v Chris>a lot of people go get squeaky on the uh apple podcast ratings we're not apple

01:00:53.509 --> 01:00:57.049
<v Chris>podcast users so we can't do anything about it but if you're using apple podcast

01:00:57.049 --> 01:01:00.325
<v Chris>out there and could give us a nice review and rating it helps other people find the show,

01:01:00.935 --> 01:01:03.738
<v Chris>and i don't think i've asked in like five years so i'm putting it out there

01:01:04.139 --> 01:01:07.349
<v Chris>we'd really appreciate it anything else they should know before we go wes any

01:01:07.598 --> 01:01:12.559
<v Chris>hot tips extra information around the show metadata oh metadata yeah.

01:01:12.559 --> 01:01:17.999
<v Wes>Okay well how about xml you like xml site i put um i put json inside the xml.

01:01:17.999 --> 01:01:18.929
<v Chris>For you now you're talking.

01:01:18.929 --> 01:01:26.313
<v Wes>Yep i also put text files vtt srt and uh mpeg not just level three but level four.

01:01:26.568 --> 01:01:28.659
<v Chris>It's like the podcast was ready for the agentic era.

01:01:29.219 --> 01:01:33.801
<v Wes>It's got all that data sitting there at the item level just packaged up between a lot of you know.

01:01:34.266 --> 01:01:34.819
<v Chris>Structured little.

01:01:34.819 --> 01:01:36.179
<v Wes>Alligators open and closes.

01:01:36.179 --> 01:01:37.029
<v Chris>Yeah a lot of alligators a.

01:01:37.029 --> 01:01:37.899
<v Wes>Lot of alligators.

01:01:37.899 --> 01:01:41.708
<v Chris>But don't worry they can navigate that now for you the human you should join us live.

01:01:45.278 --> 01:01:50.036
<v Chris>Make it just a Tuesday on a Sunday experience. Hang out in the mumble room,

01:01:50.036 --> 01:01:51.994
<v Chris>the chat room, get extra show.

01:01:52.813 --> 01:01:55.640
<v Chris>And then when you can't do that, become a member and you get the bootleg.

01:01:56.052 --> 01:01:57.880
<v Chris>Clocking in an hour 43-ish right now.

01:01:58.641 --> 01:02:01.306
<v Chris>Lots of content in there for them, just for them. Either way,

01:02:01.306 --> 01:02:02.582
<v Chris>we just really appreciate you listening.

01:02:03.163 --> 01:02:06.986
<v Chris>Shows clocking in on like 13 years or something like that. You don't get there

01:02:06.986 --> 01:02:08.763
<v Chris>without a great audience and a great community.

01:02:09.210 --> 01:02:12.659
<v Chris>Regardless if they're in the live room or not, we really appreciate you.

01:02:13.164 --> 01:02:16.686
<v Chris>go get the show notes all that linuxunplugged.com thank you so much for joining

01:02:16.686 --> 01:02:20.876
<v Chris>us on this week's episode of your unplugged program and we'll see you right

01:02:20.876 --> 01:02:26.393
<v Chris>back here next Tuesday as in Sunday.

