Brought to you by Michael and Brian - take a Talk Python course or get Brian's pytest book

#450: At-Cost Agentic IDE Tooling

Published Mon, Sep 22, 2025, recorded Mon, Sep 22, 2025
Watch this episode on YouTube
Play on YouTube
Watch the live stream replay

About the show

Sponsored by us! Support our work through:

Connect with the hosts

Join us on YouTube at pythonbytes.fm/live to be part of the audience. Usually Monday at 10am PT. Older video versions available there too.

Finally, if you want an artisanal, hand-crafted digest of every week of the show notes in email form? Add your name and email to our friends of the show list, we'll never share it.

Brian #1: pandas is getting pd.col expressions

  • Marco Gorelli
  • Next release of Pandas will have pd.col(), inspired by some of the other frameworks
    • I’m guessing Pandas 2.3.3? or 2.4.0? or 3.0.0? (depending on which version they bump?)
  • “The output of pd.col is called an expression. You can think of it as a delayed column - it only produces a result once it's evaluated inside a dataframe context.”
  • It replaces many contexts where lambda expressions were used

Michael #2: Cline, At-Cost Agentic IDE Tooling

  • Free and open-source
  • Probably supports your IDE (if your IDE isn’t a terminal)
    • VS Code
    • VS Code Insiders
    • Cursor
    • Windsurf
    • JetBrains IDEs (including PyCharm)
  • You pick plan or act (very important)
  • It shows you the price as the AI works, per request, right in the UI

Brian #3: uv cheatsheet

  • Rodgrigo at mathspp.com
  • Nice compact cheat sheet of commands for
    • Creating projects
    • Managing dependencies
    • Lifecycle stuff like build, publish, bumping version
    • uv tool (uvx) commands
    • working with scripts
    • Installing and updating Python versions
    • plus venv, pip, format, help and update

Michael #4: Ducky Network UI

  • Ducky is a powerful, open-source, all-in-one desktop application built with Python and PySide6.
  • It is designed to be the perfect companion for network engineers, students, and tech enthusiasts, combining several essential utilities into a single, intuitive graphical interface.
  • Features
    • Multi-Protocol Terminal: Connect via SSH, Telnet, and Serial (COM) in a modern, tabbed interface.
    • SNMP Topology Mapper: Automatically discover your network with a ping and SNMP sweep. See a graphical map of your devices, color-coded by type, and click to view detailed information.
    • Network Diagnostics: A full suite of tools including a Subnet Calculator, Network Monitor (Ping, Traceroute), and a multi-threaded Port Scanner.
    • Security Toolkit: Look up CVEs from the NIST database, check password strength, and calculate file hashes (MD5, SHA1, SHA256, SHA512).
    • Rich-Text Notepad: Keep notes and reminders in a dockable widget with formatting tools and auto-save.
    • Customizable UI: Switch between a sleek dark theme and a clean light theme. Customize terminal colors and fonts to your liking.

Extras

Brian:

  • Where are the cool kids hosting static sites these days?
    • Moving from Netlify to Cloudflare Pages - Will Vincent from Feb 2024
    • Traffic is a concern now for even low-ish traffic sites since so many bots are out there
    • Netlify free plan is less than 30 GB/mo allowed (grandfathered plans are 100 GB/mo)
    • GH Pages have a soft limit of 100 GB/mo
    • Cloudflare pages says unlimited

Michael:

  • PyCon Brazil needs some help with reduced funding from the PSF
    • Get a ticket to donate for a student to attend (at the button of the buy ticket checkout dialog)
  • I upgraded to macOS Tahoe
    • Loving it so far.
    • Only issue I’ve seen so far has been with alt-tab for macOS

Joke: Hiring in 2025 vs 2021

  • 2021:
    • “Do you have an in-house kombucha sommelier?”
    • “Let’s talk about pets, are you donkey-friendly?”, “Oh you think this is a joke?”
  • 2025:
    • “Round 8/7”
    • “Out of 12,000 resumes, the AI picked yours”
    • “Binary tree? Build me a foundational model!”
    • “Healthcare? What, you want to live forever?”

Episode Transcript

Collapse transcript

00:00 Hello and welcome to Python Bytes, where we deliver Python news and headlines directly to earbuds. This is episode 450, recorded September 22nd, 2025. I'm Michael Kennedy.

00:12 And I'm Brian Okken.

