670: Institutionally Inescapable

19 Dec 2025 · 1 h 40 min

Ask about this episode

Ask anything about it. ChatGPT or Claude reads this page and answers with the times it was said.

Connect VO and ask about every podcast you hear, including the moments you saved. Add to ChatGPT · Add to Claude

In short

Accidental Tech Podcast Episode 670: Institutionally Inescapable

Episode Overview In this episode of the Accidental Tech Podcast, the hosts engage in discussions covering a range of topics related to technology, Apple products, programming practices, and industry news. The episode features a blend of personal anecdotes, technical insights, and commentary on ongoing developments in the tech industry.

Key Segments

Pre-show Discussions

  • Marco Discusses Winter Tires: Marco shares his experience with winter driving and the necessity of snow tires for better performance. A humorous debate ensues about all-wheel drive versus rear-wheel drive vehicles in snowy conditions.
  • Gift Memberships: The hosts remind listeners about the availability of ATP gift memberships, suitable for holiday gifting.

Follow-Up Topics

  • Cloudflare Update: John provides an update on his use of Cloudflare for hosting, discussing performance improvements and challenges faced with caching.
  • Apple Executive Departures: Updates on Jeff Williams’ nomination to Disney’s board and speculations regarding other Apple executives considering new roles.
  • Apple’s Carbon Credits Initiative: Discussion about Apple's carbon neutrality goals by 2030 and related challenges.
  • AI in Media: Conversations around the implementation of AI in dubbing and voice matching for various languages, as well as concerns about Siri’s pronunciation accuracy.

Major News Discussion

  • Apple ID Lockout Case: The episode delves into a significant case about a user being locked out of their Apple ID account due to issues with a gift card. The discussion highlights the lack of recourse for consumers when corporations exercise control over digital identities, illustrating the vulnerabilities users face with tech giants.
  • Merger News in Entertainment: The hosts analyze Netflix's acquisition of Warner Bros. and discuss industry implications, including the potential monopolization of content delivery and the involvement of high-profile figures in corporate acquisitions.

Technical Insights

  • Communicating Between Classes:
  • The episode also features a detailed discussion on programming practices, specifically how to facilitate communication between different classes in an application without causing tight coupling.
  • The solution of using Notification Center is debated, with considerations for when it is appropriate to use global notifications versus other methods of communication such as dependency injection or common ancestor management.

Key Takeaways

  • Navigating the Tech Landscape: The episode emphasizes the challenges users face in navigating tech products and services and the importance of understanding the underlying systems that govern digital identities.
  • Industry Trends: The conversations provide insight into the current trends within the tech and entertainment industries, specifically regarding mergers and acquisitions and how they may affect consumer choice and market competition.
  • Programming Practices: The discussion around class communication highlights practical approaches to software design while considering the trade-offs of using global state and dependencies.

Conclusion Episode 670 of the Accidental Tech Podcast reflects on the intricacies of modern technology, the interplay of major corporations, and the implications of these factors on everyday users. It offers both lighthearted commentary and serious reflections on the responsibilities of tech companies in managing user trust and data.

Listeners interested in the nuances of technology, programming challenges, and industry dynamics would find this episode particularly engaging.

Written by AI. May contain mistakes. Listen to the episode to check what was said.

Hear the part that matters, and keep it.Open this episode in VO. Double tap your headphones to save a moment as you listen.
Get VO free

Transcript

Automatic transcript. May contain errors.

0:00I have rejoined the winter tire lifestyle, sort of. oh in the i3 that's right so um so over the weekend uh tiff had taken my car out of town because it has a long range and i was driving her car the i3 my car the ix is perfectly well in the snow i meant to say ix i 100 said i3 but i was i meant to say i i3 is the one that has a range extender that's right um but it's still you know to go like you know deep upstate it's not super great so anyway um so she had my good car um and i had the i3 which is a wonderful car in lots of ways however i learned uh that in snow and ice it is not only not a wonderful car it is a horrendously bad car in snow and ice has it ever had its tires changed ever uh yeah actually well it only it only has like 11 000 miles on it but is it the original tires what year was this car Not anymore.

1:00There was like a slow leak in about a year ago, maybe there was a slow leak and they determined just let's just replace all of them because they had worn enough by that point that might as well do it. So they're actually fairly new tires. The problem is if you look into i3 owners and their experience of driving it in the winter. So it is a rear wheel drive car, which, you know, I've had rear wheel drive cars before. I know how they handle in the snow, which is not amazing. badly but yeah but you know if you if you have snow tires you can do okay um it's still not it's still you know way worse than an all-wheel drive car even with regular all-season tires but okay um don't at me it's way worse than firm wheel drive too but yes yes it is you know can i just can i just stop you right there yeah i don't particularly disagree with you but the the snow tire zealots are going to come for you good for them they will argue i've been there argue I just want to acknowledge this argument because I'm not interested in pursuing it further after this moment.

1:59I acknowledge and I am acknowledging on behalf of all three of us until John argues with me that I understand that with the right set of snow tires, a rear wheel drive car is actually very performant in the snow. I agree with Marco, though, for an average driver, which I include myself in that, it is probably better to have an all wheel drive car in the snow than a rear wheel drive car. rear wheel drive car with snow tires. Yes. Especially where I am. And I am not interested in having an argument about this anywhere on the internet. Please and thank you. The only thing I would disagree with is if you have an all wheel drive car with like a summer performance tires on it.

2:34Oh, been there. Not going to be better. Been there. It's not good. Yeah. But yeah, my assertion is merely that all wheel drive with all season tires is better than a rear wheel drive with snow tires. Anyway. People will, people will argue with you. I know. I'm not interested in the argument, everyone. Thank you, but no thank you. Anyway, and to clarify, I'm talking about winter tires, not snow tires, technically. Thank you, everybody. Okay, driving Tiff's car in the snow and ice over the last few days. I messaged her. I'm like, can I please buy you snow tires? Because the problem is the i3, yeah, it's rear-wheel drive.

3:11So the i3 has very narrow tires. It's basically motorcycle tires, even narrower than many motorcycle tires. It's like a big roller skate. The good thing is when it spins, since the wheelbase is so short, you just, you can't even tell when it's going forward or backward or sideways. Yeah. And the tires that are on it are like eco range maxing tires, which are not good for traction in the winter. They're not optimized for that. They're optimized for roller skate. Yeah, real hard tires. Yeah. They're optimized for range in the summer, which is fine, but not what we need. So finally, you know, go into a tire rack, place an order.

3:47like there's one snow tire that is made for this i was gonna say who makes snow tires that small there is one on this i think i think it's a blizzac there's one currently on the market that fits it and if you look like you remember the tire size uh no but it's it's very what's the what's the wheel size it's like 16 inches i can tell you hold on my order has shipped as someone pointed out online recently i know we talked about tire sizing and in the uh in context of the bootleg thing and we went through the tire sizing and a thing that had never occurred to me until someone just pointed out recently is that tire sizing mixes uh metric imperial and proportion in the same size so the tire size by the way the tire size so the the regular um tire size for the vehicle stock is actually staggered but for the snow tires it's square and the tire size for the snows is 155 70 r19 19 inch that's way bigger than i thought it would be yes seriously I'm very surprised.

4:43The 155, not surprising. The 155 is millimeters. Yes. It's millimeters. Then the 19 is inches. And then the other number is sidewall height as a proportion of the width, I believe. Yeah. So I assume 155 is fairly narrow for a car? Yes. Yes, yes, yes. It's very narrow. But 19 is way bigger than I would have guessed. Yeah. And actually, having just had to replace one of Aaron's tires, which is a whole story, I forget what that was, but I want to say it was like 275. I can look that up as well, and I'll get back to you in a second. But it was quite like two or three times. It was like twice the size of what you're talking about.

5:16It's ridiculous. Yeah. So anyway, here's hoping that rejoining the snow tire, winter tire lifestyle will improve this car in the snow for the rest of its useful life in our household. All right. So it is nearly Christmas as we record this. It is the 17th of December. Hanukkah is actually going as we speak. and if you are in the gift-giving mood and you have a nerd in your life that perhaps listens to the show, which maybe you do too. Hopefully that's how you're hearing this message. Anyways, if you have a nerd that you want to gift a membership to, remember that thanks to the hard work of one John Syracuse, ATP gift memberships are a thing and you can actually gift somebody an entire membership for, I believe, John, and jump in here a month, a year, maybe even forever.

6:02No, not forever. But there's all sorts of different things you can do with gift memberships. John, how does this work? well the thing you need to know is you go to atp.fm slash gift that's the url for you i added some more instructions there if you go to atp.fm slash store i also put the gift instructions there uh but yeah you can buy a month or a year you can buy multiple months you can buy multiple years uh it's all explained in the fact uh it's a it's been a pretty solid system people have been using it and it has been working for them and we haven't really had any problems the only wrinkle is that obviously to buy something um you have to create an account so you can give payment through our payment processor and stuff like that you're led through it on the page atp.fm gift will explain it all and then they have to put in your email address if you're the one who wants the gift or something so there's like a url that's like atp.fm gift question mark four equals your email address it just pre-fills the form um but don't worry if they enter the wrong email address we can even fix that after the fact so we've had a lot of people successfully use this process and not get confused by it so i think it's working uh the great thing about uh atp membership gift you can get it literally Christmas morning.

7:05There's no shipping. You just do a payment, and then you get a URL, and then you can either hastily print that or just write down the code that we give you, like the redemption code, and just stick it in a little envelope and put a bow on it. Perfect last-minute gift. No lead time required. Instantly delivered to you. ATP.fm slash gift. Now, John, you've made me scared now because you've talked about how you have to enter the recipient's email address. You just said instantly delivered. Does that mean the gift will be given away immediately upon purchase? No, we don't do any delivery for you. After you purchase a gift membership, you'll have instructions on what to do, and then you deliver the gift however you want to.

7:41You can print it out on a piece of paper. You can put it in a gift box. You can text it to them. You could mail it to them in the mail. You could do whatever you want with it. You could just read it to them on Christmas morning. It's entirely up to you. The surprise will not be spoiled by anything in our system, but that means that you must actually deliver the gift. And yeah, it is a last-minute gift idea. you do have to hastily write down the redemption code or print something out or text them. But, you know, whether it's a piece of paper or a texted link, it works just the same. Excellent. Well, I'm glad that the surprise will not be ruined.

8:13And again, ATP.fm slash gift. And this is doubly pertinent because we also need to announce that we have a new member special for December. We watched, we did ATP Movie Club and we watched the 1983 film War Games with Matthew Broderick and Ali Sheedy and a bunch of other people. And I had seen it, but not in like 20 years. Marco effectively hadn't seen it. And John, you seem to know this movie inside and out. So anything that you would like to add about that? Yeah, I have some very rapid fire follow up for the episode that I will try not to spoil. First, this movie has been often requested. And if you want to, if you're dying to listen to it, now's your time.

