[JM]: Dan, have you ever seen this XKCD comic about modern digital infrastructure?
[DJ]: Of course I have.
[JM]: So if you haven't seen this, I will describe it.
[JM]: I will also make it the chapter art for this opening segment.
[JM]: The comic is an illustration showing a bunch of small and large blocks balanced on top of each other.
[JM]: And at the top, it says all modern digital infrastructure.
[JM]: And then there's a separate piece of text pointing to this tiny piece at the bottom that's holding the whole thing up that says a project some random person in Nebraska has been thanklessly maintaining since 2003.
[JM]: With the idea being...
[JM]: that all of our modern digital infrastructure is teetering on top of this tiny little piece that some person has been working hard to maintain and presumably not receiving very much compensation, credit, or praise for the work that they do.
[JM]: And this is one of these evergreen comics that get passed around over years and years because it is just this enduring and insightful indictment, I suppose, for lack of a better word, of our
[JM]: modern digital infrastructure.
[JM]: And I'm highlighting it today only because someone has created an interactive version of it where you can grab pieces of it, large or small, from top or bottom, and move them around.
[JM]: And the physics model is really quite good.
[JM]: And as you start moving things around and start hurling little pieces, the rest of it will behave accordingly.
[JM]: Of course, if you're one of those people that just likes to see everything crumble down instantly, you can just grab that one piece in question that the random person in Nebraska has been thanklessly maintaining and you can just hurl that one out from under it and then the whole thing will topple down.
[DJ]: So, Justin, what does it say about me that when I loaded this up and I saw the comic and I thought interactive, it doesn't make it clear how it's interactive.
[DJ]: It just looks like the comic.
[DJ]: And I was like, oh, I wonder if you can pull the thing out.
[DJ]: The only thing that occurred to me and what I did immediately was yank that poor little block out and watch the whole rest of the thing tumble to the ground.
[DJ]: That has like real big red button energy, right?
[DJ]: Where it's like, if there's a thing where it's like, you probably shouldn't do this.
[DJ]: I'm like, oh, I definitely have to do that at once.
[JM]: And it has some nice replayability where you can reload the page and then go back and say, okay, well, instead of yanking the obvious one and watching it all topple, I'm going to grab this tiny little one that doesn't seem like much of the infrastructure is relying on and see what happens when I move it around.
[JM]: Hmm.
[JM]: It's a fun thing to play around with.
[JM]: I love this because it's just yet another example of the creativity that some people have to apply what feels like a quite realistic physics model to this thing that we've been handing around for years.
[DJ]: Right.
[DJ]: So I remember there being, I think it was a Calvin and Hobbes cartoon where the titular character observes about cows and their udders.
[DJ]: I wonder who was the first person who looked at a cow and thought, I wonder what I'm going to drink whatever comes out of those things when I yank on them.
[DJ]: And this seems similar where, yeah, it's been this popular comic strip of just like a pile of blocks for years.
[DJ]: And I wonder who was the first person who looked at that and went, I'm going to impose a physics model on that.
[DJ]: So if you yank the little block out, the whole thing realistically falls over.
[JM]: I would also love to know who did this.
[JM]: So if you are the genius who came up with this, by all means, please reach out so we can give you the much deserved credit and praise for this really clever and creative idea.
[JM]: Another thing that I love about this is you think you're done, you think it's done.
[JM]: And then like in the background, suddenly I see some piece ever so slowly sliding out and it's continuing to fall minutes later after it seemed like it was stable.
[JM]: So it really does seem like an accurate representation of our modern digital infrastructure.
[JM]: I also love that from here on out, anytime I want to send the comic to someone, I can now just send them the interactive version instead of the static image and not say anything.
[JM]: And then it'll just be a waiting game to see whether they realize that it's interactive or maybe they just think they're looking at a static image because there's no way of knowing.
[DJ]: That's true.
[DJ]: Until you click on it.
[DJ]: I like the idea that now you're going to spread this comic around and instead of people spending on average, I don't know, 800 milliseconds absorbing an image, they're now going to spend possibly hours playing around with the physics model.
[DJ]: So you may single-handedly eliminate all of the productivity gains that we've seen from using AI just by sharing this comic.
[JM]: Perhaps.
[JM]: And if so, I don't think I'm okay with that.
[DJ]: You're like worth it.
[JM]: Totally worth it.
[JM]: All right, moving on to some follow up.
[JM]: Last episode, we talked a little bit about some of the problems that open source maintainers are having when this latest generation of
[JM]: large language model powered bots have been automating the process of submitting issues and code contributions to open source repositories.
[JM]: Some of them seem to be powered by the OpenClaw project we have mentioned.
[JM]: And when we talked about it, it was all very abstract from the perspective of these were reports that we had heard about.
[JM]: But mere hours after recording that episode,
[DJ]: the sanctity of your repositories was undone.
[JM]: Indeed, because someone posted a comment to an issue in the Pelican project that I maintain with the intention of saying that this issue that someone else filed is legitimate and the current behavior is confusing and when this is fixed, it should be fixed in this certain way that it was trying to suggest.
[JM]: And I first noticed this as a notification that appeared in my email inbox.
[JM]: It's really short, two or three sentences.
[JM]: And my first inclination when I read this is this doesn't read to me like something a human wrote.
[JM]: When I tapped on the notification to see it in the context of the issue in a web browser, I saw that the comment had been edited and contained something at the bottom of it that wasn't in the email notification.
[JM]: And the edit said underneath, posted by Adam, an AI agent acting on behalf of... Justin's thinking about whether to put him on blast or not.
[JM]: I will leave out the GitHub username.
[JM]: I feel like I deserve some kind of award for this level of restraint.
[JM]: Your forbearance truly knows no bounds.
[JM]: And this was one of...
[JM]: two comments that were posted in this repository, both of which exhibit the same behavior, both of which were edited after the fact to include this thing at the bottom about it being posted by this AI agent acting on behalf of a human, which I found really odd.
[JM]: And I still don't know why it does things this way, but it couldn't help but wonder
[JM]: whether it was done to avoid some kind of detection or flagging by the system, because in my email inbox, it just looked like something that a human wrote, except for the fact that I could tell that a human didn't write it.
[JM]: If you didn't notice that,
[JM]: it appears to be something that's written by a human.
[JM]: And I wonder whether this type of thing is essentially done to prevent either GitHub or email spam filters, or just to prevent the general detection of it.
[JM]: And I suspect that is what happened for reasons that I'll mention in a moment.
[JM]: In any case, I immediately responded to this message saying, this is a project primarily designed for human users, not unauthorized bots.
[JM]: if "Adam", and I'm doing scare quotes, makes even a single additional interaction again with any repositories I maintain, this account will be blocked.
[JM]: And that probably sounds a little bit more belligerent than I intend it to be.
[JM]: I just wanted to spend as little time responding to this as possible and wanted to be short and to the point and
[JM]: be clear while still giving someone the opportunity, because if there is a human on the other side of this, it didn't feel right to just block them immediately.
[JM]: And if there is indeed a person behind this account, they responded with, sorry, this went a bit out of hand.
[JM]: Won't happen again.
[JM]: Cheers.
[JM]: Which I want to interpret as some human unleashed their OpenClaw bot
[JM]: connected to a GitHub API key and allowed it to do this kind of thing and realized, okay, well, oops, maybe this isn't super useful or helpful or appreciated.
[JM]: And therefore I will stop and
[JM]: cease and desist.
[JM]: That's what I hope, but I don't really know.
[JM]: One other thing I'll mention is that a day or two later, a pull request arrived to the same repository.
[JM]: And when I looked at the contents in my email, my first thought was,
[JM]: honestly was, okay, this feels kind of ridiculous.
[JM]: And then my second thought was, well, actually, maybe it's not.
[JM]: It seems like this actually could be valuable.
[JM]: And so I tap on the link and I get a 404.
[JM]: The PR link reference resulted in a not found error indicating that the pull request doesn't exist.
[JM]: I don't know that I've ever seen that before.
[JM]: Usually pull requests are opened, sometimes merged and closed.
[JM]: I don't know that I've ever seen a PR deleted.
[JM]: So my instant suspicion was I think GitHub just nuked it because the span of time, by the way, between when I received this notification and when I tapped on the link only defined the PR was deleted was about an hour.
[JM]: That's a very short amount of time for a pull request to be conceived, submitted and deleted.
[JM]: Particularly given that I've never seen one, as far as I recall, deleted.
[JM]: So I think GitHub just has some automated way of detecting this behavior and just nuked it.
[JM]: And the account that created the pull request also doesn't exist.
[JM]: The repository from which the pull request was generated still exists.
[JM]: And the somewhat interesting, unrelated, but we're here, so we'll talk about it anyway, aspect to it is the content of the pull request was to add to a documentation checking process,
[JM]: configuration that looks at the documentation and make suggestions.
[JM]: I use a tool called the Vale for this purpose. You can have plugins that do different things.
[JM]: For example, if you were to refer to the "master" branch of a given repository, they will say you might want to replace the word "master" with "main" or "primary" or some other topic, because the word "master" can have other connotations that some people may find objectionable.
[JM]: This pull request adds a No Animal Violence checking mechanism to eliminate a bunch of phrases like, "to kill two birds with one stone."
[DJ]: "There's more than one way to skin a cat."
[JM]: Excellent example.
[DJ]: I'm trying to think of all the aphorisms that I know that express violence towards animals.
[DJ]: You do maintain an application called Pelican.
[DJ]: So I can sort of see the connection.
[DJ]: Like there might be stuff like maybe if we referred to Pelican blogs as pelicans, then there might be language in the documentation about like killing your pelican.
[DJ]: And then you might want to scrub that out.
[JM]: For sure.
[JM]: I think the part that made this particular instance hard was my initial off-the-cuff reaction was like, OK, this feels kind of silly and ridiculous.
[JM]: And then once I read the pull request description in more detail, I thought, oh, well, actually, there might be a point here.
[JM]: Maybe we should eliminate phrases like "shooting fish in a barrel" or "flogging a dead horse", etc, etc.
[JM]: And then I find that this was some automated process where presumably, this bot is looking for repositories that have a Vale configuration file in it.
[JM]: And then when it sees that it automatically submits this pull request to add this configuration to it.
[DJ]: Which seems like it's less about protecting animals and more about reputation farming, right?
[DJ]: Which I think we touched on in a previous episode that we're starting to see that behavior of like, this is a fairly innocent example, maybe.
[DJ]: You can have a malicious actor who manages to get their work committed to a bunch of different places and then uses the fact of their work being frequently committed as reputation to say, well, you should trust me because look, I have all these...
[DJ]: And so you can kind of imagine a repository being like, well, I know how I'll get popular.
[DJ]: I will get a bot to inject my repository into a bunch of other people's code bases.
[DJ]: And if they accept them now, suddenly, look, I'm used all over the place.
[JM]: Yeah, I hadn't thought about that.
[JM]: You're totally right.
[JM]: And at the same time, the part that's unfortunate is maybe this person just wanted to do good and wanted to make an impact and knew that if they submitted this manually one repository at a time, that that would take eons and
[JM]: that by automating this process, they could make the world potentially a better place by getting a lot of people to make this change.
[JM]: And I can hold space for that as a possibility and at the same time think it's just not the way to do it.
[JM]: If that's what it takes to make this change, it should not be made, in my opinion.
[DJ]: I think you're touching on something that we're seeing a lot, and it's some version of frustrating, obnoxious, or horrible, which is people using these tools that allow you to do things at scale to try to accomplish things that don't really scale.
[DJ]: We can see like human relationships, things like developing trust.
[DJ]: You just can't automate that really, unfortunately, or fortunately.
[DJ]: Well, whether it's fortunate or not, it is the case, right?
[DJ]: What I mean is...
[DJ]: One can mean well and say like, well, if everyone had this code in their repositories, the world would be a better place.
[DJ]: So I will just make a robot that injects it into a million repositories.
[DJ]: But it doesn't work that way because those repositories are all run by human beings.
[DJ]: You have to develop a human relationship with someone
[DJ]: to collaborate on a project, and I think that's maybe what's what's been so sort of obnoxious about this, like LLMs coming for open source in general, is that open source has been the result of all this like human care and labor and interrelationships between maintainers and contributors, and now unfortunately
[DJ]: some number of contributors are trying to take the human being out of there.
[DJ]: Another part of it that's obnoxious, and a colleague and I were just talking about this yesterday, one of the problems with large language models being, in a sense, like lowest common denominator generators.
[DJ]: You know, like their output is always kind of the average of all outputs, so to speak, is that we keep seeing cases where what they create is not very good because they are inclined to create things that are not very good.
[DJ]: Or as I think you and I pointed this out on a previous episode again, like.
[DJ]: Unfortunately, large language models tend to entrench bad behaviors because they've been trained on lots and lots of examples of that behavior.
[DJ]: So, for example, the comment posted on the issue in your repository was not useful.
[DJ]: It was essentially like it could have been an upvote, right?
[DJ]: Like what occurred to me when you read it out and you're like, no human would write this.
[DJ]: I thought, yeah, a human would just...
[DJ]: click the reaction icon on the original issue and click thumbs up to indicate that they agree that it's an important issue because, like, that's why that exists.
[DJ]: So it's unfortunate that, you know, this person set their robot loose and it commented on your repository and maybe they regretted that.
[DJ]: It seems like they did.
[DJ]: But...
[DJ]: I think what's even more unfortunate about it is whatever infrastructure they set up to use it and whatever resources are consumed by this thing running, it was for no end.
[DJ]: Like it would have been one thing if this thing made a comment that was substantive, but you disagreed with it.
[DJ]: But it's not even that.
[DJ]: We don't need robots to go into GitHub issues and say, yeah, this is an issue.
[DJ]: Yeah, we know.
[DJ]: Someone opened it.
[DJ]: It's fine.
[DJ]: Those sorts of comments on GitHub issues are sometimes a little annoying when done by humans, too.
[DJ]: And I say this from the perspective of a developer as opposed to a contributor.
[DJ]: You can see it the other way.
[DJ]: But as a developer...
[DJ]: people will often try to claim status to get you to pay attention to them.
[DJ]: So for example, I've seen plenty of customer support tickets where, this is my favorite line, "I'm a software engineer."
[DJ]: And then they go on to describe some bug in your software and how it's trivial and you should have been able to fix it by now.
[DJ]: And they know because after all, they're a software engineer.
[DJ]: I hate that so bad.
[DJ]: Not because that person is necessarily wrong or lying.
[DJ]: They might be right and telling the truth, although they're probably lying.
[DJ]: But because they are so transparently trying to say, hey, my opinion matters more than other people's.
[DJ]: They're trying to use status to do it.
[DJ]: And this feels like that same thing where like this person's robot is writing a comment that's essentially like, you should take me seriously or you should take this issue seriously.
[DJ]: And as a maintainer, that's obnoxious because you're like, yeah, I have like 50 open issues.
[DJ]: I will decide which ones to take seriously.
[DJ]: Thanks.
[JM]: Absolutely.
[JM]: And I had to take time to respond to this, that I could have spent doing something else productive either in that repository or somewhere else.
[JM]: And the idea that a human would, as you said, just tap the little reaction button and give it a thumbs up or a heart or whatever.
[JM]: Honestly, I wish that were true.
[JM]: I wish that the vast majority of human interaction with issues was that way.
[JM]: But the reality is that it usually isn't.
[JM]: And to some degree, that lines up because that's what the models are designed to do.
[JM]: They are designed to look at what we do and imitate it.
[JM]: And so instead of imitating the minority that taps the little thumbs up button, it's imitating the majority that posts banal and unhelpful comments on issues and pull requests.
[DJ]: "This is still happening to me."
[DJ]: Again, as an outsider and not a maintainer, I will admit, I do sometimes find those comment chains a little useful when I run into a problem.
[DJ]: I find an issue on the repository from six years ago that seems to describe the problem.
[DJ]: It is actually helpful to see people posting in the last six months to be like, yeah, this is still an issue.
[DJ]: Because then I know like, oh, okay, this is actually an issue.
[DJ]: And in fairness to open source maintainers, they can't or won't do everything.
[DJ]: So sometimes that sort of information as annoying as it is to accumulate helps me make decisions about, okay, should I keep using this project?
[DJ]: If the fact that this bug has been open for five years might mean it's not ever going to get fixed.
[DJ]: And is that a deal breaker for me?
[DJ]: Maybe it is, maybe not.
[DJ]: So there's some utility there, but I agree that from the maintainer's perspective, it's unfortunate to just keep, especially when you get like notified about comments and you feel
[DJ]: like they take some amount of your attention.
[DJ]: It's not super useful to have the 20th person kind of virtually tap you on the shoulder as you're working at your desk and say, Justin, it's not working.
[DJ]: You're like, I know, complete stranger.
[DJ]: Please leave me alone.
[JM]: Yeah, and if you see a five-year-old unfixed bug, it's an opportunity to ask yourself, hmm, could I fix this bug?
[JM]: Because if so, then you're truly going to make some maintainer's life easier and make the project better.
[JM]: And that's the kind of contribution, particularly when they come from humans, preferably for a number of reasons, that would be appreciated, I think, by a lot of maintainers.
[DJ]: Well, this is one of my ongoing frustrations with the current space of large language model powered software, especially for code, is that when you are already a software developer, like you are capable of vetting the output of these tools, they can be really helpful.
[DJ]: Like, I haven't done a lot of this yet, admittedly, but...
[DJ]: Having code generation tools that are also, by the way, quite good at analyzing code bases makes me more inclined to contribute to open source projects because instead of me having to exhaustively review everything and make sure that like, okay, do I like, do I know how every in and out of this foreign piece of software works well enough to contribute a bug fix?
[DJ]: I can still do that same due diligence process, but I can speed it up quite a lot using some of these tools.
[DJ]: Because again, like if you just unleash one of these coding agents, it will often make bad choices.
[DJ]: Like you should not tell it to just generate some code and then contribute it because it often does a bad job of deciding what to generate.
[DJ]: You need to impose your human capability on top of that.
[DJ]: But I have found they are quite good at going through a code base and explaining it to you.
[DJ]: If you ask the right questions, you consider the output carefully, you vet what you're being told.
[DJ]: I find I can get a lot of value at pointing one of these tools at a piece of code and going like, explain to me what the infrastructure is here.
[DJ]: What's the structure?
[DJ]: How does the data flow through this?
[DJ]: How does this event loop work?
[DJ]: And a lot of the time, that's stuff that I could figure out by slowly reading the code and running it and loading all of that context into my brain.
[DJ]: These tools are actually quite good at that.
[DJ]: So you can use large language models to do software development effectively.
[DJ]: But it still takes a lot of work on your part.
[DJ]: And unfortunately, I feel like a big part of the hype and intent around the way that lots and lots of people are using these tools is they're kind of trying to just shut their brain off and be like, the robot can do it all now.
[DJ]: And that just regularly leads to bad outcomes.
[JM]: One of the things that you have said in the past is that if these tools are doing useful things, we shouldn't be complaining about it.
[JM]: And this idea was ruminating in my mind while I'm fuming about having received these unwanted and unhelpful interactions in these repositories that I maintain.
[JM]: And this idea that I kept coming back to is,
[JM]: As a theoretical concept, sure, if I saw a pull request that had clean, well-documented code and tests and corresponding documentation for end users and everything looked exactly the way I would want it to be, then maybe I don't care whether it's from a human or a machine.
[JM]: But I feel like most of the time, the reason that we're talking about it at all is because it's not that.
[JM]: And if it were, we probably wouldn't be talking about it the way we are right now.
[JM]: And then the next thought I had was, okay, but even if it were just the thing that we want, right?
[JM]: Even if the code were right and there's docs and tests...
[JM]: But if it comes from a piece of software, there's something about it that still doesn't feel quite right.
[JM]: And it's hard for me to put my finger on it.
[JM]: Sometimes it's that the accompanying descriptions are annoying because you can tell that it's not coming from a human a lot of the times, but even setting that aside... I feel like one of the reasons that people engage with the internet in general,
[JM]: and with open source in particular, is to escape their loneliness and interact with other humans.
[JM]: And if I, just speaking personally, am donating my unpaid labor to a open source project, I am doing it for the benefit of other humans and I'm doing it so I can interact with other humans.
[JM]: And I think there is a degree to which I would be less motivated to do it if more and more of the interactions that I'm having with it, even if they are helpful, are coming from a bunch of software bots.
[DJ]: I hear you, but I do also feel the need to push back a little on your characterization of me because I don't think what I said was if these tools are good, we shouldn't complain about them.
[DJ]: I think what I said was we should not necessarily like ban out of hand a contribution because it was generated using an LLM.
[DJ]: We should block things because they're bad versus good, right?
[DJ]: Like a bad contribution from a human is still a contribution that shouldn't go in your repository.
[DJ]: And then I guess I'd argue a good contribution generated using an LLM perhaps should go in your repository.
[DJ]: But your point is well taken that the reason we're talking about this at all is a big problem now is that people are using these generative tools to create lots and lots and lots of bad contributions.
[DJ]: And so that does incline one to say, we got to cut this off at the source.
[DJ]: What came to me when you were describing that is that I agree with you that what I care about is the human's stamp on their work.
[DJ]: Like I want to see evidence of human craft.
[DJ]: And I think it's so unfortunate that these tools are being used to kind of ignore and try to avoid the need for human craft.
[DJ]: Because on the other hand, you said like if it was well documented and had tests and et cetera.
[DJ]: And the thing is, when you use these generative tools effectively, they're very good at adding things like test coverage and documentation that frankly, human beings tend to skip a lot of the time because they're tedious.
[DJ]: And as usual, what computers are good at is doing tedious work because computers don't get bored.
[DJ]: So if a person uses these tools, this is how I strive to use them in my own work, use them in such a way that you are still asserting your own craft, you can end up with a better result.
[DJ]: And that's what I would strive for, and that's what I would like to see.
[DJ]: I do agree with your point that...
[DJ]: And we see this in kind of all aspects of human endeavor in society, I suppose, is like we seem to some degree have this drive to like try to automate stuff, to try to reduce the necessity for human connection.
[DJ]: But at some deep level, there's kind of no other point to existence, I don't think, for human beings than to have some form of human connection, right?
[DJ]: Like as you put it, it's like we want to alleviate our loneliness.
[DJ]: And there's lots of already lots of words written and lots of prior art about how
[DJ]: People are trying to use large language model powered software to do that, and it's not working great.
[DJ]: At least I don't think it is.
[DJ]: So I'm hoping that in time, if the so-called bubble bursts or the hype cycle, the waves recede or what have you, choose your analogy, that doesn't involve harming animals.
[DJ]: that generative tools can take an appropriate place in the sphere of human endeavor.
[DJ]: Because the thing that regularly drives me crazy about the discourse about these things is they're good at some things and they're bad at lots of other things.
[DJ]: And I wish we could all just agree to like, let's figure out how to use these tools for what they're good at and not use them for what they're bad at.
[DJ]: But so many people seem so obsessed with
[DJ]: with this being some kind of total revolution. Like, "No, you have to use so-called 'AI' for everything," and it's like well why, like why actually. I mean I guess it's because you know OpenAI needs to prove their valuation.
[DJ]: Meanwhile, like down in the trenches, to me, it feels very clear that it's like, oh, I'm going to use this tool over here, but I'm not going to use it over there.
[DJ]: I'm going to use it like this, but I'm not going to use it like that.
[DJ]: And I just like, I kind of wish everyone would catch up with that attitude instead of just connecting an OpenClaw bot to a GitHub API key or whatever.
[DJ]: And then just being like, oh, this thing accidentally spent $100 billion.
[DJ]: Oops.
[DJ]: Oh, this thing accidentally wasted a bunch of people's time.
[DJ]: Oops.
[DJ]: Like, come on.
[JM]: There is for me a little bit of schadenfreude, if that's the correct way to pronounce that word.
[JM]: When I see one of these people connect their completely unnecessary shiny new Mac mini that they bought solely to connect to their OpenClaw bot and then give it their LLM API key.
[JM]: And then 48 hours later, the bot has racked up $82,000 in large language model API cost.
[JM]: When I hear stories like that very real one that I just described, I am somewhat ashamed to admit that I derive some amount of joy from reading that news.
[DJ]: And by the way, that it probably also deleted all of that person's email.
[DJ]: So probably.
[DJ]: It's just such a, such a preventable thing, like such an own goal.
[DJ]: It's kind of sad to see or scary or obnoxious or something to see people get like, so like just so excited about these tools.
[DJ]: It's good to be excited and things are exciting, but then it's just like people lose all sense of any kind.
[DJ]: Like, Oh, okay.
[DJ]: I have this thing that's connected to an open AI key and every call it makes is going to cost me some amount of money.
[DJ]: Maybe I should, I don't know, apply some kind of limit or,
[DJ]: to that which you can do, because of course you can for this very reason, and it's like it just doesn't occur to someone to do it, and then it's just like "oh wait this thing spent way too much money". It's like, "Right, well, you essentially gave it unlimited license to spend money. Did you know that?" And I wonder how much of that also comes down to the tooling around this stuff -- it is maybe not very user-friendly.
[DJ]: Even as I was saying what I was just saying, I was realizing like, yeah, Dan, you're a software developer.
[DJ]: You know that API keys have things like limits on them because of how they work.
[DJ]: But unfortunately, I think like with the OpenClaw thing in particular, I think it really appeals to people who don't have a technical background, but it's not really a tool meant for people with no technical background.
[JM]: Having dabbled with OpenClaw, I can say confidently it requires a certain amount of technical expertise to even do anything with it, at least in my experience.
[JM]: And if you get that far and haven't figured out how to set a limit or a budget on your generative software consumption in terms of how much it costs you, I think this is just a level of Darwinism at play.
[JM]: I don't know.
[JM]: It feels a little bit like karma.
[JM]: I don't know.
[JM]: Maybe that's just mean.
[DJ]: All right, fine, fine.
[DJ]: I'm not going to scold you too badly for feeling good about other people's misfortune.
[DJ]: Not this time.
[JM]: I appreciate that.
[DJ]: But I am going to create a Vale library that attempts to prevent you from writing about it.
[JM]: An anti-schadenfreude linter.
[DJ]: Yeah, that's right.
[DJ]: Exactly.
[DJ]: Justin's writing a blog post that's like, can you believe this idiot with their $84,000 Gemini bill?
[DJ]: And it underlines it like, consider expressing compassion for this person's mistakes.
[JM]: All right, moving on to news that just broke yesterday.
[JM]: About an hour before we started recording, Apple has announced its M5 Pro and M5 Max chip-powered MacBook Pro notebooks.
[JM]: And in past years, normally Apple releases its non-Pro and non-Max variants
[JM]: of the MacBook Pro at the same time, understandably, as its Pro and Max variants.
[JM]: But in this particular case with the M5, they broke it into two phases for unknown reasons, but possibly related to supply chain issues.
[JM]: But whatever the cause, we now have the full slate of MacBook Pro options and the new
[JM]: Pro and Max variants of the M5 MacBook Pro includes Apple's N1 wireless networking chip that provides Wi-Fi 7 and Bluetooth 6, a chip that, if I understand correctly, originally debuted in the iPhone 17, 17 Pro and 17 Air.
[JM]: Now, in real world usage, I have no idea if going from Wi-Fi 6 to 7 or whatever came before this version of Bluetooth, if these differences are meaningful in terms of speed, reliability, or some combination thereof.
[JM]: But it does seem like one of the more interesting differences between these and the non-Pro and Max MacBook Pros that came out a few months ago.
[JM]: So I guess the question, Dan, is if you were spending your own money instead of your company's money, would you consider buying one of these new models?
[DJ]: I doubt it.
[DJ]: I have a M2 MacBook Air, which is obviously much less powerful than a MacBook Pro of any kind, let alone one that's three processor generations later.
[DJ]: But for my personal computing, it doesn't matter that much.
[DJ]: I don't really need a powerful laptop.
[DJ]: When I want processing power, I have other computers in my life that I could use.
[DJ]: I feel like recently the only real reason that I had even been thinking about these more powerful systems, especially that have a lot more integrated memory,
[DJ]: like shared GPU CPU is to run, to go back to our inescapable topic, large language models, like local ones, which require large amounts of those resources.
[DJ]: But long story short, I ultimately built a desktop computer that's pretty good for running those sorts of things.
[DJ]: So I don't really feel the need for like a MacBook Pro
[DJ]: So, you know, you mentioned if I was spending my money and not my employers, because I had said to you before the show that I'm chiefly excited about the M5 Pro and Macs coming out because it's probably about time for my day job to upgrade my laptop, which is a MacBook Pro.
[DJ]: I think it's an M2.
[DJ]: Whether they will or not, I don't know.
[DJ]: It doesn't really matter.
[DJ]: But otherwise, no, I don't really feel the need for a different Mac right now, except the M2 MacBook Air, and I think this is unique to this model, has an incredibly obnoxious bug in its firmware or somewhere like that, where...
[DJ]: As the computer goes to sleep, the screen dims, and then a few seconds later, it shuts off.
[DJ]: If you interact with the computer at just the right moment as it goes to sleep, it resets the Mac.
[DJ]: And that sucks so bad.
[DJ]: And it's apparently just a problem with this model of the MacBook Air.
[JM]: That sounds fun.
[DJ]: It's not.
[DJ]: So I don't recommend it.
[DJ]: But it's just funny to say that like, oh, this new exciting hardware came out.
[DJ]: Well, frankly, the only real reason I want to replace this MacBook Air is because that piece of hardware has some obnoxious bug.
[DJ]: It's not like the hardware is not good enough.
[DJ]: It's great.
[DJ]: I mean, in all other ways, like this is a fantastic computer, even with four years after I bought it.
[JM]: Yeah, I hear you.
[JM]: I have an M1 MacBook Pro and I really don't feel any need to upgrade to this most recent model, even though it's been five years and I have no doubt that five years of accumulated processor and other improvements would be noticeable and beneficial.
[JM]: The machine that I have works well enough.
[JM]: I'm quite happy with it.
[JM]: And that's a testament, I suppose, to just how good these machines are is that you can use them for years and years and not feel like the latest models are so different that it feels worthwhile to upgrade.
[JM]: You mentioned the large language model acceleration and the M5 has particularly good capabilities in that respect.
[JM]: And while that's tempting on some level, I'm feeling just a little bearish on the idea of running local models in the near term anyway.
[JM]: I've been experimenting with them for months now, and every time I use them, I'm reminded of their shortcomings relative to...
[JM]: the hosted frontier models that most people use.
[JM]: So it's hard for me to get excited about that aspect of it, at least today.
[JM]: I like the idea of someday being a lot more excited about it.
[JM]: One of the other reasons that I don't think I would consider upgrading is, yikes, are these things expensive when you spec them to...
[JM]: the place where you might want them to be.
[JM]: So for example, if you are thinking, oh, I want to run local large language models, the configuration that I came up with, really the only one that makes any sense is if you max out the memory at 128 gigabytes of unified memory, anything less than that in my experience really just isn't worth doing.
[JM]: So you're looking in this particular case at a
[JM]: 14 inch MacBook Pro with the M5 Max chip, 18 core CPU, 40 core GPU, the 128 gigabytes of unified memory, four terabytes of solid state drive storage.
[JM]: This configuration costs a very healthy 5,700 US dollars, which is a lot of money to spend on any computer
[JM]: Again, it would be really hard for me to justify that expense to replace a machine that works really well for what I want it to do.
[JM]: If you're thinking, "Oh, I want to
[JM]: Run local large language models.
[JM]: Okay, sure.
[JM]: But at least at today's prices, you can use hosted models for probably the rest of your life and not spend almost $6,000 doing it.
[DJ]: Well, unless you connect an unguarded API key to those frontier models, and then you might.
[DJ]: But otherwise, yeah, I think you're right that...
[DJ]: Unfortunately, and you know, this is a whole other topic about computer, local, just local computer hardware in general that like it's all getting so unaffordable as the few ginormous companies devour all hardware that exists.
[DJ]: There's a weird horizon coming maybe where it's just like less and less feasible to have your own computer, which is a scary prospect and I hope doesn't come to pass.
[DJ]: But, you know, I'm sure that's not the narrative that Apple wants to promote by releasing their new machines.
[DJ]: But, you know, their hardware is always more expensive than everyone else's in the first place.
[DJ]: I bought a Framework desktop last year, and that's kind of the machine I intended to play around with LLMs, and so it does have 128 gigs of shared RAM.
[DJ]: It doesn't have the same architecture as a Mac, of course, because that's proprietary to Apple's hardware, but it has a somewhat similar combined chip from AMD, and it costs like half of what you just described.
[DJ]: I mean, it doesn't have four terabytes of storage, and it's not a laptop with a screen, but still...
[DJ]: It was still expensive, but a lot more affordable just to get your hands on the RAM pool.
[JM]: I think the only way that I would consider upgrading to a new MacBook Pro at this point is if something happens to the one that I have where it stopped functioning or stopped functioning well, or there's some very significant improvement such as an OLED display or something else that is just night and day different.
[DJ]: But you have to consider that that OLED display would be showing you the liquid glass user interface of Apple's latest operating system because that's what's going to ship on a new MacBook.
[DJ]: So like, is that really worth it?
[JM]: Well, if I'm being honest, I'm kind of pleased that this new iteration of the M5 MacBook Pro
[JM]: didn't have that kind of improvement because then I would feel tempted.
[JM]: But the fact that it doesn't holds out this carrot of hope that by the time they ship, say, an M6-powered MacBook Pro with some other display or some other feature that entices me to do it, that's not just, okay, it's faster.
[JM]: I'm hoping that at that time it will come with OS 27 or 28 or some other improved non-Tahoe version of MacOS.
[DJ]: Here's hoping.
[DJ]: Did you see, by the way, before this week of Apple announcements, there was, of course, the rumor cycle.
[DJ]: And I saw a rumor which I have seen sort of like the classic, this is the year of Linux on the desktop rumor, which ironically, like I think Linux has actually become fairly usable at this point on the desktop.
[DJ]: But like the someday Apple is going to release a touchscreen Mac rumor definitely came back this week.
[DJ]: And I mean, the week isn't over yet, but I don't, as far as I can tell, these new MacBook Pros do not have a touchscreen.
[DJ]: So what do you think about that?
[JM]: The touchscreen Mac rumor has been going around for a long time, and there's enough references to it that I suspect it is actually a project that Apple is undertaking and may actually ship someday, whether that's this week or this year or whenever.
[JM]: But as to what I think about it, I'm super not interested in using a touchscreen Mac.
[JM]: I can't imagine...
[JM]: I don't know...
[JM]: Maybe I'm just old school.
[JM]: I can't imagine stabbing my oily meat digits...
[DJ]: Please never describe any part of your body that way again.
[DJ]: Okay?
[JM]: I just don't have any interest in doing that to a really nice screen.
[JM]: And I realize to some degree that doesn't make sense because I do that every day on this M4 iPad Pro, which has presumably a nicer screen than the one that I'm now looking at talking to you.
[JM]: But that's a different device and I use it for different things.
[DJ]: You use it for oily meat digit things.
[JM]: Right.
[JM]: And I just accept that it's going to be slimed with fingerprints and smudges all the time in a way in which I just could not tolerate when I'm trying to do productive things in front of a Mac.
[JM]: So no, no interest in a touchscreen Mac.
[JM]: And if they put a touchscreen in some machine that I buy, despite the fact that I can touch it instead of because I can touch it, then I can assure you I will not touch it.
[DJ]: Yeah, fair enough.
[DJ]: Looking at the Mac in front of me right now, which has a relatively small screen with relatively many user interface elements on it, I don't understand how I could interact with it with my finger, with my oily meat digit, if you will, which is a lot less precise than a mouse cursor.
[DJ]: Just looking at the red, yellow, green icons that you use to control the state of a window, I don't see how I could reach out and touch that and interact with it accurately.
[DJ]: So I can imagine probably the hardest part of putting a touchscreen in the Mac is figuring out how to make the user interface work, because you probably can't really turn the Mac's user interface into the iPad's user interface on the fly.
[DJ]: But you might have to do something like that, because if you just turned MacOS into a touchscreen interface, it would have much larger user interface targets.
[DJ]: That would be a pretty bad experience for the, I presume, majority of the time that people aren't touching their MacBook screen.
[DJ]: But if you don't do that, it's going to be really hard to interact with a window on your Mac.
[DJ]: So could they come up with some mode where as soon as the screen senses a touch, which it could do, right?
[DJ]: It could change the elements underneath, but then that's going to be confusing because you're reaching for something and it changes shape to become more...
[DJ]: touchable, essentially.
[DJ]: I suspect this is the biggest blocker, is the actual user experience of having a touchscreen computer.
[DJ]: I don't know.
[DJ]: It doesn't really appeal to me either.
[DJ]: And again, maybe it's just the if you had it, you'd love it, but you just don't get it.
[DJ]: I don't sit in front of my computer wishing if only I could touch the screen.
[DJ]: And part of that is because actually...
[DJ]: The trackpads on Macs are so good.
[DJ]: Like they are so high fidelity and they have all these gestures and different things built into them that I don't really, I'm not sure what else I would get out of being able to touch the screen directly versus all the ways I can interact with it now.
[DJ]: So it's one of these weird rumors where it's like, it kind of seems like there's this pressure to like do stuff or change things because you can, not because it's good or because it's better.
[DJ]: So I kind of hope that there is never a touchscreen MacBook.
[DJ]: And part of that is maybe a little bit like feeling like broadly the touchscreen thing that was introduced by the iPhone and iPad and their operating system iOS has had a bad influence on the Mac
[DJ]: and MacOS over the years.
[DJ]: I kind of want Apple to enshrine this notion of touch-based interface less on the Mac.
[DJ]: Stop trying to turn every device into an iPhone and just acknowledge that you've already got the iPhone and the iPad and they're great for the most part.
[DJ]: Please, please, for the love of God, just let my computer continue to be a computer that I operate with a keyboard and a pointing device.
[DJ]: And maybe that makes me an old man or something like that, but like too bad, right?
[DJ]: Like you and I both grew up using much less sophisticated computers than these with much less sophisticated keyboards and pointing devices.
[DJ]: And like, that's a computer to me.
[DJ]: I want a computer to keep being that.
[DJ]: So down with the touchscreen!
[DJ]: That's what I say.
[DJ]: I don't know.
[DJ]: I just, it's so funny to see that rumor keep coming up.
[DJ]: And every time I think like, please, no, I'm the opposite of excited about it.
[JM]: You're right that Apple would have to make changes to the Mac user interface to better support touchscreen behaviors.
[JM]: And you're also right that Apple has this tendency to bring things over from the iPhone and iPads over to the Mac side in a way that usually makes the Mac experience worse.
[JM]: And I suspect that...
[JM]: some of the changes made in Tahoe could possibly have been made in order to make a touchscreen experience more feasible on MacOS.
[JM]: So you have these larger rounded corners, you have larger, or at least changed touch and drag targets in certain places.
[JM]: You have these icons that now must be the same shape, and that shape is enforced, kind of resembling the edge of a
[JM]: in terms of what you're tapping on.
[JM]: So there's all these indications that perhaps this is the direction they're going.
[JM]: But like you, I am not excited about it.
[JM]: But speaking of displays that I wouldn't want to smear with my oily meat digits,
[JM]: Apple has announced new Studio Displays.
[JM]: The first one is an upgrade to the display that I'm looking at right now, which is the 27 inch 5K Studio Display.
[JM]: And it gets some modest updates, including a better camera, which is
[JM]: in some ways not modest, because the camera included in this monitor that I'm looking at is infamously bad.
[JM]: And I'm sorry that you have to look at it every single time we record these.
[JM]: So, but blame Apple.
[DJ]: I didn't want to say anything, but, you know, I trust that you will spend thousands of dollars now to alleviate this problem.
[JM]: Your trust is misplaced.
[JM]: So other improvements are to the microphone and the speakers, as well as adding Thunderbolt 5.
[JM]: So those are all welcome improvements.
[JM]: I'm glad that they're updating this product.
[JM]: I'm glad that they fixed the extremely lackluster quality in the camera and that they're making small iterative improvements.
[JM]: That's what they should do.
[JM]: So really no complaints.
[JM]: I'm not, as you suggested, going to rush out and replace this one because just like with the other devices we've talked about, the changes just aren't worthwhile enough to do it.
[DJ]: No, it seems like they haven't changed the display, like the panel or the backlight or anything like that.
[DJ]: But that's fine because those things were good, I think.
[DJ]: I think they were very good.
[DJ]: So I guess, and I don't own a Studio Display, although I've thought about it at various times.
[DJ]: And so, yeah, I'm also happy to see that they're actually updating the product because it suggests that if you want to go out and buy a Studio Display now in 2026, you're getting something new that's going to receive like years of support and things like that.
[DJ]: You're not buying what is essentially an abandoned product line.
[DJ]: So that's good.
[JM]: For sure, and if you want a nicer screen, then Apple's second offering is what you're looking for.
[JM]: The Studio Display XDR has the same 5K resolution at 27 inches as the non-XDR Studio Display.
[JM]: Now the XDR display that Apple released previously was a 6K display and 32 inches.
[JM]: So if you appreciated that extra resolution and size, this will be a downgrade in that respect.
[DJ]: Yeah, but that display also cost, I think like six times what the Studio Display cost.
[DJ]: It was not really a consumer product.
[JM]: That's true.
[JM]: It was very expensive and maybe still is expensive.
[JM]: I don't know that it's clear that this necessarily replaces the other one.
[JM]: It's, it's not clear whether this is a replacement or something to be offered in addition to, but in any case, this Studio Display XDR comes with HDR or high dynamic range.
[JM]: It has a mini LED backlight with over 2000 local dimming zones, 1000 nits of SDR brightness and 2000 nits of peak HDR brightness, which just essentially translates into a much nicer, brighter screen.
[JM]: But I think the killer feature, the one that I know that I have wanted...
[JM]: ...and the thing that is going to entice people perhaps to get this over the non-XDR Studio Display is the 120-Hertz refresh rate, which is twice the 60-Hertz refresh rate on the previous version that I'm using right now.
[JM]: But man, is it going to cost you, because this is 3,300 US dollars, which is more than twice the $1,600 non-XDR monitor.
[JM]: I think it's really cool that they finally made the 120-Hertz monitor that I wanted, that lots of people I know have wanted.
[JM]: I don't know that I'm gonna rush out and get this just because it's a nice thing that I would love.
[JM]: If I were in the market for a display like this now, if I just had like a normal 4K monitor like most people probably use and I was looking to upgrade, like, yeah, I would probably just do it anyway, even though it's a lot of money.
[JM]: But to upgrade...
[JM]: No, I don't think that's in the cards for right now.
[DJ]: Yeah, I want to be more excited about this than I am almost.
[DJ]: But I have an HP Z27 from maybe four years ago.
[DJ]: And it's a 27-inch 4K monitor.
[DJ]: And it doesn't have a built-in camera.
[DJ]: It has super thin bezels, which I really like.
[DJ]: And it has a bunch of connectivity, like HDMI and Ethernet and USB-A and USB-C. And the downside to the Studio Display, like a lot of Apple stuff...
[DJ]: is it's a lot more like just plug this one cable into your one Mac and everything's good, right?
[DJ]: And I don't know if that suits me.
[DJ]: At various different times it has or has not.
[DJ]: When I bought the monitor specifically, I think my work computer was actually a Windows machine, God forbid.
[DJ]: So like a Studio Display really was not going to cut it for me.
[DJ]: I needed something that would work with both my MacBook and this, and it was a ThinkPad.
[DJ]: Now I have a MacBook at work and a MacBook at home.
[DJ]: I could probably swing a Studio Display, but like the XDR, if you translate that retail price into Canadian dollars and add sales tax, that's five grand for a monitor.
[DJ]: And I think the Z27 costs 700,
[DJ]: like almost a tenth, and it's really good, so I don't think I'm in the market for one of these things even though I'd like them. Again it's like if my monitor broke and I needed a new monitor, I might consider the base Studio Display, which again in Canada is like two grand. There's a terrible but hard-to-resist little part of me that would be like, "But what if you bought the XDR, Dan?" It speaks like that -- it's really creepy. I don't know why.
[DJ]: But like, that's an awful lot of money to invest in a computer monitor.
[DJ]: But I think overall, yeah, I am glad that they're making these.
[DJ]: I'm glad that Apple is not like, we don't need to make monitors anymore.
[DJ]: I'm glad they still make good monitors.
[JM]: It is a lot of money for a monitor, for sure.
[JM]: But if I'm being honest with myself, if this monitor that I'm using today, if it broke tomorrow, I would probably rush out to get the XDR version of this monitor just for the 120-hertz refresh rate. Just the smoothness of the scrolling: I don't think I could resist it.
[DJ]: You're gonna wake up in the middle of the night and find that you've been sleepwalking, and you'll be like in your office holding a baseball bat, just standing in front of your current monitor, and you'll come back to yourself and just be like, "Well, what am I doing?"
[JM]: "What have I done?"
[DJ]: Well, hopefully it's not at the what-have-you-done part.
[DJ]: Your monitor is in pieces on the floor and you're just like, where am I?
[DJ]: What happened?
[DJ]: You wake up in the morning and your partner's like, Justin, what happened to your monitor?
[DJ]: And you're like, I think someone broke in last night.
[DJ]: Aw, shucks.
[JM]: Guess I gotta go buy a new one.
[JM]: That's right.
[DJ]: Justin, where are you?
[DJ]: I just glanced in your office and your monitor's shattered on the ground.
[DJ]: You're like, huh?
[DJ]: Oh, I'm at the Apple store right now.
[DJ]: Sorry, I'll be right back.
[JM]: All right, everyone, that's all for this episode.
[JM]: Thanks a lot for listening.
[JM]: You can find me on the web at justinmayer.com and you can find Dan on the web at danj.ca.
[JM]: Reach out with your thoughts about this episode via the Fediverse at justin.ramble.space.