00:13 And you can support our show by supporting our work. Take a course over at the Complete pytest course with Brian or a bunch of the courses, including one from Brian over at Talk Python. And thank you to our Patreon supporters. I really appreciate that. Connect with us on socials, whether you just want to have a chat, comment on the episode we released. We usually announce it there and you can talk on that thread or just follow us and see what's going on. Some links to various places are in the show notes. If you want to join us live, then PythonWyZ.fm live is where you go. If we're live streaming, the website will say so and you'll see the live stream playing right there. Otherwise, just click on the YouTube banner and it'll let you subscribe to the YouTube feed.

00:57 It'll let you get notified and you can see all the old shows there if you like.

01:01 And finally, if you would like an artisan handcrafted digest put together by Brian about what we've talked about on the show, a bit of a deeper dive into the background and some of the topics and more resources, not just a rehash or email version of the show notes.

01:16 Go to pythonbytes.fm, click on newsletter, enter your email.

01:20 We'll be gentle to it, we promise.

01:22 Now, Brian, I would hope that you would also be gentle to pandas other zoo animals.

01:27 So I'm going to talk about PD call, which is columns in pandas.

01:32 These are not here yet.

01:34 So these PD call expressions are coming to pandas in the next version-- I think the next version.

01:40 Well, more about that later.

01:42 Anyway, this comes to us from Marco Garelli.

01:45 He wrote the article.

01:46 And what he's talking about is a new call expression within pandas and with PD data frames.

01:55 So taking a look at, he also linked to the merge request.

02:00 So let's take a look at that.

02:01 There's an enhancement, introduce pandas.call.

02:05 That went in and was merged on August 22nd.

02:08 So why I'm saying it's coming in the next version.

02:10 So it came in August 22nd.

02:13 The most recent version of pandas looks like it was released on August 21st.

02:18 So it's not there now.

02:19 So whatever the next one is, maybe 233, maybe 24.

02:23 I don't know what they're going to bump, but it'll be there soon.

02:27 So what are these things?

02:29 So in the past, there's pandas, but then there's other things that pandas has inspired, like I'm blanking on all the names, but there's a bunch of other type pandas-like things that do similar stuff.

02:43 So they have the call syntax already, so that's just coming back into pandas.

02:48 So what is this?

02:50 So when you want to talk about pandas columns, in the past, a lot of times you had to come up with these, use these lambda expressions.

02:59 So like lambda x for x temp, specifying a column.

03:04 So you kind of select it with a lambda expression because you want the expression to happen not outside of the data frame, but in the context of the data frame.

03:13 So it's, you know, there's some trickiness in doing that.

03:17 So really, that's what's going on.

03:19 And the article we're going to link to talks about using lambdas and then kind of times where that doesn't work right.

03:28 There's some flakiness that happens with lambdas.

03:30 It doesn't always do what you might think.

03:34 And then introduces using columns instead.

03:37 So the syntax of using instead of the lambda, just doing pd.call and passing in a column name.

03:46 That's really all I wanted to talk about was really, this is pretty cool.

03:49 And I'm looking forward to being able to use this column.

03:52 There are new things coming also along these lines.

03:56 So some of the other things that some of the other tools use is things like PD all to select multiple columns.

04:05 That's not in this one yet.

04:08 But there's other multiple expressions in PDL selectors and other things that they want to bring into Pandas.

04:17 But this is a good starting point.

04:19 This is great.

04:20 I love it.

04:20 I love to see it getting better.

04:22 You know, Pandas is definitely the primary way people do data frames.

04:27 And there's some young whippersnappers nipping at the heels like Polars and others.

04:31 So great to see some of these ideas being brought back.

04:34 Yeah.

04:34 Absolutely.

04:35 Now, let's talk about whippersnappers for sure.

04:38 The young vibe coder type.

04:40 No, I want to talk about agentic code, certainly not just for vibe coding.

04:44 So I actually have been doing a lot of cursor lately, and I really like it.

04:48 I think it's, at some point I have more to say, but I think it's pretty stunning what you can do these days with agentic AI coding.

04:56 I talked to Matt Makai a few weeks ago on Talk Python about, he was using ColladeCode and NeoVim, But these agentic tool using coding AIs are just unbelievable what they can do.

05:07 They all have their own little variation, which is kind of funky.

05:10 You know, cursor is like a VS Code fork.

05:12 But then Microsoft said, hey, maybe we shouldn't just let everybody just take our stuff and redo our business model against us, which is absolutely fair.

05:21 So they cancel a bunch of stuff.

05:22 So it's not quite VS Code, but it's kind of VS Code.

05:25 There's Claude Code, which is terminal based.

05:28 But what I want to mention today is something called Klein.