8:55for anybody who listens to it you can listen to how many times I say nuclear and how many times I say nuclear so that's a fun game you can play rest assured I do know the difference but unfortunately I was born in the 70s and a child of the 80s and the incorrect pronunciation is wedged in my head so you'll hear just like Mario that's just an accent you'll hear as the episode goes on my discipline gets worse and worse so that's fun two, NORAD is located in Colorado Springs, Colorado, not Wyoming. We were at the error. Casey tried to point that out. I think I missed it. No, no, no, no. I also got it wrong because I saw Cheyenne or Cheyenne or whatever it's pronounced on the sign, and I thought that was Wyoming.

9:36It is not. It is in Colorado, as you said. Three, the 80s nuclear war movie that I was trying to remember is not The Day After Tomorrow. That's a 2004 climate disaster movie directed by Roland Emmerich. It was The Day After. These things jumble in my head because I'm old. I regret the error. And finally, the thing that I will not spoil, but you'll have to listen to the episode to know what I'm talking about. But the thing on the episode I asked, if anyone is aware of this thing existing before the movie War Games came out, let us know. And I am here to tell you that tons of people let us know.

10:08And rest assured, the thing that is in that movie that we discuss didn't exist well before that movie and is a widespread phenomenon all over this country, potentially coming here from Europe. Anyway, that's our follow-up for the member special. Slightly mysterious, but it's War Games. You should watch the movie even if you're not a member. All right, John, you have yet another Cloudflare update. Is there trouble in paradise? No, I mean, last time I was saying that I had, you know, switched over to that and had it sitting in front of my website and doing caching and SSL termination and that they had, you know, we did some follow-up about this workers thing they have or the serverless thing that can do stuff and you can host stuff in R2 and all that stuff and i said i would look into that i did so now my website is fully on cloud flare i am using cloud flare workers to actually serve my site uh no traffic goes to my crappy shared hosting thing anymore for that particular website there's other websites that are still there and it's working pretty well except that i quickly learned that when you do worker um it kind of sits alongside as a peer to caching so i can't put like cloud flare caching in front of my worker but there's a caching api in the worker so i basically have to manually do like the stuff that a web browser would do i have to manually set the headers and the expires headers for caching i have to manually deal with like trailing slashes and crap i have to manually do caching it's still like maybe two pages of code now instead of one but it's a little bit silly it would be nice if you could just say hey um cloudflare do your caching thing in front of my worker but still the worker would have to do the cache expires header because the way i had caching configured was to honor the uh the headers that were coming out anyway um it seems to be working fine i had a little a couple of glitches where i didn't fully reproduce the behavior that i had in apache but um i think i'm going to run it like this for a while i still have my shared hosting site and i still have the site there so i guess i'll publish to both sites uh deploy to both sites as i go uh but it's working pretty well so you know i guess i'll give you an update if anything disastrous happens but for now it's uh going pretty well and you said hypercritical.co is pointing to this worker site.

12:14Is that right? That's right. If you hit that URL now, everything you see there, the files are all hosted on R2 because I have some that are bigger than 25 megs and I didn't want to do that weird bifurcation. And yes, I could have made a backend site at Cloudflare and then had it fronted by Cloudflare. And it's just, I didn't feel like going to that. I just wanted uniformity. Everything's in R2. It's fed by a worker. The worker acts like the world's dumbest static content web server. And it has, and it accesses Cloudflare's caching front end as it goes uh and i think it's way faster than it was before because i tried it i tried it both ways like using my crappy shared hosting as the origin server with caching in front of it versus doing it all in worker it's much faster to do it all worker because my mostly because my crappy shared hosting was really bad um like anytime it actually had to go to the origin server the the request from went from tens of milliseconds to hundreds of milliseconds and it was ridiculous so not that it matters for a static website but it's faster now too oh and i went over I went over the worker.

13:09I didn't go over it. I got the warning email that says, you're close to the daily limit for free worker requests. So now, of course, I'm paying for worker. It's$5 a month. Not a big deal. I mean, that's what I'm paying Linode currently for their baby, what is it, Nanode or whatever. And that's a full-on computer asterisk. Yeah, that would have been easier. It's just that I got sucked into this whole CloudFare thing. I kind of wish I had your setup, because then I could just run a web server and configure it instead of writing my own crappy web server in Node.js, but whatever. No, I honestly, I think either approach is perfectly valid.

13:40All right. Let's talk about Marco's former TV. Wayne Morgan writes regarding Marco's LG C7 image problem. This was a known issue with the C7 and B7. They actually had a repair notice where until a few years ago, they would fix it for free. I had the exact same issues as you between Minecraft and the hue burning in the center. Is that what yours look like? This picture, Marco? I never put up like a solid color to test it. It was just, it was so apparent, like the shift towards green. and what we've heard over and over again is basically that like the red sub pixels would wear out in the middle faster than everywhere else possibly because some theories are like that's where people's faces are and yeah it's skin tone um and i don't know if that's true or if it's like heat or both but whatever it is this is a very common problem as reported by the incredibly rigorous data of people telling us about it um it seems like a pretty common yeah if you had you know when it first started to happen it sounds like you could have got it repaired for free but you let it fester and now it's kind of like apples the keyboard repair programs they eventually end and so it's too late for you anyway yeah it's the kind of thing well the that particular problem like the the minecraft burn in with the hearts on the bottom that's been there for years but the particular problem of the middle of it slowly turning green that's only been happening for at least in a noticeable way for maybe a few months um so i think even if i had done it immediately it would have it would have been too late you needed a new tv anyway so also well that ends well it's funny though like the so that besides besides the tv getting 10 inches larger diagonally um nobody in the family seems to notice they didn't notice the giant blob in the middle of the old well they they notice look as i'm sure not only the two of you but certainly many if not most of our listeners are aware of a phenomenon when you are kind of the the person in charge of the technology of the house you only hear about things that don't work you don't really When things work great, no one – I mean this is true of most household duties that most people do.

15:33When things are working great, no one says anything. They might notice, probably not. They certainly don't notice enough to say anything. It's only when things go wrong or need attention that you tend to hear about them. So the way I am thanked, as with, again, with any household duties that people do, the way I am thanked for my hard work in this area is an absence of complaints. And I accept that. I wish my family was more impressed by my TV. It looks really good. Yeah, I wish my family was more impressed by my amazing Wi-Fi setup. But yeah, it just doesn't happen. We are sponsored this episode by Notion.

16:12If you are always swamped after meetings with admin work, Notion agent can do that busy work for you. It can read through your meeting notes, add action items to the right places right in Notion. And you can even tag teammates automatically. It's like having a project manager that keeps everything on track in the background while you keep an eye on the bigger picture. Notion is an amazing tool that brings all of your notes, docs, and projects into one connected space that just works. It's seamless, flexible, powerful, and actually fun to use. And now with AI built right in, you spend less time switching between tools and more time creating great work.

16:50And now with Notion Agent, your AI doesn't just help with work, it finishes it. Notion Agent can do anything that you can do in Notion by tapping into Notion Workspace, the web, and any connected tools like Slack or Google Drive so that it can complete assigned actions end-to-end, leaving you to be able to do the hard decisions and the high-level work. It's like delegating to another version of you that knows your style, your workflow, and your preferences because it learns from how you work. Notion Agent has an incredible set of features. You can form a plan, execute it, reassess and try again if it hits a snag.

17:25And it has things like enhanced database querying capabilities to find patterns and insights in mere seconds. And because this is all inside Notion, you are always in control. You tell your agent how to behave and then it will remember and update memories automatically. Everything your agent does is editable and transparent. You can always undo changes and review changes so you can trust it with important work. Notion is used by so many companies. Try it out today. Try Notion now with Notion Agent at Notion.com slash ATP. That's all lowercase letters, Notion.com slash ATP, to try your new AI teammate, Notion Agent, today.

18:02And when you use our link, you're supporting our show, Notion.com slash ATP. Thanks to Notion for sponsoring our show.

18:13All right, let's talk Apple executives. First of all, Jeff Williams retired like two weeks ago and is now sort of kind of unretiring. Not really. But apparently Jeff Williams has been nominated to join the Disney board. So reading from Jay Peters in The Verge, at The Verge, wherever, something The Verge. Jeff Williams, who recently retired from Apple, will stand for election, quote, as a new independent director at the company's 2026 annual meeting of shareholders, quote, Disney says. The board will be expanded from 10 to 11 members. Additionally, with regard to Johnny Surugi and, oh, where would he go if he did leave?

18:49Joshua Price writes, after watching the Rivian event this week where they announced that they're building custom silicon for their vehicles, could that be a potential competitor that Johnny Surugi would have considered? That seems like a big step down to me. It does, but you never know. Also, a lot of people reached out to say NVIDIA is another option potentially. That's maybe a lateral move, but I don't know. Nvidia seems a lot more volatile and is a new member of biggest company in the world, Club, which Apple's been a member of for a while. Yeah. All right. With regard to last week's overtime, we were talking about carbon credits and Apple 2030 where they said there would be carbon neutral.

19:26I'm sure there's asterisk, dagger, double dagger, et cetera. Zach writes, I actually work in the carbon credit space. This is, again, ATP. What did I call this? Something corner. Job corner. I don't know. We have people everywhere. I actually work in the carbon credit space. my job is essentially carbon accounting, so I know quite a bit about carbon credits. In order to sell carbon credits that a company like Apple would purchase, you need to go through a registry. The registry uses independent auditors to verify the credits. In order for your credits to be valid, there are several criteria that need to be met, which includes a minimum of 100 years of stability.

19:55Part of this means you cannot sell your carbon capture byproduct into certain markets where, for example, they would be exposed to high temperatures or very acidic conditions that would result in the release of the captured carbon dioxide. The whole process of producing karma credits is honestly a huge hassle, but it has to be that way. So people cannot easily cheat it. Yeah. It's a complex industry. It's not entirely a scam, but it's difficult to do in a way that satisfies everybody. All right. We got a lot of feedback with regard to your split iMessage situation. Given that you haven't put a lot of follow-up in here, I'm assuming that means you have no particularly satisfying answers.

20:27Oh, I mean, lots of people had suggestions that involved, you know, like tear your world down and start it back up again, or like suggestions that would never work like you know which involves going around to everybody's device that you communicate with and forcing their settings into a particular thing i think i mentioned this when we talked about it but like there is that setting of like by default what do you want to begin conversations from and also what do you want to be reachable at and those settings are like i don't know if they're per device or per os but definitely there's different settings on mac os and ios and ipads and like policing everyone even just in your like immediate family just trying to police them and all their devices and make sure all their settings are rigidly set like this so you never bifurcate things on the theory that the bifurcation is solely based on the fact that somebody started a message thread and they auto-completed two apple ids and one phone number or whatever you know like that's just not tenable like whether or not that would work that's that's ridiculous and i think it's stupid because the whole point of the contacts is to say all of these things refer to this person so just show it as this person but yeah no there were no solutions that i was willing to try because a lot of them were like delete every thread you have sign out of all your devices sign out of your Apple ID, start a new thread.

