¶ Project Hail Mary & Homework Trauma
I would like to tell you that I'm upset at the two of you, and the reason I'm upset at the two of you is because I am finally getting around to reading Project Hail Mary and I can't put it down, it's so freaking good. No spoilers, please, anyone, but did you see the movie?
No, so th this was the impetus was that Erin decided that she would like to read the book before we watched the movie and then I was like, No, she's probably got the right answer there. So I started to read the book a little bit behind her and she's a much faster reader than I are than I am. Uh, so I am reading it. I'm a little bit less than halfway through, I'd say, and it is this book
is a sniper attack complimentary on my wife because it is all like biology and science. I'm not gonna get any more specific than that, but she is Freaking riveted. I am also riveted. And so I'm a little upset at you two that I'm having to spend my time with some of my best friends instead of reading my book. I'm sorry. I I will say I I did see the movie and without spoiling anything, I thought it was excellent. I really That is generally what I've heard. Yeah. All right.
That's wild, but it happened. Oh that is true. Wow. And I did not. Wow what a slight. The last movie I saw in the theater was F one, to give you an idea of how little I got on theater these days. Oh wow. I'm I'm really slacking, man. I I have problems over at my household. Goodness. Well, that's all right. Uh the other pre-show I wanted to do is I asked John.
to do a little bit of homework. And in Marco's defense, I did not explicitly say to Marco one way or the other whether or not he was expected to do the same homework. And so he didn't, which is fine. But Mar
¶ Homework Culture & Personal Damage
I can barely do the homework that I is assigned to me, let alone homework that is not. By the way, before before we before Ellie continue, sorry.
John and Merlin on the last episode of Reconcilable Differences did a i in the in the member exclusive bonus content did a a um an incredible segment on homework. And the and I can like I found it incredibly therapeutic, uh, and and incredibly good because homework when I was going through school was just the the largest source of profound emotional damage that that I like Most of what I talk about in therapy today is related to that. And so to hear this discussion of homework and and how
kind of, you know, th the downsides of the of our homework culture and and how ineffective it can be and how damaging it can be, uh I found quite therapeutic and quite interesting. So thank you, John and Merlin, uh remotely, from uh from talking about for talking about that so well. And uh may may I join whatever efforts possible to abolish homework.
Yeah. Well I mean you're going through it with uh your kid, so like you see you can see how it has changed and how it has not changed since your experience. Yeah, it's not actually it's not as bad as it was like when we were in school. Like it's it there's less of it now and and you know, my my biggest problem was always that like as soon as I was not in school, I would just never think about it.
And or I it would you know, things would be assigned to me in class by the teacher just like saying something once or writing something in the corner of the board. And as soon as I'm out of that classroom, it's gone. And so if I didn't see it or write it down, I would never know about it.
you know, now they can just log into their Chromebooks and log into their whatever classroom and see all the assignments that that they need to do. So there is no such thing as like, I don't know what I have to do for homework tonight. Uh I d do you find that to be the case?'Cause I heard that from my kids a lot, even though yes, you're right, they could have just logged on and checked, but Excuse didn't go away, it just got less plausible.
It isn't it isn't a perfect system, but and and there is certainly some feigned surprise. Uh but it is way better now than it was when we were in school. Like it's way more forgiving. And now most of like most of my kids' teachers now, not all, but most of them will accept late made up homework before the end of the quarter.
uh which that was not a th like when you know, when I was in school, if you if you didn't have it when it was due, zero. That's it. Just a zero. And and and you know, like John was saying in that episode, like no matter how well I did on the on the tests or anything the homework homework was like half of my grade. So I would I would like get hundred percent on all the tests and get zero percent on all the homework. So I get C.
It was it was rough. Anyway, thanks John. So sorry, Casey, go on with your homework assignment.
¶ Goose Covers Billy Joel
Not at all, not at all. No, you I I I plus one everything you just said. Uh homework stank. It still stinks, and I wish we didn't have it. Uh so I asked John to do a little bit of homework, which Uh again, my memory's garbage. And I guess maybe I had sent you this homework as like a not as homework, but as a hey, check this out, ha ha.
Or maybe somebody else did, I don't know. But one way or another I sent you an audio file that I wanted you to listen to and perhaps you could describe for us not only what it is, John, uh but also what you thought of it, which is really what I was after.
Yeah, I couldn't find I'm pretty sure I saw it on Mastodon or something, but somebody did uh link me to the video thing, and uh the video thing is the only thing that would have given me the information about who's actually performing it. It's goose, right? It is, yes. Okay. Okay, so it's Goose doing a Billy Joel cover. And I can see why you sent it to me because I'm a big Billy Joel fan and I'm not a big Goose fan.
¶ Cover Song Philosophy
Uh it uh covers are tricky, uh, because there's two ways you can go with the cover. One is Uh, and a lot of bands do this, you wanna play it so that the people who like the original song will also like your cover. Um, and the other way is the way you're familiar with from video game trailers, if you're youngster, which is, oh, now I'm gonna do a different version of that song. So there's the uh
the sad, somber, slowed down version of a pop song, or in going the other direction, you can do like the dance remix version of a song that wasn't originally like an electronic dance song, but now the the the your cover of it is. So I feel like those are the two ways you can go. And The middle ground between them, where it doesn't sound like the original, but also is not a fresh take on on the song, is rough. I kinda feel like Goose was in that middle ground there. That's fair. Yes.
Because like they certainly weren't playing it like Billy Joel blazed it. Like to down to them not even doing the vocal harmonies on like the the pre chorus or whatever. Like that's a big part of the song and you have a million people on stage, right? Just have somebody do the harmonies. But they didn't do it. Um, and obviously the arrangement, instrumentation, everything was all, you know, different than it is in the original. But also it was not like
Here is like a, you know, genre transfer or like a really different version of it where like different instrumentation entirely like, you know, the because it was the same instruments like keyboard, guitar, drums, bass, like all that stuff. It was like it's not that far from the Billy Joel original. But it sounded far from it. And
I feel like and first of all I I I didn't realize this when I was watching the YouTube video'cause it's just you're just watching on your phone or whatever, but when you sent me the audio link it showed the uh the duration. I was like, this is not a nine minute and thirty second song. Like
It's just all right. Well, you know, jam band. So there's obviously parts of the song where they do the jamband thing where they go off and start noodling on their instruments for a while. And honestly, those sounded the most like it was like, ah, finally the band can just be who they are. But then they're like, oh yeah, we were doing a cover. And then they go back to it, it's like, uh
So uh not not uh not my favorite cover. Uh I think they should have either done it more like Billy Joel or less like Billy Joel, and the only time that I found it. The only time I found it not off putting was in the middle parts where they just like extended the bridge out to this big noodly jam band segment because then I could forget they were trying to do a bleed gel cover and just out here's here's goose doing goose things. Ha ha ha.
Yeah, I feel like John, I feel like I would not expect you to appreciate any cover of a song that you like made by a different band. Like that doesn't seem like your style. Not true at all. I've got some I got some covers that I love of songs that I love. Not true. I'm surprised to hear that. Cover of bad, incredibly different than the original. Love it. I think I listened to it more than the original now. Um what is it? Bad, the Michael Jackson song?
Uh so is it more so like the y you know, when when goose or fish cover other songs, which is somewhat frequent, um They I wouldn't say they're necessarily changing the arrangement of the song. Whereas like if you like if you if a band covers a song, but like dramatically slows it down or changes certain rhythms or you know, th like there's things that c would qualify as like a a different arrangement.
You can just do it different playing different notes on the instruments. Like I don't I don't know what the word arrangement means tech from a technical music perspective, but like, for example, the uh the like
guitar and keyboard parts in that goose cover are not the same. They're not playing the same notes as the guitar and keyboard cards in the in the original. Because I have the original like in my DNA and I know like, oh, they should be playing these notes here. And they're not. They're playing a piano or they're playing a keyboard or they're playing a guitar, but different notes.
Yeah, I mean I I didn't expect you to be overjoyed by this. To be honest, uh your reaction seems kind of tepid and I consider that a personal victory, but uh I d I don't see this on YouTube. If I sent it if I sent you a video, I am unclear how or where I sent that in What I've done is for the listeners, I've put a link to uh kind of the sat list repository where this is mentioned. This was actually the eighth of May that this was performed.
And also uh not to be that guy that's saying, look at my band camp, but look at Goose's bandcamp, where I think you can at least listen to a preview of it, if not the whole song, without actually purchasing it. Uh and so we'll put that link in the show notes.
¶ The Best Cover Songs
I thought it was a good cover. I don't really disagree with anything you said though. I think covers, generally speaking, are best when they're f relatively by the book, but well, I shouldn't say they're best then. They're most palatable when they're by the book, like you were saying, but I think they're the best when they are a complete left turn from what you're used to, as you were saying earlier. Uh I think the canonical example for me, because I'm me.
is All Along the Watchtower, which was a Dylan song, I believe, and then Hendrix famously covered it, which is almost nothing like the Dylan version. And then Dave Matthews band covered it many, many, many times, which is nothing like the Hendrix version. So um yeah. I'm sure they better the Hendrix version. Well, I I wouldn't say bettered, it it is a very different take on it. Jimi Hendrix, Dave Matthews, they're right up there, right? Oh right. Pierre.
I thought we I thought we were not at an impasse, that's negative. I thought we were at an understanding, and here you are trying to ruin it. I don't dislike Dave Matthews, but I'm not gonna let you say Jimi Hendrix along the watchtower and also Dave Matthews. I'm like, no. No, my point was just that they're all very the the point I'm trying to bring up is not the the relative qualities, but just that they're each very different than the other. That's all. Anyways, I appreciate you indulging me.
Yeah, one more cover. That's one I was trying to remember. I just looked it up. It's uh DHT. I have no idea who this banana uh band is. It's D period, H period, T period, did a cover of Listen to Your Heart from Roxette. Uh I like the original Rock Sat song, which is just a garbagey pop song from my childhood. Extremely popular but garbagey pops up.
And the uh the DHT cover is a slowed down moody one, uh that hasn't been used in a video game trailer. So it's another cover that I like. I have many covers that I like. They have to be they have to be really good though.
¶ CapEx vs. OpEx Software Development
All right, let's do some follow-up. Let's talk about CapEx versus OpEx as capital expenditure versus op uh what operative. No, I plan. Thank you. Operating. Um so Andrew Leahy writes regarding reasons for software development being CapEx or OpEx,
You're mostly right that the lawyers in the building were deciding whether what you were doing qualified as one or the other. But the lawyers were themselves reacting to Section 174 changes. Here's some more info if you aren't already asleep. And then Andrew linked to Bloomberg, which we will put in the show notes. Uh from September 26th of 2023, uh in in there, Bloomberg writes, the IRS's September notice 2023, hyphen 63.
Clarifies the definition of software development for purposes of current year expensing, encompassing nearly every aspect of the software development process. In doing so, it's requiring most related expenses be amortized. I did almost fall asleep there. Yeah. The the reason I put this in here is because I I said it over my career that it has changed and I do remember around this time.
There was a big change where it was like there was always like debate over who's doing it, and maybe companies would change their mind over when this thing happened, uh, whatever this section one seventy four change was.
It was like company wide, like there's, you know, there's a big new decision and we're doing a hard right turn and pretty much everything is going to be uh a capital expense for software development. And I'm not sure if it changed again after that, but yeah, the landscape has changed several times. causing uh confusion as and delay, as they say.
¶ Hot Lot Chip Prioritization
All right, with regard to hot lots, uh with Apple in the A eighteen pros from TSMC, uh we got a couple of pieces of feedback. The first from Anonymous who writes, In regular chip manufacturing, a wafer goes through several dozen manufacturing steps inside a fab. Different customers' wafers and the processing steps are carefully sequenced and scheduled to keep production line at close to 100% utilization.
A hot lot is kind of like the FastPass in Disneyland. You pay extra and the wafer and the wafers or individual chips get priority at each manufacturing step. It can give you wafers and chips two to three times faster. Matt Jones writes a hot lot, which demands a stiff pre a stiff price premium for its reduced cycle time. TSMC specifically offers two classes of expedited surface, hot lot and super hot lot.
With the latter being even more expensive and faster. The premium and improvement in cycle time vary by the tightness of the line and the queue demand, including who's in line since cutting the line can push back other lots. I heard they renamed the super hot lot. It used to be Performance Hot Lot. Wow. That took me a second, but well done, John. Well done.
Yeah, so hot lot, it's a term of art. There you go. Um, and it's basically pay money to cut the line. Uh and uh I guess annoy everyone else whose stuff is getting delayed, but you know, money can solve a lot of problems, I guess.
¶ iPhone Ultra Anniversary Rumors
All right. With regard to ultring and neoing all the things, Jan Ojanimi writes, maybe iPhone Ultra is the 20th anniversary of iPhone? Question mark? Yeah, we didn't talk about that uh as you know, I did mention that iPhone Ultra had been rumored as a name for a
phone that is more expensive than the current top of the line phones before the folding phone rumors had started. It was just like Apple's gonna Apple's gonna make a new phone, it's gonna be more expensive than a Pro Max and it's maybe it's gonna be bigger and blah blah blah. That was that was the I think the original iPhone Ultra rumor. Um as we are approaching the rumored twentieth anniversary phone with the
waterfall edge screen that goes off curves on all four sides and, you know, all screen and everything is underneath the screen. There's either a tiny hole punch or no hole punch at all. Like anyway, the the rumors of that device continue to swirl. We've talked about it in past shows. The question is, assuming they don't call the folding phone the iPhone Ultra, would they use that name for the twentieth anniversary? As opposed to I guess iPhone XX.
Whatever that phone is, is that an ongoing product line or is it kind of a one-off special thing? It sounds kind of like something it's it it's it almost sounds sounds like a concept car. Like it it sounds like a product that Apple would be really excited about much more than the public would. See also the iPhone Air. I feel like the iPhone ten though, you could say the same thing about until they released it and everyone said, Oh yeah, this is better.
But the the iPhone ten was like, okay, this is obviously the the form factor that all iPhones will be. They just needed a few transition years. I don't think it was obvious. I don't think it was obvious to Apple at all. I think they were gonna try to think. They called it the iPhone ten, they hedged their bets, they released it, and they were hoping it would be the future of all iPhones, but what if the public had rejected it?
I mean look they they can always change their minds, but I disagree that that was ever their plan. I I I think they they knew this would like all iPhones will be this, but we can't or shouldn't make them all this yet, so they had like a transition period of a few years. Whereas What we're hearing about the twentieth anniversary iPhone being this like, you know, all screen curved around the edges kind of thing like
Honestly, I I'm not super excited about that. I think from an ergonomic perspective, it sounds awful and it I think it ignores the reality that almost everyone uses cases on their phone. Uh and there's a reason why all the Android manufacturers tried that years ago and currently mostly don't do that.
I think you're uh you're you're thinking of the curve as more like the old Android phones. The latest rumors of the curve is that it's like barely curve like a like a one or two millimeter little thing. Like it's not actually like so you can view it from the side, it's just like it goes over the top and then curves a tiny little bit. Yeah, I I get that. Yeah, that's that's the latest rumors, right? And the other thing about it is
¶ iPhone Screen Evolution & Ergonomics
I I've always said since the day zero of the iPhone that the obvious evolution of this product is to have the screen cover the entire thing. And then they made the phone with a notch, and I said
Yeah, they have a notch'cause they have to, but if as soon as they can get rid of the notch they will. And they didn't get rid of it, they turned into dynamic island but it got smaller, and the dynamic island keeps getting smaller. And I still say if the as soon as they can get rid of that dynamic island, they will.
But they can't yet. Even for the twentieth anniversary for it, I think they can't. But I still believe that the natural evolution of the iPhone is to continue having the screen go edge to edge, top to bottom, unbroken.
No notches, no dynamic islands, no whole punch cameras. And maybe they won't get there by the twentieth anniversary from, but when I hear them talk about it, I'm like, oh well, they're gonna put even more screen on it. And I agree with you that the curving around the edge is the sort of wild card because even with the rumors of it being
barely curved around the edge, it's like, okay, but then doesn't that still make it kind of, you know, slightly more difficult to deal with cases, maybe slightly more breakable? What is the advantage of those extra one or two millimeters around the edge?
you know, having a zero bezel, uh, as opposed to having a not only is there no bezel, but the screen continues for a millimeter down the side, I'd not sure if there's an advantage. But I do think, just like the iPhone ten, It the the iPhone the twentieth anniversary phone, the iPhone XX or whatever, or twenty, is effectively uh we can make this phone now for a premium price.
We would like all future phones to be like this, but if the public rejects it, we'll change our plans. Because we know how to make the other kind of phone too.
¶ The iPhone Ultra Naming Dilemma
Yeah, and I I think like for them you know, going back to the original question, like if the If they're going to use a name like iPhone Ultra, I would expect them to use that name for a product that Apple expected the line to continue indefinitely into the future. I don't know that we can necessarily say that about this this twentieth anniversary product that that is rumored. Like it'cause it it still sounds kind of like an experiment or a one off.
Uh and you know so again, like I I I just don't see them s using the term ultra because then, you know, that term suppose this product doesn't succeed and it's named Ultra, then they're they either can never use that name again which is a waste of a of a pretty good kind of generic name, or they would just call something else
you know, iPhone Ultra in the future, that would be totally unrelated and that would be kind of a weird marketing thing to deal with as well. I just don't see that happening. I I I see this just this sounds like a product that First of all, may not even launch, honestly. Um it it still sounds kind of concept carry and uh it doesn't sound like the rumors are super firm around it yet. Uh but I think if they launch it, I think it's a one off.
I think a twentieth anniversary phone. There will be a twentieth anniversary phone, and I think they're gonna make this the the questions about this one have been Can they actually get it to be all screen? And that basically the answer in the past several months has been it looks like there's going to be a whole punch because they just can't get the camera under the screen because the quality's too crappy. But oh well, like I think.
I think they will ship something, even if it has a whole punch camera in it, even if it has even has a tiny dynamic island, uh, just to get it out the door. And I think they won't the reason I think they won't use the ultra name is because I think
Their hope is that the top of the line phones won't look like this. Now, the wild card here is what I said before, which is like, but if the idea is that Apple wants to add a new uh ultra tier to all of its product lines for even more expensive products, If they put this one in the ultra tier, that would mean that like the year after there'd be another ultra, another ultra. And it's like, okay, well then does that delay the trickle down? Like anything that's in an ultra
Uh well, it's hard to say, but like I feel like the features you put in an ultra, you can't keep them there forever. Like the the MacBook Ultra, assuming again, assuming that's true. Are you gonna keep the the OLED in the ultra line forever? Twenty years from now, is the MacBook Air not gonna have an OLED? Because sorry, that's ultra exclusive.
I don't think that's tenable. So you know, I just feel like Ultra is a placeholder for the more expensive top-of-the-line one. The features do have to trickle down. And in the case of the iPhone Ultra with the little screen edge thing, assuming people don't hate that, which is an open question.
Um, I just feel like that will the that will eventually trickle down to the Pro and Pro Max and eventually trickle down to the no suffix iPhone someday because if it's a successful feature like Face ID, eventually it goes down the line. But It's all this is all an open question. Like this is uh I think about last episode. My main concern about Ultra or my main question about it is, is this an opportunity to add a new high-end segment in product lines that didn't previously have one? Or
Is this a name they just tack on for marketing reasons for one generation and then just never mind and, you know, continue on? And Uh and I'm trying to think of what they would call a twenty anniversary phone or they don't call it Ultra. They could call it XX. I don't know how they pronounce it, iPhone twenty. I think that would be fine. Um they could co could they call it iPhone twenty? Yeah, they skipped numbers before. Why not? Properly be nineteen, right? What if they call it iPhone nine?
Yeah. What? Because there never was one. because I never made one. Oh right. It teleported from the future when they made the iPhone eight and the iPhone capital letter X for Roman numeral ten.
¶ Studio Naming vs. Ultra for Apple
All right, uh Karan J writes, What about Studio? Given that the Mac Studio and Studio Display are now the top of their respective lines, and the new OLED Macs could be the MacBook Studio, iMac Studio, etc. See also Creator Studio. Yeah, Studio is in the mix as a name suffix, but the rumors aren't about Studio. The rumors are all about Ultra. Uh and the the watch is not called the Apple Watch Studio. I I you know, I d I don't know. I f I do feel like Studio
is not as good a high-end name, despite the fact that as he says that like their most expensive monitor is called Studio. Their previous most expensive monitor was Pro Display XDR. XDR seems to be the ultra of the monitor world. The Mac Studio is the current top-end Mac. They're not gonna make a Mac Ultra. I don't know. Uh I just I just don't feel like studio Studio seems to me to not be as high-end as Ultra. Yeah, I agree.
¶ iMac Neo and Studio Display
And then Zoran Neshik writes, uh, regarding an iMac Neo, if you swap out the M series for an A series SOC, isn't that just the studio display? And Kar and Karan actually also from earlier adds uh a studio display would be an easy iMac Neo with a smaller, cheaper display panel, of course. That's the problem. The studio display is so much more expensive than an a regular iMac, let alone an iMac Neo. So yeah, it does already have an A-class SOC and it costs like what?
Three times as much as a regular iMac, so really kind of hard to neo that particular one. And by the way, the uh the A-series SOC it has in it just like how much I forget how much RAM it has. We looked it up, but like uh it it it's it's on the ragged edge of what you would want in a Mac. So it'll be it would be wild to have an A series SOC and like a You know, it's super expensive uh machined aluminum case from the studio display, uh even the ra regular studio display.
Um yeah, it's that shows how tricky it is. Like it does have an A series SOC, but the screen and the case and the stand dominate the price and make it uh more expensive than an iMac.
¶ Sponsor: Squarespace
We are sponsored this episode by Squarespace, the on-one website platform designed to help you stand out and succeed online. Whether you're just starting out or scaling your business.
Squarespace gives you everything you need to claim your domain, showcase your offerings with a professional website, grow your brand, and get paid all in one place. So no matter what your business needs, whether it's selling physical goods, selling digital goods, maybe like an ebook or a PDF or a guide, or selling things like subscriptions, membership areas, paid newsletters, paid podcasts, or maybe you're a consultant and you sell time slots.
or appointments or things like that. You can have all of that and so much more with Squarespace. And it's so easy. You don't have to be a nerd and you don't have to really spend a lot of time, honestly.
running your website, you can just do it. So if you aren't a nerd or if somebody comes to you who isn't a nerd and wants you to make a website for them, you can just send them to Squarespace. And then they don't have to go through you. You don't have to gatekeep it. They can be empowered. It's an amazing system.
So they support everything that your business might need, from things like analytics and email campaigns all the way up to getting paid, having all the most advanced checkout options, payment methods, et cetera, all supported. If you have physical goods, they have things like sales tax integration and shipping integrations and things like that.
It's amazing. You can start with the domain there with Squarespace domain. So really from start to finish they have you covered. The design is super easy to use. Everything is visual. They have AI integrated where it helps, but it's still your voice at the end of the day. It's a great platform for anybody to make a great business website. Now, you can see for yourself by doing their free trial. Go to Squarespace.com slash ATP.
and you can start a free trial there and build the entire site before you give them a credit card at all. See how well it works for you. When you're ready to launch, use offer code ATP to save ten percent off your first purchase of a website or domain. So once again,
Squarespace.com slash ATP for that free trial. Go back there with Squarespace.com slash ATP and use code ATP when you're ready to purchase to save ten percent off your first purchase of a website or domain. Thank you so much to Squarespace for sponsoring our show.
¶ Time Machine & Small Files
All right, let's talk time machine. Uh we had some a one-off comment from John last week about how you have a ton of small files in your time machine backup, mostly because of node stuff. And John Wilson writes, John's comments about node modules, directories, and so on, making time machine backups hard, raise an eyebrow with me. Why on earth did you not or would you not exclude fold folders like that? The same goes for the dot git directory in a repo.
Yeah, so it's pretty easy to exclude things from time machine. I've got a Command line Ali used to do it. I think the TMU Till thing will do it. You just add an extended attribute to it. You don't have to like open the time machine settings and drag it into the thing or whatever. Um, but what I found is doing that manually just it just doesn't happen. Like I I guess I check out too many repos, casually clone too many things, just
It you know, I I have a bunch of them and they are excluded. If you have if you have like a fixed setup where I'm like I'm only working on these two projects and they have two node modules directories and they're excluded, so everything's fine.
Fine, but that's just not the way I tend to work. Um never mind these days what all like the coding agents are doing behind the scenes and cloning things to God knows where or whatever, even just my own use before the age of coding uh uh models and stuff like that.
I just found myself making lots of these one off directories, cloning Git repos, playing around with them, you know, doing NPM install and directories, but like it was just, you know, it I needed it to be automated into that end we got some more feedback.
¶ Automating Time Machine Exclusions
And then Andrew Hathaway writes, I use Asimov to prevent node modules directories from being included in time machine backups. This is an open source thing, and it self-describes as Asimov scans your file system for known dependency directories, for example, node modules, and excludes them from time machine backups. Yeah, I think you have to run it manually, but yeah, an automated system that would just like
It's tricky'cause it would have to drink from like the F S events fire hose and like see everytime something happens and see if there's a node modules in there. Like that's that's why it's tricky because these are especially like dot git directories for cloning things and node modules, like it just Yeah to stay on top of it requires
Uh discipline. And even if you do try to stay on top of it, if you're trying to do it like manually, or even if you have a scan running every once in a while, if a time machine backup starts. And it notices your node modules directory and it's like, now I have to back that up, but then oh the the automated excluding thing goes and excludes it. Too late, time machine's already got its claws into it and now it's grinding away at two million additional files. And then
I wish I could do this in Dropbox too. I don't think there's a way, at least not in the in the non file provider version of Dropbox. I would love Dropbox to ignore my node modules directories, but I don't know if there's a way to tell Dropbox to not sync an individual subdirectory.
Other than SelectiveSync, which is telling it, oh, this exists in Dropbox, but don't put it here. It's like, no, that's not what I want. I want it to be here, but I want you to ignore Dropbox. So I'm not quite sure how to do that. Not that I keep the stuff, uh, node module stuff in in Dropbox, but I do have some dot git directories in it.
Anyway, it's tricky, uh and the number of things that create a bunch of small files very quickly and change them rapidly uh and remove them when I'm done uh is uh increasing over time, not decreasing.
¶ Time Machine on Spinning Disks
Uh with regard to Time Machine on spinning discs, Ben Madison writes, I used a spinning disc for Time Machine until fairly recently. I was backing up a MacBook Pro which I needed to unplug and take to meetings fairly regularly.
If the backup happened to be running at the wrong moment, it took forever for the backup to end and the drive to eject, and I was frequently late to meetings as a result. I assumed this was just the nature of time machine until I got an SSD and was thrilled to discover that I no longer needed to budget extra time for disconnecting my laptop. This is a reasonable complaint, but why wouldn't you just like plug it in overnight or something rather than having it plugged in all the time all the time?
Yeah, you gotta remember to do it or do the thing where you tape it to the back of your laptop lid, right? You get a a two point five inch spinning disc that's bus powered and you just tape it to your laptop. Yeah, it's just with with portable stuff it is tricky because
You know, Time Machine, even with SSDs, Time Machine takes its sweet time when you say cancel this backup. You know, you could just yank the machine and unmount it and you think, oh, it'll handle it, it'll be fine, but given how frequently Time Machine corrupts itself under ideal circumstances, I wouldn't want to test.
¶ Time Machine Corruption & Frustration
Then Carlos Pereira writes When using Time Machine to backup my MACAPUK AIR's five hundred and twelve gig SSC to a two terabyte spinning disks, backups were taking more than twelve hours. And at some point something got corrupted and backups just vanished from the external drive. Backing up my MacBook Pro's 1TB SSD to a 4TB external SSD takes 10 minutes with no issues. Additionally, David Falcama writes.
Since Mac OS 26 Tahoe, surprise, my time machine drive that's the same size as my source volume has failed to complete a backup twice in a single month. I now have a new drive that's twice the size of my source volume, and I have needed to reformat it and start a new time machine backup five or six times since last fall.
My current oldest backup is april twenty eighth, and again time machine is misbehaving. It's doing a backup right now and progress is at thirty percent with two hundred fifty gigs copied so far. I fear the result will be again that the entire backup drive fills up with all previous backups except the last one from last Friday will be removed.
to free up space and still the new backup cannot be completed. Again, I will have to reformat the drive and start over. How can this even happen with a 2x drive? I don't know. I don't see a lot of people experiencing this exact issue, but it's driving me baddie. I'm not sure what triggers it and then update. I had to nuke my drive again and start over, no space left on device. I have not personally seen this, but I mean that stinks.
¶ Time Machine's Lack of Progress
I've seen it. Uh and it the the basic issue is that Apple's maintenance of Time Machine has been mediocre at best. Uh it's the type of feature that when it was introduced, it was amazing. And they it's not like they haven't updated it. If you look in the underpinnings, they've changed it a lot over the years to try to improve it. But it just has never really Like to give an example. Um
Visibility. I mean, this is a complaint we have about a lot of Apple stuff, but like visibility into what is going on. Right. And many people are you'll see online, they're saying, Hey, uh time machine backup completed. I sat down on my computer. I I wrote an email. Uh and then I noticed Time Machine had started again because an hour had passed. I'd read I'd spent an hour writing an email and browsing the web and and then I see Time Machine started again.
And it's taking forever. What happened on my Mac in that last hour that's taking so long to back up? As from your perspective as a user, it's like I sent one email and I browsed the web. What what you know what how many files is it backing up? What is it doing? Why is it taking so long? That's the type of thing that where more visibility into the system would be beneficial. So you could see.
Time machine's taking a long time because it's backing up seven million new files in this particular directory. You know, like what is it doing? Why is it taking a long time? What is it backing up? Maybe I should exclude that directory as I don't care about those files. Maybe that's a cache directory that somehow Time Machine isn't backing up. And the second part of setting aside visibility is For simple tasks, especially with SSDs and so on.
Shouldn't it be getting faster over time to do an incremental backup of the same amount of data? Shouldn't it be getting more reliable over time? Shouldn't it be you know, shouldn't we be polishing this so that it is
efficient, faster, better, like and they have added uh, you know, more efficient things where it you will use API snapshots and tries to use the features of the file system to, you know, has different strategies for figuring out what has changed since the last time, which is the tricky bit here.
Like I'm not saying it hasn't improved, but it hasn't improved enough. It it doesn't have any better visibility than it did before. And these type of bugs where you're like, I don't understand what's going on. I have a time machine drive, it's huge.
It it tells me there's not enough space, it deletes everything else or gets stuck on a file and I don't know what file it's stuck on. Like you'll find so much stuff in web searches of like use L S O F, uh, you know, to figure out what files are open and figure out you see this with M DLS with the spotlight indexing as well. Everyone trying to diagnose. Look at the logs. Look at these lines. If this happens, do this. Erase your disk and format it in this way. Do this thing.
It shouldn't be this fraught. The whole point of time machine, the promise of it is that it's for backup for people who don't know how to deal with backups. It's just simple. Plug in a drive, you want to back up to it, okay, I'll take care of everything for you. But instead it becomes this babysitting nightmare where, and again, this is not on spinning disks, this is not with lots of small files, this is just
regular use of time machine. And you know, I would file this under another aspect of macOS that has been allowed to I don't know if it's been allowed to deteriorate, but it certainly hasn't improved. Uh you know, you would think uh s features that exist for many, many years that are used frequently.
wouldn't just get the bare minimum of maintenance and slowly accumulate new bugs. Instead they would be, you know, knocking down every one of the bugs and getting better and better. Like I would want to see every few years a W W C say
Uh oh, and the new version of Mac OS we made time machine better. It it backs up twenty percent faster and we did this and we did that and like they just don't say that anymore. E even the improvements they do make, they don't tout and it's like Frustrating to me because Time Machine is one of my favorite uh features of macOS ever added, and watching it watching it not thrive is uh not fun.
¶ Sponsor: Zapier
We are sponsored on this episode by Zapier. Zapier is how you actually deliver on your AI strategy, not just talk about it. So AI is everywhere these days, we all know that. And honestly, I find a lot of great uses for AI, but sometimes it can be hard to figure out how to harness that power with actual tasks I need to do or
integrating it with the tools or the services that I already use or that I need it to access. This is where Zapier really comes in. Zapier is this amazing orchestration and automation platform that actually predates AI by they've been around for many, many years. They already have so many integrations and automations built into their platform. They've been doing it forever. They're the experts.
When AI has come around now, Zapier made things even better. It's like pouring gasoline on the fire. They have amazingly ramped up their capabilities with AI. You can now bring the power of AI to any workflow using Zapier's AI orchestration platform. They gave me a trial of it and I tried it out and I set up these automations in just like 30 seconds. It was amazing because you can have AI now help you construct.
the zappier workflows and automations and everything. So you just kind of ask it in plain language what you want. It offers you options, it guides you through it. It creates the whole thing. You can then go and edit it or you can have the AI edit it. It's amazing and it saves so much time. You've been you can or you can accomplish so much. You can tie it into so many tools. Zapier is how you bring the power of AI to any workflow so you can focus on more of what matters.
You can integrate all the different models, ChatGPT, Claude, whatever you want to use, it's all integrated. You can orchestrate it all with Zapier. Whether you're a tech expert or not, doesn't matter. So many people have used Zapier. Teams have already automated over 300 million AI tasks with them. So join the millions of businesses transforming how they work.
with Zapier and AI. Get started for free by visiting Zapier dot com slash ATP. That's Z A P I E R dot com slash ATP. Thank you to Zapier for sponsoring our show.
¶ Apple Intelligence Lawsuit Settlement
Uh Emma Roth at the Verge writes Apple has agreed to pay two hundred and fifty million dollars to settle a class action lawsuit that accused it of misleading customers about the availability of its Apple intelligence features. The proposed settlement would apply to people in the US who purchased all models of the iPhone sixteen and fifteen iPhone fifteen pro between june tenth, twenty twenty four and march twenty ninth, twenty twenty five.
People who submit qualifying claims can receive twenty five dollars for each eligible device, which may increase or decrease up to ninety-five dollars per device depending on claim volume and other factors, according to Clarkson Law Firm, the legal team behind the class action lawsuit.
Apple denied any wrongdoing. Here's Apple's full statement. Since the launch of Apple Intelligence, we've introduced dozens of features across many languages that are integrated across Apple's platforms, relevant to what users do every day, and built with privacy protections at every step.
These include visual intelligence, live translation, writing tools, Genmoji, cleanup, and many, many more. Apple has reached a settlement to resolve claims related to the availability of two additional features. We resolve this matter to stay focused on what we do best, delivering the most innovative projects and services to our users. I love the legal system where they can claim no wrongdoing, but it's like but you didn't ship those things in the ad, right?
All right. We're gonna claim no wrongdoing for this thing that was obviously the case and also is we're gonna pay two hundred and fifty million dollars. Right. I mean th no wrong doing it ping. Sometimes you do just make a lawsuit go away. But even in their own statement, they basically said, Well, we did a bunch of other stuff, right? That's kind of vaguely related. And we're resolving this thing with, you know, cla claims related to the availability of two additional features. Like, yeah.
Those are the ones you didn't ship. That's what they're suing you about because you put ads on TV about those things and people would see the ads on TV and say, I'm gonna get a new iPhone because it's gonna have those things.
¶ Advertising Unshipped Features: A Mistake
And you never you literally today they're not shipping. They're still not shipping. So I feel like this is a slam dunk case and for them to say we admit no wrongdoing, but we obviously they I mean they advertise things that they didn't ship. Uh so yeah, and I I bought I have a 16 Pro, so I will be getting my$25 to$95 for that, and I'm excited about that. Did have you actually signed up for it yet? I don't think there's a way to sign up for it yet. Okay, that's my thought.
But I h I'm assuming they'll send me an email or, you know, we'll cover it in the show or whatever, but I always sign up for these things. I always keep
You take the money from the usually it's you got a piddling amount, but hey, sometimes it's like a multiple devices in the family, so you know, both my kids get thirty bucks, I get thirty bucks. You know, sure, I'll take the money. But I just This is uh this is probably the least bad ending the Apple could have hoped for, that they all they were allowed to settle and admit no wrongdoing and pay to what to them is like
You know, pocket change, nothing, uh, in exchange for probably one of the biggest screw-ups in the past couple of decades, biggest public screw ups in the past couple of decades, which is at WWC 2024, showing a bunch of features and then putting ads on TV with a
Famous star from The Last of Us slash Game of Thrones advertising those features and then to just literally never ship them up till the day we're recording this. Presumably in all the 27 OS, the features they advertise or something similar like them will ship.
But they still haven't done it. And if we had back at WWC twenty twenty four, if I'd said, Hey, we're gonna be recording uh right before WWC twenty twenty-six and none of those features in the ad will have shipped, that would be a pretty grim uh pessimistic view, but that's the reality we're in right now.
¶ Corporate Self-Delusion at Apple
Al although to be honest, like would you have been surprised to hear that at the time? Like I don't know that I necessarily'cause it even at the time it seemed pretty ambitious and pretty like concepty uh and we had not yet seen AI do pretty much any of those things with any level of reliability. Normally, look, Apple has a big target on its back because they're big and famous and rich. And so they get all sorts of
things levied at them, people attempting to sue them or shake them down, and most of them are BS and most of them are undeserved. This particular one, I think it's not BS, and is exactly what Apple deserved for what it actually did. I still to this day am surprised that they were so brazen and careless with the way that they advertised those features, both the WDC and then in the Tv in the TV commercials. Like that that was
Incredibly negligent and reckless of them to do that. So they deserve what happened here. This one is 100% on them. Yeah, and in hindsight, like it really does I mean, I'm sure the story will tell it someday, but it really does seem like'cause given Two years, two whole years have passed. They were just like th there's no way that they would have
aired an average. I mean, well, they showed WWC fine, because that's like a developer community, and maybe you show it, whatever, but like Even that though, I don't think that's fine. Well, I I mean it's not f it's not fine, but it but at least it's not like the
Here's the thing. They they show stuff in WWC and sometimes things don't ship or change before shipping because it's it's the nature of a thing. You're seeing a pre release product, you're a developer, like you get it. But once you put things on television for the public to see, that shows me that they really thought That they would eventually get to these things.
Like I mean the only other worst case thing I can think of is like the um uh the white iPhone, which they also advertise on television, and I believe they really thought, Well, we're having trouble with the white one, the iPhone white iPhone four. We're having trouble with the white one, but you know, we'll get it out eventually and they did get it out eventually, but it was
I forget what it was. Grouper was just posting about it again. It was like 18 months or something. Something like that. Right. So I the the usual Apple thing is like, okay, even if it's not ready We all believe that it will be ready in a reasonable time frame. It's like, oh yeah, sure, no, it'll totally be ready. Like we're having difficulty, but we'll get it out the door. It's like, okay, fine, then we're gonna run the ads. Because I
I I think if they if Apple actually internally believed that they weren't gonna have these features for two years, they would not have aired the ad. What they thought was we don't have them now, but everyone says that we'll probably get them eventually so Ship the ad. It's important to strike while the iron's hot. The pro the the features will come a little bit later than we wanted, but it's fine. But they did they what it comes down to is they did not realize yet that
th they were not gonna be able to do this. Not that year, not the next year. Like they and they're just mistaken about what they're you know, and I I hope there was a big uh I mean obviously there was but there's big shakeup uh leadership changes, all sorts of stuff. Uh and now they got a new CEO. So hopefully the company will not make that mistake. And it's basically not knowing yourself. Like be honest with yourself.
Are we going to ship this or are we not? And if internally you have a culture where you're essentially all lying to yourselves about what you're going to do. And like I think that has served Apple well for years. They've always said, you know, we'll set these aggressive targets. will tell the team to do the impossible and even if they're a little bit late, they'll eventually do it.
But as I think I complained about at the time, it's like this one is different in that there's nothing they can really do to make this happen. And that turned out to be the case. Like it's not like it's just a simple matter of finding the bugs and fixing them or whatever. It's a it's of a different nature.
And it was especially of a different nature because as it turns out, their you know, their LLMs that they were working on internally weren't even up to the their competitors' standards. And as Marco just said, even their competitors weren't doing this at the time. So to believe that they were going to
Do something that no one else had ever done, even though their internal technology to do that was worse than everybody else's, and that we're gonna ship it in a time frame that justified airing the ad just shows a complete breakdown of
accurate self-assessment, uh, in a very public way. We've seen we've complained about their inaccurate self-assessment in terms of developer sentiment or all sorts of other things, but this was like the most public display of self-delusion, it's corporate self-delusion that Apple has experienced in a long time.
Yeah, I mean, I I generally I think it was Marco that said this a minute ago, I generally think that class action lawsuits are kind of silly, but it like John said, you might as well sign up for'em. I think I've told the story briefly on the show before, but
Uh long after I got rid of my BMW, there was a water pump related class action lawsuit where if you could prove that you paid for a repair to your water pump in your N fifty five, then you could get, I think it was like a thousand bucks from BMW.
And because I'm me and I keep copious notes on these sorts of things, I was able to produce the receipt from several years prior when I paid Richmond BMW a thousand plus dollars in order to replace my water pump and I got a check from DMW for a thousand bucks. It was incredible. Um but I yeah, I think that with regard to the advertising, I do think it's like you were saying that
They thought they were gonna ship. They really did. Like yes, there was a bit of hoo of hubris I almost said hubris. A bit of hubris to um to to think that oh, we'll definitely ship this. No question. And then not. But I I don't think it was ill intentioned. I I really do think and get the vibe that they believed that they were going to ship, and then it turns out they very much didn't. And I think they hopefully have learned a lesson. It sure seems like they have.
that they shouldn't be advertising these things unless they are really truly about to launch or already launch.
¶ Apple Explores Intel & Samsung Chips
All right, we have a couple of stories with regard to Apple and Intel in Samsung. So starting on May 4th. Mark German writes, Apple Inc. has held exploratory discussions about using Intel Corp and Samsung Electronics Co. to produce the main processors for its device in the US.
Apple has had early stage talks with Intel about enlisting the company's chipmaking services. Apple executives have made visits to a Samsung plant under development in Texas that would also make advanced chips. Discussions with both companies started before the latest shortest shortages took hold. Samsung is already working on building more peripheral components for the iPhone and other products, including ones for managing device power, said Apple or Apple had said earlier.
Uh additionally, we will point you to a link in uh Apple's newsroom wherein they are increased or they announced they were increasing their US commitment to six hundred billion dollars. That's where they said that they were you know, uh when German said Apple said earlier, I'm like, Wait a second, is this an officially confirmed Apple thing? But it was the press release. Like that's that's where they said that their Samsung is building
Stuff for Apple phones. Not the main SOCs, but I forget what it is. Peripheral Components, as Garmin describes it. That is apparently in this press release.
¶ Diversifying the Supply Chain
Uh continuing from German, Apple prefers to have at least two suppliers for any major component, giving it leverage in pricing negotiations and protection from supplier disruptions. As far back as twenty twenty two, Cook told employees in an all hands meeting that and I um th hi, this is Casey. Uh I didn't remember hearing this particular quote anywhere, so this was new to me.
And certainly I think it was John that bolded it in our internal show notes. Let me read this quote from Cook from twenty twenty two. Regardless of what you may feel and think, sixty percent coming out of anywhere is probably not a strategic position, referring to chip production concentrated in Taiwan.
Yeah, so this is I yeah, I also had not heard this quoted. If I did hear it back then I had forgotten about it. Again, this is back in twenty twenty two and this is Tim Cook talking to employees and if you think he's more candid with employees than he is with the public, I don't think he Yes. Because A, he knows everything's gonna leak. And B, I don't think he's candid with anybody like that. Um but here he is. Stating plainly, uh, we don't like that we get so much stuff from T SMC.
And his thing was like sixty percent, you know, sixty percent if we're getting sixty percent of anything from a single place, that's bad. It's like, Well I have bad news, Tim, that's not gonna get better. That's like T S M C is making all your chips for the phones, uh it's just You know, so it shows that it's not as if Cook was unaware uh and and you know, repeat for China and other things, not as if Cook was unaware that a non diversified supply chain is bad.
It just seems like the process of trying to, you know, turn that ship and, you know, whatever it was, like uh half of new iPhones were created in India uh in the recent batch or something like that. Like to how long does it take to
start to diversify your manufacturing to the extent that you can. And the answer is many, many years. Here we are in twenty twenty six and they're still working on it. And TSMC is still a massive bottleneck, which is what the story is about is like the Apple looking to Intel and Samsung to Help them out here. And you know, Samsung is already making whatever peripheral components for the iPhone and other products are, but hey, you know, something is better than nothing. Same thing with
Diversifying manufacturing and doing more manufacturing in the US and the various TSMC Arizona plants. Yes, it's still TSMC, but at least it's in Arizona and not Taiwan. So Yeah. baby steps towards diversification, but I I like this quote because it it really if you if you're looking for proof that, you know, Tim Cook understands that this is a bad situation, as at least as far back as twenty twenty two, he knew that
It's not a good place to be. It's just that in the in the subsequent four years he was not able to change that appreciably. Continuing from German, since then Apple has worked closely with TSMC to help expand operations in Arizona, where the supplier now produces a limited number of chips for Apple from a single plant. It's ramping up work quickly for Apple, which it set which said it will get one hundred million chips from Arizona in twenty twenty six.
¶ SOC Constraints & Mac Studio Delays
Apple also is contending with shortages of memory chips, but Cook said that finding enough main processors, the SOCs or systems on a chip.
uh is a bigger challenge right now. Quote, the primary constraint is the availability of uh the advanced nodes our SOCs are produced on, not memory, Cook said during the earnings call. That's making it harder for Apple to satisfy demand for products like the Mac mini and Mac Studio, he said, quote, I believe it will take several months to reach supply demand balance. So that's interesting of uh this is on the earnings call, I think. Him to basically confirming it's like uh
Ram is not our main problem. RAM is a problem, but it's not our main problem. And that makes some sense because, you know, instead of there being one company in the world that can make the best uh chips, there's three for RAM. Wow. An embarrassment of riches. I think it's three, right? Isn't it micron um S K Hynip, Samsung. Yeah. Yeah. Anyway, that's better than one, right? Uh but like what this is arguing for is that like, you know.
Th the the Smack Studio with the big RAM configs, the fact that you can't get that, that the SOCs are more of a problem than the RAM, like that's weird. But you know, it's plausible because Uh the RAM is all being used by, you know, AI data centers, but you know what's also being used by AI data s AI data centers? Nvidia fabbing their GPU things to run all the inference and training.
Uh that what whatever that story was that went by recently that like essentially NVIDIA is now T S M C's biggest customer ousting Apple. Apple used to be N uh TSMC's biggest customer and now it's NVIDIA. So yeah, I guess when they asked for that hot lot of of A18 pros. Maybe they bumped some NVIDIA GPUs off the line and paid some money to get the fast pass in there. Um
But yeah, this is the most recent earning calls. I believe it will take several months to reach supply demand balance. This is also uh more bad news for me waiting for MAC Studio. If Tim Cook is saying we can't get the SOCs. And that's really bad for products like the Mac Mini and the Mac Studio. Uh uh uh
¶ Apple & Intel: A New Agreement
So all of that was May fourth. Fast forward four days to May eighth. Apple and Intel are perhaps together again. So Robbie Whelan and Rolf Winkler write in the Wall Street Journal, Apple and Intel have reached a preliminary agreement for Intel to manufacture some of the chips that power Apple devices. According to people familiar with the matter, the Wall Street Journal says that it's quote still unclear quote what Apple products will get Intel Chip.
Yeah, I don't think there's any been any more detail on this, but like the right before the hundred million chips from Arizona, like the T S M C Arizona plants are not on the cutting edge like uh two nanometer that are also not three nanometer. I think they're five or maybe seven, I forget, but like The whole idea is like We can't, you know, the best chips still come from TSMC in Taiwan. Um, but if we can take some chips.
off of that line and manufacture like them elsewhere, like the older chips, the the A chips with lower numbers. The chips that we're still putting in some devices, maybe we put them in our Apple TVs or whatever, those aren't three nanometer. Can we make them somewhere else to free up some capacity in a TSMC in Taiwan? And then we can get them to fab the M five Ultra for us there, you know, whatever. Like whate whatever S of C that they can only be done in Taiwan. Let's not clog them up with like
If they could have asked for that hot lot of A18 pros from somewhere other than Taiwan, and maybe they did for all we know, uh that would be great because you don't want to bottleneck that and yeah. So
¶ Investing in Chip Manufacturing Competition
I would love to know what the Intel is making for them. Maybe they're making just peripheral like support chips or something, but This is all part of the diversification effort and I guess it's kind of I mean, I don't know how much to read into this, but like, you know, the Apple in China book talks so much about how Apple just dumped buckets and buckets and buckets of money into China. to help turn them into the uh manufacturing, you know, uh colossus that they are today.
It was a symbiotic relationship. We will dump in lots of money and you will make the things for us and we will pay for them. And we'll just, you know, as as we succeed, you'll succeed and we'll go. But like there was a huge investment there and You know, Apple's press releases say, Oh, yeah, we're investing more in US manufacturing or whatever, and going to Samsung and Intel is essentially Apple investing in competitors to TSMC because hey.
You're not going to be able to compete with TSMC unless people buy stuff from you. We want there to be healthy competition for TSMC, so it behooves us to Give you money to do whatever what can you do, Intel? Like it's like it's kind of like a like we know you can't make the good chip.
But what can you do? Because we want to give you money. We want you to succeed because we need TSMC and to have competition. It's not good. Even setting aside the whole Dawan and you know geopolitical thing, just even if they were regardless of where they are in the world. Having one source, you know, is not great. As he said, sixty percent coming out of one place is not great. And I think they're way over sixty percent for like the iPhone chips at least.
So I think they're going to Intel Samsung and anyone else who has any chance of manufacturing anything that could be used in any Apple product and saying saying to them, What can you give us? We will pay you if you can give us anything. You know, we have a bunch of things that need to be fabbed. We got some old chips and some old products. We want you to not go out of business. In fact, we want you to do well. So take this money. I just can't but I don't but I don't know if we're reading this is
Is this just like a piddling amount of money to satisfy US political BS things or whatever? Or is this the beginning of a China style investment where Apple's gonna start funneling more and more of its cash to other companies to try to balance out the lopsided arrangement of uh silicon manufacturing.
¶ Sponsor: Quince
We are sponsored this week by Quince. So with love and respect to our listeners. If you're anything like me and if you're listening to the Accidental Tech Podcast, you probably are. You maybe could stand to have a little bit of help with your wardrobe. I know I certainly can. And especially now that we're entering warmer weather in spring and summer here in the northern hemisphere.
My wardrobe for the warm weather, thirteen years into recording ATP, is basically an ATP T shirt and shorts. That's the whole summer for me. And it doesn't have to be that way. It doesn't have to be that way and Quince can help make it better. And not just for me, but for Erin and for our kids, because Quince does a little bit of everything.
But their bread and butter is clothing. And that's not all they do, of course, but that's their bread and butter. And Quince has all the wardrobe staples for spring. I think a hundred percent European linen shorts and shirts from thirty four bucks. Lightweight breathable and comfortable, but still look put together and clean. 100% prima cotton teas with a softness that has to be felt.
Their pants also hit that same balance, relaxed and comfortable, but still polished enough to wear pretty much anywhere. I got a set of linen pants from Quince a while back and they're really great, and now I'm getting into the season where I can wear them again. So Here's the thing. If this is good appealing to you, if this is interesting to you or your children or your spouse.
you should go to Quince and check it out. Now for us, Quince was kind enough to send us a little bit of money to use. And I got Declan a Flow Knit Performance Jogger, which is basically sweatpants. And a hundred percent cotton poplin printed long sleeve button down, which is a plaid button down. And he really likes them both. And they th they again, they have stuff for Aaron, for Michaela, for Declan, for me, they have stuff for ever for the house, stuff for everything.
So refresh your everyday with luxury you'll actually use, head to quince.com slash ATP for free shipping on your order and three hundred and sixty five day returns. Now available in Canada too. That's Q-U-I-N-C-E.com slash ATP for free shipping and 365-day returns. Quince.com slash ATP. Thank you to Quince for sponsoring the show.
¶ Moving & Copying Files on Mac
Brandon Wichard writes, How do you actually move and copy files on your Mac? There are plenty of ways, drag and drop, keyboard shortcuts, command line. I'm curious which approach each of you defaults to and why. Do you switch depending on the situation? The thing that's always bugged me, why can't you move a file with command C and Command V?
You can use command C and what is that option command B, I believe, to actually move it rather than copy it. That feels like an intentional design decision, but I've never heard a good explanation for it. So let me start with how do I move stuff? Uh it depends on the context. I will do it with command line. I mostly do it with finder. I wouldn't say that's all the time, but probably most of the time.
Uh, I found that I've talked about this a long, long time ago, but there's an app called YOINK Y O I N K. I don't think they ever sponsored us, but if they did, it was literally like ten years ago. Um This is an app, I think it's by an individual person, that what it does is as you drag th like a file around your screen, um, it will put up like a little
Sidecar for lack of a better word, it's like a little floating window on the side of your screen. You can specify where this floating window goes and you can put things in that window. And so that window Holds these items as like a little drawer, sort of kinda, or shelf, uh as Sage says in the chat. That's a better word for it. But anyways.
It'll hold those items for a little bit and then you can go click around and find the destination of whatever it is you want to move or copy or what have you, and then drag them out of YOINK and into your destination. And that makes these sorts of things much easier to do with the mouse. And so I would say generally speaking, uh finder with yoink occasionally command line. Um, let's start with Marco and finish up with John. Marco, how do you handle this?
I actually move and copy files on my Mac by opening up two different finder windows, the source and the destination, and dragging them, and that's it. Like you know, if I if I'm intending to um if if it's going on an external drive and I'm intending to move them, I'll have you know, hold down What is it? I believe. Yeah, just it's muscle memory at this point. Yeah, exactly. What what modifier are you asking for? When you're dragging files to a different drive, the default action is cop
Oh you want to move it to a thing? Yeah. Uh don't do that. Yeah. Um anyway. Um so yeah, thanks.
¶ The Cut/Paste File Conundrum
Um and then ask for like why you can't move a file basically with cut and paste. Um I think the answer is like, well where do where do the cut files live? What where are they uh when they are cut? What if you cut and never paste? Are they gone? Do they cut into the trash first? What if you ne like it it creates a weird concept?
Uh because files are like can be you know real solid lots of data. Whereas like when you're dealing with the clipboard, conceptually, the pasteboard rather, sorry, my windows is showing. When you're dealing with the pasteboard It's not a Windows. It was called clipboard on the Mac before it Windows even had.
Okay. Well anyway, the you know, w deal that is considered by most people to be like temporary ephemeral data, especially people who don't have clipboard history apps, um, or now the built-in whatever it is in Tahoe. Um That was always considered like throwaway data. So if you cut something, you it was just like, Okay, well that text is gone or whatever and you know, maybe I'll paste it later or maybe maybe not. Files conceptually don't work that way.
And you know, so files c files have to live somewhere. And I think if you like cut files and then forgot to ever paste them anywhere, that might view that like that might cause problems for people or unexpected results or unexpected data loss. So I think that's probably the answer. Uh so move and copy files. Um I mostly use the Finder for stuff like that. Um if I am at the command line doing things, like I'm, you know, working on a coding project. Um
I will use the command line to move and copy files there. Um I'll use the command line when I want to have a little bit more control over the stuff like ver my various app Mac applications that deal with file systems and things. I guess it's just hyperspace, but um There are some other, you know, making test files for my other apps or whatever. I'll do that from the command line because I feel like I have more granular control over the files. Especially since like I'm creating like
test files or temporary files. I can use the X adder command to mess with the extended attributes. I can uh you know, ch mod and ch own and just you know, I g I can mess with the metadata with a variety of command line tools to get the thing exactly the way I want it. When I want to copy a file like a a m quote unquote Mac file, like it's not a file that's part of a programming project or something, but it's just like
a document created by one of my Mac apps, my one of my GUI Mac apps. I tend to want to use the Finder just because I just want to whatever the default metadata handling uh that the Finder does, I'm like, I'm assuming that's the right thing to do and that's what apps expect. So I would prefer to move and copy files in the Finder to do that. The command line like the CP command line tool on macOS has at various times been updated to try to stay in sync with
Something close to the default finder behavior when it comes to copying metadata and ACLs and all that like this. There's tons you don't have no idea how much weird metadata there is in Mac files. And the Mac OS CP command can deal with a lot of it, but I'm never sure if it's exactly the same behavior as Finder copies.
And if it even is capable of having exactly the same. And there's other commands like the Ditto command and the there's the clone file API. Like there's lots of things you can do from the command line, but like For GUI Mac files, and because I'm an old school Mac user who was using a Mac for a decade and a half before there was a command line, I just do it in the Finder using this.
¶ Cut/Paste: A Windows Metaphor
And related to that. Copy and paste of files, uh, that is a Windowsism. So from Windows did that first, and my reaction to it when I learned that Windows did it way back in the day was this is a terrible idea for all the things that Marco just mentioned. Okay, so you want to use copy and paste files. Doesn't make any sense, but if you want to do it, okay, but then what do you do about cut?
Hand wavy, hand wavy. Well we'll put a little dotted outline around the file, so it won't really be gone. It'll still be there. We'll just change the appearance of it in Windows Explorer. And if you never paste it or if you copy something else, we will remove the little dotted outline from around the file and then you don't have to worry about it and you know it It all makes sense everywhere, you know, like there are ways around it.
Mac OS 10, I believe, essentially copied the Windows implementation of this when it first implemented this. Um and you could cut, copy and paste files. And it would do something similar to Windows where when you cut it, it wouldn't really remove the file. It would still be there, but the finder would either hide it or dim it or do some other crap like that. I use this feature.
so little as in never, except when I was writing my macOS interview to like test it, that I I don't actually know if it still exists. My guess uh before you start talking about it, my guess would be that you can currently in the Finder cut a file and then paste it somewhere.
I don't know that for a fact because I would never ever do this, both out of habit and I think it's a mismatch with the uh like the the semantics of cut copy and paste are so well established they're not a good match for what people expect from doing file stuff. that I would never try. Can one of you try that out right now? Find a file you don't care about and cut it and then paste it somewhere? I bet it will work. No, there is no like command X doesn't do anything. You sure? Let's try it. Yeah.
Oh you're right. It d it's it's disabled. Yeah. It well, I'm pretty sure if my memory is correct, I'm pretty sure it used to and it used to behave as I described and as it does in Windows, where it would like it's not really gone.
Uh maybe they changed their mind about that, but honestly once I stopped writing macOS ten reviews, I didn't have a reason to explore every feature that I don't use. But all this is to say is I never, ever, ever, ever use cut copy and paste for files in the Finder because I think That is a bad interface and a bad metaphor for those functions. And I was saying to Marco, don't command drag to another volume to move it.
Because there have been finder bugs in the past where, oh, by the way, that move failed, and also the file is now gone from the source. And you should think that would never happen, but let me tell you the finder sometimes has bugs. So I never Hold down command to move. I always allow it to be default copy, which it is when you cross volumes, or explicitly make a copy, and only when I'm sure it has landed for real completely successfully on the target volume.
Do I then command delete the you know the source one? So uh yeah, just d it's like defensive driving, defensive finding, like you know, don't yes, you can hold down command to turn what would be a copy into a move, but don't
¶ MD5 Checksums and File Integrity
You know, one thing I will say is that it is not infrequent, particularly when I'm moving things to or from the Synology, that I will do an MD5 of the file on my Mac and the file on the Synology just to make sure they match. Why do I do this? I don't know. Has it ever not matched? I don't think so. I think it's always matched every time, but for whatever reason I get a little nervous about it occasionally and I'll do that and I'll do that via the command.
Like, I'm not sure. What you need is a file system that guarantees integrity with some kind of checksumming. Mm-hmm. Yeah. Speaking of that, I got a a feature request for hyperspace the other day. It was like when when you're doing like reviewing the files that it found that have like they put some of these groups of identical files and you're reviewing them, there's a little like uh
Whatever, SF symbol for the eyeball, like the quick look eyeball thing where you can hit spacebar and get like a quick look preview of the file so you know, can glance at it in the app instead of having to open it in the finder or whatever to see what's in it, to see whether you want to merge it. Anyway.
Um, they said, hey, when you do that and you make you find a group of identical files, you've just got the one little eyeball icon, but you do show the list of all the files in the group. I would like an eyeball icon next to all the files in the group. I'm like, well, the point of the program is those files are identical. So Ha ha ha. They would all do the same thing. And he's like, Yeah, but I just wanna make sure. I'm like, listen. If you wanna make sure, don't use my app.
The whole app is premised on oh, I'm gonna make sure, right? If you don't think the app is doing that, why would you trust my eyeball icons to show you the thing? So I I'm debating adding that feature. It's like the paranoia feature, like
Like are you gonna eyeball a text file or a giant like image file and say, Oh yeah, I know these are identical? It's like it's like KC MD fiving the thing. It's like, Well, it says it copied it, but can I check? and I'm like, Well, I could let you visually inspect the files, but like
Like they're it they're the whole point is they're the same file. And if they're not, I'm not gonna anyway. I I I'm still debating what to do with that one. Like I know why people will wanna check, but it's like man, if my program doesn't get that right, it's gonna be destroying everybody's
It's gonna be real bad. As I as I replace files with different files that have different contents, that would be really, really bad. Which to be clear could theoretically happen, but I have so far knock on wood. Zero. No literally zero reports of uh that ever happened to anyone.
I hope it never happens to anyone. I try my best, but as I say in the the help documentation for hyperspace, could it happen? Yes, it absolutely positively could, because of the magic of race conditions and the inability in macOS to get an exclusive lock in a file because that's just not how
¶ Terminal Windows: Profiles & Themes
All right. Chris Harper writes, Do you use a profile or theme for your terminal windows or just the default macOS profile? Uh for me, I was a terminal user always until just a few months ago, and I'll get to that in a second. But while I'm using the terminal, I don't know why, but I need to have a black background with white text on top. And so what I do is I set the in the out-of-the-box um theme called Pro as my default. And that gives me the look that I prefer. Try Ultra.
Well done. Well done. Uh that being said, uh a few months ago I decided to try Prompt 3, mostly because I wanted a better terminal for my iPad. And I've bounced through several different terminals on iPad over the years, and none of them have been exactly what I wanted. And prompt is probably as close as I've gotten to what I want. And so uh once I started using it on the iPad, I started using it on the Mac.
And so now I'm pretty much all in on prompt three and we will link that in the show notes. Uh since I started with Marco last time, let's start with John. John, what do you do? Uh when Mac OS X first came out and had the terminal in it and even in the betas and everything, the default theme was I believe I believe it was Monaco nine back in the day, like bitmap Monaco nine. And it would show it bitmap, like no smoothing, no sub pixel anti icing, just like sharp individual non retina pixels.
For what is essentially a pixel font from the, you know, the earliest days of the Mac, nine point Monaco. Uh on a white background. So the window had white background and the text was black. And the only tweak I made to that default theme. was I changed the cursor to a block. because I was used to that from using literal hardware V T two twenties back at uh B U and they had blocked cursors, albeit on interlace C RTs. But anyway, um
I made the cursor a block and then I make the block because in terminal in Apple's terminal you can have it like be a block or an I-beam or like an underscore or whatever. And you can also make it blink or not blink. I made it not blink. Make it a block and made it zero zero, you know, two fifty five zero zero complete red, right?
Um and over the years, the only thing I have changed in that theme has been to mess with the font because eventually uh getting uh non anti alias, non-subpixel anti-alias bitmap monik0 nine, I I did all the hacks you could do. to keep that as my terminal font for a long, long, long time, down to the point where there were bugs with showing that in terminal, and I would complain to about them on macOS interviews to get them fixed, which worked. Yay.
Running the press always helps, especially when you are the press. Um But you know, eventually like retina comes. Retina comes for us all and say goodbye to your bitmap fonts. And so I did and I had to pick a new font. I actually have to look this up because I don't even know.
I think I might have done Menlo for a while. What am I doing now? No, now I'm doing Monaco twelve. All right,'cause I'm old and I can't see as well and my monitor is very big. So I'm doing Monaco twelve. Obviously it's a retina display, so it is I have anti-alias text unchecked, but I believe it is anti-aliasing because I don't know.
Yeah, it is it the text is anti-allies. I don't know what that checkbox still does in turn in Apple's terminal, but the in the text section uh of my theme, which is just called John, it called uh JCS at various times.
Uh it's Monaco 12 font and anti-LS text is unchecked. My cursor is red, it is a block, it does not blink, um, and everything else is basically the default, and that's what I go with. Um I was kinda surprised to see I was recently I recently had occasion to keep to create a fresh user account on Taho to test uh beta version of some other app.
And I opened a terminal to do some stuff. And I guess this is the the default terminal theme in Tahoe. Like I said, there's a fresh user account not associated with any Apple ID, so I don't see how it could be anything other than the default. And it opened a window that had basically a black background with I think maybe a little transparency on it and like l white or otherwise light colored text on it. And it looked pretty attractive, like for a
you know, for a dark themed terminal, I was like, oh, this is actually a pretty nice default. I don't prefer it. I am a black text on the white background kind of guy. And I was very excited when Mac OS X came out that that was the the that my preferences were so close to the default. Um but yeah, ever since ever since, you know, whatever, uh macOS uh
DP2, developer preview two, macOS 10 developer preview 2. I've been using uh this this basically the same terminal theme. And I have to say the Apple terminal application, which I believe is currently maintained by 0.15 employees. It has a lot of features, but its interface is I'm not able to understand how it works enough to get it to do what I want. Uh and in particular if the zero point one five of people who maintain this app are listening who ever hear this. I'm pretty sure.
I I'm pretty sure the Apple terminal application has the ability to restore the windows that were open during the last session. Like if I quit the app and launch it, it will restore the windows that are open. During the last session, including all the tabs and all the windows. and also restore the current working directory of all the tabs and all the windows to what they were before.
I know it maintains the scrollback and says, here was what was in the scrollback when you quit the app. Sometimes, in some conditions, I've been able to get it. To restore the tabs, the windows, and the carton working directories? But most of the time I can't, and I cannot figure out for the life of me how to get this to happen. They have so many concepts of saved window groups and what you do on launch and
Just it's so, so complicated. So I keep waiting as is this gonna be the year that the zero point one five developer goes through those settings, sweeps through there and says, I just wanna make this a sensible set of settings that works, you know, like BB edit or something, but say, Hey, do you want me to restore Windows from the previous session?
If I do restore Windows, do you want me to restore the current working directory? Do you want me to restore the tab titles? Do you want me to restore the soul? Scroll back and I'll be like, yes, yes, yes, yes, yes. And that would make sense to me.
As it stands now, I have no idea what my current Apple terminal settings are, but I do know that it doesn't restore the current working directories, but it does restore the Windows and the tabs. So I'm like, just don't touch it. And when I make a fresh account on a newer versions of macOS, I make a fresh account and I try to get it to do what I want.
And I can only get like fifty percent of the way there. The current working directory is the one that kills me because I've seen it do it. I know it's possible. And I think it's a terminal thing and not a shell thing, but I can't figure it out for the life of me. So please, please, Apple. Someday work on terminal again, even though I do really like it. There's a couple of features that I wish it had. Marco.
I uh am pretty boring here. I use the default basic theme, which is white background, black text, um, and I use the SF Mono eleven font, which I think might be the default.
Long time ago I was also very much a um a Monaco person. Um but you know, w I I at some point I had to increase the font size by like one and that broke the bitmapness of that font and made me have to switch or Same thing with Xcode and with Textmate, like like a few years back I basically increased the font size by one and had to change everything as a result. Ha ha. But uh yeah, it's fine. And I I think the Apple terminal app is totally fine. It is not
like a a ridiculously amazing power user app. Um, but I don't need it to be'cause I'm not that much of a terminal power user. I always have terminal windows open. And I'm always using terminals, but I'm not such a power user that I need any kind of really advanced features that whatever for whatever reason this wouldn't support. So I've always been pretty happy with it.
¶ Terminal Apps & Rendering Philosophy
Yeah, I I've messed with other terminal apps a lot, like prompt. I've mostly only used on like the iPad and phone, but I I you know I've I don't know if I've ever even tried the Mac version. It's probably like ARM only, so I probably haven't on my A Mac anyway. Um but this the tricky thing about terminal apps, and there's so many of them. Like I have like iTerm2 and there's the other even fancier ones. A bunch of them tout their performance because
You know, you're like it's a window full of text, it should be lightning fast. And it's like, well, guess what? You know, and this text editors do the same thing. The philosoph I figure which text editor had this philosophy, but it's a good summation of the uh um the design strategy, which is We're going to create a terminal text editor, whatever, but we're gonna treat it like a game. That was Zed.
Yeah, like a game engine in terms of like GPU rendering and stuff like that. Like we're not gonna design it like a text editor, we're gonna design it like a game with like
t how quickly can we render? And it's like, well, you're not rendering polygons or textures. You're rendering text like I know, but we want to render text like as fast as possible. So Zed is one of them. There's a bunch of other text editors that have taken this philosophy philosophy. And there's also terminal apps that have been like, Back in the day, we use OpenGL to do special custom rendering of text. We don't use the system tech system like we want it to be really, really fast.
Uh and I I love that philosophy. I'm like, I want that too. Like you know, I remember my days using More primitive systems like those VT220s, which were not fast, but also like the, you know, the Tektronics X X terms, uh, with like bitmap displays with no compositing and just blitting out to the screen. And they were pretty fast back in the day. But the Apple terminal has always been
Pretty fast. It's okay. Like it's not lightning, lightning fast, but it's pretty fast. And the Apple Termal has also always had the option for essentially infinite scroll back where you could say, How long do you want your scroll back to be? And the choice this is from the next days. His choices are like you can pick a number of lines or you can say
I think they have called it unlimited. They used to call it like until you run out of memory or like memory limited or whatever. So I've always just put it on unlimited because, you know, I've got a lot of RAM. Why the heck not? Um if you use one of those other terminal apps that's designed like a game. Or like with fancy open jail engine or the ones that used to simulate CRTs, remember those? It would like it would curve it and everything. I never.
Use those. Those are all fun, but like especially like the the the like the really fast ones, the things they get wrong in their default. Make me have to spend an hour with their stupid text based config files because they always have text based config files. They don't want to make a GUI for it, right?
Things like things you take for granted in the Apple Terminal. Like look at an Apple Terminal window right now, and let me tell you the things that you are taking for granted about this window that you don't realize that you will
Uh may maybe you won't, but that I will miss when they're gone. Look at just a terminal window that you have now and put some text in it, like type ls or something to fill the thing. Here are things you're taking for granted. How much space is there between the first character on the left edge and the, you know, the edge of the window?
How much space is there between lines of text? How much space is there between the first line and the top of the window and the bottom of the window? All the margins, all the spacing, all the text layout, you just take for granted because you're like, it's just a window full of text, right?
Until you use one of those fancy OpenGL GPU powered terminal apps and you're and like the line spacing is wrong and they're too close or too far away from the edge. And so you go into the settings and you're like, what is the setting for this? And you're styping you're typing floating point numbers into a text file.
And making the app reload it to try to get something that looks quote unquote normal to you. And I cannot stand that. And like, just make it nice. You can't don't let the letters touch the edge of the thing, but don't make it like too much space and the like the the
The line spacing is always all messed up and like the font rendering is different. Like we don't use the system font rendering, we use our own font rendering and and put in a a uh integer value from one to seven thousand for darkness. I'm like, what? I just Can you just
The text look good. And granted, it's just like, you know, I'm used to what I'm used to and the I'm used to the Apple terminal or whatever. But it's not like, you know, I went from I went from Monaco nine to Monaco twelve. It's not like I'm you know, I I think I stopped off in Menlo and some other fonts uh in between there. So I'm like I'm not opposed to change, but We all had a Menlo phase.
Yeah. I don't I don't wanna have to uh I don't wanna have to tweak stuff like that. Like give me sensible defaults is what I'm saying. And I think the uh sort of like the uh The aesthetic taste of the people who make these highly accelerated uh terminal and text editor apps is so divergent from mine that what they think are sensible defaults I think are just like stabbing me in the eye. How do you really feel, John?
'Cause I want I want those and I go in them and I try to edit them I have the I have the terminal window open next to it and I'm like, I'm gonna make this window look just like Apple Terminal and I try and I try and I try and I'm like it's close but it's like I just spent an hour on this and I can't quite get it to be the same as terminal and I go, you know what? I'm just gonna stick with Apple Terminal for another year.
¶ Resistance to Changing Core Apps
Yeah, I just I've never had any motivation to move from Apple Terminal because I n like I use it so much and I know it so well that even you know, sa I can say all the same things about Apple Mail. I know these programs so much. I use them so well. And even though other other apps have come out that offer different power user features, you know, th that that might be useful to me here and there.
I they're so ingrained in my my workflow, my habits, my aesthetic, what you know, what my computer looks like, how things work, to so many different like minor detail levels. And even if something else is better in some way.
It's probably so far nothing has really been compelling enough for me to replace these apps that's better that because it has to be like a lot better in some way to make it worth the inertia of moving and tolerating, like what you're just saying, tolerating all the things that might be a little bit worse.
or need a little bit of work or a little bit of setup or a little bit of learning. Like there's a huge perceived switching cost to switching like a core app that you've used for decades and you use all the time. So any alternative has to be a lot better for it to be worth it. And
I've just I've never found anything that was that much better in ways that I actually needed or cared about. And also I haven't had enough dissatisfaction with these built-in apps to motivate me to even want to move in the first place. Yeah, you would think uh the various apps that do restore all the windows and the positions and the tabs and the tab titles and the working directories, that that would be enough to bring me over. But it's like it's like changing text editors. It's like okay.
Um, I like that, but now I have to do a bunch of extra work to get your new thing set up the way my old thing was. And it's probably possible, but it is a lot of work and it's work that I find frustrating, especially if I can't get it exactly right. So in the end I just don't change because basically I I'm like of all the built-in apps in macOS, despite the fact the terminal gets no love and its settings are
incomprehensible. Like the the mix of like all those different it's just it's madness. Like try to come up with a mental model on how like their presets work with their window groups, with their save sets, with their on launch sets. Like it's I cannot understand how it works. But The day-to-day experience of using the terminal windows is like they work, they do what I want, I'm satisfied.
¶ IDEs: Xcode vs. Others
All right, and kind of related, Chris Harper, the same Chris Harper, writes, Also, do you use any other IDEs when working on projects outside of Xcode, or do you just do everything in a terminal window? Uh for me. I use uh Visual Studio Code for website stuff and I think that's basically it. I don't think I use any other kind of IDE for anything. Uh who's who's turning us to go first? John, I think.
Yeah, so the only thing I use Xcode for is writing Mac apps. That's the only time I'm ever in Xcode because I don't I don't prefer any aspect of it to my other tools that I use, except for of course when you're running Mac apps because it's just it's the least friction way to do it. I don't dislike the Xcode editor. I think it's fine. I basically leave things mostly default there as well.
It doesn't have anything that makes me say, Oh now I want to edit everything here. And uh honestly, Xcode doesn't make that particularly pleasant either. Like they you can use it as just like, oh, I'm just gonna use Xcode as my text editor. You can do that, but Xcode fights you a little bit on it and then
Casey's complained in the past about how the heck tabs are supposed to work. They keep changing their mind about it. And I'm a separate windows kind of guy anyway, which Xcode can do, but it also fits you on that. Oh, you wanted a separate window? Guess what? Your separate window's got three sidebars and a bottom thing. Oh yeah, well I can turn them off, but it's just
Anyway, X code only for Mac stuff. The modern answer to this question, I think this question has been in here since before this happened, but the modern answer to this question is. Yeah, like codec and clawed code. There's my my other IDEs that I'm using. And and I'm not really for my Mac apps, my for my three dinky Mac apps, which are mostly like already written, I'm not using the coding agents to code in them.
I'm using the code of the agents to try to find bugs or to try to help me diagnose crash reports by like reverse uh you know, disassembling binaries as part of AppKit to be like, help me find this bug, I cannot figure it out. And honestly, they can't figure it out either. So we're all having a trouble here. But anyway, the bottom line is I'm in a terminal window in the project directory of my Xcode project. add a Claud or Codex prompt, feeding it, you know, dragging in a dot IPS
crash report file into the window, which just you know, this if you in case you don't know this if you use terminal, if you just grab any file and drag it into the terminal window, it will put the full path the escaped full path of the thing that you dragged in in there. That's a feature of Apple Terminal. It's very convenient.
You can do that with coding agents. And so that's I guess my other IDE from Mac apps these days is Claude and Codecs and occasionally I I've used the Gemini one, but I didn't like it. Um
¶ BBEdit: The Ultimate Text Editor
For everything else, it's BB edit for me. So I'm if I'm writing node stuff, I'm using BB edit, like Perl, B edit, everything, everything that is not a Mac app. I am using BD Edit, which is not an IDE really. It's a text editor, but I have a lot of features built up. Like when I'm when I'm writing my a blog post, which happens every once in a while, um, or just editing the editing editing my website, I'm writing HTML and BB edit with all my
Weird macros and text snippets and like I get every I I forget how much stuff I've customized in BB Edit until like, you know, you launch BB Edit on my wife's account on her computer and I type keystrokes and either nothing happens or the wrong thing happens. Like, oh yeah, I guess that's a customization I've been using for two decades. I thought that was the default keystroke, but apparently it's not. And then I find out not only is that not a default keystroke.
That feature doesn't even exist, but it's an Apple script from like 1997 that I've been using since then that that is bound to that keystroke and I gotta find the anyway. I am so like like anyone who has used a text editor for a long time, you get so entrenched. And it's the same thing, like
If you wanted to use a different IDE or a different system, I've I have all these ones installed. I've used Visual Studio Code, Sublime, Atom, like it you name any kind of IDE text editor thing for the Mac, I've I have used it, tried it, probably still have it installed in some version Z. We just I've got that. I've got everything. I have a big applications folder, right? I always tried them. I was interested in them, but I always end up coming back to BB Edit.
Um, just because I have so much stuff built up there. And yeah, I could recreate my BB Edit world elsewhere, but it would be a lot of work for not. A particularly big win. So yeah, and and ever since BB had gained language server support many releases ago, uh I've uh been in the habit of updating and expanding the the language ser l uh language server support L S P language server protocol is like a um
A specification for how text editors talk to things that know the structure of source code. So you can do things like uh right click something and say take me to the definition of this or bring up quick help or whatever. All the things that you expect out of an IDE. BB edit, which is not really an IDE, it's just a text editor, has these features. So I can edit a shell script, a JSON file, an HTML file.
XML for an RSS feed, like anything you could possibly imagine. BB Edit understands it. Like PHP, I paid money for a commercial extension to BB Edit for like a the uh whatever in Intelus sense, but it's spelled with a PH because PHP. Um that lets me do IDE like stuff in BB edit with the P with the PHP source that I'm messing with. Like and obviously I have them for Pearl and Node and all that stuff. And I know this is
Ridiculous because you're like Visual Studio Code does that and 10,000 other things. I am very aware that Visual Studio Code has. So many more features. It's just I'm a BB edit person from head to toe and I've been using it for so long that I'm probably never gonna leave it. And so that's where I do everything else having anything to do with sort.
¶ Textmate 2 and Modern Development
Um yeah, so Xcode for iOS apps, obviously. Um but yeah, for other for anything else that I'm that I'm doing like in a text editor, for me I'm still using the ancient textmate 2. It it I mean, it's really showing its age in lots of ways. At least it still runs. It does. It still runs, you know, it's certainly uh obviously it's in Tahoe Squirkle Icon Jail. It still works, but I I am just now starting to think like
The reason I was able to call it Zed so quickly earlier was like I saw the blog post breeze by about like it's how awesome it is. I'm like, hmm, maybe I should actually start looking at these modern text editors. Now that like We are in an inflection point now where like AI coding agents are now it in being integrated into our workflows. Like the world is shifting. This might be a a time for me to finally jump to something more modern.
But having that like, you know, autocomplete or any kind of integration or God forbid a debugger in my IDE or in in my text editor. I've never had that for any web development stuff. I've only ever had that kind of advanced fun functionality in X code. I I've never like all the PHP I've ever written in my entire career, every web backend I've ever written, I've done without any of those tools. I've done with just text editors and looking up things in documentation and having things
you know, if I if I mistype something, having it just fail on runtime or something. Um so I'm interested in that world of like making making my non Xcode development more modern. Uh but right now I'm I ha I'm I have not yet done that, so the answer still is Textmate Two. Um but it it is not an answer I can actually uh recommend to anybody because it is very dated. It it does seem
pretty clearly abandoned uh and not even for a short amount of time. Uh for for a significant amount of time. Um, I think it's been abandoned for most of the time that I've had a son. Uh so it's it's been pr it's been a a while. And the o but the only thing is like when I have is exactly what John was just saying and what I was saying in the last answer, when I have tried other things. Like I back be between Textmate One and Two, I briefly was I tried Sublime Text and um
A couple other ones. I dun I don't even remember all of them that I tried. But I I n it was like pre VS Code being like the thing everyone did. And
I was I they were fine. Like I I learned I can switch. I just don't want to. And then when Textmate 2 came out, it did everything I wanted. So I guess I've been using that since. But I think like the problem when when I try to switch, I do have a lot of paper cuts I have to get over, of things like little muscle memory keyboard shortcuts or little behaviors that have always worked some way in Textmate that work differently in the thing I'm using next.
It's just it's a lot of friction to get over. So again, there has to be a good motivating reason. There has to be like both a push to get me off of what I'm using and a pull of like you know, what is gonna pull me towards this other alternative? Like what's gonna be a compelling, good, new, useful set of features or benefits or whatever for the new thing. And so far, I have not yet had a compelling push away from Textmate or a pull towards anything else to make that jump worth doing.
Uh but but I do think now, again, like with with a with agents coming into workflows more and and all these new tools that I really could and should be using to make my PHP coding a little bit less of a manual and error prone process. I should probably start looking at that. So I I think I will look at that in the near future.
Yeah, uh speaking of uh not ha using an IDE, also for my entire twenty five years of having a jobby job and writing Perl and Node code and stuff like that, I was using BB Edit and it didn't.
have language server support. So I had the the closest thing I had was that at some point in BB Edit's history they added a function pop-up menu that understood Perl. So you could uh pop up the menu at the top and you know you'd see the list of all the functions in the file and you could select one of them and jump to that function.
Uh, but nothing in the in the document of like right, click this and go to the definition or ch you know, forget about like find symbol or refactor rename. All these features that you take for granted in like modern IDs were not there. So I was writing my Perl mostly just like
No features, no nothing, just like Marco. You just you type, you find out whether it runs, no autocomplete, no, you know, tab completing symbols, even for common s you know, library, nothing, just nothing. There's no anything. And I knew it existed. I like I'd used it. What is it? Um IntelliSense was at the first one in Windows? The first like sort of autocomplete in uh what was that called, Casey? Visual Studio.
Yeah. Yeah. By the way, when I when I said IntelliFence, I was joking, but that's apparently actually the the name of the P. As I said, that's what I was trying to pronounce was that. Well yeah, but you said they put a P somewhere, but I just I was just guessing A Phil Ph. Oh wow. Yeah. I mean I don't know what an inch anyway, I uh you know, I had used it without the stuff and
When I started doing, you know, after I quit my jobby job and was just doing this and then suddenly I'm editing PHP, I was like, I have to do something to make this not as painful. And so I'm like, well, it would be great if I could right click a thing and find definition. And I'm like, well, there's gotta be a way to do the MB edit. It's got language server support. It pointed me to this. Uh and I bought it immediately. Uh you know, it's de definitely been worthwhile.
¶ Xcode Keybinding Customization
Uh one thing this is a question for both of you, like well maybe you don't have maybe Marco does with his text mate stuff, but like a couple of keystrokes that I am accustomed to in BB Edit, I found that I could not live without an X. And Xcode does let you customize most key bindings of stuff in the IDE, but the features aren't exactly the same as BB added. So I mentioned the function pop-up before. I bound, and I believe this is a custom binding. And BB added it, i bound control F.
to basically it will pop up that pop up menu, the function pop-up menu. It'll it'll instead of me having to click it, I just hit control F and it will pop it up. And then you can type to like narrow the list and use it. You know, you basically with the keyboard, you can jump to a function definition.
And X code has a feature that's sort of like that, which I cannot for the life of me ever remember what the right now I can't remember what it is. So anytime I have a fresh X code setup, I'm like, oh, I have to need to bind control F to that to that thing. What is it called? It's like
show item is it in the go menu? Is it one of those things that's not in the menu, but you can only find in the settings? And so I think I have a screenshot saved in a notes document and saying, hey dummy, when you go set up Xcode and you're trying to remember what you bind control F to, it's this.
And then of course it always conflicts with like move forward one character, which is this insane Emacs based key binding that lots of editors like to do. And like I will never want control F because in Emacs, by the way, I immediately bound in nineteen ninety three, I bound control F to find, because I'm a Mac user, I'm like
No, control F is not move forward one character, control F is find, and then I would go to anyone else's Emacs and I'd hit control F and the cursor would move forward one space and I'd be like I have a bunch of weird habits from BB Edit that I port over at Xcode. Do you take any Textmate key bindings and or do either one of you customize any of your key bindings at Xcode to either enhance them or make them feel familiar from like VS Code or Textmate? No.
Uh the main reason why is I I don't like having a whole bunch of custom settings that I have to change because like you know, I s I've I'm I set up a new laptop every couple of years. I'm always like I just I I and you know if I have to use some some other setup or some default setup, like I don't want to be totally lost and broken and I just I don't like having things that are that custom. Um I I I try to stick to default behaviors and look.
mostly most of the time, unless I really hate it. The the now when I do customize an Xcode, like the settings I do change, uh, are around things like indentation. I do not like the default indentation rules that X Code uses. They suck. Um and and I also don't like the editor inserting the closing brace or parentheses or whatever for me. Um so I turn off those things and I do I do indentation and closing punctuation manually.
There are certain rules of indentation that Apple has used. Um Even in objects like Objective C, the way they would indent uh very long methods to break over multiple lines. Uh like sometimes they would line up the colons. Some it it was weird. And then in Swift, some of the ways they do it are just super not compatible with my taste. I also think the Swift switch statement
But I have a sp separate setting for that. I was so excited when I saw that because I also disagree with the way the way they do switch statements. But there's a setting like there's all the indentation settings in Xcode, but there's this separate setting which is like, hey, when I do switches Do you want me to do it the way I want to do it or the other way? And it's like, no, the other way, please. 'Cause I switched that set. I'm looking I'm looking right now.
I can tell you where it is.'Cause I th basically what we're disagreeing with is I believe it it pushes like the case statements to be like the same indentation level as the opening switch. Yeah, which is it looks so wrong. It's wrong and I'll I I just open I just launched Xcode, I'll find the setting for you. I believe there's a separate setting just for the switch statement stuff. God, yeah. Uh Oh there we go. Editing indentation.
Uh oh wow they ch I forgot they just changed Xcode settings to be this stupid Indent switch statement case labels. Oh, there it is. But it's saying it is indenting it. Well, so mine is set to Swift in C languages. I don't think that's the default. I think the default was like none. But that's No, that's mine is set that way too, but but it doesn't indent them. It mine does. I have it on Swift and C languages and my I do a case statement is indented for it.
It's certainly like if I if I let it do the autocomplete thing where like if I if it's switching over any an enum, John, um if I Ha ha ha ha ha. Like it w the auto generated code that it generates still has them all shoved against the left. Yeah. I I mean try it. I that's what I have it set to and it does the right thing for me. Um as as for settings on stuff like
I'm of the opinion, uh like I I don't super duper customize it, but like I've proven to myself that there's certain things that I just can't live without or can't deal with or just I disagree with. So there's always gonna be some customization, and I'm of the opinion that every single modern Mac application should have a way to cloud sync settings if that's what you want.
And the ones that don't, like X code, drive me bonkers. Like, guys, come on. Like I mean two areas. One, obviously settings. Like if you customize your settings.
I'm not saying you have to cloud sync it for everybody, but you know, Apple does have this thing called iCloud and settings aren't that much data. Give me the option to cloud sync my Xcode settings and let me say if I want to or don't want to, I could have sets of settings. Like it's not that complicated. They could totally do it. The other thing with Xcode in particular is
All your signing certificate crap. iCloud keychain. It's synced through iCloud, but X codes like you know, all X codes crap. It's like well, some of it we sync through AutoCloud keychain, but sometimes when we make it we'll make it in your local keychain, so when you go over another Mac it won't be there and that's a security feature and yada yada and just please just give me the checkbox it says.
Just do it all through iCloud keychain. I don't want to have to think about all my signing crap. I don't want to accidentally make new versions on different laptops where I'm doing development. Just iCloud sync everything. So if you're out there making an Mac app and you have any kind of substantial settings that are not just like
two screens worth of checkboxes or something. Like Xcode's gotta have like hundreds or thousands of settings. Cloud sync those optionally, please give us the option to it because the there the Xcode I don't customize a lot. But the stuff I do customize, I have discovered that I can't live without and has made me non functional on default Xcode. The one that is probably the worst is
For whatever reason, I guess this is from was it Visual Studio? I guess it was Visual Studio, but like I'm thinking of like again, nineteen ninety two, nineteen ninety-three, the when you make Windows ninety five apps and this IDE on Windows. Casey, what would that have been? Would that have been Visual Studio as well? Are you thinking like M F C I think there was like some Yeah, but what was the IDE called? Oh p that was before my time.
Well anyway, uh that IDE had a button that you would press to make essentially what Xcode would call an archive build of your application. And Xcode, by default, I believe does not have a key binding to the thing that says make me an archive build and don't put up a dialog. Just do it. Just make an archive build. And I bound that to Command Shift A for archive.
And I had to steal it from the thing that every presenter uses at WWE C when they bring up that little pop-up. I like, what is it? Like quick entry, like. Command Shift A is a is one of the most commonly typed keystrokes in WWC videos because it doesn't do an archive build by default, it does that other thing. And I never use that other thing and I have and I've stolen it from it. So
I just feel like I just I just want to hit Command Shift A and do an archive build. That's like I feel like it's like the I'm ready to ship this new test flight build, command shift A, and then I just walk away and wait to see the organizer window pop up. So a couple of settings like that, like control F, Command Shift A, um
I believe I bound command J to jump to line, even though you could already do command L to jump to line just because BBI does command J. Like I'm a there's a little bit of that crossover because if I don't do that I find myself I can't successfully mode switch and end up hitting the wrong key. So Yeah, I don't I don't have too many tweaks, but some stuff I can't live with.
All right, thank you to our sponsors this episode, Squarespace, Zapier, and Quince. And thank you to our members who support us directly. You can join us at atp.fm slash join. One of the many perks of membership is ATP overtime, our weekly bonus topic. Every episode has an extra topic, usually fifteen, twenty minutes long, maybe, and it's just for members. You can join ATPFM slash join to hear it. This week in Overtime, we're gonna be talking about
non-developers now building apps. Obviously AI tools playing a role here. We're going to talk about that. So you want to hear that, join us once again, atb.fm slash join. Thanks everybody. And we'll talk to you next week. B A S E Y ISS Overtime average is up to twenty seven twenty five point seven minutes. I know you wanted to know. Oh thank you. I will update my outro accordingly.
¶ File System Special Meanings
All right, John, you wanna tell us about this thing that's been living in our show notes for like two years? Oh goodness, now I have to review it. Okay. Um So yeah, it has been here for a long time because it's weird and and boring. I believe the origin was this thread in Apple's developer forums where there's like an answer from an Apple DTS engineer trying to explain a particular behavior. I think the discussion was like Someone's using like URL objects in like some Apple platform code. Um
Or maybe it's bookmark objects or whatever. Apple Apple has started using many, many years ago like URLs for local file system stuff. Like instead of HTTP colon slash last they do file colon slash last just for yeah, for uniformity. We can use URLs to refer to anything, whether it's a local file or you know there's
a bunch of reasons why you may not do that and we'll uh may not want to do that and we'll get to that in a little bit. Um but anyway, uh various APIs take these or produce these and like Uh someone was surprised when they got one of those URL y things, I think, and I think it might have been a bookmark from the system. And they're like, I was just trying to get like a path to a file at you know slash A slash B slash C dot text.
And what it gave me was a path that said slash period no follow, all one word, slash a slash b slash c dot text. And it's like what what the hell is Slash dot nofollow. That's not a directory at the root level of my hard drive. And why did the system because they were doing like a string comparison like this string should be A B C and they're like, no, sorry, that doesn't match. The string is actually.nofollow ABC. I'm like, what?
And so an engineer tried had to explain this and that set off a whole big discussion of like stuff that exists in the Mac file system that you might not expect or things that have special meaning. So There are various things that you can put in file paths, as in strings separated by forward slashes.
on macOS that have meaning to the system. No follow is one of them. I believe it tells it not to follow sim links in the directory that follows or something like that. We'll link to this stuff and you can look up the specific meanings. I don't remember it off the top of my head. Um And the reason the explanation is like, hey, the system API provides this because we're trying to protect it against security flaws that happen where um
A path looks like the path you expect it to be, but some path in the middle of that path specification is actually a symlink to a different place. And so we, you know, there's various modes of the APIs where you can say, hey, traverse this thing, but don't follow symlink. But that requires the developer to have to remember.
Oh, and every time you call this function, make sure you pass the option that says, oh yeah, and don't follow simlinks because this is a security-related thing, and I don't want you being like led astray by some sneaky simlink that sends you off to a place that you're not supposed to be. So don't follow simlinks. But every developer doesn't remember to do that. Well, it turns out that Apple has an inline way in the path itself. So that no matter what API you f what Apple API you feed it to.
the Apple API or the underlying file system or whatever will say, hey, even if you didn't pass the no follow thing, I see that this path here is dot no follow. And I will just remove that part of the path, not take it as a real folder, but now I know that you don't want me to follow SimLink.
And so the API started returning these dot no follow links, basically like every single, you know, URL object or whatever you got from these APIs always had dot no follow in it. And there's so it's blowing up everybody's string comparisons. But the Apple person is like, this is intended, or basically like protecting against people for forgetting to pass the don't follow simlinks flag in the API calls. Now
Actual file system security is way more complicated than that. Let me see if I have the the link to that in here somewhere. No, I don't think I do. There was I'll dig it out if I can remember it for the next episode, but there was a um Someone posted from a Unix slash Linux perspective how difficult it is to securely traverse the file system. And it is monstrously difficult. Like just way, way, way harder than you think it is.
If you are a not a developer at all, you don't think about it at all. If you're a sort of not novice to medium developer, you know about like the easy things to look out for. But then there's always this stuff that's like way beyond the ken of like any sort of average developer who doesn't specialize in file systems to actually securely traverse a Linux style Unix. file system and unfortunately for Apple the no file thing is not
a complete solution for the reasons this thing explained. I'll I'll try to find a link if I can. But anyway, uh getting back to macOS, dot no follow is not the only one of these weird things that exists. There's another page that I'll link to that is uh from twenty nineteen. Talking about files that have special meanings. So if you have a well, this this explanation, I'm assuming it's accurate because I don't know any better, but I'll get to how you can tell for sure in a bit.
¶ Magic Files: NoSync, NoIndex, NoBackup
Um if any file or directory where the name contains dot no sync is ignored by iCloud synchronization. Any file or directory where the name contains dot no index is ignored by spotlight. Any file or directory where the name contains dot no backup is ignored by time machine. Now there are other ways to do a lot of these things with like extended attributes and obviously.
Dragging the things into the time machine exclude list and it writes to a P list somewhere and all that other stuff. But like these like special magic files, or the one where it's like, uh file uh slash dot dot named fork slash rsrc to get to the resource fork of a file. Another magical thing that you can type that has special meaning to the OS.
There are a bunch of these things in macOS that maybe you hear about years ago and you try using and then forget about, or maybe some utilities using it behind the scenes, but they tend to stay there for a long time. Um, and writing hyperspace, I had occasion to have to actually like find out the real truth of these things because I needed to either rely on them or handle them or whatever.
¶ Darwin Open Source & Debugging
And this is one of the things that I really enjoyed about hyperspace in particular. I'm used to, for all of my regular career as a developer, having access to the source code of the libraries and operating system that I'm working on. It makes things so much easier when that's true. Now, obviously I don't have the source code to AppKit or Swift UI, and God, I wish I did many, many, many times. That's when I'm using the stupid coding agents and like disassemble I I I bought a copy of Hopper.
So I could use a disassembler to say I just I need to see what what is this API doing? I need change like I want to see the source code, right? But for file system stuff. Remember that Apple Mac OS ten, Mac OS, and iOS, and iPad OS, and audio OS, and Vision OS, XROS, every operating system Apple makes essentially. Is based on Darwin, Apple's BSD, Unix, and Mox combination operating system. And that is open source. Darwin is open source. And guess where all the file system stuff is.
It's in Darwin. All the low level file system stuff is in there. Now, Darwin is difficult to navigate. It will link you to Apple's open source, which is on GitHub. But you can see they do source code releases for every release of iOS and Mac OS and all the other things to see the Darwin base code for there. And this file system stuff, like, who handles.nofollow?
That I haven't looked this up, but I'm pretty sure that's going to end up being in the Apple open source. What about dot dot named forkslash RSRC? Where is that? That's in the open source. And so if you're wondering, hey, how does this stuff actually work? You can get the source code for it. And it is incredibly illuminating because I don't know if Apple like is more lax with like uh
private API use or whatever, like that, you know, SPI analysis where it's trying to say, are you using private APIs that you're not supposed to be using? They mostly care about using like private APIs and AppKit and stuff. Sometimes you can sneak one by if you're using like
an API in the Darwin, you know, low level Unix operating system that someone had neglected to add to the list of private stuff. And you're like, well I'm not sure if I should be using this or if it works at all, but I do have the source code for it, so I'm pretty sure I know how it works.
And you will find treasures in there, like the named fork, and I'm assuming like the.no follow. I'm not sure if the.no backup, dot no index, and.no sync are in there. They might be at higher level code that we don't have the source for, but it really makes me wish.
that essentially we have the source for all of these things because it makes development so much easier. It makes debugging problems so much easier. I mean people could give patches that think about you file a radar and nothing happens for a year. Imagine if you could send a pull request and say, hey, I have the source. I found the bug.
I think this fixes it. They probably reject it because they're like, oh, you can't fix it in that way because that breaks some other thing, yada yada. But maybe that would motivate them to, you know, fix it more quickly. But anyway, I if you're ever doing anything related to Low level stuff, especially low level file system stuff.
Look at the Apple open source repository because you will find the source code to the thing that is doing that stuff on macOS and iOS and all those other operating systems. And then finally, related to all of this.
¶ Swift FilePath & Cross-Platform Issues
There has been a uh there was a recent uh SWIFT evolution proposal. These are all like S E something, which is Swift Evolution hyphen some number, which is like a proposal for the for some change to the Swift language. And they go through a review process and blah blah blah. This one is a proposal to add file path to the standard library, which is a fine abstraction for file path.
Um, this is not the thing I was talking about about how hard it is to do secure file systems traversal in Linux. I still have to find that one for the show notes.
This describes file path, you know, a an abstraction for as opposed to using URLs for everything. This is a, you know, an abstraction for local file system file paths, but it's cross platform because again, Swift doesn't just run on Mac OS, it also runs on Linux and Windows and lots of other platforms, and they they want this language to not just be an Apple platform language, so they're trying to make it work everywhere, and a portable
Implementation of file path that works on macOS, Linux, and Windows is a useful abstraction. It already exists. They would like to add it to the Swift standard library. They would like to stop depending on URL, which I think is part of foundation, which is part of Apple platform crap. So they're like, we need one that is not tied to Apple platforms at all, I would encourage you to the very least.
Skim the file path, you know, the what is this one? Uh SEO529, the proposal to add file path to the standard library, skim it to see what is involved in file path. And You'll be probably surprised by at least one or two things in here about wait, that's a valid file path? Yeah.
You can do that? Because if you try to come up with an abstraction file path like that's really easy, it's just a bunch of path components and uh separated by some separator and there's some semantics about that. But yeah, maybe it's a little tricky with character encodings, but that's not a big deal, right?
Windows file paths alone have so much Byzantine crap in them. It's ridiculous. Like they they do mention dot no follow in here. They also mention dot vol, which is another one of the magic strings you can put in Unix path, but Windows, man. Drive letters, yes, naturally. But there's also like backslash splash black backslash backslash period backslash pipe syntax to get it like Device nodes and stuff with special st I I bet neither one of you has ever even heard of half of this stuff. Like
And then they have to make an abstraction that works with these paths, but also the same abstraction works with Linux paths that also works with Apple paths. It is way more complicated than you think, and it's like You know, if you were ever trying to do something cross-platform, you'd be like, Thank God, someone else wrote file path and I didn't have to. But even just using it correctly is tricky. So
I would encourage you to check this out. Um and uh again, maybe you'll learn something about uh the m the the special magic strings that you can put in file pass on macOS that will have behaviors that you might find useful. Today I learned.
Did you skim it and look at the the Windows things? I didn't know half of this stuff. Like I didn't know the one with the drive letter where it's C colon and then a backslash versus C colon without it. Like that both of those are still m accepted by modern Windows. Obviously there's the backslash splash slash server slash share thing that you're familiar with, but the backslash bash slash period backslash pipe with name I had never heard. Yeah. Never seen that.
N N U L All Caps, the the backslash, backslash question mark, backslash C colon backslash. Oh, there's too many backslashes. What are they doing over there? Like I've it makes me so happy not to be on Windows. Like I know we've got these weird dot files at macOS, but the Windows one's just So happy that's not an operating system that I ever have to deal with. Yeah.
Yeah, conventional uh drive letter forms, UNC forms, uh current drive root and root list paths. So that's all that all makes sense. I was familiar with all those. Drive namespace paths beginning with backslash backslash dot backslash followed by a win thirty two device name e.g. backslash backslash dot backslash type uh backslash backslash dot backslash com one. Backslash, backslash, dot, backslash, physical drive zero. Yikes, didn't know that.
And then they have to make an abstraction over this, like the file path thing has to have like accessor methods for like Like they came up with names like what do we call it? Like, yeah, it's drive letter, but what about when it's like backslides, like server side? Like what is that part called? Like they have to come up with like a, you know, a word for that part of the path. That is the same word on Windows, Linux, and Mac OS?
Just amaz pretty amazing work on the for the people who created File Path.