05:31 And I think the idea of it, if you're at all inclined to care about the AI coding thing.

05:36 Inclined.

05:37 Inclined.

05:38 Pretty good.

05:39 If you're at all inclined to care about the inline coding thing, then Klein should be pretty interesting to you.

05:45 Why is that?

05:45 First of all, it works in pretty much all the places that you would care about.

05:50 It works in VS Code, VS Code Insider, Cursors.

05:53 Cursor, which is interesting.

05:55 So this and OpenAI's codecs both install into Cursor, which is a separate product with its own AI coding thing, but it's like just use a different pane if you don't like it or you run out of credits or whatever, you know.

06:06 But it also installs, and this is one of the main reasons I'm bringing this up, is JetBrains IDEs, in particular PyCharm, but many others as well.

06:15 So if you want to bring whatever model you want to PyCharm or to VS Code or whatever, then you can do that.

06:22 The other thing is places like Cursor charge a percentage on top of inference.

06:28 So if you pay, let's say you do $10 worth of work, that would basically be what Claude or the OpenAI API charges Cursor.

06:37 They're like, all right, well, $12 is what you pay, right?

06:40 With Klein, this is open source.

06:42 You can see 51,000 GitHub stars.

06:45 So it's open source and it doesn't charge for inference.

06:48 What it does is you can either give them a credit and they'll pay it along to whoever you pick in your dropdown, or you could just put in an anthropic API key or an open AI API key, and then that's your model.

07:02 And they're not involved in that transaction, which I think is pretty interesting.

07:05 The other thing that's kind of cool is they have a very distinct plan versus act mode.

07:10 You can see in the screenshot at the bottom, it has a plan and an act.

07:13 And one of the things you can do to be way more successful on complicated AI jobs is to say, please plan this out, write it down in a markdown file, and then come back and say, now you can act.

07:25 Let's do step one and work through that.

07:27 Now let's do step two.

07:29 It'll keep the context smaller.

07:30 It'll keep the thing a little more focused and so on.

07:32 So that's pretty nice.

07:33 Yeah.

07:35 You can do that with other ones in the prompt, but it doesn't always behave.

07:39 You say, let's plan this out.

07:40 It's okay.

07:41 We planned it out.

07:41 Now I'm doing it like, no, no, no.

07:42 I just told you to plan it out, right?

07:44 The other thing, if you look at the UI on the client homepage, it actually has a price that updates as it's working.

07:53 Like how much is this costing you?

07:54 It goes zero cents, three cents, five cents.

07:58 Not when it's done working, but like as it's working, the dollars are like click, click, click, click, click, which is really a lot of other tools.

08:05 It's very like, I have no idea what this costs.

08:07 Oh, no, I'm out of credits or I spent a bunch of money, but this one you can just watch.

08:10 So that's cool.

08:11 Yeah, I like it a lot.

08:13 It's got open source for sure, so complete transparency that they're not profiting on inference, universal model access.

08:21 So if OpenAI or Anthropic come out with a brand new model, it'll show up right away because you're just passing through to their API, right?

08:28 Yeah.

08:28 And it says client-side architecture means your code never touches our servers, essential for security, mandatory for many enterprises, and ensures data sovereignty.

08:37 I played with this a little bit in PyCharm, and it's quite nice.

08:40 I think I will still be using cursor, but I'm keeping my eye on this because I think this is pretty neat.

08:46 Cool.

08:47 Yeah.

08:47 Anyway, believe it or not, AI has still not disappeared as a fad.

08:53 Yeah.

08:55 It may still, but probably not.

08:56 All right.

08:57 Over to you.

08:57 Okay.

08:58 I was just going to talk about uv a little bit.

09:02 Are you going to cheat?

09:03 You're not going to cheat, are you?

09:04 Yeah.

09:05 Yeah, I am.

09:07 This is thanks to Rodrigo at MathsPP, MathsPP.

09:13 I'm not sure.

09:13 Anyway, he's got a great blog about software and Python and stuff.

09:18 So uv Cheat Sheet, I really kind of, I mean, uv at first was, oh, great.

09:24 Can you use it instead of like pip?

09:27 And now it does a lot of stuff.

09:29 So what all does it do?

09:31 It's a lot.

09:31 Now, the documentation over at for uv is pretty good already.

09:36 But I kind of like this.

09:38 So what does he's got?

09:39 He's got like just all of the commands that you probably want to remember around creating projects, like all the inets and how to do inet stuff.

09:47 Like if you're going to do an app or a library.

09:49 And I kind of forgot that they added these app and lib flags.