21:32It's like, nope, no thanks. So yeah, they're just, they continue to be bifurcated, but things could be worse. They could. So Sir Shannon writes, I just checked my pinned three-person group chat messages on macOS. So far this month, there are 21 separate conversations for that single conversation, one pinned and 20 unpinned. Three of the unpinned threads have the correct custom image. The rest, including the pinned conversation, do not. It's fine on iOS, mostly. What is three choose three, if I'm saying that right? remember uh permutations and combinations no isn't it three times two times one and i feel like uh there should not be 21 separate different ways to combine three-person group chat if my math is right but either way that's ridiculous something is barely broken and what a recourse does sure shannon have i don't know just you just i just deal with it just i don't like it anyway no it's intractable.

22:25I still have separate conversations. We all, the best we can do is just, we all try to contribute to the one that's the highest up in our message list. And that usually works. Yikes. All right. With regard to AI generated voice matched dubbing, particularly with like Fitness Plus, for example, Fran Basora writes, I've been able to try the Spanish dubbing of Apple Fitness Plus. It doesn't feel completely off, but you can tell a bit that it's an AI generated dub. It keeps the essence of the trainer's voices though, which makes it feel a bit more familiar. Stefana Secondus writes, I listened to a German track and it's better than expected.

22:56The voice somewhat matches the trainer and conveys some emotion, though it's more monotonous than the original. Some translations are awkward and the lip sync doesn't match at all. Overall, it's on the level of a dubbed teleshopping show. Far better than YouTube autodubbing, but not immediately obvious as AI and usable if you don't speak English. And speaking of YouTube, Ben Madison writes, on the topic of generated voices, a few months ago I tried to airplay an MKBHD video from my Mac to my Apple TV and the audio switched what appeared to be Vietnamese in Marquez's voice. And Ben then took a recording of that and uploaded it to, of course, YouTube.

23:27And it is pretty funny to watch for a little bit and impressive. Do you think that's like YouTube auto generating that? Yes. It's got it. And they do voice matching automatically now, I guess? Yep. I feel like there was news about this like six to 12 months ago, but I probably can't put my fingers on a link or anything. Real-time follow-up, I messed up the math on the choose thing because it should be like it's basically like how many different combinations of two possible things phone number and email address can you have with three people uh and so please mathematicians you can write it and tell us what the correct math and that would be but i still think it's not 21 good talk all right uh with regard to um pronouncing your name correctly and this individual has a name that my feeble american brain cannot pronounce very easily and in the midst of complaining justifiably about siri not pronouncing their name correctly Now I get to butcher their name.

24:16So you know what? Actually, this is what I'm going to do. I'm going to say, Paul Z writes, I've been fighting with my iOS to say my last name correctly for years. Prior to hearing your... Now, see, now I've got to pronounce it, otherwise this doesn't end. All right. Paul Zadonacki writes, I've been fighting with iOS... I'm guessing the J is silent. Paul Zadonacki writes, I've been fighting... I'll get this one day. I've been fighting with iOS to say my last name correctly for years. Prior to hearing a recent episode, it would pronounce my family members' names correctly, but butcher mine. As of today, and trying again with my contact card, as you just suggested, it'll pronounce my name correctly when I ask what my name is.

24:51But when I say, hey dingus, remind me to do X when I get home, it still pronounces my name wrong in the confirmation response, although less wrong than in previous years. Say it with me, everybody. Shotguns are inconsistent. Why is Siri acknowledging you back after a simple command with your last name? Yeah, I'm confused too, unless Paul is somehow mispronounced. Is it like, you know, Mr. Zedronoski or something like is it like but I've never I don't know if there's a setting to have it address you that way I've always it always just mine doesn't address me at all by name mine just yeah it just says okay I'll yeah I'll remind you of that when you get home or it repeats what your reminder is I don't know I mean maybe the name is in the reminder text you know like when if I like don't know someone's name I'll try to avoid needing to say it do you think Siri just doesn't know any of our names except Paul but everyone else Siri's like or Paul is Paul is her favorite.

25:41Maybe that's it. It's the complaint we all have about Siri. In addition to it not working and being bad and broken, it's not even consistently bad and broken and not working. Sometimes things work, sometimes don't. Things used to stop working. Other things start working. It's just ridiculous. And my shotgun thing was, in fact, the Destiny reference that five people will get, but it is what it is. Good talk. Alright, this is the time of the show when I do a little bit of reading for everyone's enjoyment. Joe Lyon has come back with some information about Intel learning from the chips at FABs for others.

26:14So Joe writes, Chip Foundry doesn't get the design or schematic from the customer. The Foundry just receives the final reticles or masks, or for example, masks, which is the design as implemented in physical layout over dozens or hundreds of masking layers. Depending on the relationship, the Foundry doesn't necessarily know what the heck they're making, certainly not down to the circuit level. The Foundry supplies a PDK or process development kit to the customer that tells them what kind of transistors and other structures they can make, including the sizing and performance, and the PDK translates the customer's design into the final reticle set that is compatible with the foundry's process flow, all at the customer side.

26:49The reticle set is basically like a software binary, whereas the original schematic, or more likely the original VHDL code, is like the source code. Yes, theoretically, a binary can be decompiled or reverse-engineered, but even after that, it's never the same as having the original source code. No comments, no documentation, variable names are arbitrary, etc. Same is true when trying to go from reticle backwards to schematic, much less the original VHDL code. And that is before all the policies put into place to separate Intel Foundry from Intel product divisions. I'm assuming that Intel will put up an extremely strong firewall between those divisions because the Foundry model requires complete trust on both sides.

27:25It would immediately destroy the whole Foundry business if Intel started acting sneaky. Additionally, Jason Biotech writes, Regarding the Apple giving their chip designs to Intel, My company has done some research on this problem. It seems intractable, of course. You can't keep your design secret from the people you're asking to build the chips, right? The basic idea lies in sending a design that is obfuscated and non-functional when built, useless to everyone, including the chip fab, but that you, with secret knowledge only you possess, can fix afterward to produce the functional chip. Like any cryptography problem, because that's basically what this is, just in hardware, the devil's in the details.

27:55You can find more information on the Galois company blog, which we'll link in the show notes. Yeah. Exciting title for the paper. or reverse engineer this towards provable cryptographic protection for circuit IP. I don't think Apple will be pursuing this, and I'm assuming Intel will be able to keep their secrets safe. But yeah, it's just, although it may be a small risk, it is non-zero. And also the risk of TSMC someday making their own chip designs is also non-zero. So it's not a perfect world, but we'll see. I'm still crossing my fingers that something actually happens with all this Intel stuff.

28:29But these are just rumors for now. All right. And then finally tonight, James Willby writes, I tried Apple's migrate purchases feature that was released earlier this year. Spoiler alert, it didn't work. I tried to do the sensible thing of waiting some time for any issues to be resolved and decided that after the support articles were last updated in July, that now could be a good time to try. I initially wasn't even able to see the option under my purchases account page, but after removing some test flight apps, the option appeared. But that should have been a sign right there, James. I'm sorry.

Read the full transcript

28:58that's not good when we talked about this like you can't do it if you have test flight apps it's like oh just remove the test flight apps I'm sure it'll be fine anyway upon tapping a brief loading page I received the warning unable to migrate purchases one or both accounts is not eligible for purchase migration many hours later contacting Apple support a long phone call in which I was told to delete any and all of my music library even on my secondary account with the purchases I was simply told okay so you just aren't eligible have a great day eligible excuse me have a great day I've asked for an escalation but as of now I'm no closer to migration and without any music library.

29:29I did my best to back it all up so one day I could rebuild. Thought I'd let you know this whole process is still half-baked with no explanation from Apple support. And we're going to hear more about that in just a second. Any other thoughts on this, though? Yeah, when we talked about this, I think we all expressed skepticism and were kind of aghast at the limitations. I think one of which was like, you can't have a music library. So now I'm telling this person to delete their music library. Just this is definitely one of those things. One of those things that we've asked for for, you know, decades at this point, like oh we should be able to merge apple ids or transfer purchases and stuff and it's like okay fine apple after a decade we roll out this thing i'm like yeah but does it work and like for some people it works but it's just it's one of those features when apple announces something like this you're like i would do this if it was my last resort because i have no faith that it's going to work if it does hey great but if it doesn't you're just in the situation where there's no good way out like you've especially when you've done stuff like deleting your entire music library to try to make it work and that also doesn't work and then Apple support throws up their hands and says, eh, sorry, just sometimes things we make don't work for some people and you're one of those people.

30:35So, yeah. We were sponsored to this episode by Squarespace, the all-in-one website platform for entrepreneurs to stand out and succeed online. Whether you're just starting out or managing a growing brand, Squarespace makes it easy to create a beautiful website to engage with your audience and sell anything. your products, your content, or your time, all in one place and all on your terms. Quite simply, Squarespace makes it super easy to make a website for you and or your business. I've recommended Squarespace to so many people over the years. I've used it myself to build sites, and I've shown other people how to build sites.

31:09And it's so great because it's so easy that you don't have to build sites for people. You can just show them Squarespace, and they can build it themselves, which is incredibly empowering. You don't have to help constantly. You don't have to hold their hand. and they can do it themselves without having to involve other nerds like us. So it's great for everybody. They have amazing design systems built in now, now powered by AI. Their design intelligence system is combining decades of industry-leading design expertise with cutting-edge AI so that they can unlock your strongest creative potential.

31:40And you can design a logo and a brand and a personality for you that you can use across your entire online presence, all with the built-in tools on Squarespace. And, of course, your customers have lots of flexibility for buying from you. You can do things like obviously sell goods, physical or digital, and you can have downloads that are paid. You can have things like e-books, PDFs. You can also have paid podcasts, paid newsletters, all sorts of things. You can have paid time slots if you're a coach or something. It's amazing. So many features built into Squarespace. I can't tell you all about them in one ad, but go try it.

32:12When you're ready to give Squarespace a try, when you have a site to build, go start a free trial. You can build the whole site, see how it works for you. When you're ready to launch, go to squarespace.com slash ATP to save 10 % off your first purchase of a website or domain. So go try it out. Squarespace.com slash ATP for 10 % off when you're ready to purchase. Thank you so much to Squarespace for sponsoring our show.

