Python Bytes - #472 Monorepos

Episode Date: March 9, 2026

Topics covered in this episode: Setting up a Python monorepo with uv workspaces cattrs: Flexible Object Serialization and Validation Learning to program in the AI age VS Code extension for FastAPI ...and friends Extras Joke Watch on YouTube About the show Sponsored by us! Support our work through: Our courses at Talk Python Training The Complete pytest Course Patreon Supporters Connect with the hosts Michael: @mkennedy@fosstodon.org / @mkennedy.codes (bsky) Brian: @brianokken@fosstodon.org / @brianokken.bsky.social Show: @pythonbytes@fosstodon.org / @pythonbytes.fm (bsky) Join us on YouTube at pythonbytes.fm/live to be part of the audience. Usually Monday at 11am 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: Setting up a Python monorepo with uv workspaces Dennis Traub The 3 things Give the Root a Distinct Name Use workspace = true for Inter-Package Deps Use importlib Mode for pytest Michael #2: cattrs: Flexible Object Serialization and Validation cattrs is a Swiss Army knife for (un)structuring and validating data in Python. A natural alternative/follow on from DataClass Wizard Converts to ←→ from dictionaries cattrs also focuses on functional composition and not coupling your data model to its serialization and validation rules. When you’re handed unstructured data (by your network, file system, database, …), cattrs helps to convert this data into trustworthy structured data. Batteries Included: cattrs comes with pre-configured converters for a number of serialization libraries, including JSON (standard library, orjson, UltraJSON), msgpack, cbor2, bson, PyYAML, tomlkit and msgspec (supports only JSON at this time). Brian #3: Learning to program in the AI age Jose Blanca “I teach a couple of introductory Python courses and I've been thinking about which advice to give to my students, that are studying how to program for the first time. I have collected my ideas in these blog posts” Why learning to program is as useful as ever, even with powerful AI tools available. How to use AI as a tutor rather than a shortcut, and why practice remains the key to real understanding. What the real learning objectives are: mental models, managing complexity, and thinking like a software developer. Michael #4: VS Code extension for FastAPI and friends Enhances the FastAPI development experience in Visual Studio Code Path Operation Explorer: Provides a hierarchical tree view of all FastAPI routes in your application. Search for routes: Use the Command Palette and quickly search for routes by path, method, or name. CodeLens links appear above HTTP client calls like client.get('/items'), letting you jump directly to the matching route definition. Deploy your application directly to FastAPI Cloud from the status bar with zero config. View real-time logs from your FastAPI Cloud deployed applications directly within VS Code. Install from Marketplace. Extras Brian: Guido van Rossum interviews key Python developers from the first 25 years Interview with Brett Cannon Interview with Thomas Wouters Michael: IntelliJ IDEA: The Documentary | An origin story video Cursor Joined the ACP Registry and Is Now Live in Your JetBrains IDE What hyper-personal software looks like I’m doing in-person training again (limited scope): On-site, hands-on AI engineering enablement for software teams with Michael Joke: Saas is dead