09:54 That's pretty cool.

09:55 I did too.

09:56 And I made a lib and I forgot and ran it in app mode.

09:59 And I'm like, darn it.

10:00 I messed it up.

10:01 But yeah, it's really great.

10:03 And then project management dependencies, of course, being able to modify your pyproject.toml and stuff using UVAD and uv lock.

10:13 And I guess I didn't notice also there's a uv tree.

10:16 That's neat.

10:16 Didn't know that was there or forgot about it.

10:20 Lifecycle management.

10:22 What does that mean?

10:23 Things like build, publish, bumping the version.

10:27 And I haven't played with these either.

10:28 All the different ways you can bump a project version.

10:30 That's pretty cool.

10:31 I'll have to play with those.

10:33 things like managing tools like all the tools like uv tool run uv tool install these are these

10:40 were uvx kind of isn't uvx and uv tool the same thing i think yeah no almost uvx will run a tool but then it's like ephemeral it doesn't last where uv tool you install it so you might say uv tool install, I don't know, pytest. And then you permanently have pytest as a thing that you can run.

11:04 But if you just say uvx pytest, it'll download, run pytest, and then it'll kind of disappear from your system.

11:10 You know what I mean? Oh, yeah.

11:12 They're similar, but not exactly the same. Oh, here it is right here.

11:15 uvx is an alias for uv tool run. There you go. Nice.

11:20 Yeah, it's the uv tool run, but not uv tool install and then run the tool.

11:23 Yeah, that's what it is. Working with scripts. UVNet for scripts. And I haven't done this. I guess initialize the script and run it, things like that. Neat. Even, oh, wow, I didn't know you could do this. You can add and remove dependencies within a script. Oh, that's pretty neat. Yeah. And I think it writes the little header,

11:44 the PEP compliant header at the top for you. That's cool. Yeah, I totally, okay. I'm learning

11:49 a lot. I thought it was just a cheat sheet for me, but I'm learning a lot. So this is great.

11:54 And then, of course, if you control which Python versions are installed on your computer using uv, cheat sheet on that list, install, uninstall, things like that.

12:07 So nice.

12:08 I've been using, I didn't think I would.

12:11 I really didn't think I'd be switching to something else to install Python.

12:15 But yeah, I'm especially trying to keep up on new versions with 3.14 and stuff.

12:23 Definitely using uv for that.

12:25 And then a handful of old time stuff, like actually old timers, like uv, VNV, and UVPIP.

12:31 That's where we started.

12:33 And then I love it.

12:35 uv format to run ruff update.

12:37 This is one of the things that I always forget about.

12:40 Well, I remember that it's there, but I forget to do sometimes is if I'm on a different machine I know it has uv, but I haven't updated it for a while.

12:48 And I try something new, like installing a new version of Python, and it doesn't see it.

12:53 What's going on?

12:55 If things don't work, try a uv self-update and work.

12:58 So good cheat sheet.

13:00 Who said cheating will never get you anywhere?

13:02 We learned stuff here.

13:03 Yeah.

13:05 We did.

13:05 Well, speaking of sneaky things, I want to talk about Ducky.

13:10 So Ducky is an open source, all-in-one desktop app built in Python.

13:15 It's designed as the perfect companion for network engineers, students, tech enthusiasts, and others.

13:21 And it combines a bunch of essential networking tools for you.

13:24 Okay, so I have a thing itself and then a bit of a stealth take on this, okay?

13:29 So it has a UI down here, and it does a bunch of different things.

13:32 You can say, I would like to, it actually has a nice SSH client that you can use to connect to things.

13:38 It does Telnet, oh man, bringing back the mud days, serial communication, all different things.

13:43 So if you look at some of the tools, it's got a terminal, kind of like we talked about, but also network queries, subnet calculators, port scanners, topology mappers, like how is my whole enterprise network put together?

13:57 And here's the sneaky bits, vulnerability scanner, password checker, hash calculator, and so on.

14:02 So a lot of cool things you can do in this UI.

14:06 It's Windows only.

14:08 So I think that's turned about as fair play a little bit, Brian, because we talk a lot about Mac tools on here, and I'm going to talk about macOS specifically before the show is over.

14:17 So we don't usually cover some Windows-only tooling, but here we are.

14:21 Yeah.

14:21 Yeah.

14:22 So still pretty good.

14:23 I think this is kind of the thing you might run in like a big company enterprise.

14:27 You know, you want to understand your network topology or search vulnerabilities and things like that, or you just run it in a VM.

14:34 Pretty neat.

14:34 Like I said, open source.