32:38Sort of kind of speaking of, we have a news report. Well, not even news. It's a thing that's been going around. It's a blog post. It starts with a blog post. Yeah, it starts with a blog post. And this is Paris Butfield Addison, who writes, After nearly 30 years as a loyal customer, authoring technical books on Apple's own programming languages, and spending tens upon tens of thousands of dollars on devices, apps, conferences, and services, I have been locked out of my personal and professional digital life with no explanation and no recourse. The only recent activity on my account was a recent attempt to redeem a$500 Apple gift card to pay for my 6-terabyte iCloud Plus storage plan.

33:10The code failed. The vendor suggested that the card number was likely compromised and agreed to reissue it. shortly after my account was locked an apple support representative suggested that this was the cause of the issue indicating that something was likely untoward about this card the card was purchased from a major brick and mortar retailer so if i cannot rely on the provenance of that and have no recourse what am i meant to do we have even sent the receipt including the card serial number and purchase location to apple the consequence is that my account is flagged as closed in accordance with apple media services terms and conditions i contacted apple support immediately.

33:42The experience was terrifyingly dismissive. Support staff refused to tell me why the account was banned or provide specific details on the decision. When I begged for an escalation to executive customer relations or ECR, noting that I would lose the ability to do my job and that my devices were useless, I was told that, quote, an additional escalation won't lead to a different outcome. That is the support way of saying a polite, f*** you. Like, what is the point of escalation if the people you asked to escalate can say no uh they won't say anything different than we do like that that means escalation doesn't exist right exactly uh anyways many of the reps i've spoken to have suggested strange things one of the strangers was telling me that i could physically go to apple's australian hq at level three 20 martin place sydney and plead my case this just makes me think what is it like 42 wallaby lane uh from finding nemo anyway uh they put me on hold for five minutes while they looked up the address um all right so most Most insultingly, the official advice from Senior Advisor was to create a new Apple account and update payment information.

34:41This advice is technically and legally disastrous, in my opinion. And there's a bunch of reasons for that. Well, we should touch on the reasons, though. Because they're basically saying, oh, just make a new Apple ID, essentially. But so many things in Apple systems say, hey, if we ban you and you just go make another Apple ID, that's a violation of our terms. If you have a bunch of apps, like if you're a developer and we ban your developer account and you just go make another Apple ID and republish your apps, that's a violation. Like following this advice from Apple would itself be violations that would cause his Apple ID to get banned.

35:13So it's ridiculous. And yes, I know we keep calling it Apple ID even though they renamed it Apple account. We'll see how long it takes at least me to pick up that vocabulary. All right. So there's been some updates since this was originally written on the 13th of December. Then this is Australia, right? So Paris' 13th of December is really my 12th of December, generally speaking. But anyways, on Paris' December 14, someone from executive relations at Apple says they're looking into it. I hope this is true. They say they'll call me back tomorrow on the 15th of December. Then later that same day, the 14th of December for Paris, no luck so far, not looking good.

35:48Anyone got a good lawyer to send them a letter and or help me sue them? Here's my email address, says Paris. December 16, which is the 15th for us, no luck yet. December 18, as I sit here on the 17th recording. So it's the future. Paris writes, we're back. A lovely man from Singapore working for Apple Executive Relations who has been calling me every so often for a couple of days says, let me know it's all fixed. It looks like the gift card I tried to redeem, which did not work for me and did not credit my account, was already redeemed in some way. It sounds like classic gift card tampering. And my account was caught by that.

36:17Obviously, it's unacceptable that this can happen, and I'm still trying to get more information out of him. But at least things are now mostly working. Strangely, he did tell me to only ever buy gift cards from Apple themselves. I asked if that means Apple supply chain, a Blackhawk network, Incom, and other gift card vendors is insecure, and he was unwilling to comment. I'll post a more substantive update soon. So I'm glad this story got resolved before we talked about it because it started in between our recordings, and I was hoping by the time we record, hopefully this will all be coming. I was surprised at how long it took because once I saw executive relations in the mix, I'm like, oh, this will probably be resolved.

36:49But it still took another, what, four days for it to get resolved? uh but yeah this has been going around and all the various uh you know blogs and websites and podcasts talking about it and not because of the specific thing we i don't know this person and you know it's not like we have a personal relationship with them but i wish i grabbed these stats i thought i saw it fly by of like how many uh apple ids apple bands per year it's some astronomical oh yeah yeah like because there's just so much fraud and stuff like that um and like to be clear just like driving your computer to craig federighi's house this is not a scalable system no for for support which is make a blog post get everyone in the mac enthusiast uh you know tech sphere to notice it and constantly talk about it and then maybe in a week someone from apple will wake up and say what is this i'm hearing about something something what about like the thousands of other people who are in exact same situation and don't have the ability to essentially mobilize the uh the apple tech nerd press to make stuff like this happen but uh i mean i think this is a good opportunity to just talk about this as a more general issue i'm glad this person's specific issue was resolved although it is terrible that it happened in the first place but every time something like this happens it just kind of reminds us all like how vulnerable we are to these companies and you get all sorts of different people making suggestions about what could be done.

38:15Like the most common one I see is people say, um, it shouldn't be legal for companies to take away all your stuff like this with no recourse. Like at the very least, people have this innate sense of justice, which is like, you know, I know Apple's not the government, but doesn't it seem bad or unfair that they can take away all your stuff and not tell you why? Right. Because if they told you why you could have a chance to defend yourself, they could say, we think you're, you know, trafficking stolen iPods. And you're like, but i'm not trafficking stolen like what is the what is the accusation what is the burden of proof whatever and the fact is it's the company and they can do whatever they want and whatever terms you agreed to basically say we can do whatever we want whenever we want you have no like we get it but because our digital lives as we call them here like the apps you make for a platform all your family photos all your email like whatever digital stuff we have tied up into your google account or your apple id or whatever it feels like that stuff is so important to us that it shouldn't be able to get taken away with a snap of the fingers but then people say well what do you what do you want to happen here like they're just a private company and you agree to their terms and so what's the solution and that's why people start demanding like but there should be a law like for this specific case and i think people reaching for there should be a law or companies shouldn't be allowed to do this is just one of the many many signs of the same topic we talk about all the time of insufficient competition, too much power in too few players because in an ideal system, in a market economy, quote unquote, like the fantasy version of this is that if you do things that consumers don't like, they will take their business elsewhere until you amass enough power to lock them in to the point where almost nothing you can do is bad enough to make them go elsewhere because A, there's nowhere else for their go or B, going elsewhere is so incredibly painful that no one will ever do it.

40:07And that is at the heart of all these things. Like, why can companies get away with being bad to us? Why do we feel like we have no recourse other than to fashion these bespoke laws that only apply to three companies to like fix these problems piecemeal, right? It's because there's not enough competition in this market. They essentially have us locked in. And if they want to enjoy that privileged position, there should be additional responsibilities to go with it in this particular country we have the complete ability to pass any useful laws including privacy laws i think someone said like the last privacy law we passed was maybe hipaa in the 80s or 90s i might have timelines wrong but we're not able to pass anything for legislation europe is passing privacy laws and and rearranging them or whatever but it's just like the root of the problem is there are too few companies with too much power over us and they are unconstrained uh mostly unconstrained by any you know sense of decency or like you know like it's impossible to be it's impossible to behave perfectly it's impossible for a company to not make mistakes banning accounts right and very often these stories come out and it's like you find out actually the person was running an illegal ipod stealing ring right but like we the reason we say kafka ask is it should never feel like you're in like uh you know a maze of twisty passages with no way out and like you can't get in touch with a human and no one will talk to you and then he talked to you said we can't tell you why we did it we're not going to change our mind right i mean think until this was fixed this person was like so you took away all my stuff you won't tell me why and there's nothing i can do about it and they say that's correct sir like that's terrible um and i don't think the solution is making individual laws about your digital identity and digital photos that apply to apple and google right it's rather we should have systems where it's either not possible to get this big and have this much power or there are constraints on companies that get this big and have this much power that apply to all such companies, not just the two that store our photos.

42:07Yeah, this is a really scary story because it shows, like, you know, back in the earlier days of consumer computing, things were a lot less controlled by online accounts from one or two or three companies like it was hard for you to lose all your data by the decision of like one computer company in the 90s or yeah you could do it yourself right because it was all like on your hard drive yeah you could screw it up yourself but then you had yourself to blame that felt better i guess yeah you could lose all your data by not having a backup um and you know as we've gone more and more into you know cloud hosted stuff servers sync platforms um into the mobile world where everything has to be like synced through services and stuff and not just online but the fact that it's all um encryption encumbered and in our country protected by the mca so that like when you get locked out of it it's a felony to try to get it back yourself right which i mean it wouldn't stop anybody in this case they would use whatever tools they had at their disposal but the problem is like once things are backed by services there's really nothing more you can do about it like you can't you can't go in and hack apple's servers to get your stuff back or change your account status or whatever.

43:20And so as we've moved into the current world of all of our computing platforms being so service dependent, that exacerbates the problem John was saying about there being so few companies that are involved here because not only are there very few companies that have us under such extreme control, but so much of our computing life is under their control. It isn't like if if apple blocks my account for some reason not only do i lose access to a lot of data that you know that anything that's not backed up locally which this is one of the reasons why i run my own backup service and have my own offline backups and stuff like that like that's this is one reason why because at least like you know i wouldn't like lose photos or anything but if my apple id gets locked i could lose access to like businesses i could like you know depending on which like does my Overcast ID get locked, then I could lose access to my entire business.

44:16And what am I supposed to do then? Upload a new copy to the App Store under a new developer account? That's a violation of terms of service because if they locked your Overcast account, you're not allowed to bypass it by saying, great, I'll just make a new Apple ID and put Overcast there. And even if support told me, yeah, go ahead, you're allowed to do it. First of all, I would never trust that. But second of all, I would lose all my customers, all my subscriptions, I would lose it all. So that's not a solution. And so what has to happen here is these companies, I see the challenge here because there obviously needs to be more ways for you to appeal these decisions and for humans to override them.

44:54You shouldn't have to like email the executives and have somebody and hope that somebody takes pity on you and gives it to their executive relations team to solve your problem. Well, I mean, again, I felt like there would be more of a targeted solution to this, but the real solution is like, I mean, to give a tiny, tiny example from the bad old days when you couldn't you couldn't have a portable cell phone number and then they passed a law that said no the car the phone companies have to let you take your number from AT &T to Verizon right that was what one of the tiniest things they could possibly do but before that boy was it like a big decision to go from AT &T to Verizon because you got to tell everybody your new number uh those type of laws like saying uh even if you ban someone's like a a hippotype law of like basically saying to apple or google or whatever this data doesn't belong to you so yeah you can ban their account but you have to by law give them access to all of their stuff and on that front by the way you're like oh i wouldn't lose my photos or anything i back off all my photos too in many different ways but if they locked my uh apple id or actually be my wife's apple she's got the real account although who knows god knows how to work with shared libraries But anyway, if they locked my Apple ID, I'm not sure I could launch the photos app.