Transcript
Discussion (0)
Starting point is 00:00:00 Hello and welcome to Python Bites, where we deliver Python news and headlines directly to your earbuds. This is episode 472 recorded March 9th, 2026. Incredible. My name is Michael Kennedy. And I'm Brian Arkin. And this episode is brought to you by us. We have a bunch of different courses, books. Links are at the top of the show. Actually have some other things that I'm going to talk about at the end of this show, Brian. Yet another thing. I have two new things, but I only want to talk about one thing at a time. So this week gets, well, the one that I pick for this week. Yeah. Follow us on socials.
Starting point is 00:00:35 Brian, me and the show, we all have different social media accounts you can follow and keep up with all the things that we're talking about. Or, you know, send us recommendations. We appreciate that. We always enjoy getting cool ideas from other people. It helps a lot, right? We say, I didn't know. I don't think one of these exists and someone else send us a message.
Starting point is 00:00:51 Yes, they exist and hear four of them. Like, oh, thanks. We'll talk about those later. Sign them to the newsletter. Get notified about all the stuff that we're up to, but mostly, we're sending out detailed, extra enriched information about what we talked about in the show, not just show notes over email. So people are finding that really valuable, and Brian's sending those out.
Starting point is 00:01:11 So that's great. And with that, I guess, what's our first item, Brian? Oh, yeah. So let's actually, I've got a thing that I'm working on at work that involves a project that really should be set up as a mono repo. I mean, it's not, we're really, we don't really do. monorupo things but i guess it's a project that that has one repository and a bunch of different you like python projects inside of it so um i was looking for for help with that and i ran across
Starting point is 00:01:43 uh this article called three things i wish i knew before setting up a uv workspace and um it is really about setting up a uv workspace to deal with mono repos and um actually don't really know anyway So workspaces are a thing that UV can deal with. But there's some tricks that I guess weren't obvious. There weren't obvious to me. So there's just a few that I want to cover. One is to give the root a distinct name. So you've got a top level pie.
Starting point is 00:02:14 You've got an application you've got or your repo. There's going to be a top level pieproject.comal to handle all of that to cover everything. And then each of your sub packages will have its own pieproject.com. And the trick is they've got to have the workspace names have to be different to make this all work. And so it might be obvious. It might like in that example, they've got my app as the core project. But then the workspace is my app also. It can't be that.
Starting point is 00:02:45 You run into a name conflict. So and that's in the names show up in a thing you've got member. There's an example of what the workspace looks like. and that you have to set up a different top level name. So project name has to be different. So maybe obvious, but I would not. It wasn't obvious to me. So thanks for that help.
Starting point is 00:03:10 The other part, which one of the other tricky bits is in order for UV to deal with this okay, the top level one, is it the top one? If workspace packages depend on each other, you've got to do a couple things. You have a normal dependency declaration and a tool.U.V. Sources entry telling UV to resolve it locally. So a project will have a dependency. It's going to have its own name. It's going to have a dependency.
Starting point is 00:03:40 And that dependency, if it's internal, you have to below say, you know, also look for UV sources in this workspace. So it doesn't go out to Pi Pi Pi or whatever to try to find those dependencies. And, yeah, I wouldn't have even thought that that's built into UV. So that's cool. didn't know that was there. The third bit that was to use
Starting point is 00:04:03 import lib mode for pie test and that's kind of one of the reasons why I wanted to pick this because I'm not sure what they're talking about here. Apparently there's the issue is if you've got like something like the same test name like test helpers
Starting point is 00:04:19 in multiple projects. If you have unique file names, it's fine. But if you might not And, you know, as projects grow, you don't want to, like, restrict people's file name choice. We'll go ahead and do this. But I don't, there's, like, a couple methods. There's the import lib method.
Starting point is 00:04:39 And then there's putting dunder and nets in your test directory. And the comment here is that there's a silent bug with that. I wasn't familiar with this. So it's a homework for me for next week is to research this to try to figure out what the deal is with this import live. versus dunderin it and how that behaves. So I'm going to work on that this week. So that's my two cents there. What an interesting idea of these mono repos are, huh?
Starting point is 00:05:08 Yeah, well, I mean, I was first resistant. I'm like, why not just split it up? But there's a lot of times where, I mean, for us, for me, that it's really that all the label can be one label for everything, for everything that's together. If you branch, it's all to branch together, merges are all together, all of that. And that's hard to do without a monorepick. Yeah, it definitely is.
Starting point is 00:05:30 Definitely is. I just want to throw in real quick that I interviewed Yarek and Mogg from the Airflow team about mono repos with UV and PREC. So that's episode 540. And I think that's a couple weeks out on the official Talk Python channel, but it's on the live stream YouTube version because that usually precedes things. by a few weeks. Cool.
Starting point is 00:05:53 As we record them and they let them out. So Airflow has something insane like over a hundred sub-projects or packages and dependencies across them and stuff. And they actually worked with UV, I believe,
Starting point is 00:06:05 to help set up that workspace feature and functionality and so on. So pretty cool. Yeah. All right. I want to carry on from last week. So last week we talked about Data Class Wizard.
Starting point is 00:06:16 So now I want to talk about C adders. So you probably know Adder's from Henick. But what about C, adders. So C adders is actually, it works with adders and data classes. And its job is to take and do very similar serialization and validation that you would find in Pidentic, but have it as a separate library. And so one of the things that I'm realizing as I sort of go through these examples, and when I chose my raw queries plus data classes pattern that we talked about last week, I think it was last week, recently.
Starting point is 00:06:51 I really was valuing the fact that the data classes themselves were just that data classes. And maybe they got their own computed properties or something, but they were not in charge of serialization, de-serialization, validation. But things like data class wizards and sea adders or just your data access layer, all those can have really rich, you know, conversions, parsing, validation, et cetera, without actually being part of your object hierarchy and your class. you can choose those things separately. And this is right along those lines. So it's super cool. I can import structure and unstructure, which is to and from different types, but maybe dictionaries is the best mental model.
Starting point is 00:07:33 And so I can say just parse one of these things as a class C, which you defined as a data class or an adder's class or something like that. And what you get out is one of those parsed and validated, right? Or you can unstructured and becomes a dictionary. Okay. So that's pretty neat. But it's not just adders. Also works on data classes.
Starting point is 00:07:55 And let's see. There's a bunch of different types of validation. Let me see if I can find it here in our example. So it does things like a message spec, message pack. It does YAML, JSON, obviously. So there's a bunch of these different serialization libraries that you might adopt. right so it's really cool that you can do all different types of serialization and so on and i think it's yeah i think it's really cool you can set up hooks to help transform values and and validate values
Starting point is 00:08:26 uh through just basically decorators which is kind of cool um yeah so more or less like do you want a really nice structured way to serialize classes without making it part of the object hierarchy and check out see others that's really cool yeah yeah it's um i really like cedars especially for projects like not, I mean, reaching for PIDANIC seems like a natural thing to do with web stuff, but there's a lot of other times where you want similar sorts of data validation and other things that are like not web really. This will work for web stuff too, of course. Yeah, neat.
Starting point is 00:09:02 Yeah, I think it's really cool to have that control. Like, for example, what I talked about was if you use Pydantic, it's awesome that it serializes data before it gets into your database. but it revalidates that data when it comes out of your database. Why are you validating data that's just stored in your database? You don't need to do that. It just happens to be, well, that's how Pidentic works. You load it with data.
Starting point is 00:09:22 It validates it. Great. So that's what I think is neat about this separation, the sort of orthogonality of your validation and conversion layer and your class structure because you can validate on the way in but not on the way out if that's how you like it. You know what I mean? Yeah. That makes sense.
Starting point is 00:09:38 Definitely. Cool. Yeah, cool. Well, if I were to learn about this, what would you suggest? Well, probably not AI. I don't know. Nice transition attempt, though.
Starting point is 00:09:49 Thanks. So I want to cover a listener's suggestion. Somebody wrote in and said, hey, we've been talking partially sometimes about AI and LLMs and using agentic coding and stuff. This is from Jose Blanca. There's a few blog posts around how to utilize AI for learning to program.
Starting point is 00:10:12 And that's kind of an awesome topic. It's something I've been thinking about too, is for people, like even people my daughter's age and stuff, wanting to learn out of code or really anybody wanting to learn out of code. A lot of things like why, why would you want to learn out of code
Starting point is 00:10:28 if there's powerful AI tools already? How, like if you're convinced that you do want to learn out of code, how could you use AI as a tutor rather than a shortcut and keep practicing? It's, you know, one of those key points is practice remains a key to real understanding. And then, you know, what should you learn? And I kind of love how we broke this down. So I'll read like the summaries of like, you know, why, why, of course, how and what?
Starting point is 00:10:56 Going through, there's just a few blog posts altogether and really formated nicely and put up. So why would you learn for occasional programmer or a professional programmer or just for fun? There's lots of reasons to want to learn at a. to program still. And one of them, one of the things he brought up as like an occasional programmer is somebody that's doing something else. Like they have a discipline such as biology, physics, whatever, something other than coding. But they need to code.
Starting point is 00:11:25 One of the reasons to learn out of code is even if you want to drive it with AI is learning what kinds of problems that computers can solve easily or the right kinds of things. And with learning, programming, you also learn how to break problems down. into smaller pieces and stuff. There's a lot of stuff you learn with coding that you, that it's one of the few places that is practical to learn how to do those sorts of things, breaking down problems. So lots of great reasons to do it for the Y part.
Starting point is 00:11:55 How, I love this, is not using AI to solve your exercise problems because, you know, you're not learning then. But you could do that and then look at what they're coming up with. But you could also use AI to ask you things to describe to an agent, like what level of coding you're at. And could they come up with some programming problems for you? I never thought about that of like getting coding problems from them. And then, yeah, and then a caveat that there's limits to this and to making people aware of the problems, some of the problems that we're aware of like hallucinations or dreaming up,
Starting point is 00:12:36 giving up different things. But I do think that you can use AI as a teacher, a side teacher to generate tasks, debug things that you're having trouble with. Your code doesn't work. Why isn't it not working? Way back when I was learning our code, you did just bang your head out against the table, I guess, and look at all the syntax.
Starting point is 00:13:00 But having AI helps a lot. Getting hints, reviewing your code, explaining what different things do. Lots of great stuff that LLMs can help you with. And then the what is really great. Don't skip this part if you're going to look at these blog posts because what you should do, you know, let's see, you know, what you should work on? What is the what? What are the real learning objectives?
Starting point is 00:13:22 Mental models, managing complexity and thinking like a software developer. These are all great things to focus on depending on where you are in your career and how, where you're, you know, where you were at. So anyway, this is a, and also just what good code looks like. Somebody new to coding doesn't really know what good code looks like until they, you know, it's good to learn that sort of stuff. So anyway, good job, Jose. I like, I like this.
Starting point is 00:13:48 Yeah, very nice. It's going to be a challenge. I think it's so tempting to just press the easy button and go, okay, what's the answer or make it work? But those of us who are willing to say, this is not working, help me understand what's wrong. what are the other ways in which I could do it. I see you did it that way. Why did you do it that way? Was my way not right?
Starting point is 00:14:07 AI is actually really good at having those conversations. Yeah. And I think there's some real gems. There's some opportunity here. There's a lot of people, a lot of our youth are not choosing CS right now. And I think that's fair. But even if you're used, I think there's still room for people to get CS degrees. But there's also a lot of room for people to, and with AI, a lot of,
Starting point is 00:14:31 lot of, it's a lot easier for somebody in another field to add it. Like if, if you're in biology, you're probably going to learn some coding anyway. But if you're like a history major or a doctor, like medical research or something, maybe not. But with, with AI's help, you can probably learn how to code also and you'll be unstoppable when you get out of college. Yeah, absolutely. All right. It's an incredible tool. It's an incredible tool. I 100% agree. All right. Let's talk about other incredible tools. Fast API. So Savannah Ostroski points out, says, hey, how are you? Are you using Fast API? I'm reading from her LinkedIn post, of course. So good news, they have released an official Fast API extension for VS code on the marketplaces. So if you drop over there, there's the GitHub
Starting point is 00:15:19 version and the marketplace version, I guess. They kind of show you more or less the same thing. Kind of like Pi Pi Pi, like the readme just shows up in both places. I was like, do I really need this? I'm not sure if I need this. Maybe I need this. But if you look at it, it's doing some really cool things. GitHub. Anyway, like, for example, I can switch over to Fast API and it shows all of the different, what is it grouped by here? Does it actually group by router? Like, you know, how you can break up your routes into organizations by router, or is it just by URL? Anyway, you can see like slash items. Then under slash items, it says there's a get items, there's a get items ID, there's a post items, put to the ID, and it actually shows you the function.
Starting point is 00:15:59 name, you can jump from those. So really quickly you can navigate around basically by the URL structure of your site. What do you think of that? That's pretty cool. Yeah, I think it looks really handy. You can also search for routes. So you can hit command shift command P, I think, or maybe just command P, pull up the command palette. And if you type substrings of the URLs or the routes really more accurately, if you type items, it'll show you all the things, all the URLs that involve items, and you can select them out there and jump to like get slash items or whatever.
Starting point is 00:16:33 That's pretty neat. It has code lens for test client calls. So if you have a test client calling that URL, and you can hover over it. I think that's how it works. You can hover over it, and it'll actually take you to the server side. So that's pretty wild.
Starting point is 00:16:48 Kind of like the get lens. If you hover over, it'll say who it was committed by and click on it takes you to commit. And then you can also deploy to Fast API Cloud. You're not familiar with that. like the hosted super simple way to publish your code over to the internet somehow, wherever that goes.
Starting point is 00:17:04 You just fast API deploy and then off it goes. And if it's a fast API app, it often can even figure out how to run it without you doing anything, which is really sweet. So that's great. So you can do that straight from the extension there as well. And you can also view the logs of your application running on Fast API Cloud in the terminal of your local VS code.
Starting point is 00:17:24 Oh, neat. Yeah. Anyway, so if you are a fast API fan, especially for using Fast API Cloud, also had those folks on Talk Python, which is out in the main feed just a few weeks ago. So very fun to dig into that. But if you're a fast API person, regardless of how you cloud, checking out the extension for VS code and presumably cursor, windsurf, et cetera, anti-gravity, you know, all the things. Nice. Yeah. Well, I think that is it for all of our things, right?
Starting point is 00:17:53 Yeah. Just some extras left. You got any? Yeah. So just noticed this yesterday, actually, was that Guido Van Rossum has a homepage on GitHub.io, and he started some interviews. So if you look down on blog posts,
Starting point is 00:18:11 there's interviews with key Python developers for the first 25 years. It's a new series that he's doing. He's got Thomas Wooders and Brett Cannon so far. And at the preface for Thomas's interview, talks about what he wants, what he's doing here. Apparently during the recent documentary that we had around Python we talked about, there was some people talking about like there's a bunch of old timers that were not part of that. And also, you know, trying to, weren't mentioned the film, but probably are worth talking to.
Starting point is 00:18:46 And so he decided to do some interviews himself from his person. perspective of things that needed to be part of Python history, which is cool. And also that he likes doing these interviews and just release him in text form instead of as a like a podcast or something. And actually, I think it's completely valid. It's fine. It's good. But the format's nice. There's some interesting information. I kind of skimmed through both Thomas and Brett's interview. And I'm excited he's doing this. So I'd like keep it up. Yeah. That's pretty cool. I know a lot of people, I'm not amongst them, so I'm not going to rant it. But a lot of people are like, why, if I just want to learn how to do a thing,
Starting point is 00:19:29 do I have to watch a 15-minute video that should have been a five-minute video in the first place? And I just want to skim the article and jump to it. I like to watch videos and listen to things, but I know a lot of people would just rather read it. There's room for both, right? That's right. But our listeners should not stop listening. They should definitely. Definitely.
Starting point is 00:19:48 They should definitely keep listening. All right. carrying on here, I got speak, you mentioned the documentary for the Python one, the really nice one that Cult Repo did. Well, they just released one on IntelliJ, the documentary, an origin story, which is a 40-minute documentary on IntelliJ, which is kind of the foundation of Pi Charm as well, right? So very relevant to Pi Charm fans. So people should check that out. That's really nice. Cool.
Starting point is 00:20:16 I'm looking forward to that. Yeah, it's so easy to go on YouTube and just get junk. But here's some really nice things. And keeping with the PiCharm theme, right, we did VSCode and cursor earlier. So PiCharm, here on, they apparently in PiCharm, they have the agent client protocol. And I don't know all the different organizations involved in this. But this is just completely new to me. I didn't realize what this was.
Starting point is 00:20:40 But this is actually really neat. I'll tell you why in just a second. So what it does is if you've got some kind of agentic programming tool like quad code or something, You can then just go to this and say, I would like anything that supports agent client protocol allows that agent to do agenetic coding in your editor. It's a little bit like the language server allows all these different things to basically integrate with TY and Pirefly and other stuff, right?
Starting point is 00:21:07 Pretty cool. So if you scroll down here, the agents on ACPR, Juni, Gemini, CLY, Google Copilot, GitHub Copilot, Codex, Cursor. cursor what cursor um i thought that was an editor uh kimmy quinn open code klein some of these i mentioned before but the noise the announcement here is that cursor joined the acp registry and cursor is now available in pie charm cool so that's interesting right yeah i mean i don't even i don't even know what to say but luckily there's a video down here that says oh you can just watch this and it'll actually show you if you go along you just go in here you just go in here
Starting point is 00:21:48 here and basically find and install cursor and then your agentic coding section, one of the things you can pick is cursor if I go far enough, it'll show you like once it's set up. You can pick your agent source like cursor or Geminawa and then you pick your agent mode and thinking or planning and your actual model and so on. Isn't that wild? Yeah, it's pretty cool. Yeah, so I'm pretty happy to see that. That looks really cool. Okay. One more thing. I wrote an R. Go ahead. So one of the things I'm hoping is like that that might be a way for. So one of the cool things about cursor, that I've been trying out is the one of the models is Composer, which is a cursor-specific model. And it's like, for instance, it's one of the best models for doing Pytest code that I've found.
Starting point is 00:22:33 So it's possible that people, and you know, for other people to be able to use it then, even if you're not using cursor. Yeah, exactly. So now you can run Composer 1.5 or whatever the latest one is at your time. Right. excited by charm, yeah, pretty sweet. Okay, one article from me really quick. I wrote an article called What Hyperpersonal Software Looks Like?
Starting point is 00:22:54 So a lot of people say, well, if agenda coding is so good, why aren't we seeing a ton of different pieces of software just overwhelming us with different new apps? I think that's actually going to happen, but I think there's a lag. But I think what we have a lot of and what's going to be interesting is
Starting point is 00:23:10 this hyperpersonal software, that is like something that you make for yourself and you don't ever have an intention of sharing. I just want this. Agent, you make this and then you have it, right?
Starting point is 00:23:20 So for me, the example I gave is, I'm a big fan of Start page, as people probably know these days, that's what I've been using. But StartPage started putting ads on their search results. And if they had just been like little ads at the top, I would have actually looked to click them,
Starting point is 00:23:35 to support them and so on. But I have a 40-inch monitor. And on that, it's like 11K. It's, you know, 5,000 by 2,000 something pixels. On that screen, my browser still does not have a single organic search result on above the fold.
Starting point is 00:23:52 There's so many ads. And I'm like, that is just this. What is this? So I told Claude, hey, Claude, I need a browser extension. Here's what we're going to do. We're going to go here. Here's the HTML. I need to get rid of these sponsored links from search, from start page.
Starting point is 00:24:04 So I typed in the description. I gave it some example HTML and I hit Go and walked away to like make breakfast something. Came back. It had something that almost worked. I had to give it a little like, ah, you remove too much, tell a few times. But now I have a browser. extension that gives me just the organic results, nothing else. And I have no intention to share it. It's just my own browser extension that just runs on my computer and I'm happy with it.
Starting point is 00:24:24 I'm not published in the store, nothing. And I think we're going to see a lot of like a lot of things like that. And I think also people should explore those ideas because they're really fun. They're super low stakes. Like if my search results get screwed up, I'll just turn off the extension. I don't care. Yeah. Yeah. So anyway, I think there's going to be this wave of hyper-personal software. And here's an example. Yeah, I think that idea is going to show up in our joke later. It's absolutely going to show up on our joke. And it's going to show up in my next item in the very, very most tangential way.
Starting point is 00:24:55 So I'm actually trying something new, Brian. And this is for people out there who have companies, I would really love them to pay attention to this part. So I've done a lot of training. I don't know what people know. I've taught over 100 week-long courses around the world before I started doing the podcast and stuff, like when I was doing training, which was a crazy amount of courses to give. like professional development type stuff. So I am going to put my single backup for that,
Starting point is 00:25:20 just a very limited way, to help people adopt agenetic engineering practices for their software team. Cool. Not training in general, but if you've got a Python team especially, and you're like, wow, we're just not really having a lot of success with using AI for coding
Starting point is 00:25:37 or our team is afraid of it or they don't know how to do it. Reach out to me, set up a discovery call. We'll have a quick chat, and I'd love to come. It's been three or four days, one day teaching, one day, like, coding along with your engineers and then, like, some more follow-up stuff to help them really get this kind of stuff going. Oh, that's great. Because, yeah, a lot of people, a lot of teams are getting demands from above. Hey, you should be using coding agents, but how? But how? And then how do you
Starting point is 00:26:04 not end up with a bunch of slop or a bunch of bugs or mouth, you know, like code not following your practices? I really dialed that in over the last year. And I think I'd, I'd, I'd, I'd, love to share that with people. So cool. Nice. Thanks. That's out there. People can find it on my personal website.
Starting point is 00:26:19 All right. And you're right. All of this leads in perfectly to our joke, doesn't it? So are you ready? Yeah. All right. So this comes to us. This is on Reddit.
Starting point is 00:26:28 It looks like it actually came off of, I don't know, off of X or whatever. It doesn't matter. So there's been this crazy open claw. There was like claw bot and then malt bot. There's like all these variations that it went through. But open claw is this thing that you can set up. up and you just give it access to your email, your calendar, your credit card, everything, and you can just send it jobs and it'll just go crazy sometimes in really, really bad ways.
Starting point is 00:26:53 But it is kind of supposed to be this thing that just runs and does a bunch of agentic stuff without your work, right? So you've heard that AI means that SaaS, like hosted software created by other people that you subscribe to, SaaS is dead. So here's this quote or this message from Johan that says, Sass is dead. OpenClaar replaced all my subscriptions. Went from $480 a month on tools to $1,245 a month on API costs plus 15 hours a week fixing my YAML files.
Starting point is 00:27:23 Adapt or be left behind, losers. That's so awesome. It's so much of the zeitgeist, isn't it? Yeah. It's got 2,000 up votes as well on Reddit. But the comments are good. Solid math. Solid work.
Starting point is 00:27:38 if I were you I would spend the next 200 hours crafting a premium info product that sells this magic method you've on earthed. So it says, I must admit it's kind of funny. But it doesn't say, they misspelled it. It says, I must admin. It's kind of funny. It says, please update the YAML file. So you don't misspell admin again. And then there's a really good one.
Starting point is 00:28:02 Let me see if I can find it. This person here says, Sass is hardly dead. Kind of foolish to think every business will try to roll their own suddenly to find out, to find out you don't have the skill to fully conceptualize, blah, blah, blah, blah, blah, blah, blah, blah. Then somebody says, new to irony, huh? Because they just took it literally like, oh, my God, I can't believe he's trying to adopt this. This is not going to work. Yeah, that's funny.
Starting point is 00:28:31 All right, let's leave it there. New to irony, huh? Yeah. The opposites are frankly. Yeah, anyway, that's really funny. I definitely think that's a good choice. Yeah, that's funny. Spend all your time fixing the claw bot.
Starting point is 00:28:45 All right. Went from 540 to like over 1,000 API costs. That's hilarious. Exactly. I don't know about you, but I've got three broken agents over there, so I've got to get going. I'll talk to you later. All right, bye. All right, bye.

There aren't comments yet for this episode. Click on any sentence in the transcript to leave a comment.