14:36 Yeah.

14:37 So here's the sneaky, not the sneaky, the stealth bonus.

14:41 This is a pretty cool looking desktop app.

14:44 I can go over and download it.

14:45 Let me see if I can zoom back a little bit to get to the releases.

14:49 It's pretty new by the way.

14:50 I can come over here and I can download this and presumably inside there's going to be a.exe that I can run or whatever, right?

14:58 Oh no, it has to install it this way.

15:00 Interesting, it doesn't compile it.

15:01 Oh, it does contain an.exe.

15:03 Yeah, okay, so it does contain.exe or you can install, run it as an entry point script thing in the pipeproject.toml.

15:10 Anyway, so here's part of the stealth thing.

15:12 Ducky.exe application, keep that in mind, as we compare it against an all-in-one desktop app built in Python.

15:18 You don't see too many fully compiled, built, executable desktop apps of any variety these days in Python.

15:25 I know there are some, but not too many, so this is cool.

15:27 Yeah.

15:28 Actually, I don't even remember the last desktop app I installed at all.

15:35 We live in a weird world.

15:36 We do, yeah.

15:39 Yeah.

15:40 Anyway, that's it.

15:41 That's a Ducky.

15:42 I think it's super new, not super popular, but I think a little shining light on something cool.

15:47 Yeah.

15:47 Nice.

15:48 Cool.

15:49 All right.

15:50 Is that it for our things?

15:52 Over to the extras.

15:54 I just have.

15:54 What do you got?

15:56 Normally on extras, we will share something extra that I want to point out and share with people.

16:02 But this time, I guess I'll share one article, but mostly it's a question.

16:06 I'm curious what everyone is using for.

16:09 So I've got I've got a my blog is static site Hugo and I'm currently on Netlify, but I'm like, should I be on Netlify?

16:17 And I I ran across this article from Will Vincent.

16:20 This is moving from Netlify to Cloudflare pages.

16:25 And but that was published in February of last year of 2024.

16:29 So curious if if it's still valid and that totally doesn't look like well, from what I remember well looking like.

16:36 But it's a cool picture anyway.

16:38 Anyway, so he's got an article on converting, and so I might consider Cloudflare.

16:44 But why I'm bringing this up is because Netlify changed their plans a little bit recently.

16:49 And right now, now if you've already there, you're grandfathered in to whatever you had before.

16:55 But if you want to change around, they're doing this credit thing.

17:00 So the free plan, like if I was going to recommend somebody new to blogging, any of these would probably be fine because there's no traffic yet.

17:08 But as traffic grows, and traffic grows weird now because of AI bots and everything, even if there's not that many people reading your site, there might be a ton of bots reading it.

17:18 So that 300 credits turns into like 30 gigabytes per month, which you can hit that not too hard.

17:28 If you have a big hero image or something like that.

17:31 Yeah, probably do the images down.

17:34 But stuff gets pulled a lot.

17:36 Anyway, so there's that on Netlify.

17:39 And if you, to go up, it's, you know, nine bucks or 20 bucks.

17:43 None of this is expensive, but it adds up over the year.

17:46 So Netlify's here.

17:48 I did look up, I knew people were, some people were using GitHub Pages, but GitHub Pages has a usage limit as well.

17:54 And I didn't realize this.

17:57 It says it's not intended or allowed to be used as a free web hosting service to run your online business e-commerce site or other website that's primarily directed at either facility and commercial transactions blah blah blah anyway i've got ads on my site so i was like i don't think it would be bad i think that'd be sort of not in line with the terms but also there's 100 gigabyte um soft bandwidth so um that doesn't seem right cloud cloud flagit cloud flare pages um looks like they don't have a band i don't know how they don't but they don't have an a bandwidth limit on the free plan uh which is interesting um and unlimited sites so i might check that out also um also not just because of the cost um even 20 bucks isn't something terrible but the i'm not thrilled with netlify's uh analytics that they present so um and i was just curious if anybody has any other ideas for for what um what you're hosting your static sites on let me know um but you've got

18:58 sites but i'm assuming you're self-hosting those yeah exactly i they were on netlify for a while and i know i had monitoring for all my different sites for a downtime and i started i think i said this before but i noticed that they started having like weird one minute downtimes i'm like that's weird how can a static site reasonably have downtime but no it was quite a bit and so i'm like well how much work would it be to just put it on the same infrastructure that runs python bytes and all the rest right turns out not so much like if you can just get clone your hugo site somewhere and you point nginx at it with the right configuration you now have a it's exactly the same as if it's hosted at one of these places and then update you just run a remote ssh get pull command and then boom you got it's instantly updated so if people want to know how to host hugo or whatever in static sites shoot me a message i'm happy to help i don't necessarily recommend it to everyone because it's you're now, you have a server you got to deal with, right?