46:06And my photos are not just a bunch of raw JPEG sitting in the file system. I have edits to them. And those edits exist as like entries in SQLite databases, like the procedural, they're non-destructive edits. And those non-destructive edits only manifest by me launching the photos app and see, and it displays my photos. Would that app even launch or run if my Apple ID was banned? Because again, iCloud photos is turned on. Would I even be able to get to the settings screen to turn iCloud photos off? Like, I'm not sure. Like, do these things work offline, right? So much stuff is tied in, cryptographically tied in to our Apple IDs that if they're locked, I mean, I'm pretty sure I could still log into my Mac, my accounts on my Mac because I'm not using Apple ID login there.

46:48I think that's one of the options. But I have no confidence that like literally any Apple app that contains my data would launch, even though the data would be on my thing, like unplug all my internet from my house like there's no kill switch coming in there's no find my wipe coming in how many apps would launch and display data would the notes app work what i mean it's just it's terrifying because it's this is a thing that is never tested and by law apple doesn't have to do anything they can just say bye all your stuff is gone you have no recourse my position is that there there needs to be like a human appeals and override process it can't just be like sorry support said no there's nothing we can do sorry it's final that's it like there there needs to be chances to run to the press which never helps but it's the only thing that works yeah there needs to be a a human escalation process at all these companies i also understand that at the scale they're operating at the amount of scams that are trying to be done against them constantly is so incredibly high like you know we've talked before about like you know hearing bits and pieces about things like Like the Chinese parts scams against iPhones.

47:56And like there's so much, so many attempts. Yeah, that's why I wish I had that number of how many accounts they banned. Like it was like millions of accounts because there's so much scamming that there has to be an automated system to knock them down. Right. And so I understand why they might feel that it's impossible to offer any kind of appeal at some level because it would just be overwhelmed. But that's their responsibility by being in this position in the first place. There needs to be a process. And that's why you have to mandate it by law because then all their competitors would have to do it too.

48:26And so they can't say, well, if we did this but our competitors didn't, now we're spending millions of dollars a year that our competitors aren't spending. Never mind that there's barely any competitors. But yeah, mandate it by law. Yeah, and I think it's one of those things, you know, Apple, as we've talked about before, Apple is very cheap with labor, both in terms of, you know, maybe not necessarily paying super competitive salaries when, you know, Meta's paying big bucks in certain areas. But also, Apple historically understaffs a lot of departments by just numbers. Like whatever you think the number of people working on something at Apple is, it's probably a lot less than that because they just don't like doing that.

49:02And in many ways, that helps. The more people you have, you get a lot more bloat. You get a lot more management requirements and challenges. And obviously, there's limitations in a lot of ways and trade-offs in a lot of ways. But the reality is Apple teams can often be way smaller than they need to be for their current scale. We see that in developer relations. We've seen it in things like documentation. You know, you see a lot of issues with like a lot of Apple teams seem like they're pretty understaffed. So that also could be a role here that like maybe for Apple to offer a real human escalation process here, they just don't want to hire that many people.

49:38To me, again, my response, if that would be their answer, would basically be that's too bad. like you have this responsibility um now i don't think first of all there's two things i don't think the other tech companies are particularly better at this than apple is um no no this is apple just happens to be today's example but it could just easily be your google account yeah like we've heard stories about google doing similar things too with your entire google account like it that that happens with all the big tech companies amazon you know it happens to them to them all because because they all have the same problem as you pointed out they all have millions and millions of customers they're not going to pay enough human beings to service the in-person human to human requests of millions of people who ran into this most of which are legitimate you know illegitimate fraud or whatever to find the one human who was wrongly accused they just have automated systems because it's cheaper and because nothing is telling them that they can't do that and why would they spend millions of dollars that their supposed competitors don't have to spend or why would they just spend it because they're cheap like you mentioned that it's their responsibility but like responsibility is not a thing that most corporations feel in any real capacity the only thing that keeps corporations behaving well is the fear that if they treat their customers badly their customers will take their business elsewhere and that fear is eliminated by getting big enough getting big enough and powerful enough you can essentially eliminate the fear that if we do something that annoys our customers they will go elsewhere i mean it's the same thing we always say about airlines like oh if you if you say you're never going to fly airline x again you run out airlines real fast because there's not a lot of airlines too much power in the hands of too few companies makes it so the feedback mechanism of market capitalism stops working and the companies can do whatever they want that annoys whoever they want because what are you going to do about it the other thing though is that when we're when we're trying to think of like you know what should help or what could help or what should be done here i don't think using like cell phone number portability as an example is a very relevant example at this level because the reason why cell phone number portability works is because different cell carriers are all providing the same service.

51:40It's a it's a it's fairly low down the stack in terms of what they're providing and they're communicating over standard protocols you know between themselves like between the phone network to to reach other phone numbers and route calls and everything. And yet they didn't want to do it. Well of course. I decided it was a tiny example. It's not like it's not like it's suddenly and now cell phones are fixed because we still have like three choices and they all suck right like it's the cell phone companies are in the exact same situation too much power in too few hands and it also has the whole infrastructure problem of cell towers and yada yada yada i'm just saying like an example of how companies will not do even the smallest thing unless you force them to do it by law and how things were actually worse before that tiny little law passed that allowed in this country you to take your cell phone to a different carrier that that's all i'm I mean, you're right that like because they're like essentially a commodity that it's but like I think that type of thing, no matter how common sense it is, will not happen unless you can somehow pass a law.

52:34And we seem in this country less and less able to pass any kind of useful law. And even that was like pulling teeth. Yeah. And so like in general, I don't think the solution is you should give people a way to export their data. You should. That's a separate thing. That's not going to solve this problem. That's, you know, that can help other things. that can help things like transferring accounts between countries. That's still messed up. That can help just basic backup needs, data export needs, privacy export needs. Well, I mean, it's not just export. You do something like a topic that will get into an overtime cable card where it's like a standard that everyone has to support for both export and import.

53:09So now your digital life is by law portable from one place to the other and then watch how everyone maliciously complies with that law. But anyway, there are possible solutions. But no, even that though, I don't think – I think that's a pipe dream. I think the idea, you know, people have often said, you know, social networks should be required similar to, you know, the number of portability. Like social networks should be required to let you take your network out to a different platform. That's never going to really happen because the platforms are different. This is the problem with anything that's like, let me take my stuff out and go somewhere else.

53:45Go where? To another clone of the Apple ID system? Like no such thing exists. and even if you think like okay what if i export say you know from twitter to threads or you know if you take the two similar seeming things even that the platforms are so different that what that would actually look like would be really weird and limited and not what you think not what you think and hope it would be um and and there of course everything would be challenged really like crazy because it's like you know then you're saying like does facebook need need to let you like access their network for free like so there's all sorts of practical and legal and and just technical issues with that i don't think social networks would be the thing that people care about it's more like you know my my family photos you know my email uh stuff like that and again it would only be in cases where they've banned your account and otherwise you would have no access to your stuff google by the way google takeout is a pretty good system they did this essentially on their own i believe there is no law enforcement to do this but google allows you to export all your data so does apple apple has their export formats not as good but but all these companies have some way to get your data out but those only work if your account is not locked the time when you really need them to work the time when you really need them to work is when they've locked you out of your account and won't tell you why that's when you need your photos right or again a way a guaranteed way to run the photos app offline without locking in and be able to see all your photos in your edits like i mean this is this is not a thing like i trying to make a law to say you should be nicer with people's data is like it's really it's not getting at the root of the of the problem here which is that this market is not competitive how can they get away with being this bad to their customers the only answer is the customers have nowhere else to go they can do almost anything to customers and release buggy stuff charge what they want you know screw them over and like no matter how many horror stories you hear like there's nowhere to go there's nowhere else to run it is a malfunctioning market the the feedback mechanism is not working and that feed mechanism is essential.

55:44Like it's much better than laws. Like we do laws when like, oh, you get so big, we now need laws constraining you because you're too big and people get all upset about that and have all these theoretical arguments or whatever. You don't need those laws when it's a bunch of smaller companies fighting tooth and nail for each other's business because they're intrinsically motivated or I guess extrinsically motivated to do better than their competitors to get customers to come to them and not, but then eventually you get the winners and the winners crush everybody else. And now there's two or three companies left and they don't have to do that anymore.

56:10they just do whatever they want they all kind of agree to kind of do the same things and like the meta the market disappears and it just becomes now we are government size entities being regulated by the actual government uh in this weird you know dance of billionaires while everyone else gets screwed yeah cool and i don't think anything is going to help in terms of like you know just take this and go somewhere else start a new account go and move to android like none of those solutions help and then after android ban you is where do you go where do you go then right these companies are too big and too sprawling and there's too few of them it's like like imagine if you live in a medium-sized city and you have like you know maybe one or two good airlines that serve your airport yes imagine that right like suppose you're served by like you know delta united and and delta bans you can you just not fly to most cities anymore well if you try to fly united that's correct because it never works well that's true but but so like that's the level you know what if your isp bans you in america most people have one or two broadband isps to choose from if your isp bans you what are you going to do maybe if you have a second one and and you know the second one would be a different type it would probably be significantly significantly worse for you because it would be like you know you might have to go back to like you know go back to some kind of oversaturated cable node instead of a fiber node or whatever oh god trigger warning yes so like there's lots of industries where you only have one what if your electric company bans you yeah those are usually government mandated monopolies so the isp one is a good example because lots of towns and cities are trying to do municipal broadband which is broadband owned by the city not owned by comcast or verizon or whatever and every single city that does that everybody loves it it's cheaper it's better it's faster you know who doesn't love that comcast and price they don't love it they lobby against it they pass laws disallowing towns and cities from doing that to say it's against the law for you to implement municipal broadband no you have to by law pay for the two choices that you have here and they because they know if there was competition people would never choose comcast like who would right it's just like people would not choose it because the competitors have better service at a lower price and that's how capitalism is supposed to work but when you get big enough and there's few enough of you you can make sure that doesn't happen by we've seen the success story i can just see the people in like the you know the confast x finney verizon boardroom saying we've been seeing all these feel good human interest stories about this little town in wyoming that implemented municipal broadband and everybody in the town has like five gig fiber symmetric and it costs them five dollars a month we hate that can we stop that somehow we're like with laws and the answer is yes yes they can because they have money to lobby the idea that we can just take our stuff and go elsewhere for companies of this scale that that's not a valid solution to a problem with your system having this limitation the problem it's like telling somebody like the united states has a lot of problems right now why don't you move to a different country like well for most people that's literally not possible.