19:53 But if you already have a server and already have Nginx doing all the stuff, like it's trivial to just add a config to point at a folder.

20:00 Yeah.

20:01 Yes, that's kind of why I was sort of leaning towards like, you know, what's a hosted thing that's cheap,

20:08 either free or cheap.

20:10 And I hadn't, before I ran across Will's article, I hadn't heard of Cloudflare late.

20:16 I can't say that.

20:18 Cloudflare pages.

20:19 I hadn't either.

20:20 But I wonder if there's others out there that I'm not even noticing.

20:23 So yeah, let me know.

20:24 Very cool.

20:25 Love it.

20:26 All right.

20:27 I have a few extras.

20:29 Okay.

20:29 Of which Ducky is not one.

20:31 So I apologize.

20:33 I can't remember the guy who sent this in.

20:35 But Python Brazil has sort of reached out and said, hey, we could use a little help with funding.

20:42 The PSF had a bunch of funding and grants for different things.

20:46 And there was like a huge spike in how many grants were requested, how many people asked for funding.

20:53 And it burned through the available funds quicker than expected, I think is the short version.

20:58 There's been a bunch written about it.

20:59 And that's probably roughly right.

21:02 Anyway, they said, hey, we could use some help.

21:03 We don't have as much funding as we expected.

21:05 So give us a shout out, if you don't mind, about Python Brazil coming on the 21st to 27th, I believe, in October.

21:14 And if you go to check out and you actually pull up the buy me a ticket, like check out pop up or modal dialogue, whatever it is in there, there's a way to donate a ticket for a student to attend.

21:26 So you can just go there and say, I would like to basically fund a student's attendance.

21:31 So anyway, that's kind of cool.

21:32 Check that out.

21:33 Hopefully the conference goes well for them.

21:35 Next up, Brian, to atone for my sins, I've mentioned a Windows only application, I will speak of macOS.

21:43 So I don't know.

21:45 Have you installed macOS Tahoe or iOS 26, one of these new shiny liquid glass things?

21:51 They're doing it on the desktop also?

21:53 No, I have not.

21:54 My daughter has updated her phone and has been cursing it since she's updated.

22:01 Funny.

22:02 Yeah, so I updated my phone.

22:03 I updated my work computers, but not my streaming computer because the UI stuff with screen recording and all that kind of stuff.

22:13 It can get a little weird.

22:15 So I decided this, the one that you and I are talking on right now is going to stay stable for a little while.

22:19 But the other ones I upgraded, I think it's delightful.

22:22 I know a lot of people like hate change and they're like, it's changed and I don't like it.

22:27 And that may be valid or not valid or whatever, but I think it's great.

22:30 I've been enjoying it.

22:32 So the clear isn't bothering you anymore yet?

22:35 No, nothing is unreadable.

22:37 I don't have it like the full tinted mode.

22:39 I just took the default because it still has color.

22:41 I hate that they drew the color out of it like a vampire sucked the joy out of it or whatever.

22:46 So can you get colors back in your icons if you could get those back?

22:50 They don't even change by default.

22:52 You have to go and select the super clear view if you want that.

22:55 Oh, okay.

22:57 It looks almost exactly the same.

22:58 It's just a little more transparent.

23:00 Like the menu bar across the top, the background is transparent.

23:05 But depending on what your background looks like, it's either fine or not fine.

23:08 I don't know.

23:09 But for mine, it's fine.

23:10 So, yeah, it's okay.

23:11 anyway so i give a i know a lot of people are saying they hate it and i'm like i actually kind

23:15 of i like it i don't mind at all that's great i'm glad that you're happy with your computer thanks i mean there's there's things that i would like to have transparent like for instance um uh if i'm actually usually using a computer or phone not while i'm moving so i don't really need to see what's behind it uh if we could have books be transparent then i could walk around and read it

23:37 Just read.

23:38 That would be cool.

23:38 I remember when the iPhone first came out, there was an app that was basically a messaging app.

23:43 It wasn't iMessage.

23:45 It was some other kind of messaging app.

23:47 But literally the background was the camera view out the front, the back, what is it?

23:53 The camera that looks away from you.

23:55 And so you could hold it and like, you could read your messages and it would show you what you're walking towards.

23:59 Like how messed up is that?

24:00 Well, I think that's great.

24:02 I mean, like actually, if you could do like a panorama side view too, because I'm always weirded out with people crossing a crosswalk while,

24:11 while looking at their phone. And I'm like, there's cars and bikes and stuff. You're going to get hit, man. But I know.

24:17 Yeah. Whatever. Kids these days.

24:20 Speaking of a software thing. Also, I'm a hundred percent back to Vivaldi.

24:24 I'm not using Zen anymore. I just, I'm embracing the Vivaldi lifestyle.

24:28 Really?

24:28 Cause this surprises me because Vivaldi has taken a stand against AI.

24:33 So I don't need my browser to do AI.

24:36 I think I actually, you know, you're going to take us down a red hole.

24:40 I hate the AI that is in almost every application.

24:43 You know, my email client has a rewrite this email with AI.

24:47 Gmail has a, would you like to like shorten this or tighten it with AI?

24:51 And I almost always hate what it does.

24:53 It almost always destroys the formatting or something.

24:55 I'm like, Oh my, what is this?

24:58 So I don't, I'm not a huge proponent of everything having AI in it, but going like, I'm going to go to ChatGPT or I'm going to go to, I'm going to go to, I'm

25:05 some AI coding thing, and now I'm using it as a choice.

25:09 That is good, but just having it jammed in really poor implementations everywhere, don't love it.

25:14 Yeah, so they did make a big stand against AI, which is interesting.

25:18 Yeah.

25:18 Okay, I have one more thing left, a quick follow-up here.

25:22 The one thing that didn't work was Alt-Tab.

25:25 Have I given a shout-out to Alt-Tab, Brian?

25:27 Alt-Tab is awesome.

25:28 One of the things that really is a bummer about macOS is you can Command-Tab instead of Alt-Tab, which seems like the same thing, but no, it's not.

25:36 Because if you have, let's say, three browser windows or three editors, and you want to go between editor window one and editor window three, no.

25:46 There's not really a hotkey for that, right?

25:48 Other than like switch to the app and then do like expose all windows and then use your mouse to, you know, it's like really janky.

25:55 So alt tab cycles through windows, not apps, which is really nice.

25:59 So like if I'm already in Vivaldi and we got three windows up, you can cycle through the...

26:04 Yeah, alt tab, you just map it to alt tab, and then alt tab will cycle between the different Vivaldi windows and all the other windows.

26:11 It's like Windows style, not Mac style.

26:13 And it's open source and free.

26:14 It's pretty nice.

26:15 Okay.

26:15 Okay, before we hit our joke, I just want to, why will this not go?

26:19 There we go.

26:20 James C on the audience asks, what about GitHub Pages as an option for your static site?

26:24 You pointed out that there's some limitations you don't like, right?

26:27 I sort of flew by it, and I already did.

26:29 I can't go to my screen because I already deleted it.

26:32 But the gist of it is I'm actually doing decent traffic, so I'm already hit.

26:37 I'm close to the 100 gigabyte.

26:40 And they said that GitHub page is as close to 100.

26:43 They have a soft 100 gigabyte limit.

26:46 And I've already taken all the big stuff off.

26:49 It's just a lot of, I think it's a lot of AI bots.

26:53 And I decided to not turn that off.

26:55 But the other thing is it says they really don't want it to be for free web hosting for anything commercial or even like pseudo related to commercial.

27:07 And so I, in the spirit of that, I don't want, I'm not afraid of getting in trouble.

27:12 I just don't think it's right for me to take advantage of it.

27:15 If I'm promoting my courses, promoting my book and stuff and on there, it just doesn't seem like in the spirit of what Gahead Pages was for.

27:24 So there's that.

27:26 However, you're right that when I started the story of recommending other people start a blog, totally GitHub Pages is going to be one of those because you're just writing a blog like in college or something.

27:38 Probably not a commercial entity.

27:40 And that's totally valid.

27:42 Just remember the admonishment we gave a few weeks ago.

27:47 Use your own domain.

27:49 If you want to move, you need to be able to move by remapping your DNS.

27:53 If you're at, you know, Michael at githubpages.com or whatever, right?

27:57 Or github.io, like you're stuck forever.

28:00 Yeah.

28:01 But then you'll, yes.

28:02 And you'll get to the joy of now you have to get to learn how DNS settings.

28:07 But, you know, you shouldn't anyway.

28:08 You'll figure it out.

28:10 Yeah.

28:11 By the way, my self-hosting comes with free four terabytes of traffic.

28:15 And like if you're a DigitalOcean or Hetzner, usually even the cheapest server comes with a terabyte of free traffic.