59:18And even for the ones who it is possible for, that's a pretty big lift to move your entire life to a different country. So the much better solution for these companies is to be forced to fix them from within. It's like the best thing to do in the US right now is try to fix it from within because it's our country and it's where we all live, most of us. Sorry, everyone else. So the way to fix this problem with Apple's account system is not to say, well, we'll give you the tools you need to move somewhere else. No. The problem is for Apple to provide human appeals processes that work and that are accessible.

59:58And if they have to hire more people to do it, that's their responsibility at the scale that they're at in the monopoly status that they pretty much have or the duopoly status they have. That's the solution. The solution is they have to fix it. And if it takes legislation in various forms to do that so be it it would absolutely take legislation because they've evidenced they won't do this themselves they won't they haven't and they won't yeah yeah and like and i do think even despite all that i still think that part of it should be a new privacy law in the u.s that dictates what companies can and can't do with your data and what rights you have to your data which would include the ability to export it even if they lock your account even though that doesn't solve the problem i agree with you there it still needs to be there as a backstop because what what about when you go through the human review process that is mandated by law and is a kangaroo court and you and they just say no anyway if not you get to do a human review still then you would say okay but this law says i still get my data it has to be greater than just data access because it like again what if what if you lose access to like all of the purchases you've ever made on your apple account oh well that that's going to be a harder road oh i didn't even mention purchases because uh good luck getting that reversed because we have tons of laws on the book that basically say hey, you didn't buy those movies.

1:01:08You bought a limited license to those movies and yada, yada. We've already got laws surrounding that, and the laws are against us. So that wouldn't just be putting in new laws. That would be overturning existing laws. So you have multiple issues. You have your own personal data. Okay. You also have whatever purchases you've made to content and services on that account. Yeah, kiss those goodbye. Then you also have the potential of what if you have like an app in the app store or for Google accounts? what if you have a youtube channel on that account yeah kiss those goodbye too well right but but those had like that's lawsuit territory that like really well good luck with that lawsuit right and so again like so you have to like they can just snuff you out completely with some automated system for some you know theoretical violation that many people probably do but you might not have done what do you do those are tricky to deal with though like give the the youtube example like um like there is no uh competitive online video service where you can go like there's if you're off of youtube you're up right and so like right if you're out of the app store you have an ios app where the heck you're gonna put it right exactly so so it's exactly what all the countries are saying which is like okay well so that that kind of shows that apple or youtube or whatever has gotten so big that they can't just be treated like a regular company because if you're talking about just a regular company that's like small none of these things make any sense why would you know like just like this is not a problem just go somewhere else but like now you're so big that you are institutionally inescapable uh and a whole new set of rules needs to apply to you and everybody all the billionaires hate that and a lot of people think that's too much regulation or whatever but it's like the alternative is we are ruled by a tiny number of extremely powerful corporations and we're in some dystopian sci-fi novel and we're basically living that now and most of them are somewhat benevolent but see a twitter slash x to see how that can go awry real fast um so yeah it's like it's difficult because we're we haven't been in i don't think the world has been in this position many times except for like you know standard oil and the railroad trust or whatever and those were broken up by laws but it didn't take our country at least very long to say you know what we didn't need to do that's why did we ever do that what was wrong with standard oil it seemed fine anyway as long consumer prices don't go up it'll be fine and so we're kind of in the other we've swung way in the other direction and now every company can buy anybody that they want whenever they want and get gigantic and again that seems like it's fine except we like it's difficult to come up with laws that constrain companies when they're that big it's easier to not let them get that big but not letting them get that big is also kind of like anti anti-market capitalism is like well they if they get that way fair and square which they never get that way fair and square let's be honest but if they did get that way fair and square it shouldn't be illegal to be incredibly successful it should be legal to abuse that monopoly power and see all the court cases that have been winding through and are in various stages of uh falling apart but but yeah like that's like this this read this whole these situations google can apple id whatever always seem they're like like it's big mean cooperation uh consumer you know what was that what was that uh consumer protection agency that uh our country recently got rid of because it was costing big companies too much money like big companies take advantage of people all the time and there is a role in government to try to stop them from doing that um but things are going in the wrong direction but yeah this is not a like apple should be nicer apple will never be nicer unless something makes them be nicer and it's difficult to come up with a set of things that will make them be nicer sir.

1:05:07like to do that well. slides. And he's been very, very, very concerned that his school Google account will get cleared out in the summertime. I genuinely don't know if it will or not. My gut says it won't, but he's very concerned about this. The rumor in the school says it will. I mean, who knows? Yeah, exactly. The school rumor mill is very trustworthy. Right, right. The fifth graders know exactly what's going to happen. But anyways, and so he wants to make his own personal Google account, fair enough, where he can house some of these things. Again, totally fair. I go to make him a Google account so he can use Google Slides because that's what he's used to and familiar with.

1:05:46And yeah, he could use Keynote or something, but this is what he's used to. And I go to make him a Google account. Google says, yeah, that's all well and good. Give us a birthday, which I'm like, I don't really love that. And I immediately fibbed, but that's neither here nor there. And then, okay, he'd give us what what email address do you want? And I made up some email address that, you know, was some moniker or handle that he would want. Or I guess I should say I'd use the moniker that he made up. And the next step is, okay, scan this QR code so we can go ahead and get your phone number. I'm sorry, what?

1:06:20Yeah, yeah, yeah, we need your phone number because you can't make a Google account without it. Oh, wonderful. That's so cool. And it just got me thinking about when we were kids. It got me thinking too about when Marco and I, were kids and hanging out, you know, outside a very tiny lake in upstate New York, when none of this fucking bullshit ever happened, when you would just turn on the computer and do things like it was so much nicer than in a lot of ways, it was terrible in a lot of ways. It was awful, but in certain ways it was so much nicer and so much simpler there than I should say. And I kind of miss that.

1:07:02I, that's not to say I prefer it. It's not to say I want to go back there, but it just kind of sucks that in order for Declan to use the software he wants to use, which only exists online, he needs to create a Google account, which he cannot do because he does not have a phone number. And yes, I could like make a burner number, but then what happens for account recovery? And I believe if I recall correctly, I tried mine at one point and it was like, well, no, no, no, that's already used for a different account. You can't do that. Maybe the answer is to make him a child account, but then inevitably he'll be like neutered and gutted in some ways that's going to be inconvenient or whatever.

1:07:35I'm not really looking for a solution, but it made me think about how wonderful it was when the stressful thing about using a computer was how much conventional memory you had to play the game you wanted. It was whether or not you loaded the mouse driver in your auto exec bat and config sys. It was whether or not you had an IRQ conflict with your sound blaster. That's sounding great. I know. I was setting you up for this, John, and I knew you'd take the bait, and I was right. But still, it's just, in so many ways, that was so nice, especially as someone cutting your teeth trying to learn what technology was.

1:08:14And in a lot of ways, things today are so much better. Scratch is incredible. The internet is amazing. I wouldn't have a job, or at least this job, I should say, without the internet. And hell, the last several jobs I had were almost my entire career. The majority of my career has been something internet related. It's either been an iOS app that uses the internet or literally writing websites and working on websites. So I'm not saying necessarily that I want to go back in time. But it's an offshoot of the same topic. Like these gigantic conglomerates control everything. And there's no recourse if you disagree with them.

1:08:53I don't want to give you a phone number. Well, you know what? Then get f***ed. You don't get a new account. Like, it's just frustrating. And what does an individual do about that? You just shout on your podcast. Well, and keep in mind, what you're doing is fighting to get your son into one of these giant silos where they'll have no recourse. Exactly. You know, you're right, which is the sick thing. Because these big providers are so powerful and so important that it is actually important for us to get an online identity and have a place where we accumulate our digital lives and communicate with everybody and do all the things that you have to do.

1:09:29Like to like, it's just, it's not possible to live in this world without like a, you know, in the modern world to try to get a job, to have, you know, some, some place of residence, some way to be reachable. And these days that means a phone number, which is probably a cell phone and probably an email address. And like just good luck trying to live in the modern world without any of those things. And where do those things come from a very small number of very big very important companies so it's not like you can say sorry Declan you'll never have an online identity because we're never going to give you a phone number and you're never going to have an email address and it's like that's not a tenable way to live in the modern world and you want your kid to have you know like well run your own web servers run your own mail servers like that's not tenable for most people get accounts on whatever you know the AOL Hotmail a Gmail a Microsoft account an Apple ID there's not too many of those things that are sort of reliable uh long-term places to have your online identity and so what you're trying to do is get him into the system that you know he needs to participate in not you know he just wants to mess with his like google sheets but eventually this is a these are systems that people need to participate in to live modern life and there's too few people controlling those systems so i feel for you but it's like you know you're you're uh you're failing to get him into the system that we're complaining about it because there's no other choice.

1:10:49It's the perfect example of there being no other choice. Yep. I mean, I can't run Google Slides locally, I think. I mean, maybe I can and I'm not aware, but... There's an offline mode, but yeah. Someone's probably ported it to WebAssembly and there's some web version of it somewhere. We are sponsored this episode by Guru. When you're working with AI, there is one thing you figure out pretty quickly. It's really good at giving you answers whether they're right or not. And inside most companies, the hard part isn't generating information, it's trusting it. You got docs over here, tickets over there, conversations scattered everywhere, and somehow AI is supposed to make sense of all that?

1:11:26That's why they built Guru. Guru is your AI source of truth. It connects all the things your company already knows and turns them into clear, explainable answers you can trust. Think of it as a knowledge layer that your AI should have had all along. grounded in your actual systems, transparent about where information came from, and consistent for everyone who needs it. When teams and their AIs all pull from the same trusted foundation, work gets faster, decisions get better, and there's a lot less wait, where did this come from questions in Slack. In a world full of confident but wrong answers, Guru keeps everyone aligned on what's actually true.

1:12:03See what Guru is doing for companies like Spotify, DHL, and Stripe at getguru.com. That's GetGuru.com. Thank you so much to Guru for sponsoring our show.

1:12:40blah blah blah basically 83 billion is the total cost um netflix is saying oh this is going to be great it will offer more choice more opportunities and more value and by the way the more choice thing like it's hilarious in light of our previous conversation about choice because like how does giant companies combining to be even fewer giant companies produce more choice but what they mean is interestingly somewhat interestingly for this thing is like so you pay for netflix you'll have more stuff to watch which is a early signal that they're saying hey we're buying them they have a bunch of stuff we're probably gonna put most of that stuff in netflix because we're netflix and you pay for netflix and we'll see like i mean maybe there'll be like an hbo upsell or whatever but it's interesting that in the merger agreement they're like yeah this will give us more stuff to put in netflix plus also maybe there's like well you'll pay extra for hbo inside netflix who knows who knows but anyway that's that's a slight aside so anyways uh dominic preston at the verge writes, to get the deal over the line, Netflix reportedly pledged a$5 billion breakup fee in case regulators block the buyout.

1:13:40Netflix bid one out over interest from Comcast and Paramount, fresh from its own merger with Skydance, though early interest had been reported from Amazon and Apple too. And obviously there's still a bunch of regulatory hurdles they'll have to get through. The Trump administration says it already views the deal with, quote, heavy skepticism. Yeah. Well, that earlier thing was like, in case regulators block the buyout, why would regulators block the buyout? Yeah, that's funny. Why would that happen? So speaking of regulators, Paramount has launched a hostile$108 billion bids. That's, what is that, 25-ish billion roundabouts more than the Netflix one to snatch Warner Brothers from Netflix.

1:14:16But not really more because they want to buy more. So the per share price is actually lower, which makes this even more nonsensical. But anyway, Netflix isn't going to buy the TV stuff, but the Paramount bid is going to buy it. So even though the number looks bigger, per share, it's lower. So Paramount offered this$108 billion, blah, blah, blah. They're going to take the whole kit and caboodle, allegedly. But then things get interesting. So regulatory filings spotted by Axios, this is reading from The Verge, indicate that Affinity Partners, a private equity firm founded by President Donald Trump's son-in-law, Jared Kushner, is also part of Paramount's bid.

1:14:51Trump commented on Netflix's plan to acquire Warner Brothers on Sunday, saying the deal could be a problem and that he'll be involved in the decision to approve it. So, okay, so we know that Kushner's involved, which already gets me raising one humongous eyebrow, but who is kind of leading the charge? Well, it turns out to read this incredible headline from an article by Elizabeth Lopato on The Verge, Larry Ellison of Oracle's big dumb, of Oracle, excuse me, Larry Ellison's big dumb gift to his large adult son, which is incredible. David Allison is the CEO of Paramount Skydance, another merger.

1:15:23That's why CBS was giving in to our criminal in chief's demands to do what he wanted. Otherwise, he would block the merger and they wanted the overlords wanted the merger to go through. So they did what he said and allowed CBS to be taken over by, you know, people who aren't reporting. anyways it's our just if you're wondering what's going on in the united states have you ever seen an organized crime movie that's how our country runs now the president has things that he wants and has friends and if you don't do what he wants he will do what everything in in his power many things that are not in his power technically speaking to punish you for it and uh him and his son-in-law and his friend larry ellison all really want paramount to buy warner brothers but netflix wants to buy them and warner wants to sell to netflix but oh your merger needs to be approved by the government and the government now exists as a single person of donald trump and he wants his friend's big large adult son to have this company to play with so he can ban cnn and make sure people never say mean things about his dad it's just it's so sad it like it would be comical if it wasn't so like real and sad so i'm not sure how this is going to turn out in any sane world uh they would take the they've agreed to sell to netflix netflix is technically offering them a higher number uh per share uh it's terrible that these things are merging but warner brothers has been run by a person who has no idea what he's doing and has been screwing up that company which is like well whatever like again i don't like to see big companies merge notice there's no talk of like oh we shouldn't allow this merger because it's bad for further consolidation the entertainment industry no everyone's fine with that it's just a question of who gets to control it all because eventually instead of having 17 billionaires it'll just be three and they'll all be related.

1:17:02Cool. Awesome. Yeah, so then Gruber had a take on it, which we'll link in the show notes. And additionally, CNN's Brian Stelter reports that Netflix was prepared for this to happen. Today's move was entirely expected. Netflix co-CEO Ted Sarandos sat on stage at a UBS conference just now waving off Paramount's hostile play for Warner Brothers. What is the D in Warner Brothers? Discovery. Thank you. Discovery. We have a deal done and we are incredibly happy with the deal. We're super confident we're going to get it across. Warner Brothers, like Warner Brothers. They were, wasn't it like a Time Warner and then AOL Time Warner and then Warner brought Discovery.

1:17:36Like these are already giant conglomerations that have been passed around but they're just condensing even farther. It's so, it's just a hideous shambling monster filled with ancient and valuable IP and a bunch of executives who have no idea what they're doing and just want to, just looking out for themselves. Yep. There's been a couple of, or maybe it was just one, but Jason and Mike on Upgrade had a really good conversation about this. I don't remember remember if it was a couple of days ago or last week. There's also a bunch of additional stuff that we'll put in the show notes. But my understanding is it's not great that Netflix is potentially going to be buying one of these big entertainment companies.

1:18:13There's a lot of consternations to what is going to happen to the movie studio portion of Warner Brothers. Netflix is currently saying, oh, it'll be its own thing. But let me tell you, having lived through a couple of mergers, and John, you've lived through more than me, I think anytime somebody buys something else and says, oh, it's going to remain exactly as it is forever. That's a lie. That is a bold-faced lie. That never happens. And I don't think anyone wants to keep it exactly as it is now because nobody is happy with it. The only silver lining in this entire thing is that currently there is probably still more competition in the streaming video market than there is in, let's say, the cell phone operating system market, to give just one example.

1:18:50There's less competition all the time if we allow these mergers to go through, but netflix thus far has mostly been motivated by trying to do things that make it appealing to customers and that includes like making the ad supported tier because a lot of people would rather just have ads and pay a lower price or whatever but as they gobble up more and more companies pretty soon they'll reach that size where it's like well we own so much media like when netflix buys disney then we have real problems because disney already owns like everything and warner brothers has a bunch of really old stuff and netflix has got some stuff on its own Like we cannot have two entertainment companies for streaming video and movies in this.

1:19:24It's not in this. It's it's depressing. But, you know, it would be even more depressing is if David Ellison gets it, because at least the people running Netflix have some clue about how to be the entertainment industry. And their qualification is not. I'm the large adult son of a billionaire who's friends with the corrupt president. Excuse me. I learned today as I was doing research for this. David Ellison was briefly an actor. He was even in a movie with James Franco, if I'm not mistaken. I'm sure he got that acting job all on his own. yep i'm sure he did based on his talents as an actor like so many l.a hollywood children of hollywood stars right anyway there's a lot of links in the show notes that john has been kind enough to assemble and i put in the show notes for you um but it's it's just a mess it's just a mess and this is this is capitalism today this is america today it's just it's and this is the complete lack of any kind of regulation of companies merging with each other like warner brothers discovery aol time warner at &t owner like just so many they just they're they combine they're incompetently run they disaster strikes and then the people just want to get out and sell like that's the whole reason like the cbs takeover by all the right-wing people cbs used to be a television network for old people let's be honest but like still trying to be just a basic television network and right-wing people like well what if we owned it and made them only say nice things about us and that's so that's what they're doing and how did they make that happen the people who own that whole big blob of stuff had mismanaged it and they wanted to get out and they wanted their money and they're like we want to have this merger happen and the president said well we're not going to let your merger happen unless you do what we want and they said okay fine we'll do what you want why because the billionaires needed to get their money because they would never be able to survive the rest of their life they just don't have enough money like what we need this merger to happen why do you need this merger to happen because we need the money you don't need the money but they like they basically they sold out instead of fighting they said no we just we'll do whatever you want just let this merger go through yay the merger goes through and then they installed barry weiss as the head of cbs news so this is the world we live in again if you don't know who these people are for a be glad and b if you want to learn there will be links in the show notes it's just everything's garbage everything's garbage and and i guess that's how we're ending the show tonight so yeah i mean like the main story in the show of like being locked out of your apple account and not having access like it's got a silver lining because i have like i guess a happy ending but like i said this is one of those things where even where it even where the ending is satisfying oh the person got their account back you just like that doesn't make me feel any better like this should never have happened or been possible and no one listening to this is comforted by that because they're like well at least you guys have a podcast where if one of you guys gets their account locked you can complain about it maybe several will hear you what about me out here who doesn't know anybody and can't get john gruber to post on daring fireball about my account being locked this i'm sure there's thousands of people who this happens who have no recourse so that's why even though it turned out well in this case it almost makes me feel worse that it turned out well because it shows that the only way to get any justice in this type of system is to somehow gain get enough notoriety and fame to raise the level where some executive notices that their company might be doing something wrong and they do a pinpoint one person fix and i go back to sleep yep uh everything's everything's trash so happy holidays everyone thanks to our sponsors this episode squarespace guru and notion and thanks for our members who support us directly you can join us atp.fm slash join one of the many perks of membership is atp overtime our weekly bonus topic every podcast you can get another usually 15 20 minutes worth of us if you were like i just can't get enough of this show i need more of what just happened here you can listen to atp overtime by joining atp.com slash join this week on overtime our topic is our state of tv and cord cutting and streaming services we're gonna go over what what we're doing what we subscribe to how it's going you can join us listen to atp.com slash join thank you so much everybody talk to you next week.

1:23:29Now the show is over They didn't even mean to begin Cause it was accidental Oh it was accidental John didn't do any research Marco and Casey wouldn't let him Cause it was accidental Oh it was accidental And you can find the show notes at atp.fm And if you're into Mastodon You can follow them At C-A-S-E-Y-L-I-S-S So that's Casey Liss m-a-r-c-o-a-r-m-n-t-m-arco-r-m-n-s-i-r-a-c-u-s-a-s-siracusa it's accidental they didn't mean to accidental Check Podcasts So long Okay, so I have a classical code-related problem that I was curious to get your you guys' input on. I was working on something. I had a little bit of a race condition for something I was working on.

1:24:46Is that like being a little bit pregnant? I've got a little bit of a race condition? Well, it's fair. Virtually unique. Like, I had, it doesn't even matter, really. I had a situation where two completely different classes needed to tell each other that something had happened. So one of them, if I recall correctly, and it doesn't really matter in the grand scheme of things, but one of them was what I call my purchasing manager, which is to say my kind of front end to store kit two. And shoot, I think the other one was my user settings class, which is my front end to user defaults. if you're not familiar with it.

1:25:22So basically that is the thing that manages payment and in-app purchase and whatnot, and the thing that manages your preferences, right? And the two of them really don't know about each other, generally speaking, and really shouldn't know about each other, generally speaking, but for reasons that are not pertinent for this conversation, one of them needed to inform the other that something had happened. Things you shouldn't understand. Right. And so what I wrote written in our internal show notes was, how do you get two completely different and disconnected classes to talk to each other gracefully?

1:25:55And why is the answer notification center, which is the answer that you typically use on iOS and perhaps macOS. But I don't love that answer. And I was curious if you guys had any tips or tricks that you would advise. And for those who may not understand, notification center is, you two are going to be offended by this description, but it's kind of like a bus. that you can, not a beep beep bus, like a bus in a technology sense. Insofar as it's a messaging bus where you can drop a message on this bus and people can choose to listen to it. That's kind of an oversimplification. But it's like you shout out, hey, something has happened.