28:20 I think the $4 version.

28:21 Well, maybe.

28:22 Maybe I'll set up a $4 Hetzner box or something.

28:25 Yeah, exactly.

28:26 You could.

28:26 I'm happy to help if you want.

28:28 All right.

28:28 Are you ready for a joke to wrap this thing up?

28:31 Okay.

28:31 So I'm going to recommend a YouTube video.

28:33 I know a lot of times I tell straight jokes, but I feel like this one is catching the zeitgeist a little bit.

28:39 I think with a certain group of people, this is really going to resonate.

28:43 Are you looking for a job?

28:44 Have you looked for a job five years ago?

28:47 And then now, well, check out Kai Lintitz.

28:52 hiring in 2025 versus 2021.

28:54 This is the programmers are human guy.

28:57 The interview with the Emacs expert guy, the job at senior JavaScript developer, and perhaps his best video is the senior engineer tries AI coding.

29:10 But this is really, really funny.

29:12 It's sort of like contrast, like the position that we all used to be in, whereas you could just dictate whatever terms you want in 2021.

29:20 people are desperate to hire anyone, you know, and then what it's like now.

29:27 They make the guy create like a foundational LLM model blindfolded.

29:33 But here, I'll give you some of the quotes.

29:35 In 2021, these are some of the quotes.

29:37 Do you have an in-house kombucha sommelier?

29:41 What country did he study in?

29:45 Oh, yes, we actually have two.

29:47 And then it's like, let's talk about, this is the guy being hired, right?

29:51 Let's talk about pets.

29:52 Are you donkey friendly?

29:53 And the guy starts to laugh like, oh yeah, whatever.

29:55 He's like, oh no, you think this is a joke?

29:57 He's like, oh, well, we can work on donkeys.

29:59 Yeah, it's okay.

30:01 And then 2025 is like round eight of seven for the interviews, right?

30:07 And he's like, the guy starts screaming at the guy being interviewed, out of 12,000 resumes, the AI picked yours, prove that you're worthy.

30:17 you solve it with the binary tree, build me a foundational model.

30:20 And then eventually he asked about healthcare. He goes, healthcare, what do you want to live forever? So good. Oh, that's bad. Yeah.

30:28 So if you want to just live, live in the moment a little bit, I think, here we go. So yeah, in, in 20, so pre 2019, I guess.

30:38 So pre pandemic are we, it's been since there's not enough people always in the office to, to support it now but before the pandemic we had uh two flavors of kombucha on tap uh chilled um it was like a like a mini keg thing but it's kombucha it was it was a thing um incredible

30:58 and uh where did your sommelier study no we just like it's portland there's like it's just

31:05 I know, I know, I know.

31:08 The one, this is a related AI in 2025.

31:14 My daughter, she's a junior in high school.

31:17 And she had to, for one of her classes, she had to interview me, interview one of her parents.

31:23 So she interviewed me.

31:24 And she was starting to type it in on her phone.

31:27 And I'm like, don't do that.

31:28 Just email me the questions.

31:30 So she emailed me the questions.

31:31 And I just sat there and talked with her about what I was saying, but I typed it back because I type way faster than she does.

31:37 Although it's bizarre that she can type with her thumbs faster than she can or on a keyboard.

31:43 But yeah, send it back, turned it in.

31:46 But she had to convince her teacher that it was OK that she pasted it in because apparently there were so many kids that actually didn't want to actually interview their parents that they just had chat.

31:58 They like told ChatGPT what their parents were like and had the, the, or whatever the AI system, AI bots, they interviewed a bot instead of their parents.

32:08 And, and so the teacher turned off paste in the, in the homework assignment.

32:13 So they can't, you can't paste in the answer anymore.

32:16 Oh, how bad.

32:17 I mean, I do not envy the education world, educational world with regard to AI, because, you know, it's so easy to say, And here, let me just paste the homework question and requirements in.

32:31 I'll do that.

32:31 You know, it's crazy.

32:33 But this was like, there's no wrong answer.

32:35 It was like, it was easier, just easier than talking to your family.

32:40 But yeah.

32:41 Yeah.

32:41 That's crazy.

32:43 Anyway.

32:44 All right.

32:44 Yeah, that's cool.

32:46 Well, good one again.

32:47 Thanks.

32:48 I'll have to watch that hiring video.

32:50 Oh, it's really good.

32:51 It's really good.

32:52 People check it out.

32:52 I'll put it in the show notes.

32:53 Bye, everyone.


Want to go deeper? Check our projects