1:26:35And if somebody's listening, great. And if nobody's listening, no big deal. And that's generally speaking how people solve this exact problem. But it's like, how do you send a letter from one address to another without knowing what those addresses are? That's also not a great analogy. I can't think of a better one. It's a broadcast.

1:26:59One class can vend an API and the other class can do a publish-subscribe mechanism or a delegation mechanism. But that would require at least one to know about the other, if not bidirectional. So what you're saying, So the function Notification Center serves as like one class can post a notification. The other class can listen for that notification. And neither one of them has to know anything about the details of the other as long as the notification itself is documented and known. And notifications. So what makes this a hard problem to do in ways that programmers can swallow with modern sensibilities is that what it requires is globalness.

1:27:47Yeah. And programmers today hate anything being global and with ample reason. Like in many cases, you don't really want global state or global protocols or global actors and things. I don't mean actor in that way. And to be clear, when Marco says global, what he means by that is everyone can touch this piece of information. And that's generally speaking a real bad code smell. It's one of those things where you look and go, I don't love that at all. And not just everybody can touch it, but also depending on how you do this, it's very easy to get into a situation where you decrease or eliminate modularity.

1:28:25Oh, now I need a second one of these things. oh but you can't have a second one because they all talk through this one you know notification center using a set of name messages and if any you can't have two of them like if you had some kind of interface where you're like now i'm going to instance a second one of these and connect to a different server with it oh but when it sends a message that a thing happened the other one sees it too because there's one message bus so now okay i'll give them different message buses i'll prefix their message names and it's like you're not you've no longer had it be self-contained testable modular composable in that way and maybe you don't care lots of apps eventually have to say look this is my app i'm not going to have i'm not going to clone my entire app to be next to itself in memory at the same time although many people have thought that and then found in version three that they need to do exactly that so that's the other smell of the globalness is like the the singleton-ness right the people don't like globals for good reasons and some good reasons people are afraid of singletons because every time they make one three years later they're like damn it i wish this wasn't a singleton yeah yeah but but i think though there are times when global messages and singletons are the best tool for the job in reality and it's one of those things that programmers so easily overthink and try to you know add complexity to get out of when it's not necessary so you know some examples like and this isn't quite as pure as notifications but like you know in overcast i have some utility classes that do things like manage.

1:29:54They have combine publishers. Yes. Yes. Because this was before we had async sequences, which I still don't really understand fully or frankly like. I use them. They're nice. They're fine in some cases. I don't think they're a great overall replacement, but they have some advantages. Anyway, so I'll have a class like my reachability class, which basically will post. it'll publish to a publisher in a singleton you know, ocreachability has a singleton, ocreachability.shared and it will publish isOnlinePublisher so anything in the app can then you know, subscribe to ocreachability.shared.isOnlinePublisher and then that thing will get notified when the internet connection becomes online and it can do things like start a sync operation or whatever and so that's, so when you have In this case, that's a global object.

1:30:50But the global object, singleton, the global singleton is representing the state of the system, which is a global state. The system is either online or it's not. And so there are opportunities that you have in programming where what you are trying to convey, respond to, interact with is something that is global to the process or the device or the installation of your app or whatever it is. There are global things. And so it's okay to write global code to deal with them much of the time or all the time. and in the case of notification center and you know like the kind of global bus of passing these messages that are just distinguished by their string names I don't think there's anything wrong with that for a lot of use cases now granted the API can be a little bit unswifty and you know it's not ideal not type safe there's strings oh no right but and it's trivial to make it type safe also and I think that is fine when your problem is what you describe which is two totally different classes that don't know about each other, that maybe can't import their modules and can't even reasonably do that.

1:32:07They want to pass global messages within the same process. The tool for that is Modification Center. And I don't think it being old or it not being particularly Swift native is a reason that you have to somehow come up with some kind of different solution. That tool exists and it works great for that purpose. It is not the best tool for every purpose but it's a great tool for that purpose so i think the answer is notification center i don't know if it's a i don't know if that was the first thing i would reach for because like i don't know the structure of your app but the two things you describe things managing user settings and things dealing with store stuff like i have to think in the hierarchy of stuff that you already have connected as the sort of the object graph or the responsibility graph of your thing there's surely something that is apparent of both of them you know what i mean like like like there's if you don't want to use i mean no vacation center is fine like it doesn't matter it's a bit it'll be fine but like probably the first thing i would have reached for is like what is the common parent for these or like in in swift ui often like is there some environment injection that's happening above that they can all see or something like that you can get into trouble real fast there because that environment is like it's like globals but we won't say the g word so everyone will be happy with it it's like okay all right very true um but like but yeah when you have a bunch of objects like this very often there is there is some party they can see both and they can you know they don't need to know about each other but they all know about the parent because they're talking to it anyway or the grandparent or whatever it all boils down to the same thing in the end like maybe if you had performance concerns you didn't want to use notification center or a direct call through to a grandparent thing or a common api would be fine i think the only place i use notification center is um because it does if you're talking about the same api it also works across processes like because i i use it to make front and center and switch glass talk to each other um oh interesting i i didn't know that i presume it's the same thing maybe it's different on mac os actually now that i think about it you have to be like because of app store blah blah you got to be in the same app group and there's all these restrictions on and everything like that but it is essentially a free local like i don't even know i honestly don't even know if it's like using unix sockets under the cover like as in like um not internet sockets yeah sockets like i honestly have no idea how it's working but that's just the kind of api i want you send messages the small messages between apps and it's very fast or whatever but within my app i I always tend to, you know, I don't go the full Java route of like dependency injection.

1:34:24You build up this tree of things that all don't know about each other, but they all have the things they need to do their work injected into them from above. And that just, I mean, there's a reason that that's like a joke. And I guess probably some people who are still working in Java like it, but I think the industry generally agreed that's too far. If you don't know what dependency injection is in Java, be glad. But it's basically a way. Hold on. There, as with all things, there are times when it makes sense and there's a, there's times. Yeah, but they went overboard, which is like, I mean, to make like to Marco's point about globals, like at some point, everyone always has to have them.

1:34:55That's true unless you're writing libraries. And I think a lot of the Java stuff was like, we're writing libraries. Everybody's a library author. And so they'd make all these frameworks where it's like, we don't know the things that you're going to use to assemble these. So first build this thing and inject this thing into it and say, okay, you're going to use this for this and you're going to use this for this and you can use this for this. okay now you are going to be the thing that this thing uses for this and it's just like to before you can do the first thing you have to assemble these lego pieces all of which are interchangeable which is great for testability but it's like man like i just want i just want to do put up a window and say hello world on it and i've assembled this tree of 8 000 objects and i mean anyway i don't know if you squint i would say environment object and swift ui is dependency injection environment object is much kinder and gentler than all the stuff that gets injected for a lot of the job that's more of like an api design issue but like again within an individual small app like the you know just an app that is not like enterprise scale distributed across thousands of systems you know or photoshop size app or whatever that's when i say you know talking about a small app within something like that yeah like everybody's always going to end up having some kind of global state somewhere um and as long as you like know where it is and keep a handle on it and you're pretty sure it's not going to screw you over later or if it does screw you over later it's not that big a deal to you know turn it from you know whatever dot oc reachability dot shared turn it into an instance of that object that gets given to one of the super grandparent objects of all the other things in your object graph like i i don't think you need to beat yourself about about too much my only advice would be do you need to reach for notification center or is there some common ancestor that they can talk through if it's too inconvenient for the ancestor to talk through then don't do it like i don't think there's anything wrong with using notification center unless it's a performance issue.

1:36:40But other than that, that's... So it's funny you bring up, you know, the whole grandparent thing, because when I was doing this and I was reaching for notification center, I realized, wait a second, I already have a function or two in the purchasing manager that takes an instance of user settings as a parameter. So purchasing manager is aware of the existence of user settings anyway, which means past Casey was either a genius or an idiot, depending on how you want to look at it. Well, I'm passing it as a parameter. You've only got one purchasing manager in your app, and you only got one set of settings.

1:37:14I would imagine the purchasing manager might need to look at your settings because there might be settings that are relevant to the purchasing manager. But either way, it seems like the purchasing manager could be instantiated with access to settings or use a singleton for settings or whatever. It's like Margaret was saying. How many composable sets of settings do you expect to have? Yeah, no, that is fair. But the moral of the story, though, is that I realized, oh, wait, one of them already knows about the other. User settings does not know about purchasing manager, if I recall correctly. Actually, I'm not even sure that's true, but it doesn't matter.

1:37:44But I can tell you for certainty the purchasing manager knows about user settings. And so then I thought, OK, well, somewhere I'm building both of these objects, just as you were saying, John. And I went back to, you know, the grandfather of the grandfather, if you will. well i mean i wasn't really suggesting that you thread down references to each other i was suggesting is that there is something that is managing both user settings and the purchasing manager and that thing coordinates the behavior not that you shove user settings down into the purchasing manager and they know about each other directly but it's just like you know composability you're responsible for this tiny region you're responsible this tiny thing that above you is the thing that's responsible for the larger region it uses you two to do its job it's it is like dependency injection only you're not it's not injectable pieces you're just statically assembling the tree of stuff but whatever yeah but either way the point is it ended up being easier than i thought but i just i thought it was an interesting discussion that the three of us could have because i i didn't know if there was some you know architecture astronaut approach that i wasn't aware of to solve this problem oh there's like seven just like seven astronaut approaches but i think we're saying you probably don't need to reach for them in this case yeah like like space architecture astronauts are have infinite possibilities it also does not mean you should use almost any and again those patterns are much more appropriate for people designing libraries and frameworks because you can't know how people are going to use them and if you make decisions like i just saw something about user default saying like if you if you set up user defaults with a suite name and you configure default values for settings defaults for defaults um but you set it on the suite name you're also setting it for everything that's not the suite name unbeknownst to you and of course undocumented so when you pull you when you create a user setting without a suite name and you try to get a value it's like well it looks like somebody already said it no you just already said it when you said the default for the suite name because they don't whatever singleton they're using they don't divide it up by names by suite namespace for the defaults and it's undocumented so when you're a library author you got to be real careful about that because that you can't make those assumptions like well there'll only ever be one of these And, you know, that comes back to bite you.

1:39:43But for an individual app, you should know how many of each of the things there are going to be in your app. You're not vending your app's code as a library for the entire world to use.

From the publisher

Sponsored by:

  • Guru: Your AI Source of Truth
  • Notion: The AI workspace where teams and AI agents get more done together.
  • Squarespace: Save 10% off your first purchase of a website or domain using code atp.

Become a member for ATP Overtime, ad-free episodes, member specials, and our early-release, unedited “bootleg” feed!

More from Accidental Tech Podcast

All 184 episodes
670: Institutionally InescapableAccidental Tech Podcast · 1 h 40 min
Listen in VO