PodSearch

ATP

420: I Have No Urge to Speak

 

00:00:00   For the pre-flight, the thing that we really need to pre-flight is the pre-show.

00:00:03   Please, two of you, work out which of you has a half an hour of content that you're gonna stick before the time.

00:00:08   With the fun, John, the fun is neither Marco nor I knows who's gonna win.

00:00:15   Right, but see the problem is when you get this, you know, 100 year storm thing where we have 45 minutes before the little modem sound.

00:00:21   So work something out, please.

00:00:24   All right, an anonymous Apple employee writes to make yet another correction. This is turning into the tea, whatever, whatever, whatever feedback.

00:00:31   Another correction with regard to always-on VPNs and work devices and so on.

00:00:36   This anonymous Apple employee writes, "The always-on VPN mentioned on a past episode cannot

00:00:41   (all caps) be implemented on a user-owned iPhone or iPad. That policy can only be applied on supervised devices,

00:00:48   which if you recall is just Apple's fancy word for a corporate-owned iPhone.

00:00:51   You can only supervise an iPhone if the company purchased it through a specific reseller or carrier or

00:00:56   the company takes over the ownership of your phone, which is extremely rare. And this usually only happens with donated devices.

00:01:02   It's a tedious process which requires a full phone erase in multiple steps. In other words, a company cannot snoop your web traffic

00:01:08   unless they own the phone." Moving right along, Julian Torres writes,

00:01:13   "There's a preference in settings on iOS under contacts called short names that allows you to set the system-wide preference.

00:01:20   What was the context for this? I don't recall."

00:01:22   It was like the mom and dad, whether you use their names or their nicknames in your address book and what shows up where.

00:01:27   And I was trying to recall that there was some setting that you could use to control this, but then not all apps honored it.

00:01:31   This, I think, was the setting I was thinking of.

00:01:33   I seem to recall also messing with this setting and expecting it to work on the Mac or there's an equivalent on the Mac.

00:01:40   But it's the type of thing where you can suggest that this is how things show up.

00:01:44   And I bet if you call the right Apple APIs, it honors this setting.

00:01:46   But if you don't and just have or just pulling the contact data directly in your app,

00:01:50   I suppose you could just do whatever you want. But anyway, in case you're wondering, that's where it is in iOS settings.

00:01:55   Good to know.

00:01:57   Alright, my buddy Brian King sent us a link to a talk from Skydio, and I believe Skydio makes drones.

00:02:03   And this talk is like an hour and a half long.

00:02:06   And I was talking to him privately outside of the feedback that he had sent us.

00:02:10   And he said basically just skip around in this video and darn near anywhere

00:02:13   you'll see something cool. And I don't remember exactly what the timestamp was, but at some point they had these drones

00:02:20   following a person like running or cycling or something like that.

00:02:23   I don't remember exactly what it was, but the drone was flying in between power lines. It was

00:02:29   amazing. I do not understand how this could possibly work. It looks like it was somewhere around

00:02:34   between 10 and 15 minutes, I think. Anyways, it is a fascinating video. Yeah, at about 14 minutes

00:02:40   I see it now as I'm jogging through it.

00:02:42   It is really bananas to watch as you see it going above, below, and through these power lines.

00:02:49   Which I assure you as someone who is now an experienced drone pilot, except not really, that is

00:02:54   terrifying to think about doing. And I have pretty much the smallest drone on the market.

00:02:58   So this is extremely, extremely cool. If you watch the entire hour-long video, that's what it's about.

00:03:02   How they do that. You know, all the different sensing that they use to figure out how not to hit things when flying through the air.

00:03:08   It's cool. Alright, moving right along.

00:03:11   We have some follow-outs. The talk show episode 309, Pinkies on the Semicolon. That was where some guy joined

00:03:19   John Gruber on his show, and it was really good.

00:03:22   I wanted to call your attention to it because I really enjoyed it.

00:03:24   It was a really nice overview and kind of history lesson about the Mac.

00:03:27   And I thought it was really, really good and well worth the couple hours that it took to listen.

00:03:32   So well done, whoever that random person was. There was some guy named John

00:03:37   Yakuza. I don't know if you've ever heard of him.

00:03:41   Yeah, it was really good. It was nice to hear John

00:03:45   able to

00:03:47   rant in his giant paragraphs about the Mac. Very hypercritical style. For those listeners out there who miss

00:03:54   hypercritical and who want a show where Casey and I aren't here and it's mostly John ranting in these like large composed

00:04:02   you know arguments. This had a lot of that in it, and I really appreciated that as a listener.

00:04:08   I was just gonna say the opposite that I felt like on that show what I was doing was trying to give the Cliff Notes

00:04:12   versions of what people get an ATP because everything I said on the talk show are things we've discussed in the past in the ATP,

00:04:17   but I have to give the the compressed version because it's just one appearance as opposed to over weeks and months.

00:04:23   So if you're listening to ATP you're getting the the pure uncut stuff,

00:04:27   but if you want the Cliff Notes, you can check out that episode of the talk show.

00:04:30   Well either way, I thought it was very good, and if you're a listener to the show,

00:04:33   and if you don't regularly listen to the talk show you might want to make some time for this one because it's very very good.

00:04:38   All right, John, I think especially has lots of thoughts about Clubhouse. Can you tell me about this John?

00:04:44   Yeah, I've been still hanging out in the Clubhouse as they say. No one said that.

00:04:49   A couple of thoughts and extra bits about Clubhouse.

00:04:54   The first one is, and I forgot to mention this last time, it occurred to me even when I was just first

00:04:59   participating in these Clubhouse rooms,

00:05:01   you know, so that you've got speakers who are quote-unquote "on stage" and they can nominate other people to come up on stage and speak, right?

00:05:07   And the rest of the time

00:05:10   there's an audience, like the way it's presented is the speakers are at the top with their little avatars,

00:05:14   then there's a second section which says it's like people that the speakers follow, and

00:05:18   then there's a third section where the avatars get a little bit smaller, and that's like everybody else, right?

00:05:22   And anybody can be nominated to be a speaker, then they go back down to their thing.

00:05:26   So when you're in a room and someone is talking and you're in the audience,

00:05:30   the total number of things that you can do in the audience are, number one, raise your hand,

00:05:35   which says, "Hey, I would like to be nominated as a speaker to let the people who are speakers know they can pick you

00:05:41   or not," right? Or two, leave the room.

00:05:44   And like when I was down there,

00:05:47   I was thinking of our podcast where we do a thing kind of like Clubhouse where there's a bunch of people right now

00:05:51   who are in a chat room, and

00:05:53   although we can't nominate them to speak on the show, they can talk to each other through text in the chat while we

00:06:00   are on stage, and I find that an incredibly valuable thing.

00:06:03   You know, you can't invite every single person from the audience up to be a speaker in any kind of Clubhouse room.

00:06:10   I haven't seen any that have been like that.

00:06:11   It's always like you nominate the lucky few who get to talk and the rest of the people are just in the chat room, and

00:06:15   they don't get to do anything in Clubhouse.

00:06:20   You know, I'm not saying they should add a text chat, but I feel like it's something I'm used to and would find valuable.

00:06:26   I like the idea that the audience can speak amongst themselves, and that's a huge can of worms as we know.

00:06:30   Not every audience is as well behaved and wonderful as our chat room.

00:06:35   Once you get more than a handful of people in there,

00:06:37   then it just becomes a giant cesspool to see any chat in Twitch or Live Chat in the YouTube stream or anything like that.

00:06:44   So I fully understand the problems, and I'm thinking they're making the right call for this stage in their startup process.

00:06:50   But I have to say that I missed the chat room experience in Clubhouse. Have either one of you done any more

00:06:56   Clubhouse observing slash participating?

00:06:59   Yeah, I think all three of us, or I think maybe it was me and some with Jon and some with Marko, were in a chat.

00:07:05   Shoot, what was that?

00:07:07   Was that the one the Gruber pointed everyone to about like UX design and stuff like that?

00:07:11   Yeah, yes, that's what it was, and it was good. I enjoyed it. I don't

00:07:16   personally see this as something that I would do often, but if somebody whose work I enjoy is

00:07:22   talking about a topic I find interesting, and I'm not also doing something else, which is a lot of ifs, ifs, ifs,

00:07:28   yeah, I think it would be something I would enjoy. And it just so happened at that particular time, you know,

00:07:33   I saw that Jon was doing something, and I enjoyed Jon's work, and

00:07:36   it was something that I thought was interesting, and it ended up being interesting.

00:07:39   And so I popped in for a bit, and I saw both of you guys there at some point or another.

00:07:42   And I definitely enjoyed it, and I was able to do other things simultaneously, not unlike a podcast,

00:07:47   but basically once I joined the room, I closed, or I didn't close the app, I suppose, but I turned off my phone.

00:07:55   I locked my phone and didn't play with my phone anymore.

00:07:58   And I don't know if that's good or bad for Clubhouse,

00:07:59   but it was good for me from a user experience perspective, except that it wasn't very sticky as the

00:08:04   people like to say, in the sense that I wasn't, you know, piddling with the phone at all or with the app at all.

00:08:10   I was just sitting there listening. And yeah, it would have been nice to have a chat room.

00:08:13   This is still a thing that I

00:08:16   have not found compelling, like even when it's people I like, even when, like there's never a time

00:08:25   when I stop wishing it was a podcast in a podcast app. People keep saying, you know,

00:08:31   that people who say things like that are missing the point, and we're not taking advantage of the two-way nature of Clubhouse.

00:08:38   And, you know, and I think, you know, it's worth mentioning too that we're not just picking on this one particular service,

00:08:44   but now we're also gonna be picking on this category of things since everyone's copying them.

00:08:48   First of all, I still don't want to talk on most of these.

00:08:52   I think most people who listen don't want to talk. I think the, you know, John,

00:08:58   I think was being kind just now talking about, you know, the issues of how this kind of two-way communication thing scales.

00:09:05   I think if you've ever been in a conference that had a Q&A where you were like,

00:09:10   there's mics that are passed around or, you know, open mic somewhere out in the auditorium and people can like come up and like

00:09:15   ask a question at certain points or make a comment,

00:09:17   that usually is not very interesting to listen to.

00:09:20   The only people who tend to like Q&A parts of

00:09:24   conferences and stuff are people who want their voices to be heard, who have something to say and they want to say it.

00:09:29   That's very different from

00:09:32   listeners really benefiting strongly from it.

00:09:34   And everybody can point to, you know, some clubhouse they were in

00:09:38   in this period where it's been like super hot and all these like VCs and famous people are trying it out.

00:09:44   Almost everyone can point something and say like, well, look at how valuable this was because, you know, famous or insightful person X

00:09:50   happened to be there and this is amazing that you have access to them and wow, isn't that great?

00:09:55   But the reality is that's temporary and that doesn't scale.

00:09:58   Like it's temporary in the sense that right now all these like VCs and celebrities and stuff are checking this out

00:10:05   because it's the hot new thing amongst these circles.

00:10:08   But they're gonna move on and get bored of it too, just like everyone just like they always do because it's a big world.

00:10:15   There's a lot of stuff that happens.

00:10:16   So they're only gonna be it be there for a short time. In the meantime, the floodgates are going to slowly open and

00:10:22   flood the service with a whole bunch of people who you all don't want to hear from and who are gonna be competing

00:10:28   for

00:10:29   everyone's attention in these rooms that you want to get into and try to make your voice heard.

00:10:33   And so it's gonna just become like more crowded and the signals to noise ratio is going to decrease.

00:10:40   The quality level of the average participant is going to decrease and the whole service

00:10:45   I fear is gonna just turn into like this Q&A at conference kind of thing where

00:10:48   the the two-way nature of it is

00:10:51   it loses a lot of its value because

00:10:56   most of the second way, like most of the way back is is not of

00:11:00   high enough quality that anybody wants to hear it and I think it would just like grind most shows to a halt.

00:11:06   You know, I heard somebody discussing it. I forget who. I'm comparing it to a panel discussion at a conference.

00:11:13   I think that's apt

00:11:15   except panel discussions at conferences usually are the least interesting conference sessions in my opinion and

00:11:20   I kind of find it to be kind of like an easy way out as a conference speaker because you don't have to do a

00:11:24   lot of planning compared to a full-blown like single person talk

00:11:27   and there's less value there. Now imagine the panel discussion format with even less planning and

00:11:34   where half the session is Q&A from the audience and I just don't see how that produces

00:11:41   value for listeners consistently. To me it just seems like an easy way to make a whole bunch of like

00:11:48   bad AM talk radio show quality stuff

00:11:52   but at even greater scale than ever before and that's that's fine

00:11:55   and I'm not gonna say that like good stuff will never come up where you have like, you know

00:11:59   good people like telling their Steve Jobs stories and whatever else like that's gonna occasionally happen, but that's not the norm

00:12:06   even now that's not what's usually going on there and

00:12:09   that's going to become even less of the norm over time as the service scales to more and more

00:12:14   uninteresting people who just want to have their voices heard.

00:12:18   What happened to you being optimistic and not an old curmudgeon and not poo-pooing the new thing?

00:12:23   Remember when you were talking about that? You seemed to have turned over a new leaf with your pessimism.

00:12:27   Yeah, I listened to podcasts again and it was I learned how much better they were.

00:12:31   One thing I'll say to reassure you on the Q&A at a conference point and this is gonna sound bad

00:12:37   but I think it's actually an advantage of Clubhouse. In Clubhouse the speakers

00:12:42   get to pick who asked the question and they know at least something about the people they're picking and you can't see who they're not

00:12:49   picking like so you can't see them going no, no, no, no, yes.

00:12:53   You can't see them checking what your bio says how many followers you have who follows you, right?

00:12:57   And I suspect although I don't know because I have not hosted a room but I suspect that's the thing that you can and do

00:13:02   in Clubhouse and that people do in Clubhouse.

00:13:04   It's not a random selection of Q&A and even in the worst case like the only big conferences

00:13:10   I go to is you know, I used to go to PAX every year a while back and then of course I go to WWDC and

00:13:15   sometimes I really like the Q&A's. In fact, there was one session at PAX the entire two-hour session was

00:13:22   100% Q&A now granted in like comedy type shows getting random questions from the audience is part of the fun

00:13:28   but on the flip side of that WWDC like there's a reason Apple got rid of the Q&A in their sessions mostly because they didn't want

00:13:34   to answer hard questions about the App Store but setting that aside the place where Q&A still exists at WWDC is

00:13:39   in the celebrity lunch sessions where they have someone famous or you know

00:13:44   you know well established in a profession or whatever come up and do a talk not about Apple stuff and

00:13:49   you know again, sometimes the Q&A's there were terrible too, but sometimes they were really good, especially if it's a you know

00:13:55   beloved character as Brelman would say, you know, someone who the audience really

00:14:00   loves and wants to hear things from every single person in line loves the person and gives them nice respectful

00:14:06   hopefully interesting questions and the audience enjoys it so I

00:14:10   know I was still

00:14:12   my main frustration with clubhouse now is still when someone tries to talk to me when the clubhouse is on I pull out one of

00:14:17   my AirPods and the thing doesn't stop

00:14:19   Again, I see last week where I wished for pausing and catching up. But anyway, that's

00:14:25   I'm I'm still investigating clubhouse sounds like Marco may not be investigating much longer, but you know, not everything is for every person

00:14:34   There's tons of things that we all don't do. I don't think Marco plays video games and streams himself

00:14:39   But that is a very popular thing to do despite the fact that Marco doesn't want to do it

00:14:42   Oh, yeah, and that and I mean I'm not saying anything like that. But yeah, I just I just

00:14:45   So far like I like when Grouro joined that that room everybody was talking about I saw and I saw the two of you were

00:14:53   And I'm like, alright fine. I should probably join this and see what this is about

00:14:55   That particular room demonstrated an anti pattern that happens not an I don't know. It's an anti pattern

00:15:01   I don't know what you can do about it

00:15:02   Maybe it's a feature but it's it's an awkward thing that I've seen happen in clubhouse multiple times now in my tiny experience in clubhouse

00:15:08   Which is someone starts a room for an intended purpose

00:15:12   someone

00:15:14   Essentially more famous than them joins the room

00:15:16   joins the audience

00:15:18   they nominate them as a speaker and then all the audience wants to do is ask questions of the person who was just nominated as a

00:15:23   Speaker and that's nobody's fault really but it's a dynamic

00:15:27   That's a little bit awkward and weird because like, you know, if who's running the show and I give a clubhouse would say well

00:15:33   No one's running the show

00:15:34   It's just a big collaborative thing that just is an emergent property of the participants

00:15:38   But sometimes the person who started the rooms thinks they're running the show and then eventually they're not I

00:15:42   Haven't cracked this nut yet and found anything. That was really

00:15:46   That I really thought needed to be that format as opposed to like wow

00:15:52   This was just released as a podcast

00:15:53   I would enjoy this a lot more and it would end it would be a much easier for me to listen to it

00:15:57   It should be a fish concert because they can nominate people to play guitar from the audience and Marco would love it

00:16:02   It's all just collaborative and that's different every time

00:16:04   Maybe I'm just like a snob, but I mostly just want to hear the people who were good like I I want to hear like

00:16:12   Not just like hey, let's incorporate everyone's ideas in this discussion

00:16:16   What about the the kiss guy from the Foo Fighters concert? Am I getting this right?

00:16:20   I need Merlin on the show to tell me if I'm getting these references, right? I don't chat room

00:16:24   Look up kiss guy Foo Fighters. Tell me if I'm right. I don't know

00:16:26   If I had a ticket to the to the Foo Fighters, I wouldn't want them to pick random people from the audience

00:16:33   I want I want to see Dave Grohl like I want like that's that's why I'm going you might like kiss guy

00:16:37   I hope the whole reason this is the meme is it was some I don't know

00:16:40   details right some famous band invited someone up on stage to play guitar and the person was amazing and

00:16:45   The band was amazed by the fact that they were amazing. And anyway, I mean, I'll look it up

00:16:50   But like that first of all, that is probably not the common case

00:16:53   Just trying to make a fish joke as far as I'm concerned. It's a bunch of people noodling around on stage

00:16:58   So who cares they bring us accurate from the audience. That's all I was doing. That's not it. But yeah, okay

00:17:03   I know that's why it's a joke. Okay. Well that went right off the rails like a clubhouse room

00:17:08   Hey, no, if only this that's the thing. It is not enough over talking clubhouse. That's what a clubhouse needs more people talking at once

00:17:15   Yeah, Oh God, and that's the other thing too. Like it

00:17:18   Maybe again, maybe this must just be really wrong for me because what I hear on clubhouse

00:17:23   sounds in both audio quality and communication effectiveness like a conference call

00:17:30   It sounds like I'm just on a conference call. I hate conference calls

00:17:35   I think conference calls are one of the worst communication mechanisms we've ever devised as a species and this service basically is like

00:17:43   Hey jump on any conference call you want. Can everybody hear me?

00:17:48   Wait, no you talk. I think you're muted. Wait now. No John John now you talk. I can hear you typing

00:17:53   You know, I was just gonna say

00:17:55   Why?

00:17:57   Don't know why the two of you are complaining about conference calls. I'm on conference calls all day long

00:18:02   You two are not so you're desensitized. You don't realize how bad no no, it's the opposite. It's like being a desert island with fish

00:18:09   Even more like usually I am very fortunate and that usually I'm not on conference calls

00:18:16   So when I am on one and you know

00:18:18   Our wonderful sponsors and everything almost never make me do anything like this, but occasionally

00:18:24   somebody wants to have a call and

00:18:27   occasionally they can't be talked out of it and occasionally I have to go on a conference call and

00:18:33   Every time I want a conference call. I have a number of opinions

00:18:36   number one is like

00:18:39   Who are all these people on this?

00:18:41   Why did this call have to have seven people on it when only one to two of them are actually talking ever?

00:18:48   During the whole call. I don't even know what the six of these seven people do their job titles seem

00:18:54   Like they don't do anything or that they are redundant

00:18:57   You're missing out on the the great part of the conference call where everybody has to introduce themselves and it takes half an hour, right?

00:19:03   Yeah, exactly

00:19:03   and then and then most of people never talk again, so I didn't need to know that and

00:19:06   Am I supposed to remember what your voice sounds like the whole time? No, so and then

00:19:11   And then like afterwards like alright

00:19:13   The amount of like person hours that it cost to arrange the call then on the call

00:19:19   Then the follow-up email after the call. It's like it must have cost this company like

00:19:24   $20,000 and like what was that worth it that couldn't possibly have been worth that

00:19:30   That could have just been an email. So yeah, I'm not a fan of conference calls in case I guess that wasn't clear

00:19:36   Oh, I had no idea. I don't know

00:19:37   I I'm I think between the two of you guys John. I think you have some some reserved

00:19:44   Enthusiasm for it. It seems I think mine is even more reserved and Marco. I think that you've pretty much

00:19:50   Unequivocally decided it's not for you. And I think any of those conclusions is perfectly reasonable

00:19:55   but we should move along a little bit a gee Rambo did some investigations with regard to the

00:20:02   The spewing and uploading of all of your contacts and so he had a short Twitter thread

00:20:08   And I will read pretty much all of it

00:20:10   Gee says I just had a poke at the clubhouse app with a proxy given the recent concerns about contacts usage

00:20:15   The bad part is that it uploads all of your contacts phone numbers surprise

00:20:18   The good part is that it's the quote unquote only thing it uploads about them the contacts on my test device were all fake and included

00:20:24   several pieces of data including email address and picture

00:20:26   The clubhouse only uploaded the phone numbers another problem is that the API used to upload the phone numbers doesn't seem to be using SSL pinning

00:20:34   Also, if they just want to match people based on who they have phone numbers for in contacts, they should use one-way hashes

00:20:40   So that's some technical jargon to say that if there there are ways in which they could do this more safely

00:20:47   But the good news is all they're taking is numeric phone numbers and seemingly nothing else

00:20:51   So it could be worse, but it's still not great. Yeah, I mean they have access to everything

00:20:56   Like the fact that the fact they're just doing phone numbers now unless you're going to constantly monitor or whatever like that could change at any time

00:21:01   Yeah, I just I still don't see how this is anything but a privacy disaster. And by the way

00:21:07   Probably a violation of GDPR also because all those phone numbers that people are uploading those people

00:21:15   Could not and did not consent to the sharing of that data

00:21:20   So it's got to be illegal in the EU for them to even possess this data in the first place

00:21:26   Yeah, I don't know what the GDPR says about data given to other private citizens that you know

00:21:31   What happens to it there if they give it to a company then obviously it's different

00:21:34   But anyway, who knows I'm sure they'll work it out with whatever if this ever gets big

00:21:39   I'm sure they'll work it out with whatever countries they're dealing with stuff in and by the way on the subject of hashing which I also

00:21:44   Brought up on a previous show a couple people on Twitter sent me links to

00:21:47   some

00:21:49   depressing demonstrations that given the limited

00:21:52   Given the limited sort of

00:21:56   Key space of email addresses and the email addresses are constrained. They can't be unlimited length

00:22:02   There's certain characters that are valid. They have a particular format

00:22:04   One way hashes are not quite so one way as you might think they are when it comes to email addresses

00:22:10   Given a little bit of time and effort which is a bummer, but you know, that's life

00:22:13   All right, can you tell me about ephemeral clubhouse? Yeah

00:22:19   The the supposed beauty and promise of clubhouse is that you know, it's not recorded. It's not a podcast

00:22:24   It's you had to be there if you were there great if not

00:22:27   Oh, well this shortly after recorded the show where we mentioned these stories about Steve Jobs clubhouse

00:22:33   It was posted to YouTube

00:22:35   Because it was recorded. I obviously I mean there's nothing you can do to stop people from recording it

00:22:40   I think the clubhouse app strongly discourages it but computers or computers

00:22:45   I'm not quite sure how this recording was made but not only was the stories from Steve Jobs thing recorded

00:22:50   But it was also uploaded to the computer history

00:22:53   Museum sites or sort of you know for as a as a historical artifact

00:22:57   So if you didn't get in on that clubhouse room and want to see it

00:23:00   It's on YouTube link will be in the show notes and related to that. There was a story in ink

00:23:06   website inc.com

00:23:08   It says with the sensational headline clubhouse is recording your conversations

00:23:12   And that's not even its worst privacy problem a little bit sensational but in their terms of service that nobody reads

00:23:18   It does say clubhouse says solely for the purposes of supporting incident investigations

00:23:23   We temporarily record the audio in a room while the room is live if a user reports a trust and safety violation while the room

00:23:28   Is active we retain the audio for the purpose investigating the incident and delete it when the investigation is complete if no incident is reported

00:23:34   In room, then we delete the temporary audio recording when the room ends

00:23:37   So, I mean not that you shouldn't have already been assuming this anyway

00:23:41   But just because the clubhouse app discourages you from recording

00:23:44   It doesn't mean that they're not recording it and you can see based

00:23:47   You know like that they have a thing in

00:23:49   clubhouse where you can report

00:23:51   Like a report a recent speaker if someone comes on stage and says something bad and you want to report them like this is all sort

00:23:56   of reputation and reporting system built into the app which is a good thing and

00:23:59   To sort of adjudicate those they have to have a recording of what went down rather than well

00:24:03   They don't have to but it's it's better to have a recording than to just take someone's word for it that someone did something bad

00:24:08   Or whatever so this makes some sense, but if you

00:24:11   Lest you believe that clubhouse really is completely like a wisp on the wind and it's here and it's gone

00:24:17   Just like all those other things whether it be Instagram stories or snapchat or whatever

00:24:20   You're giving your data to the service provider and they're doing with it

00:24:25   Whatever they want and if you're wondering what they're doing with it, you can read their 800 page

00:24:29   Terms of service and figure it out, but the bottom line is once you give it to them

00:24:33   They are you know, they're who knows what they're doing with it. And if you're uncomfortable with your things being recorded

00:24:40   Don't use clubhouse. But then again, you probably also shouldn't use Instagram stories or snapchat or any other service that records your audio

00:24:46   We are sponsored this week by away

00:24:50   Whether it's a trip to the corner store a weekend away or an extended stay with friends and family

00:24:55   We're all navigating the current reality of travel

00:24:59   But no matter your destination or your style

00:25:02   Aways suitcases bags and accessories all come in a variety of colors sizes and materials to suit your needs and inspire

00:25:10   Your future travels all of a ways suitcases are made to the highest quality

00:25:16   They are designed to last a lifetime with durable

00:25:19   Exteriors that can withstand even the roughest of baggage handlers and if any part of your suitcase ever breaks

00:25:25   Their standout customer service team will arrange to have it fixed or replaced these have lifetime

00:25:30   warranties and all these suitcases are

00:25:33   Incredibly well designed on the inside too

00:25:35   they have an interior organization system that includes things like a built-in compression pad to help you pack more stuff a

00:25:41   Hidden removable laundry bag to separate your dirty clothes from your clean clothes as you travel and they all have four

00:25:47   360-degree spinner wheels so you can roll them through the airport really easily and lots of maneuverability there and all this is available in a

00:25:55   nice huge variety of

00:25:57   Materials colors and sizes to fit your style and your personality

00:26:01   This is a great line of suitcases and other travel gear at away and you can see for yourself by taking advantage of their

00:26:07   100-day trial all of their products come with a hundred day trial

00:26:11   So you actually are expected to take it out traveling like take take your new away suitcase out on the road

00:26:18   Live with it travel with it get lost with it for a hundred days

00:26:21   And if you decide it's not for you after that you can return any non personalized item for a full refund

00:26:26   No ifs ands or asterisks and they have free shipping and free returns on all orders of the contiguous us

00:26:33   UK Europe and Canada

00:26:35   So start your hundred day trial and shop the entire away lineup of travel essentials including their best-selling suitcases at away travel

00:26:42   calm slash accidental tech that's away travel calm slash accidental tech. Thank you to away for sponsoring our show

00:26:54   So John you also defected away from clubhouse and you've tried Twitter spaces notice the tried is in scare quotes in this item

00:27:02   Mm-hmm. I tried sure this clubhouse. This is like this is like right after we finished recording

00:27:06   The episode where Marco was saying like, you know

00:27:09   We were debating whether it was gonna be a future we purchased and Marco said is there it's gonna be both

00:27:13   They'll be copied by everybody else. But also maybe they'll get purchased

00:27:15   Twitter very quickly announced a bunch of stuff that they're doing one of which is hey, it's like clubhouse

00:27:23   but on Twitter and

00:27:25   Basically the way I found out about this so I don't use the Twitter official Twitter crime

00:27:30   but occasionally in my third-party client

00:27:32   I come on a tweet that I can't see the features of because Twitter is evil and doesn't allow third-party clients to have access to

00:27:37   All the features so for example polls if you see a poll, I can't see polls than my third-party Twitter client

00:27:42   So if I see a tweet that is a poll and I want to see it

00:27:45   I have to open it in the official client, right?

00:27:47   And so occasionally I do that and so I had I had done that like there was some tweet

00:27:50   I don't remember if it was a poll or not

00:27:51   But something like that that I couldn't see in my third-party Twitter client

00:27:54   So I hopped over to the real client which is just a matter of saying, you know

00:27:57   Open in Twitter open in browser even with the link redirect thing and I ended up in the official Twitter client. I'm so sorry

00:28:03   Yeah, it was tough. I saw a thing. I want to get out of there as fast as possible

00:28:07   I can't make heads or tails that mess and

00:28:09   I think I wanted to either reply or compose a tweet or something like I wanted to do something quickly and I was already in

00:28:14   The Twitter app so I pressed the little like compose button or something like that and it popped up like a constellation

00:28:20   Of three little circles. I

00:28:22   Don't know. I don't know paying attention or wet

00:28:25   But I hit one of the circles or hit something and rather than a tweet compose screen

00:28:29   What happened was I was suddenly in a Twitter space

00:28:33   and I was the host of the Twitter space and

00:28:37   Then apparently Twitter notified everyone who follows me. Hey

00:28:42   John has created a Twitter space Oh delightful

00:28:45   Do you want to come into John's Twitter space and space with him and then so my icon is a little?

00:28:51   My icons in the little Twitter space and then another icon appears and then another icon and then another icon then another icon

00:28:58   Another icon. I'm pretty sure at this point. My mic is live as well

00:29:01   Like because I press because I press there

00:29:03   I'm sorry

00:29:04   I'm in a thing and like my my I think I found like the mute thing or whatever and turn my mic off and

00:29:09   Then I was like because look I didn't know what Twitter spaces was at this point and I'm like

00:29:15   What just it looks so much like clubhouse and like did I accidentally swipe over to the clubhouse?

00:29:19   No, I'm still in the Twitter

00:29:20   Like what even is going on here?

00:29:22   And so the room filled up and I looked around for any other controls

00:29:26   What I would have done speaking of chat room is typed into the chat room and said, sorry everybody

00:29:31   I have no idea what I think I just pressed it to make this thing happen, but

00:29:35   I'm not I didn't do this on purpose and now I have to go so that's what I did

00:29:40   like the room had filled with like a dozen people and like the short period of time very short like

00:29:45   Seconds people had come in because I guess they got like push notifications and then I just bailed so

00:29:50   People who came into my to my Twitter space because I'm somehow in the beta or I don't know

00:29:56   This is a publicly roll out feature. I had no freaking idea. I'm sorry

00:30:00   I apologize for making a space and I apologize for not saying anything and just immediately leaving

00:30:04   This gets to what Marco was saying before was it was it Marco saying like you have no urge to speak

00:30:09   Yeah, any of these things I also this this is gonna sound weird for somebody who literally speaks into a microphone for hours every single

00:30:16   Week and then just revisit to the world

00:30:18   I also have no urge to speak in almost every clubhouse thing that I'm in and

00:30:24   Including these the Twitter space that I accidentally created

00:30:27   I haven't I don't have any urge to speak in that scenario now, and I don't know why that is like I

00:30:32   Obviously I wanted to do podcasting I got into it

00:30:35   You know like it was a thing that I thought about doing and was excited to have the opportunity to do

00:30:40   But just I don't know if it's a different skill set or I just got to get in the right vibe

00:30:44   I just have to try it a few times to get used to it, but so far. I'm

00:30:47   Not enthusiastic about hosting a room and not particularly enthusiastic about participating in a room. I think when it comes to clubhouse

00:30:55   I'm just a lurker and when it comes to Twitter spaces apparently I'm an accidental activator

00:30:59   Cue the theme song yeah

00:31:02   And so Twitter is rolling out some more things that are just tangentially related

00:31:06   We're not gonna have time to go into now

00:31:07   But I figure they're worth mentioning super follows

00:31:09   Which I think is actually a clever name because it makes no sense, but sounds neat

00:31:13   Super follows is where you can charge people to get access to exclusive content on Twitter

00:31:18   Which is interesting does that means Twitter is gonna have to you know get people's payment methods and just you know the whole deal right now

00:31:25   No one pays to use Twitter as far as I know right. I think that's right unless you're you know advertising with them

00:31:31   Yeah, I suppose anyway

00:31:33   And then you can offer them you know bonus content tweets that only they can see a group a newsletter

00:31:40   Who knows this is not a release feature at least not released to me so but but it's Twitter

00:31:46   This was it that like that investor meetings would say we're gonna do a thing where you can charge people to get exclusive content

00:31:51   So let's see how that turns out, but you know hey at least Twitter is trying something and then the final thing is communities

00:31:57   Which is like they show in the screenshot here groups one group called crazy for cats one group called surf girls

00:32:05   Gurlz and plant parents, and I don't know what they're trying to go for here

00:32:10   It's like every time you look at what these things have to squint to say who are they trying to copy so it's like okay?

00:32:14   spaces is a

00:32:16   Clubhouse super follows is patreon

00:32:19   Twitter communities is what like Facebook groups yeah?

00:32:25   No

00:32:27   anyway

00:32:29   Coming soon to a Twitter client that you should never use near you

00:32:32   Yeah, I try periodically to go to the official Twitter client just to see you know what's going on there and

00:32:40   There are a couple things I like about it, but overwhelmingly so much about it. I really dislike and

00:32:47   one of the best examples is

00:32:50   There is no

00:32:52   Sorter I haven't found any sort of idea of state

00:32:56   so I

00:32:58   do try to be a Twitter completionist for a list a private list that I have and

00:33:02   Certainly for my mentions, and it seems like every time I arrive at the official Twitter client. It's just like hmm

00:33:09   We're gonna put you right here. I have no idea. Why you don't have any idea

00:33:13   Why I don't have any idea why but that's where you're gonna start because that sounds fun

00:33:17   And if they just got that right I think it would actually be semi tolerable

00:33:22   I wouldn't say it would be great, but it'd be semi tolerable

00:33:24   But golly every time I go in land there even if I've like even if that was the last

00:33:29   You know Twitter client. I used it's still like oh, yeah

00:33:33   We'll just put you in the middle of nowhere why not and it's very very frustrating

00:33:36   I want to make that pitch like I continue to be shocked every time I

00:33:39   Realize that some person I am acquainted with in my tech nerd circles

00:33:45   Uses the official Twitter client because they'll complain about something like seeing ads or some other thing and their

00:33:51   Official Twitter client if you're listening to this extremely tech nerdy podcast

00:33:54   And you are used Twitter at all and you are using the official Twitter client

00:33:58   And you've never tried a third-party client

00:34:00   I know it's a lot of qualifiers. Please check out a third-party Twitter client for iOS

00:34:05   There are lots of good ones to choose from I use Twitter epic and love it tweetbot is also very good

00:34:08   There are others to choose from it's so much better if you just want a sane reverse chronological

00:34:14   Timeline of tweets in order from the people you follow which sounds like what Twitter should always be

00:34:20   But hasn't been for many many years the official client is janky in many ways

00:34:24   I know you can turn off the algorithmic timeline if you are persistent

00:34:27   But in a third-party client you don't get ads unless they're ads from third-party client itself

00:34:33   Which you can usually pay to get rid of and if you can't use a different third-party client where you can

00:34:36   It's just so much nicer experience like I don't I think very often that if I couldn't use a third-party client

00:34:42   Would I still use Twitter? I would use it a lot less or I would like it a lot less

00:34:46   So if you've never tried it give a third-party client a try

00:34:50   That actually is I think the best reason to use the main client is if you want to use Twitter less

00:34:55   It encourages you to use it last because it stinks it does because it is yeah

00:35:00   It's so like weird to use the main client. You might end up in a space. It's really

00:35:06   It's it's it's quote good. It's it's good if what you want to do is

00:35:12   Be a very light Twitter user very casualties where you just like dip in occasionally

00:35:18   Look at some random crap and then dip out

00:35:21   It's good for that

00:35:22   That's pretty much all it's good for and so if that's what you're going for if you're like currently like super addicted to Twitter

00:35:29   And you're trying to like reduce maybe being a completionist or something else

00:35:34   Then by all means delete every other Twitter app on your phone and just use the main app because it will force you

00:35:39   Into the habit of using Twitter less because it is so bad at being a power user app

00:35:45   Can you try can you speaking of that? Can you both launch the official Twitter app right now and long?

00:35:49   Press on the compose tweet button. I did that earlier. Yeah, so I get three options

00:35:53   I get what appear there three icons and this is very reminiscent of what was it path that did this like radial thing way back

00:35:59   In the day, which is really beautiful social network, even though it was otherwise useless

00:36:03   There's a three lines with a quill which I believe means make a new text tweet

00:36:08   There's a box with gif in the center that presumably means, you know

00:36:13   Make a tweet with an animated gif and then there's like a box with a landscape in it and I presume that means

00:36:18   You know open your photos and tweet a photo and that's all I have

00:36:22   Marco I don't have it installed

00:36:25   I'm not gonna install for this

00:36:28   All right

00:36:28   Anyway, I've got the same first two buttons as Casey but my third button is a diamond made out of dots

00:36:34   And that's the spaces thing

00:36:35   so I just wanted to see if it was rolled out for everybody if I'm just a lucky person, but so instead of the

00:36:41   Upload a photo you have the diamond diamond made out of dots

00:36:45   Which honestly even if I had looked at I would have had no idea what that was going to do

00:36:49   I I there's a part of me that wants to just use the official Twitter client and live the way the

00:36:55   Regular people do and then I use it for ten minutes. I'm just like oh god

00:36:58   It's no regular people shouldn't live though. That's what I'm saying

00:37:01   Like I don't know people that's why I said I made the point to say it on the podcast because like

00:37:05   For regular people might be they don't care but like it's so much better than than the other

00:37:11   Than the official client if you just want like like imagine if when you looked in your email inbox

00:37:17   It just gave you like a random selection of your emails algorithmally chosen

00:37:20   You'd be like, but I just just show me all the emails I got in chronological order. I'll go through them, right?

00:37:24   I don't just try to guess at what I want to see like if that's how you if that is how you want to interact

00:37:29   With Twitter to Marcos point. Maybe you don't maybe you just want it to be like

00:37:32   I'll show me some popular stuff and then I'll bail but if you want to interact with like you interact with

00:37:36   RSS or email a third party Twitter client and even if you don't even if you like the

00:37:41   Timeline just to get rid of ads like and yeah, I know he's like who you didn't just say you can't use polls and stuff

00:37:45   Trust me. You're not missing much most Twitter polls stink

00:37:48   You know and you can always go over to the it's it's the worst

00:37:51   You can't even see the results unless you vote

00:37:53   That's why everyone has to put the just show me the results thing and they limit the number of choices

00:37:57   I tried to do a Twitter poll like sometime this past year and I was so angry that I couldn't put all my options in

00:38:02   Because there was a limit it's like five options or something and I had six for my joke poll

00:38:06   I'm like, oh, well, you just ruined my joke nice thing

00:38:09   Five options whatever the hell it is. I'm not saying this should be a thousand but it should be more than like a handful

00:38:15   We are sponsored this week by Linode my favorite place to run servers

00:38:21   Whether you are working on a personal project or managing your enterprises infrastructure

00:38:25   You deserve simple affordable and accessible cloud computing solutions that allow you to take your project to the next level

00:38:31   Simplify your cloud infrastructure with Linode Linux virtual machines

00:38:35   You can develop deploy and scale your modern applications faster and easier get started today with a hundred dollars in free credit at

00:38:43   linode.com

00:38:45   slash ATP or text ATP to

00:38:48   474 747 for that instant access to a hundred dollars in free credit Linode is a great web host

00:38:54   I've hosted I think I currently host something like 28 servers there

00:38:58   I've been with them for a long time long long long before they were a sponsor and

00:39:02   They're just they're a great host. They have amazing value

00:39:05   You know if you compare the resource levels and stuff that you get from them compare to anybody else in the business

00:39:10   And I don't think I've ever seen anybody who can consistently beat them

00:39:13   It's it's just really it's a great value for what you pay for what you get and it's just really great

00:39:18   Even at any price like I love their control panel. I love their capabilities

00:39:23   They have all they have 11 data centers

00:39:25   You can stick your servers in they have all different kinds of server capabilities and optimizations for different tasks

00:39:29   If you need they have all sorts of managed additional services like their new s3 compatible object storage

00:39:35   They have managed kubernetes support and there's so much more at Linode great support if you ever need it

00:39:40   I needed it recently and they're just wonderful

00:39:43   Super easy to deal with and the people that you talk to are like the right people

00:39:48   There's never any kind of tears or handoffs to like higher level service. It's just like you're always talking to the right people

00:39:53   It's it's great visit linode.com

00:39:55   Slash ATP and click that create free account button to get started or text ATP to four seven four seven four seven

00:40:03   Get started on Linode today. Thank you to Linode for hosting all my servers and sponsoring our show

00:40:08   So speaking of official clients that are meh and third-party apps that are way better overcast 2021.1 is out

00:40:18   Doesn't just roll off the tongue. Does it? Nope

00:40:22   You gotta give my cool you gotta give cool code names for your releases. This is the

00:40:26   Watch me now release. I don't know come on. Well done. Well done

00:40:29   I you know, I actually I really like I think I first saw this from Curtis Herbert and slopes

00:40:35   And then Marco adopted it shortly thereafter, but I do like this kind of year and then increment version scheme

00:40:43   Which is what I've used for my apps, but no it does not roll off the tongue at all. No

00:40:48   Yeah, and I think I might kind of regret this versioning scheme just because it's so clumsy you got version inflation

00:40:55   You can't go back now

00:40:56   You literally can't like Apple does not allow you to ship a version to the App Store that it's like numerically less than the one

00:41:03   You should be last you use scientific notation

00:41:05   Nine-ninety five

00:41:09   Yeah, I feel like I should just do you know version like alright five thousand dot one

00:41:14   Five thousand dot two you can put an exclamation point and then they'll treat this factorial. Yeah, maybe that's like all the fields in Photoshop

00:41:21   Or you can put in math expressions and it was expand them for you. I don't think Photoshop on a trans factorial now

00:41:26   I just want to go test that and tell us about this Marco the main

00:41:30   Changes in this version of overcast are under the hood stuff that nobody even sees

00:41:35   And then secondly the entire watch app the main goal of this was

00:41:41   Number one modernize a lot of the guts of the app a lot of the like data layer the network layer all that stuff

00:41:47   Because it was all you know seven year old code most of which is still there

00:41:52   but you know modernize it to the point where

00:41:56   Both it could be you know optimized to whatever it needs to be for modern day, but also the driving factor behind it was I

00:42:05   Wanted to rewrite the watch app

00:42:08   to have the same

00:42:10   sync engine and all the you know model and data layers and stuff as the main app because

00:42:16   The watch app was miserably bad at being reliable and at sync and everything else

00:42:24   It was to the point where I knew like, you know phone to watch communication is so unreliable

00:42:30   With with the watch connectivity framework and everything. It's so unreliable. I knew like the key to happiness here is to have the watch

00:42:39   be a first-class sync client that syncs directly to the overcast web service and

00:42:43   Runs all the sync stuff itself and only communicates to the phone

00:42:48   When it comes time to like use the watch as a remote for the phone app

00:42:53   Which is a common use granted probably even the most the most common use but that should be the only communication

00:42:59   It does you know the phone telling it what's playing on the phone the watch telling the phone like hey

00:43:04   the user just hit pause pause the audio whatever that kind of thing but not using the phone app and that communication channel as this like

00:43:11   Way to sync all the data to the watch and all the podcast files

00:43:15   For people who are wanting to listen to stuff directly on the watch without their phone present

00:43:20   Like if they're going on a run or whatever

00:43:21   I knew I had to bring the sync engine over to the watch in order to do this

00:43:27   There were two major

00:43:29   undertakings number one

00:43:33   the watch does not run UI kit and

00:43:35   for the time being at least the watch does not run my audio processing engine and

00:43:41   so all the places in the sync engine and the model layers all the places where

00:43:48   that code was

00:43:51   Intertwined with UI kit or with the audio engine had to be broken up and made you know more orthogonal

00:43:59   So I couldn't have like a little clause in the sync engine as oh well if you know if this is

00:44:05   you know sync this way or if this condition happens in the model layer go tell the audio engine to do this or

00:44:11   Fire this UI notification directly to the UI of the app, you know, I could I had to like break those bonds make the code more

00:44:19   isolated more orthogonal more independent from the other components of the app so that like the sync and model layer could sync itself

00:44:27   Without any UI kit code without any you know tying in with the with the phone app in ways that I couldn't bring over the watch

00:44:34   app

00:44:36   Part two was simply making it more efficient

00:44:38   Because to run the sync engine and everything to run that whole thing the whole data engine on the watch

00:44:44   well, the watch has a way slower processor way less RAM way less storage space and

00:44:50   You are allowed to use way less of those resources before your app gets killed

00:44:56   Background operation on the watch is very limited if you use I think two seconds of CPU time your app gets killed

00:45:03   And and you know again memory is constrained

00:45:06   So it's a it's a much more constrained environment for resources and for what apps are allowed to do and when?

00:45:11   So I had to make everything, you know efficient and it was already pretty close, but it was it took some work and then finally

00:45:18   I wanted to rewrite the watch app in Swift UI for lots of reasons. I mean watch kit is

00:45:25   the worst and Swift UI

00:45:27   While it has many challenges to it is a hell of a lot better than watch kit in so many ways

00:45:36   It's not even close

00:45:37   So, you know, I was willing to tolerate the pain of learning Swift UI and all the weird walls you hit when using Swift UI

00:45:44   compared to the

00:45:46   immense pain I knew from watch kit the that last challenge was to adapt or

00:45:52   rewrite

00:45:54   parts of my almost entirely objective C data layer

00:45:58   to

00:46:00   Be easily integrated into Swift UI which involves in many cases

00:46:05   Just rewriting certain classes in Swift things like the download manager

00:46:09   The sync queue for sync operations like for how those are scheduled stuff like that so that they could then tell the UI

00:46:15   Things like whether sync is in progress what the download state is of an episode. It's you know things like that

00:46:22   It's much much much easier and better to have a lot of that stuff be in Swift classes and so

00:46:30   making the data layer

00:46:33   integrate better or at all with Swift UI

00:46:35   required a lot of rewriting stuff in Swift or writing shims on top of things in Swift, so

00:46:41   That was the main challenge of this of this version is over the last few I think about three or four months or so

00:46:47   rewriting core components in Swift when necessary

00:46:51   bridging things to Swift and making things more Swift friendly when I wasn't rewriting them and then rebuild and then

00:46:57   making all the code

00:46:59   like for syncing everything standalone from the rest of the iOS app so that it could be built and run on the watch and

00:47:06   Making that efficient enough that I didn't get killed constantly

00:47:09   That's what this update was and what users saw was basically like bug fixes and new watch

00:47:17   That's like you know this massive amount of work you know massive amounts of change all of that to basically see

00:47:25   Bug fixes and the watch app is all new

00:47:29   But those you know that's all that's the kind of thing that I really needed and and the watch app was in a really bad

00:47:34   State before this it really didn't work well for a lot of people and so I had to really tackle that and

00:47:39   This allowed me to do a bunch of other stuff like there was a whole thing about I did rewrite all the intent handling

00:47:46   Adopting the new intent handling required me to switch my

00:47:51   old UI app delegate thing to UI scene delegate that the scene delegate API that was launched a few years ago and

00:47:58   I did I decided well

00:48:00   I might as well do that in Swift as well

00:48:02   And then I might as well you know rewrite my app delegate since I have to write it anyway

00:48:06   I might as well rewrite the app delegate in Swift and as any iOS developer can tell you rewriting your app delegate

00:48:10   After a seven year codebase can be terrifying and quite an ordeal

00:48:15   So it's just like there was tons of stuff like that where in order to do some modern thing I had to

00:48:22   Either rewrite something from scratch or at least significantly change it to use a new API

00:48:29   And so that just it just took a lot of time

00:48:32   There's a lot of code modernization to do a lot of rewriting or refactoring or shimming to do

00:48:38   I still even gotten to all of it like part of the reason I was doing all this was to

00:48:43   Prepare myself to do iOS 14 widgets

00:48:45   Which I still frankly don't really want as a user like for it for a podcast app

00:48:52   I don't really think it's going to work the way people think it will

00:48:55   But my customers are demanding that in in moderate numbers, and so I figured I should probably do it

00:49:01   But even you know to do that I had to lay all this groundwork

00:49:03   There's a bunch of changes to car plays abilities in iOS 14 that this version does not tackle yet

00:49:11   But because I just in a time

00:49:13   But that's gonna be something I tackle next and I think a lot of this groundwork is going to help that

00:49:18   Become easier or possible. Wait so slow down

00:49:21   What is it that carplay can do now that it couldn't before for your for your perspective again?

00:49:26   I haven't looked too far into this yet again

00:49:28   I just have enough time

00:49:29   But I think you're able to have a lot more control over the types of UI that you can display then previously you know before

00:49:38   You know the car player piece I have now is built on this older API where you basically

00:49:43   Responded to Apple asking for a tree structure

00:49:47   So it would say all right. What's up? We're on like you know we're on the root screen

00:49:50   What what are the list elements of the root screen give me you know give me the list items

00:49:53   And then it would say all right

00:49:55   Person tapped in this item give me give me the list elements in the next level of the tree or whatever it was very very

00:50:00   Simple like list based thing and then the now playing screen. I had almost no control over

00:50:07   the new carplay API adds

00:50:09   Some ways and again. I don't I don't know to the extent yet

00:50:13   How much but it adds more places where you can customize what the UI actually is including on an out playing screen?

00:50:19   Which which is very important to me because I really want to be able to tackle that in a good way and so

00:50:26   My next major update I intend to have you know

00:50:30   Widgets and carplay redo basically, but that's probably a few months out still

00:50:34   It's a feature request from the chat room for a chapter skip and chapter control and display on the now playing screen

00:50:40   Yeah, and carplay yeah, that's that's certainly on my list. I don't know to what degree that's possibly like there

00:50:45   It's it's always been frustrating with carplay because

00:50:48   Like in in the previous one the one that my current app is based on

00:50:51   You could offer a speed control, but if you did like you you would have to say all right

00:50:58   Here's the list of speed I support and then the only way the user could go through them would be like

00:51:04   Tap the speed icon on the screen and it would then

00:51:06   If for every tap it would go to the next speed and so you'd have to like if you wanted to slow it down by

00:51:11   One you have to tap through every single go through chipmunk. Yeah, okay to go through every single other speed first

00:51:16   It was it was just a terrible experience. Like I tried I did it in beta once

00:51:20   I tried to actually use it that way and it was miserable

00:51:23   And so I didn't even I didn't even ship the speed feature even though I could have easily I just but I disabled it because the

00:51:29   Experience was so bad. So with this new carplay API, I believe we're able to do better things like that

00:51:35   So things like having a better speed picker or having a chapter list and chapter picker

00:51:41   I think will become possible with this new API, but until I actually try it I won't know

00:51:46   What a whether I can do it and then be whether it's shipable or not

00:51:50   So Casey and I have quotas based on our union membership and we have to point out that if you did have any kind of

00:51:55   Automated testing that work you did to divorce your sync engine from your UI. It probably wouldn't have happened because you would have already had them separated

00:52:03   It's just so you could easily test the sync engine before you wrote the UI just saying not only that not only that but since we're

00:52:08   Beating on Marco now the one of the advantages of having any sort of automated testing is that when you do utterly destructive things like

00:52:15   Destroy your app delegate and move to a scene delegate

00:52:17   Not all of that and maybe even not a ton of it could have been covered by automated tests

00:52:22   but presumably more than zero could have been and in one of the things that I love most about when I do have good test coverage and

00:52:29   Do as I say not as I do I paint this picture like a unit test everything and I don't very far from it, but

00:52:35   When you do have good unit test coverage

00:52:37   What's nice is you can break something in in terms of the you know

00:52:40   the quote-unquote real part of your code and

00:52:42   Then just run your unit tests to make sure they still pass and if they do you have some amount of confidence certainly more than zero

00:52:48   That everything should still work the way it's supposed to and that doesn't replace all the human testing that I'm quite confident Marco did

00:52:54   Because I didn't have any particularly major issues with this update

00:52:58   But nevertheless it does give you some amount of confidence and some amount of flexibility and I guess a parachute

00:53:04   You know over you behind you whatever when you're making these sweeping changes like you did. I wanted to also address one more thing quickly

00:53:11   Underscore my name is T in the chat

00:53:15   Is talking about how I didn't mention the audio engine for the watch app. So when I was writing voice boost 2 last year. I

00:53:22   Specifically wrote it to be like ruthlessly incredibly efficient

00:53:28   with the idea that I want to bring it to the watch and

00:53:32   I rewrote not only the voice boost 2 component and which and therefore, you know smart the smart speed implementation within it, but also

00:53:41   The surrounding audio API at that time. I also switched from the old deprecated a you graph API

00:53:48   to the new currently supported

00:53:51   AV audio engine which has actually lots of problems, but I worked I figured ways around them

00:53:58   and part of the when I did that I

00:54:01   Intentionally stuck with API's that were available on the watch as well

00:54:07   So I have laid almost all of the groundwork to port my audio engine to the watch as well

00:54:14   The only thing I couldn't get to be available on the watch in a way I could use on the phone or at all

00:54:20   Is to have speed control not smart speed

00:54:25   But just like plain old like play this at 1x or 1.5 X whatever that is

00:54:30   Not a public API on the watch in a way that you can use in AV audio engine

00:54:37   the only way those are that's exposed on the watch in public usable API's is

00:54:41   If you make like an AV player or something

00:54:44   But those those API's don't give you the flexibility to process the audio the way my audio engine does

00:54:48   so if I want to run an audio engine with processing on the watch, I

00:54:55   Have to either not offer speed up which no or I have to write my own speed up

00:55:02   Which I've never all the audio processing I've done before I've never written a speed up algorithm. I

00:55:07   intend to tackle that at some point just to try to see if I can do it to an acceptable level of quality I

00:55:13   assume that what the

00:55:16   Apple like version of it is doing is like a

00:55:20   PS ola kind of algorithm or TS ola it's like I've looked at other like what these algorithms are

00:55:27   And I think I could do it slightly reasonably in a way that would be good enough quality for speech on the watch

00:55:33   But it just that's what's holding me back

00:55:35   There is that I can't yet find a way to offer speed ups on the watch

00:55:39   Without in an API where I can process the audio in other ways as well without writing my own speed up algorithm

00:55:45   Which is just a job. I haven't tackled yet

00:55:47   Maybe you should just like change the icon or finally get rid of the custom font just so people could be in an upper

00:55:53   are about your new version

00:55:54   Honestly, I I am very very close to dropping the custom font for

00:56:00   Whatever I do for the like UI redesign that I've been thinking of brainstorming about for five years

00:56:06   And it would be a big change

00:56:09   I remember being indignant that everyone complained the iPhone 4s wasn't a big upgrade because it looked the same on the outside and that is

00:56:15   The eternal curse of people with GUI apps that don't change the GUI people think nothing changed

00:56:21   The reality is my customers are really good. They I've not I haven't gotten a lot of crap from anybody about this like

00:56:28   The there was actually there was there were a couple there was one I think or two

00:56:33   Negative reviews somewhere. I forget whether it was App Store or what but a few people complaining before I had released this

00:56:41   That I hadn't updated the app in like seven months and that's not actually true

00:56:48   It had been about three months, but the last version number was 2020 dot 8

00:56:53   which

00:56:56   Somebody might interpret as August even though it was actually in like November

00:57:00   And so there that is actually a problem with this version number scheme that it kind of looks like year dot month

00:57:07   I thought it was a year

00:57:09   Well, and it just so happened that during most of 2020 like during the first half of 2020

00:57:15   I released about one version a month. Mm-hmm. And so for the flight the first half of the year it matched up pretty well to the

00:57:22   But no, it's not it's just like it's just sequential numbering. It's just whatever whenever it's ready

00:57:27   I you know, I shipped that version like what if I wanted to ship two versions in a month?

00:57:32   I think I was on a version a patch version a day with front and center for the first few weeks that it was out

00:57:39   So I wonder if people thought the last number was the day I released it

00:57:43   Right, so yes that is definitely one one problem with date-based versioning

00:57:47   Is that it sure looks like it's date month instead of just you know your year month instead of just year

00:57:52   But anyway at some point I do intend to do like a larger UI redesign and I'm I've decided throughout all this

00:57:59   I'm going to start tackling that

00:58:01   When I can require iOS 14 and that way I can use a lot more Swift UI stuff

00:58:06   And and a few other niceties and I'm I could probably I mean realistically I could require I was 14 now

00:58:13   but it's not a super great idea if you don't have to yet and

00:58:18   so again a UI redesign is definitely on my list of things to do but because it's not like super pressing and

00:58:25   There's lots of other stuff that is more pressing

00:58:28   it just keeps not getting done and it might be another year or two before I before I even tackle it because

00:58:35   Now that I spent

00:58:37   Four months whatever it's been on

00:58:39   Like under the hood stuff and a very small number of new features

00:58:44   But mostly just under the hood stuff what I want to do next is features like people people been asking for certain features for a long

00:58:50   time so I want to tackle that next as opposed to a

00:58:53   massive UI redesign which I mean it's a podcast app, but the UI doesn't matter that much and

00:58:58   The reality is features matter more to my customers at this point. And so a UI redesign is more like self-serving

00:59:05   I want to do it because I want to do it

00:59:06   But what my customers want is features and so I want to work on that for a little while first

00:59:10   you open the floodgates for feature requests time for my

00:59:13   Semiannual overcast feature requests. I have two of them one easy one hard catch-up mode

00:59:19   No, I'm not gonna go into all that stuff. I do want to do that. By the way

00:59:23   I actually wrote server-side support for catch-up mode, but it's kind of buggy. This is the function on the server that handles

00:59:31   What episodes in a podcast should be shown to you as new is

00:59:35   incredibly

00:59:38   Finicky and incredibly high-stakes if I screw that up the servers explode basically because it's just

00:59:45   massive amounts of volume going through that function and

00:59:48   Massive and it's dealing with the biggest database table in in the in the app by a long shot, which is the table of like

00:59:55   It's the progress of a user within a certain episode

01:00:01   that table is massive and

01:00:03   It's highly optimized and if anything goes wrong with that table or with with the function that that

01:00:10   Determines what to write to that table and more importantly when not to write to that table

01:00:14   things go back very badly and so I haven't wanted to

01:00:18   Tackle that yet because last time I tried tackling it I blew up the servers. It sucked for a few days

01:00:24   I eventually was able to roll it back and I'm like, I don't want to touch it

01:00:29   I'd rather not touch that area of the app because to touch it for this like relatively low needs feature is

01:00:36   A very very high risk and so I'd rather not do it

01:00:40   But someday I'll get there

01:00:41   Well since you brought up that feature my suggestion for how to deal with that is not to screw up your the table you were

01:00:46   just describing but to essentially be able to mark a podcast as

01:00:50   Participating in this special mode and then have your own separate table. That is only for podcast marked in this mode

01:00:56   I know it's annoying to fork the the code and say, okay

01:00:59   Well, if it's one of these podcasts do this, but I'm one of these podcasts do this and now I got to do everything twice

01:01:03   But it will totally save you from hosing your very precious table because like you said, this is a small feature

01:01:07   They can have their own set of tables with their own purpose

01:01:10   for tracking their own metadata just for these kind of podcasts in this weird-ass mode that you can call time shifting mode and

01:01:15   Generalize and you know try to make it so they can support for other features

01:01:18   but I

01:01:19   agree that it's probably not a good idea to take a

01:01:21   Feature that almost no one will use and compromise the entire design of your app and your biggest scariest table

01:01:26   But that's not what I was gonna ask about

01:01:28   Easy features because I have a chance to be employed number one

01:01:30   When sending a clip from overcast very often

01:01:33   I want to send a clip that is that is below the minimum size

01:01:36   The UI will let me squish those two little endpoints together and there's plenty more room to squish them

01:01:40   And I want to when I'm crushing their head. I want to get that thing back together. So whatever the limit is now

01:01:46   It's like what 10 seconds 5 seconds. I don't even know I've never I've never thought of sending a 5-second clip

01:01:51   It's like it's like a send to me

01:01:53   It's always when I want to clip out someone pronouncing a word weird, right?

01:01:56   And I just want to get the word and not the things surrounding it

01:01:58   Whatever the limit now is it's like a centimeter between those two endpoints and you could definitely squish them farther than that

01:02:03   So that seems like an easy one to do throw that one in there

01:02:05   The harder one to do is when I'm making my beautiful hand tailored overcast clips

01:02:10   I often want to zoom in for more accurate

01:02:13   scrubbing with

01:02:14   Placing the endpoints instead of rolling my fat meat finger and sort of like twisting it a little bit then trying to release it from

01:02:19   The screen open up moved after I picked it up and then trying again

01:02:21   Oh, no, but moved because you're trying to make a one-second clip. I know just say it's a minute long clip

01:02:27   I'm just trying to get the end point exactly where I want it

01:02:30   And sometimes the whatever your default zoom the granularity doesn't let me get like this one people have words that are strung together very quickly

01:02:36   I just want to slice right in between the words and I can't get the thing on the right pixel

01:02:40   I know you what I'm asking you is just this is the hard one

01:02:44   It's just slowly make a tiny audio editor inside overcast, but you want to make an audio editor anyway

01:02:48   So might as well work on this now some kind of pinch to zoom feature for the for the timeline so I can get more accurate

01:02:53   So the easy one smaller minimum size the hard one zoom

01:02:57   Maybe just two step zoom zoom in zoom out two levels like start with that

01:03:01   Yeah, the the whole feature of clip sharing I would like to give some attention to here's the challenge there

01:03:07   So the automatic kicking machine is still necessary and the need for it seems to slowly be getting higher

01:03:13   I hate this I noticed that yes, I notice every I watch it every time

01:03:17   It's like it's actually a form of entertainment like is it gonna do it the first time this time? No, it's not and

01:03:21   so and part of the reason it would be hard for me to increase the

01:03:26   granularity of the of the scrummers in part because what the automatic kicking machine does

01:03:31   So for listeners in case you have forgotten

01:03:33   This is the the thing in the overcast clip exporter where the API that

01:03:39   Generates those the the like AV rendering of like I feed it like an animation

01:03:45   Basically, and then it generates a video file from that like a you know

01:03:48   An m4v file from that that API just occasionally hangs the I think it's a V asset exporter or something like that

01:03:53   It just occasionally hangs for no visible reason and it just will hang forever and the solution

01:04:00   It well a way to get around it

01:04:03   is to

01:04:05   just detect when it's just not progressing anymore and

01:04:08   Just cancel that job and start a new one with very slightly different input and see if that works

01:04:14   And so what I do

01:04:16   I called I called that a while back the automatic kicking machine and what I do is every time that it stalls and

01:04:25   It restarts the job. It subtly tweaks the starting and ending timestamp by some tiny random amounts

01:04:32   So it's not enough that you would really notice it. But if I start letting you do very granular

01:04:38   Starting an endpoint or start start point an endpoint editing. You might actually start to notice that

01:04:44   So I don't love that

01:04:45   But I mean if it's if it's small enough that we won't notice it

01:04:48   We won't notice it no matter what like I know what you're saying that it would be a larger like if you so carefully placed it

01:04:53   Now I'm perturbing it, but you're perturbing my placement now

01:04:55   anyway

01:04:55   right sure and all I want to do is get closer to it like presumably your random thing is sort of

01:05:00   Oscillating around the point that was selected and I'm fine with that. That's what you got to do with the stupid kicking machine

01:05:05   I'm fine. I just want a little bit more granularity, right? And so part number two of this comment is

01:05:10   Ultimately, I want to rewrite the clip sharing implementation

01:05:15   To use a whole different method of generating the video to avoid the need for this at all

01:05:19   That whole AV asset exporter thing we're like so right now

01:05:22   I'm basically generating a core animation set of layers and I say I go, you know between points

01:05:28   You know zero and one and the animation make the progress bar go from here to here

01:05:32   At you know points one, two, three, four and five make the timestamps this this this this and this and then you know

01:05:38   Overly this audio in the background under it. I'm able to then pass that to the AV asset exporter and it generates the video for me

01:05:44   What I want to switch to is a much more complicated way of doing it where I have to generate every frame as an image

01:05:50   And pass it to some other API using all these like different low-level API's

01:05:54   but

01:05:56   The reason I want to do that is first of all, I want to get rid of the automatic kicking machine

01:06:00   second of all, I want to redo the visual layout of

01:06:05   What's being generated to include some kind of like more dynamic?

01:06:09   Animations like a waveform animation and I want to try putting in editable

01:06:14   transcriptions from the iOS

01:06:16   Transcription API when I wrote the feature. I don't think there was an offline running version of the transcription

01:06:23   transcription engine but now there is like an iOS 14 at least there is and so I

01:06:29   would like to rewrite that feature to have

01:06:32   To have it be more visually interesting when people see a clip without this without their sound on

01:06:37   Which is becoming more and more of a thing on social networks

01:06:40   So I want to have some kind of like, you know text be able to roll by

01:06:43   Possibly even use the text in the editing view depending on how that API works how well it works

01:06:48   Yeah, you got you got a lot of people fix miss translations now, that's the key part of that. Sure

01:06:53   Yeah, and that's that's why like it might not end up being very worth it in the output video

01:06:59   But it could it could definitely be worth it in the editor. So anyway, I want to play with that

01:07:03   But so the point is I want to do these things that are basically

01:07:06   Rewriting massive parts of what clip sharing is. However

01:07:11   Here's the problem

01:07:13   Almost nobody uses it. Oh

01:07:15   Really, but the people the people who do use it are both promoting your app and also promoting podcasts

01:07:21   I think it punches above its weight in terms of a feature like you don't necessarily need everyone to use it

01:07:25   but every person who does use it is sending out into the world a thing they enjoyed from a podcast and an overcast logo and

01:07:31   I was thinking of is the main feature that I would love to see on clips

01:07:34   Which I know you probably can't add but it's always worth just looking into it again

01:07:38   It's I always just want to tap on them and get taken to an overcast link to the rest of the episode like basically URLs

01:07:43   Like if you share them on Twitter, there may be some way to hack that in

01:07:47   I know when I do do something in overcast

01:07:50   Don't you have that feature for like chapter art you can tap on it and takes you somewhere or am I miss remembering?

01:07:54   The art. Mmm. Well, I mean chapters can have links

01:07:58   But no, I mean the problem the problem that you're talking about now though is a problem like just in in the sharing

01:08:03   Context I'm already

01:08:06   Putting two items on the pace board like I'm putting the the video and a link

01:08:11   But most apps don't do anything with that most apps just take the video

01:08:15   and so like I'm

01:08:17   Already supplying the data and the only way I know how to get or the only way I'm able to in this context

01:08:21   But most apps don't make it click

01:08:24   I was thinking like in a quick time world where you'd have multiple tracks and one of the tracks would be like a

01:08:28   URL track that a savvy client would understand that is a link. You're right

01:08:34   It's just like I'm thinking of it from sharing purposes and you're right the most things that you share on no matter what you did

01:08:39   They would just say just give me the video and I'm going to show it

01:08:42   But that's what I really want out of sharing

01:08:44   Like when you share a blog post people tap on the link and get the full blog post when you when I share a podcast

01:08:49   I always want be able to I love the fact that it's a clip that they don't have to do anything. Here it is

01:08:53   Here's the clip and you're listening and I love the fact that it's a movie see that past episode

01:08:57   We discussed this just the one missing piece is sometimes people ask me

01:09:00   Hey, what podcast is that from despite the fact that the name of the podcast and logo of the podcast is in the video?

01:09:06   They don't have any way to find it except for going to Google and typing in like accidental tech podcasts

01:09:10   And hopefully then what episode was it?

01:09:11   Oh, I see the episode number and then they have to go through the site, right?

01:09:14   You have all that info right there. You have overcast timestamp URLs all ready to go

01:09:18   it's just a question of how to

01:09:19   Get them out of your app and into the wider world because the reason I use the clips feature as much as I do

01:09:25   Which is not that much but still some is I love to be able to share fun parts of podcasts half

01:09:31   Granted half of my clips that I send her, you know to just friends through messages when someone we know said something funny on a podcast

01:09:36   But I do send them on Twitter as well

01:09:38   Here's this clip from this thing or check out this part of this episode or whatever or I use them as snarky comebacks when people

01:09:44   Complain about something on a podcast that I was on and then I send them a clip addressing whatever their point was and then I

01:09:50   Don't have to reply to them on Twitter. It's like audio replies, but canned I

01:09:53   Like the feature I think is it is super useful for a work has to have in it and not only that but I see tons

01:10:00   Of similar features from people who use other podcast clients including ones with transcription on them

01:10:05   So maybe they have the same problem that you do that

01:10:07   Most people don't use them, but there's enough that I see them and there's enough that I know other people have transcription

01:10:11   So I feel like it's kind of table stakes at this point

01:10:13   So to give you some idea of how many people use this feature

01:10:16   So now don't tell me because I agree with John I love this even though I don't use it that often

01:10:21   I love it

01:10:22   I mean, I think I think overcast problem is it is not particularly discoverable

01:10:25   And I think we talked about that when the future first rolled out. But yeah, I mean, yeah

01:10:28   I mean, it's not really helping but it's you know, it's in the share menu

01:10:31   But no one knows what the share menu is and it's so small

01:10:33   well, but but the share menu is used, you know by a decent amount of people and the

01:10:39   the shares of just links that aren't clips

01:10:43   are

01:10:44   about five times higher than clip shares

01:10:48   Clip sharing is used by about a third as many people as the screen reader voiceover

01:10:55   about a tenth the people as

01:10:57   people who use the website player while logged in and it is used by about a quarter of as many people as

01:11:04   Who are using the Mac app on an m1 Mac?

01:11:07   My goodness, so it's not it's not it's it's just it's not a large portion of the user base

01:11:13   And so, you know if it's something like supporting voiceover is almost no work at all

01:11:18   Which is which is why I'm embarrassed whenever I mess it up, but clip sharing is a ton of work to do that feature

01:11:24   justice and I already have a version of it now that works, okay and

01:11:29   To make it better. I have to like rewrite it basically and so it would be a large amount of

01:11:35   work to make this feature better that almost no one uses and

01:11:42   I think it would be

01:11:44   Probably not time well spent that doesn't mean I won't do it

01:11:48   I do things all the time that are time poorly spent just because I want them to be done

01:11:51   And so I will probably do this at some point, but it's not gonna be a high priority

01:11:55   I would give it more visibility because I feel like it's I you know

01:12:00   I'm maybe it's just me in the circle who travel in but I see a lot of clips shared not just from overcast

01:12:04   Like I said from other podcast apps

01:12:06   So someone's sharing clips from somewhere and if people aren't doing it from overcast that much

01:12:10   Maybe it's because it doesn't occur to people to do it or whatever and granted the editing interface is

01:12:14   Weird and like I understand all the reasons why it would be a narrow thing

01:12:18   But I think it's it's free advertising for your app and it is advertising for podcasts in general

01:12:24   But anyway, if you don't if you bail on all that just make the minimum size smaller. It's really easy to change the number

01:12:29   Well, I'm excited the shift and and I think it certainly seems to be well received I've enjoyed it

01:12:37   I haven't yet gone on a run with just my watch but the the watch app certainly visually seems to be way way way better

01:12:44   So all good things. I

01:12:47   Have one final question for you, though

01:12:49   If you were stranded on a desert island and could only bring swifter objective-c

01:12:53   You bring in these days and I say that obviously to be funny

01:12:57   But you talked a lot about having been porting a lot to Swift and you've kind of made references to that in the past couple

01:13:04   of months

01:13:05   Do you feel like your default state is now Swift or do you still think that you're reaching for objective-c?

01:13:11   first and Swift only in certain circumstances

01:13:13   During this version is when I crossed over like I don't know exactly when it was during this version

01:13:19   that I have now crossed over to the point where

01:13:23   Not only do I write more Swift than not and not only has it become my default

01:13:29   But I've actually started to prefer it

01:13:32   What do you?

01:13:34   Either like about Swift that's making you prefer it or perhaps

01:13:38   Did now you dislike it about objective-c like can you build on that anymore?

01:13:42   I the to quota underscore, you know, let's let's pull in that thread a little bit. Yeah, unpack that a little bit

01:13:48   Yeah, unpack that there you go. Sorry. I got it wrong. You're right. You're right. We'll fix in post. That's what we'll do. I

01:13:53   It's hard to pin it down. I mean some of it is just

01:13:56   Syntactic and API differences, you know just small stuff where like I could save a bunch of keystrokes doing this

01:14:03   That's that's a lot of it if I'm honest some of it is some of the you know

01:14:08   niceties that are afforded by the type system

01:14:11   Things like like dealing with the newms and stuff like that

01:14:14   No, please everyone. Let's agree

01:14:16   But you enumerate things. I know but it's

01:14:20   Car and char again. It's not well, which one you prefer is it car char? I

01:14:28   Say char. Yeah. Yeah, then you don't say char characters. Yeah. All right. I'll enumerate my char characters

01:14:34   Anyway, swifty numbs. Swifty numbs are great. I agree there swifty numbs are frickin amazing

01:14:40   I that's my still to this day might be one of my favorite features of the language

01:14:43   I mean that's that's a just to bring destiny into this because I always must do this is what they call in destiny and in

01:14:48   The gaming world in general like when they do releases for for games that you know

01:14:53   things like their bug fixes and there are new features and there's new content and

01:14:56   The things Marco is talking about so far are what they call in the gaming world quality of life improvements

01:15:01   Like oh, it's easier to get to your inventory screen and you can delete these items and sets of five instead of individually and you know

01:15:07   Like things don't really affect gameplay, but affect things that you do every day

01:15:11   You know sort of the drudgery the chores of whatever task you're trying to accomplish and just making them easier

01:15:18   Even just something as simple as how do I define a class and a bunch of attributes?

01:15:23   Doing that in Swift involves so much less typing and so much less

01:15:26   Navigating in your UI and so much less thinking than an objective C

01:15:30   Even if you know how to do the objective C version like the back of your hand like it's totally instinctive

01:15:35   There's just mechanically more to do than to do the same job. So if I feel like enums and Swift are the same deal

01:15:41   You know you you don't need that feature

01:15:43   You can do the same thing with a bunch of pound defines or constants or static variables or all the other tools that are available

01:15:48   to you in objective C

01:15:50   But Swift has this one tool to do it and it's incredibly powerful and doesn't involve a lot of typing

01:15:55   It's a quality of life improvement and that's setting aside the safety stuff of like run all the different safety things

01:16:00   Just setting all that aside forgetting about like Oh reducing bugs or whatever just the process of typing the code

01:16:05   yeah, like that to me is

01:16:07   where I'm seeing much of the benefit is

01:16:10   Things, you know, not only like little time savers from just you know

01:16:13   Shorter names of everything and stuff like that

01:16:15   but like things like what you said about making classes or making types or making protocols and

01:16:20   Where not only it is it is it, you know less typing in Swift

01:16:25   But because it is just so much simpler and faster to do I do it more

01:16:29   And that that that you know

01:16:32   It changes the way I code changes the way I structure things in certain ways and it makes certain things a lot easier or better

01:16:36   Or it enables thing it enables, you know change to happen faster or it enables me to

01:16:40   To know that something is correct faster. One thing I don't do much

01:16:46   Is the kind of like prefix list lifestyle?

01:16:50   I still name my stuff beginning with OC and I'll tell you why it's not because I'm like

01:16:55   You know being stubborn and bucking the trend or whatever. It's because I search my code. I

01:17:01   do command shift F to find global all the time and

01:17:06   If a class has a generic name without a prefix without my little OC prefix in the front of it

01:17:12   It's harder for me to find references to it

01:17:15   But the other classes won't be in your code when you do command shift F. They're in frameworks

01:17:20   You're not searching them when you do command shift F. No, I know but like

01:17:22   It's it's it's kind of like like the the common or I guess I think the preferred style

01:17:27   Right now for like writing new Swift code and Swift UI code is to not prefix stuff with your own prefix

01:17:33   It's to make everything just generic name like yeah

01:17:36   playlist whatever like say if I if my

01:17:40   Object was called playlist instead of OC playlist and I had and I did a string search for playlist in my entire app

01:17:46   I'm gonna get so many things that aren't

01:17:49   OC playlist commands and objects and there's just certain times when like I use it all the time

01:17:54   and so I I find it very very nice to search that and frankly, I think

01:17:58   Dropping all the prefixes from all the API's might be a mistake for lots of other reasons like even the framework API's

01:18:07   Because it makes it harder to like search Google and Stack Overflow for things like that, too

01:18:10   it makes it makes it so much harder to disambiguate like am I talking about like a

01:18:15   List or am I talking about like, you know an NS list or whatever? I know that's not really a thing but like I

01:18:21   miss having

01:18:24   Those like two-letter prefixes on things because it makes it easier for me to find in my code base

01:18:31   And I know you can do more structured searches for you know

01:18:34   Things like find call hierarchy and stuff like that

01:18:37   But doing just a basic text search is so much faster and easier and I do it all the time and to not have named

01:18:43   Prefix or to not have prefix names makes that harder and makes it less effective

01:18:47   So there's two aspects that one is just the cultural one

01:18:51   Which you said it like the the the culture now and Swift is not to do that whereas an object you see it was to

01:18:56   do that

01:18:57   When I wrote my first Swift app for the Mac

01:19:01   I put well first I wasn't even thinking about it and just typing but then eventually I realized oh

01:19:06   I should probably prefix all these because I was in the objective C mindset

01:19:09   so I did the FNC for front and center right FNC whatever was the class names because I am I am a

01:19:14   Strong proponent, let's say of namespaces in other languages, but the problem my first problem was I had no idea how namespaces worked in Swift. So

01:19:22   I was like do I need to do this is something not gonna work out better safe than sorry FNC in front of all my

01:19:28   Classes, but eventually I learned that that is not in the culture and not strictly necessary according to what everyone else was doing

01:19:35   So my second app switch class, I didn't do that

01:19:37   The prefixes and I have to say I aesthetically prefer not having the prefixes

01:19:42   I understand what you're saying about the search stuff

01:19:44   And I think I'm probably benefiting in my searching when I search for things like the NS prefix sort of getting me out

01:19:51   I'm sure that I'm gonna get a result that has to do with programming if I type in a string

01:19:55   Whereas if it types just string by itself, it's harder

01:19:58   but I have found that adding the word Swift or the framework name like Swift UI as a

01:20:03   Search term in Google and then type it if you type Swift string

01:20:07   Google kind of figures it out within the project. I haven't found it to be that much of a problem that said I

01:20:13   Still don't know how Swift namespacing works. By the way, I I would like to know but apparently not enough for me to look it up

01:20:19   But I have to say that when I wrote switch glass

01:20:23   Totally unprefixed I ran into a namespacing issue for the exactly the reason that Marco said if you name things in a generic way

01:20:31   I think I made a tweet about this like the incredible guts that it took for Swift UI to call one of its classes view

01:20:36   View like oh really view you're just gonna take that name, but of course, it's not like they're taking it forever

01:20:43   It's it is my vague understanding that it is namespaced underneath Swift UI blah blah

01:20:48   but in switch glass as you can imagine I have things in the code that represent the apps that appear in the palette and

01:20:55   I called them app and

01:20:57   That seems fine until I ran into some weird thing with the Swift UI

01:21:02   Preview or an Xcode where they use the same symbol app and it was conflicting with mine and I had to qualify mine

01:21:07   I had to I had a place in my code that just said app that runs perfectly fine in the running app

01:21:12   But in the preview it was flipping out and I could not figure out what it was and then I changed it to switch glass

01:21:17   App and suddenly my thing worked in the preview and I'm like, alright

01:21:20   well

01:21:21   someone needs to

01:21:22   To have a you know

01:21:24   Sit down and talk about what are we doing with namespaces here in Swift because I thought it was perfectly safe for me to call

01:21:28   My stuff app, but apparently that is not true and now I'm a little bit angry and I don't know what to do

01:21:33   Anyway, some day I'll learn how namespacing works and Swift

01:21:36   so this is just this is one of those moments where I know I'm just inviting a bunch of follow-up, but my my

01:21:41   Limited understanding of namespacing and Swift is that basically each module is its own namespace?

01:21:46   Mm-hmm, but outside of that there's really no

01:21:50   Concept of namespacing the closest you can do is have an enumeration that has no cases in it

01:21:56   so you have an enumeration that's just like functions and and

01:21:59   Properties and things of that nature and that sort of kind of gets you there

01:22:04   But it's not like say C sharp or something like that where you can explicitly define a namespace and I miss that and I wish it

01:22:12   Was there and I think that that was an error in early Swift to to not have more explicit namespacing

01:22:19   I've run into this from time to time because

01:22:23   Combine has a print method that is designed to be used as a debugging tool within the context of

01:22:31   a of a chain a

01:22:34   publisher chain

01:22:36   and

01:22:38   Sometimes I'll try to do a you know, a generic Swift print and it'll be like no you're not giving you're not giving it the right

01:22:44   Parameters and so on and so forth and I'm like wait what why is print bro?

01:22:49   Oh, right Swift dot print is what I want in this particular context and it is very frustrating. So I totally hear you

01:22:56   Yeah, I mean coming from languages

01:22:58   I spent most of my time in languages that have global namespaces and I can tell you that's terrible as well

01:23:04   Java tried to do the right thing to fix that by saying we're gonna solve this problem and not have any of these ugly naming

01:23:10   Conflicts, but the price for doing that is Java class names and I don't think anyone wants that

01:23:15   You know like piggybacking on another system to disambiguate calm dot whatever dot, you know, it's just it's gross, right?

01:23:21   So I that's why I was excited about

01:23:24   Swift not having like Oh per module names and it can all work it out or whatever

01:23:28   But the fact that I did this surface to me already again not in my running app

01:23:32   But only in the Swift preview like maybe it's a bug with with Xcode

01:23:36   but either way like I want to not like that my whole point with naming is I want to just do the right thing and

01:23:42   Then never have to worry about it and that's no longer the case now. I have to be careful

01:23:46   Oh you want to name something in your app app?

01:23:48   be careful because there may be some other important part of the machinery of

01:23:51   building your app that it gets angry about that and breaks in a weird way and

01:23:55   No, I'm not so upset by it

01:23:58   They're gonna go back to Marcos thing and prefixing everything because I find that more offensive but it does make does give me a little

01:24:04   Bit of pause when I name my classes and yes before you send feedback

01:24:07   I totally should learn how name spacing works in Swift, but I haven't yet

01:24:10   yeah, another

01:24:12   Great example of this is if you were to use a or to create a widget for an app and use the default names

01:24:20   If I'm not mistaken and Steve Charlton Smith tweeted about this a while ago and then just retweeted himself. So hi Steve

01:24:26   If you name your widget widget

01:24:28   Then it yells at you because that's not allowed because it conflicts with

01:24:32   With some of the Apple stuff and it's in the error message is completely inscrutable as to what's going wrong

01:24:37   And so you eventually when I was first, you know messing around with widgets

01:24:41   I just renamed it to like Casey widget or something like that and then suddenly everything started working and I was deeply frustrated

01:24:47   Yeah, there's a bunch of pitfalls like that in pearl where like half the time

01:24:53   I see some really some someone really scratching their head whether it's at work on the internet of like I cannot figure out why this

01:24:59   Code doesn't work and the answer is like rename your class. They're like what I'm like

01:25:02   You named it test, but let me just you know

01:25:06   You're like you need in one class a one class B and let me tell you about the B name space in pearl

01:25:11   I know this is gonna sound weird but like that's just they're excited to learn the solution, but then they're so angry

01:25:16   I write PHP. Nothing sounds weird. Yeah

01:25:20   Yeah, oh my goodness. All right. So so you do like some things you don't like some other things

01:25:25   What do you miss about about Objective C?

01:25:28   I mean, obviously you were expert level at Objective C and I would say with respect

01:25:32   You're probably not expert level at Swift at this point

01:25:34   But other than that are there specific things that you feel like man, I really miss Objective C's ridiculously awful block syntax

01:25:41   Objection leading the witness

01:25:45   I do miss a lot of the

01:25:50   Simplicity of the language I miss how

01:25:52   Objective C did not make it easy to hide behavior

01:25:57   From from reading code like you could read the code and because it was a fairly small

01:26:02   Language in its syntax and things that it was it was hard to hide

01:26:07   Behavior in ways that couldn't be easily looked into or noticed when reading it. Whereas Swift does not have that

01:26:13   I

01:26:15   also miss a lot of the

01:26:18   the style of like the API

01:26:21   naming and

01:26:24   Search ability and documentation and things like that. I definitely miss the

01:26:28   reliability and speed of the tools and the builds I

01:26:32   Still you know, how many years are we into Swift?

01:26:36   it still doesn't build very quickly and I still occasionally get really weird behaviors that are solved by restarting Xcode and

01:26:43   I think we're a little late for that. Have you tried writing much much smaller apps?

01:26:47   Yeah

01:26:49   My favorite error is the one where it says like this and this is more common in Swift UI

01:26:54   Which of course is much younger and much more of a giant pile of hacks

01:26:58   But my favorite one is the one where it says like this can't be evaluated in a reasonable time

01:27:03   You got to break it up into into subjunks or whatever

01:27:05   Type inference. It's

01:27:08   Yeah, yeah, I'm not gonna say it's non-deterministic, but sometimes it goes off the rails

01:27:13   At least it tells you and doesn't try forever to figure out

01:27:17   Yeah, the type is supposed to be I'm gonna object slightly to your hidden functionality objective C supports pound-defined talk about hiding functionality

01:27:25   Again referencing pearl if you look at the pearl source code

01:27:27   You're like what languages is written in the answer is macros is that it's written in pound-defined macros everywhere

01:27:33   So and you could say well, you shouldn't use pound-defined that way and blah blah blah

01:27:37   But that's exactly the argument people make about say operator overloading

01:27:39   Yes, the feature can be abused to make your code terrible

01:27:42   But don't do that pound-defined is the ultimate feature that can be abused to make your code and completely incomprehensible in doing hidden things

01:27:49   You don't do that because you're a good objective C programmer. I think the same applies to Swift

01:27:53   while this is not unqualified there are things about

01:27:58   header files that I miss

01:28:01   Really? You're a monster. You are a monster. I

01:28:05   like the way that they

01:28:07   very easily make make like a

01:28:10   Public list of like here's how I expect this thing to be called publicly and here it is in ten lines

01:28:15   I feel like as an IDE issue, don't you? Well, maybe but yeah, I mean as opposed to you know in Swift

01:28:20   It's like you have this giant file

01:28:22   That's this entire class and for the functions in it are public

01:28:26   But there's no quick way to see what that is outside of like the drop-down and Xcode

01:28:30   Yeah

01:28:30   Like it would be better if you could like collapse at all and like they could even give a header view that if you can

01:28:35   And say which one is the public API then give give a little view in the navigation that says oh

01:28:40   this is the equivalent of the header and it just those function signatures of the public ones like I

01:28:44   Think that is a surmountable thing because the information is all there and I like the fact that it's all in the file

01:28:49   I like the fact that I don't have to make header files and if you want that view of things

01:28:53   I feel like that's something that code should offer

01:28:56   I find myself in the same situation and that what I don't want to do is like oh

01:29:01   Well, I'll just come up with a naming convention myself and I'll put leading underscores and all the internal ones or some crap like that

01:29:05   because that's gross but

01:29:07   We you know

01:29:08   We all have all the metadata in the language to provide you

01:29:10   Essentially a header view without you having to type one and that's something that would be a nice addition

01:29:15   There is something that's similar to this in Xcode and I've seen it like once it's buried

01:29:21   It's so far down. It might as well be in China and I cannot remember where it is, but there's a way to do

01:29:27   Something like this you can get Xcode to extract something that vaguely looks like a header file

01:29:33   God, I'm looking around right now trying to figure it out and I can't figure it out

01:29:36   So you don't have to be extracted though. You just want it to be like a view

01:29:39   You know what?

01:29:40   I mean like it could be in your sidebar and you click right it's a non editable thing like in the same type of experience

01:29:45   Or like what is it show?

01:29:47   Counterpart. I'm gonna remember the names of these commands and the objective C

01:29:50   Days, but you could switch back and forth from the dot M to the dot H, you know. Oh, yeah

01:29:55   Then there's the mini map that is the next code now, which I actually really like. I always turn that off. Oh, I like it, but

01:30:02   Yeah, there's a shoot. I cannot remember how to do this and it's gonna drive me nuts

01:30:07   Maybe we'll have follow up next week while you wait. I will try to fend off some feedback

01:30:11   And yes, I know it's the C preprocessor that I was referencing and not pound-defined, but I hope everyone is on the same page

01:30:16   No one in the chat room are correct to be yet. I'm a little bit disappointed actually

01:30:23   We are sponsored this week by flat file

01:30:26   One of the worst ways to spend your time is manually formatting customer spreadsheets

01:30:31   Thankfully our friends at flat file have created portal the elegant import button

01:30:36   So your users can confidently import their data without you ever having to format their messy excel files again

01:30:42   Flat file portal is a turnkey data importer for your product that automatically formats validates and transforms

01:30:50   Customer spreadsheets so the data is ready to use in your backend that frees you and your customers from having to manually format

01:30:57   Spreadsheets for hours without needing to build a clunky in-house CSV importer

01:31:02   flat files portal integrates with virtually any

01:31:05   application and minutes can upgrade your customer data onboarding from emailing Excel files back and forth to

01:31:11   Importing even the messiest data correctly and on the first try with flat file portal

01:31:17   Intuitive data imports will be the standard for your customers your engineers and your product teams

01:31:23   If you're interested in testing out flat file portal visit flat file dot IO

01:31:28   That's flat file dot IO. Thank you so much to flat file for sponsoring our show

01:31:33   Alex Guthman writes, I know this has been slightly covered in previous ask ATP's in episode 268 and 381

01:31:43   But do you guys have a non ISP provided DNS server?

01:31:46   If so, which ones to use why Google open DNS cloudflare etc for security or reliability or both?

01:31:52   Well changing the DNS servers on my router improved network reliability or speed or privacy, even though it's not a VPN

01:31:56   So for me, I tried this like many years ago when this was very very cool to use like Google or some other

01:32:04   I forget what else it was, but Google's DNS

01:32:07   Maybe was open DNS and I tried it for a while and the experience I had again many years ago now

01:32:13   was that anything that involves streaming like Netflix or YouTube or something like that was all slower than dirt because

01:32:19   Some way somehow and this is beyond my knowledge

01:32:23   It was apparently through the magic of DNS that they would target me to a server physically near my house

01:32:29   And when I was using a DNS based out of like, California everything slowed down to a crawl

01:32:34   And so I stopped doing this within the span of like a couple of weeks that very well may not be the case

01:32:41   Anymore so I have no idea and when I'll let the guys correct me here in a second

01:32:44   But what I will say is that for maybe a year now, I've been using

01:32:48   Piehole on my local network, which is the most delightful and terrible name in the world. That's PI

01:32:53   H-o-l-e and what this is is a

01:32:56   DNS server that you run on a Raspberry Pi or in Docker and

01:33:00   It has a bunch of block lists that will block things like

01:33:05   Advertisements in some malware and things of that nature and so I have my Raspberry Pi running piehole

01:33:10   And that is my local networks DNS server

01:33:13   But when it doesn't know the answer to something it will just go to my ISP to files as DNS server Marco

01:33:20   What do you do? I just run the files only I just run my SP DNS server. I

01:33:25   have very occasionally tried things like open DNS or like the

01:33:31   Google ones or the cloud flare ones and I

01:33:36   Too have had occasional issues with them and it's never been worth dealing with those issues for the benefit

01:33:43   They provided and so I would I would always switch back after a few weeks or a few days or whatever just back to my ISPs

01:33:49   It's just this this solves problems. I don't have or it introduces problems. I'm not willing to tolerate

01:33:56   Yeah, John

01:34:01   So back in the I guess it may be my cable days when I had cable internet access

01:34:07   The reason I became interested in alternate DNS providers is that my DNS provider through my ISP was garbage

01:34:14   And you know, it's the it's the old

01:34:16   Saying of people who have ever debugged weird problems on the server side. It's always DNS

01:34:22   When you have a DNS problem

01:34:25   You're like what's wrong with my computer? Nothing works

01:34:28   I can't understand if you don't know enough network debugging to immediately check whether your thing is hanging trying to resolve a name

01:34:34   Right, you're like, I don't especially if you can't see the internals of some system

01:34:38   Like everything is not working and something it's in somewhere

01:34:41   It's like trying to look up a name and your stupid ISPs DNS server is not down

01:34:45   It's up but it's giving the world's lowest responses. It's incredibly frustrating. So that's why I started looking into them

01:34:52   it's tricky for

01:34:55   You to tell whether that's happening to you because unless you're literally debugging your own server-side code where you control where you know

01:35:02   Names are converted to IP addresses or whatever

01:35:05   You probably don't know the internal guts of some set-top box or some app that you're using is hanging on DNS

01:35:12   And it's difficult to figure that out

01:35:14   But it could be that in the wide world of crappy ISPs

01:35:18   Especially in the US you too also happen to have a crappy ISP DNS server that you're using and it's causing your browsing experience

01:35:24   To be crap

01:35:25   So I think for the average person if you're nerdy and you want to try this it is worth looking into Cloudflare Google

01:35:31   Open DNS. In fact, I think there's an app at least for the Mac anywhere that does like DNS benchmarking

01:35:36   They will try a bunch of DNS servers and tell you which one is the fastest responding from your location

01:35:41   That doesn't tell you anything about reliability

01:35:43   But at least it can tell you like how fast you get the responses back honestly speed isn't an issue unless you have a garbage

01:35:49   ISP that's waiting, you know seconds to give you your names back which can really hurt things

01:35:54   But that's why I started experimenting with it

01:35:56   And I benchmarked a bunch of them and it turned out the one that was the fastest was one

01:36:01   I hadn't heard of so instead I just tried using the Google one

01:36:03   And when I saw this question, I I left it in here and I intentionally didn't look this up because honestly, I don't know

01:36:11   Which of my computers and devices are using which DNS server? I'm pretty sure some of them are still using Google DNS

01:36:18   But I'm sure I'm also sure that some of them are just using my ISP one because I never configured them, right?

01:36:23   I didn't change my DNS at the router level or anything a lot of times your your your router is your DNS server

01:36:30   You can just specify, you know, ten dot zero dot one dot one or whatever like your main router

01:36:34   It all will also do the DNS things they can just delegate to that

01:36:37   But I'm pretty sure some stuff in my house is using Google DNS and the fact that I don't know

01:36:42   Tells me that I don't have any problem with it because I stream things from everywhere. Everything's fine

01:36:48   They get fast internet speeds. I get fast uploads fast downloads, and I honestly don't know which one I'm using

01:36:53   So I and I think I have files as well and I think the files DNS is fine

01:36:58   Like I didn't this that's not why I was exploring it. I started exploring

01:37:02   I think back when I had like media one which turned into Comcast anyway

01:37:06   For for listeners, I'd say it's worth checking out. But what Casey said about potential of GYP stuff?

01:37:14   I know Google does a bunch of stuff to counteract that where even though you're doing eight dot eight dot eight dot eight

01:37:18   It's not the same for eights that other people are using like it's it's GYP balanced from your lookups

01:37:24   it's you know, they try to be clever about that and things like open DNS and cloudflare for some of our systems to

01:37:29   not have the CDN streaming problem that you have but

01:37:33   You know, there's no guarantee that it'll work for you

01:37:37   So I'd say check it out

01:37:38   But it's I think I feel like it's less important now than it used to be and if your ISP DNS is working fine

01:37:44   Just stick with that

01:37:46   Nathan Roberts writes there are people in the Mac community who dislike electron apps and modern web frameworks

01:37:50   I also dislike when resources are wasted for computing tasks that could be done in a more efficient way

01:37:54   But the history of computing is full of evolution the difference between quote unquote native versus quote unquote web

01:38:00   Becomes intellectual when the software works. Well, see for example visual studio code

01:38:04   Is there a problem with this tech that I don't understand is this an old man yells at cloud situation?

01:38:09   Are we about to get rained on? Yeah, you know, this was actually reasonably well put I

01:38:14   would also say the Visual Studio code is an

01:38:17   Incredibly good example of something that is written in electron that doesn't seem to be it seems it's very much

01:38:24   Visually and in so many ways actually cut from its own cloth

01:38:27   but it doesn't feel like a slow piece of garbage and and so to back up a half-step electron is a

01:38:33   Way to build a native ish app using web frameworks. So slack for example is electron

01:38:40   I believe Skype now is electron and

01:38:43   The guys will probably have more concrete complaints about it

01:38:47   But what I don't like about slack and about Skype is that so much of it feels

01:38:51   so

01:38:53   Not native and so wrong and is missing affordances that I would expect

01:38:58   And I wish I could cite some more specific examples and I can't off the top my head

01:39:03   But there's this there's just a general wrongness to it that

01:39:06   bothers me and in frustrates me and at worst offends me and and I think

01:39:12   Slack for all my complaining about it does mostly get the job done and mostly does a pretty decent job of it

01:39:19   But unlike Visual Studio code where I don't really ever tell I can't even ever tell that I'm using a weird

01:39:27   Mechanism to run this app. It always just feels like something is not right in slack. And that's what's so frustrating about it

01:39:34   I don't know John. Can you be more explicit and concrete about this than I am?

01:39:38   I think you hit on the two the two main complaints and it's not just one about like electron one

01:39:43   One is the speed thing like in general web-based technologies have always liked behind native in terms of speed and responsiveness

01:39:49   But you know computers are getting faster and that is only going to fade with time as Nathan points out, right?

01:39:54   Did you know technology marches on and what some people might say is incredibly inefficient or whatever eventually just becomes trivial and a non-issue

01:40:01   But the second thing is not going to go away based on performance and that is the nativeness

01:40:05   Feeling not in terms of responsiveness

01:40:08   But just like what are the native widgets and how do they work with an electron app?

01:40:12   You will always be at best trying to imitate

01:40:15   the operating systems incarnation of a button a scroll bar a text field or rich text editing field like

01:40:21   Even down to the window in some cases right those things exist, right as of today

01:40:26   Except perhaps in something like Chrome OS or whatever

01:40:30   There are native UI toolkits and native UI controls for menu bars buttons checkboxes scroll bars scrolling view text

01:40:37   everything right and

01:40:39   You can with an electron app. You can either say we're going to make

01:40:44   Our own interface elements out of web stuff out of HTML and CSS and JavaScript and you could try to make them

01:40:51   Look like the OS ones which is a losing battle because the OS keeps moving

01:40:55   You're constantly gonna be chasing it and you're never gonna be exactly like it

01:40:57   So there's the uncanny valley thing or you can do what Visual Studio code and other apps do is say well

01:41:02   I'm not gonna even bother trying to look like the native stuff

01:41:04   I'm gonna look like my own thing and it'll be good and you'll like it

01:41:07   But no one will ever be fooled into thinking it's from it is an OS native and that can work

01:41:13   Except part of the promise of the GUI from the original Mac is if you learn one set of controls and behaviors

01:41:21   That knowledge transfers, right?

01:41:23   So every time I'm in a text field I can use these keyboard shortcuts and I can do these things and it behaves in this

01:41:27   Way with respect to selection every time I see a scrolling view it

01:41:30   respects my OS preferences for scrolling and clicking to jump the scroll wheel versus just going to move it and all my you know

01:41:37   swipe gestures and all those stuff like that expectation

01:41:40   Thwarted if you as you have more and more electron apps

01:41:44   That don't use native controls and each one of them has their own idea of what they want to do

01:41:48   Oh, they're gonna try to imitate the OS thing, but they failed to implement this feature

01:41:52   Oh, they're not gonna try it and you have to remember in this app. It works this way

01:41:54   So the complaint about electron the performance complaints may fall by the wayside

01:41:59   But the non-native thing will only fall by the wayside if we ever get to a point where there are more

01:42:05   Essentially more non-native apps than there are native apps

01:42:08   I don't think that we're there yet and even if we were there the non-native apps are not going to all get in a big

01:42:14   You know, you know conference call with each other and decide how they want their widgets to behave

01:42:17   Then you're gonna be back to the bad old days

01:42:19   Everyone deciding how they want their app to work and not having

01:42:23   Like your sort of muscle memory and habits transfer from one out to the other. So I

01:42:27   Wouldn't want to live in that world. I understand that the web is kind of like that now

01:42:32   It's part of what makes websites frustrating that there's so much variance between them

01:42:35   I still kind of like the idea of a GUI with a set of controls that act

01:42:40   Consistently between apps because that makes my computing life easier

01:42:44   the only thing I would add is that there's also just a pretty significant issue about

01:42:50   memory footprint and battery life with a lot of these apps

01:42:53   I actually don't have a huge amount of complaining to do about UI consistency with these apps because

01:43:01   When electron is being used in many cases like I think slack

01:43:06   It's hard to picture like what would a like, you know quote native Mac, you know

01:43:13   Aqua or you know app kit. What what would that look like?

01:43:17   for slack

01:43:20   And I don't know what that like it. I don't think it would work

01:43:23   I think it would end up looking a lot like this and and working a lot like this

01:43:27   And so be a lot of custom stuff anyway

01:43:29   And it's like whether they're rendering custom stuff with a web view or with custom, you know quartz drawing commands

01:43:35   If it's a bunch of custom stuff, it's still gonna you know behave in a custom way. So I don't actually

01:43:42   Have a big problem with a lot of that with with some of these apps

01:43:46   I can give you a specific specific example from slack though, by the way with the native thing

01:43:50   one of the things that frustrates me about slack which I use every day a lot is the interface for

01:43:56   Editing a message right like the little like the hover pop-up thing lets you get the little thing

01:44:01   There's like more actions and you can click edit and you can or you can like add a reaction or whatever

01:44:07   The like the sort of active areas that brings up that UI

01:44:12   it's just so

01:44:14   So like twitchy that I can never quite get the message that I want and if it was a native Mac app

01:44:19   Not just from a technological perspective

01:44:22   But you know

01:44:22   It's if it was a good native Mac app

01:44:24   the developer would spend a lot of time sweating over how that interface feels and they would have per pixel control and

01:44:32   Like they can essentially write custom code

01:44:34   Do the mouse in and out handling and do all sorts of the things that the very best Mac native Mac apps do

01:44:40   Whereas with web technologies, they're just gonna be like, yeah, we've got the the mouse in a mouse out event

01:44:44   Or you know the hover event in our web thing and that's that's sufficient and it makes for a UI that's usable

01:44:51   But feels twitch here to me

01:44:53   So I get what you're saying about like the app would more or less probably look the same and I think slack is a very good

01:44:57   Electron app and in general they do pretty well

01:45:00   like for example

01:45:01   one of the things I tested was I went into the text field and then I hit ctrl a use Emacs key bindings to jump around

01:45:06   in the text field and that totally works mostly because

01:45:09   Apple does a good job of making their web controls like, you know, the the WebKit controls

01:45:13   Support native Mac toolkit type things. So it's not bad. In fact, I really like the slack app, but I don't have trouble

01:45:21   finding places where a

01:45:24   If it was a native Mac app

01:45:26   Even if it more or less look the same that it would behave

01:45:29   Differently in ways that I feel like could be superior just due to the extra control have and again

01:45:35   This is not even talking about consistency because you're right

01:45:37   They're like, well, what would the editing control look like?

01:45:39   There's no there's no like native control for that and you surely wouldn't want a button next to everything

01:45:43   So it would have to be some kind of custom UI

01:45:45   But I feel like it would be a more Mac feeling interaction for the custom UI

01:45:49   maybe I mean, I think a lot of this comes down to

01:45:52   like

01:45:53   Care and craftsperson ship as opposed to like, you know, the the framework they're using to do it

01:45:59   I mean, you know, I look at something like things is my preferred to do app on the Mac on all platforms and

01:46:07   Things has an incredibly highly custom UI. It does not look like app kit

01:46:13   It does not look like aqua. It looks like its own incredibly custom thing

01:46:17   But they wrote it in app kit like it is using the native API's is not it's not a web app at all

01:46:22   I have used other to-do apps

01:46:25   I've tried them that were web apps in you know, or you know that that were web technology based even in their their Mac quote apps

01:46:34   they sucked like they were terrible and that's why I don't use them and

01:46:38   that wasn't an issue of like

01:46:41   It was impossible to make a good Mac UI using web technologies. It was that they just didn't

01:46:48   You could somebody could do it. It is possible and a good Mac UI as things demonstrates doesn't have to be

01:46:56   Exactly, like, you know vanilla aqua controls it can be done in a good way and I think slack gets very close

01:47:03   I think slack as

01:47:05   Electron apps go is a very good one

01:47:07   You know, there are limitations of it being electron app

01:47:10   It does take a comically long amount of time to launch it. It is comically wasteful of resources

01:47:16   They've had to do a ton of work over time to make it slightly less egregious at how much memory and stuff that it burns

01:47:23   but I

01:47:25   think that's that's like the big problem with them is like it's a very electron and and you know using web technologies to do you eyes

01:47:33   a very heavy thing and

01:47:35   So it has to be really worthwhile

01:47:37   Now if you're doing something like slack, which is a very complicated app

01:47:41   I think that might be acceptable if you're doing something like, you know VS code

01:47:47   I've never used VS code

01:47:48   But I know people love it a programmer is text editor is such a massive tool

01:47:53   That if that becomes a heavy thing that you know in in the system, it's not that big of a deal Xcode is damn heavy

01:48:00   I mean, it's you know, ID either are all heavy things. So that's that's what I would categorize

01:48:04   Visual Studio code is it's more of an ID and less of just a text editor and in that respect

01:48:09   Like I would not want Xcode to be written with web technologies. Oh, no, I feel like like I

01:48:14   Not that I'm saying Visual Studio code is a bad idea. I think it's a really good one

01:48:19   but and I understand why it's

01:48:21   Written the way it's written, but I'm also really really good at the Xcode isn't written like that

01:48:26   yeah, and and I'm really really glad that most of my apps that I use are not written like this because

01:48:32   Imagine, you know right now. I I have two such apps open. I have Skype and slack open and

01:48:40   Like I look at my doc and I have like ten other apps open all of which are native except for those two as far as

01:48:47   I know

01:48:48   it would be very inconvenient for the resource level of my system if

01:48:54   Nine of those apps were all electron apps

01:48:57   Like it's one of those things were like if you have one or two of these it's no big deal

01:49:01   But it becomes much heavier it because because they're so heavy it becomes much more burdensome to have

01:49:07   more than a couple of them and so it's not a good idea for most apps to do this and

01:49:12   It's not a good idea to do this

01:49:14   if what you want to do with your app can be easily done with the native frameworks, but

01:49:20   When you look at something like slack and you look at like what they actually need on slack is a

01:49:25   very complicated UI

01:49:28   That is often rendering web content. That is often rendering HTML like for just things like what's you know?

01:49:35   It's it's a giant rich text view that has a lot of embedded images and stuff like that like that

01:49:41   even if you wrote that in

01:49:44   with like app kit and native code you'd probably implement it as

01:49:49   Largely a web view and so like much of your UI would be rendered using web technology

01:49:54   Anyway, like it would be you wouldn't be saving a massive amount of resources by doing it that way

01:50:00   That you would just introduce, you know complexity at the engineering side and slack is this like very complex rich service

01:50:08   that

01:50:10   has to run on every platform and it has to have feature parity constantly on every platform and

01:50:18   So again, like you can see why they do this

01:50:21   I don't love this is the reality of a lot of things these days

01:50:23   but that's why they do it and it makes a lot of sense, but if that's not your if that's if it's not your business needs if

01:50:31   You can get away with using native stuff and it's not that big of a deal to your business

01:50:35   Then by all means it's better and you should but something like slack

01:50:40   I think is electron for good reasons and it doesn't bother me that much with the exception of

01:50:47   Quite how incredibly resource-intensive it is. I should think about getting a Mac with more than 16 gigs of RAM

01:50:53   Brutal

01:50:57   Matt Steiner writes recent Apple car rumors seem to suggest they're working toward an autonomous EV to sell to customers

01:51:03   What do you guys think of the idea of Apple designing an autonomous EV to be used in their own ride-sharing service akin to uber?

01:51:08   Apple controls the hardware and software and can focus on the experience ultra high-end interior ecosystem integration advanced technologies

01:51:15   Without needing to worry about pricing margins dealerships or charging networks somewhere to Waymo

01:51:19   They can focus on their self-driving tech on well-mapped geographies cities ideal for ride-sharing to create a polished system

01:51:26   That doesn't necessarily need to operate everywhere in the way a consumer EV would

01:51:29   May this doesn't really do anything for me personally. Like I just I don't see this as a

01:51:37   Sustainable reasonable model for a business to make decent money

01:51:43   And I just don't I just get by gut alone

01:51:46   I just get the feeling that this is not what Apple's interested in that. It's not they don't want to be uber

01:51:52   They don't want to and most they might want to be uber for like shuffling

01:51:56   Employees between their different buildings in Cupertino, but even then I don't think they're that interested

01:52:01   So yeah

01:52:03   I don't I don't think this is for them this harkens back to the good old days of

01:52:07   Apple rumors where you and where you just you start with the premise that Apple is able to do something that no one else thus

01:52:13   Far has been able to do and then you extrapolate from there

01:52:16   Oh, what if Apple could just do this thing that apparently nobody in the world can do yet?

01:52:19   But like what if Apple could do it because they're super smart then do you think Apple would do that?

01:52:23   If Apple could make hoverboards, they'd probably do it but I think

01:52:27   yeah, the

01:52:29   Making come fully autonomous cars and selling them and saying wouldn't that be great service because you know how to worry about dealers because Apple

01:52:36   Would own all the cars and everything like I see the appeal, but let's start with okay

01:52:39   Well, where are the fully autonomous cars come from?

01:52:41   Assuming Apple Apple will be able to do that where everyone else has failed after decades of trying and they just I mean eventually maybe

01:52:48   But you know, I don't see anything that's that as far as I know Apple has not is not

01:52:53   far ahead of the competition when it comes to

01:52:57   Full autonomy for this type of application now in terms of whether if we start from that premise though and say, okay

01:53:04   Well, so it's something that everybody can do right would Apple want to be in that business?

01:53:08   Because I don't think you can start and say okay

01:53:11   What if Apple was the only one that could do this then wouldn't they want to be in that business?

01:53:15   There's very little that that in the Apple will be able to do that people can't copy, right?

01:53:20   So I said what if Apple is the only one with a smartphone with a touchscreen for a tiny little while?

01:53:24   They were like, you know a smartphone with a good

01:53:27   iPhone caliber touchscreen, but eventually everyone else had one

01:53:31   So Apple had better hope their competitive advantage is not hey

01:53:34   We're the first ones to figure out how to do this because that won't be true for very long

01:53:37   So you have to assume the world is a place where everybody can do this

01:53:41   Google could make the service Amazon can make this service Hertz can make this service

01:53:45   Then is it a business that Apple wants to be in and you got to ask the Tim Cook question

01:53:49   Is this a place where Apple feels like they can make a big impact yada yada, and I would hope

01:53:52   From the perspective from the high-level perspective what Apple would say to itself is not

01:53:59   Not like, you know, is there some buck to be made while we're the first people to do this, but is basically is this type of

01:54:06   product

01:54:08   Going to solve a problem in the world in a way that we want in some respects

01:54:13   yes, like if you could have a set of

01:54:16   autonomous fleet of cars that are shared and in a city environment and

01:54:21   Then pair that with banning people from bringing their own cars

01:54:26   You could reuse existing infrastructure with fewer cars on the street in a more efficient manner

01:54:31   But in other respects if you really want to solve the problem

01:54:35   The solution is not to either add more cars or to have different kinds of cars

01:54:39   But rather to invest in more efficient nicer public transportation

01:54:43   Which carries people, you know far larger number of people more efficiently with less space stuff like that

01:54:48   And I would hope that any Apple thinking about a future product is thinking big picture is the answer more cars

01:54:54   Now I know apples remember to be making a car and I hope they're also asking that question and the reality is cars are

01:55:00   You know a big thing in the entire world right now

01:55:03   so you can't stick your head in the sand and say I'm just gonna ignore cars entirely but

01:55:07   For something like this where you have oh we have autonomy and we have this amazing advanced technology

01:55:12   I would hope that we would think a little bit bigger than let's just do cars but slightly different because

01:55:18   That type of technology enables all sorts of interesting things

01:55:23   Other than simply trying to use our existing road infrastructure slightly more efficiently

01:55:28   Yeah, I I still I mean

01:55:34   There's a lot of smoke where this fire is alleged to be and so I'm pretty sure that

01:55:40   Apple is working on some kind of car or car related thing car related thing as in maybe they're just doing the software

01:55:47   Maybe they're partnering with Hyundai that you know, there's so many rumors. We don't know. Yeah, but like it's Apple

01:55:53   I don't think Apple wants to be in the business of being the partner with

01:55:58   Uber or Hertz to supply them like that's not that's that's like a big b2b deal

01:56:04   Apple sucks at that kind of thing

01:56:05   like they're not gonna make some kind of big sales deal with some other person who's gonna share the

01:56:10   major parts of the responsibility of the like

01:56:13   Customer relationship and a customer experience like they're gonna do their own the whole thing themselves

01:56:17   You're thinking you're thinking Motorola rocker though, and I'm thinking I'm thinking Foxconn

01:56:22   Fair enough. Yeah, that's fair. But I ultimately

01:56:25   This thing we're like, you know, Apple just makes a fleet of cars for you know

01:56:31   Uber or whoever to operate and you don't you don't actually buy them you just get into this car does on my Apple like I

01:56:37   Know not not not not for uber to operate the idea in this question is that Apple would run that service

01:56:42   So Apple would own all the cars like it wouldn't be selling car

01:56:44   Oh, right, it would be selling access to the Apple car transport service

01:56:48   At that point Apple is just like a giant car leasing company and car maintenance company. I mean, they're a taxi service

01:56:53   Yeah, I don't see that

01:56:55   First of all, I don't see that being a business Apple would really want to be in

01:56:59   services revenue

01:57:02   But but secondly I

01:57:04   Still don't know why Apple wants to be in the car business at all

01:57:09   Like I yeah, this doesn't make any sense to me whatsoever. I can tell obviously they're putting a lot of resources into this project

01:57:16   You know, there's so much supporting that now that like it does seem like they do have

01:57:21   Some kind of major car project going and have for some time, but I still just do not see

01:57:27   why Apple wants to or should be in the car business and

01:57:32   even as a huge fan of Apple and an okay fan of cars, I

01:57:39   Don't want an Apple car. I'm not excited about that. I don't think they should be doing any of this

01:57:45   I think this is a massive distraction and I

01:57:47   Have yet to imagine

01:57:51   Why this is a good idea for them to do why they need to do this

01:57:56   Why they need to spend any of their resources doing this why?

01:57:59   Apple can bring something to the table here why they would be even be good at it. I don't see any of that

01:58:05   I don't see anything in Apple's product line

01:58:07   It says like you know, like part of this question is like Apple can control the hardware and software

01:58:11   You can focus on the experience ultra high-end interior ecosystem integration advanced technology. What does that mean?

01:58:17   Can Apple make an ultra high-end car interior?

01:58:22   Maybe but we've never seen that before

01:58:25   But you know what like when they when they launched the Apple watch they had never made an ultra high-end

01:58:30   You know watch band ecosystem before but they managed to make a pretty good one

01:58:34   I wouldn't make maybe not ultra high-end, but they may make a you know, very good watch bands and and you know

01:58:39   a decent watch experience like I suppose they could try this but

01:58:43   Apple like this is so far from the kinds of things they do

01:58:48   You know you mentioned earlier like the Tim Cook thing of like trying to make a you know

01:58:53   Make a real difference and until only tackle the things that they can make a real difference in

01:58:57   It's like they decided not to do Wi-Fi routers like they like why there's so many things that they could do

01:59:03   That would make a real difference to the business. They're already in I

01:59:08   I and they choose not to for you know focus or or resources or whatever a

01:59:13   car

01:59:15   Not let alone even a regular even if you ignore all the magic self-driving stuff that seemingly doesn't exist that it might never exist

01:59:22   Even if you ignore that just making a car

01:59:24   Period even a manually driven one where one is driven by a human

01:59:28   it's so much work and

01:59:31   It's so many specialty skills

01:59:34   And it's so it's it takes so much infrastructure and so much support

01:59:39   massive amounts of design and engineering and just

01:59:43   such a massive distraction

01:59:46   Apple is not known for having a ton of extra engineering and design resources and the ability to multitask incredibly

01:59:53   Well while juggling all their other product lines

01:59:55   Why are they doing this? I still yeah, I have no clue why they're doing this and I

02:00:02   Again unless I mean maybe I'm totally wrong and maybe they're gonna blow us away

02:00:06   You know in five or ten years whenever but it sure looks to me like just a giant

02:00:11   distraction a giant like

02:00:14   massive resource suck that is

02:00:17   Not a good idea strategically for them at all. I don't see what this does for them

02:00:23   I don't see why Apple wants to be a car company or why they should become a car company

02:00:28   No matter what the car even if it's fully autonomous cars or or manually driven cars no matter what kind of car it is

02:00:34   I don't see why Apple needs to or should or would be good at doing this

02:00:39   I'm sure Apple will explain it when they roll out whatever they roll out

02:00:42   But they're really they're really concerning concerning slash interesting thing about this is there

02:00:48   So Apple is seemingly so committed to whatever the heck they're doing in the car space

02:00:52   that when their first run at it sort of I'm gonna say failed but

02:00:58   Didn't work out the way they wanted they didn't abandon the idea

02:01:02   They rebooted it and are making at least a second attempt

02:01:06   We don't know how many other internal restarts there have been but there's been one public restart that we more or less know

02:01:10   So like I mean sure that's the thing in any big company, especially Apple, you know, you try lots of stuff

02:01:15   Sometimes it doesn't work out. But when the car thing didn't work out, they didn't say oh, well, we tried that

02:01:18   It didn't work out. They're trying again

02:01:20   There are they are determined to do whatever it is

02:01:24   They're doing here and you mentioned Wi-Fi routers if and when air tags ever actually come out after however many years being rumored

02:01:31   I'm just gonna look at them and say it's okay

02:01:33   So you're doing air tags, but still no Wi-Fi routers, huh?

02:01:36   You make a big difference in the tile business

02:01:38   But you can't make a difference in the in the Wi-Fi router business to your point about like so many areas in their current

02:01:45   Market where they could make a difference that aren't air tags seems like

02:01:50   Like really or is there so little for you to do that you thought uh-huh. Why don't we do these little tile competitor things?

02:01:56   That'll be I mean not that I air tags are probably being great

02:01:58   I think they're cool and everything but like but not Wi-Fi routers, right but also cars

02:02:03   It's it really is baffling and and I don't I don't want to discourage Apple from

02:02:08   Trying all sorts of different things

02:02:11   But the car thing I feel like eventually it's either got to just be dead for good or they need to ship something

02:02:17   The AR VR glasses is another example. I think that's definitely an area that Apple should be looking in

02:02:21   And I like the idea that they've been working on it for a long time and haven't shipped anything yet because it shows they're not

02:02:26   Just shipping the first random thing they have because we know they've had all sorts of stuff internally

02:02:30   That other companies probably would have shipped because it probably is cool and does a bunch of cool stuff

02:02:34   But they're waiting until they have something decent. So I

02:02:37   hope whenever

02:02:39   Whatever they're doing with the car comes out

02:02:42   That Apple is able to answer at least some of the questions that Marco just posed because if they can't it's not going to be

02:02:47   much of a product interaction

02:02:49   Thanks to our sponsors this week Linode away and flat file

02:02:53   Thank you to our members as well who support us directly you can join at ATP that FM slash join. Thanks everybody

02:03:00   We will talk to you next week

02:03:02   Now the show is over they didn't even mean to begin because it was accidental

02:03:11   Oh it was accidental

02:03:13   John didn't do any research Marco and Casey wouldn't let him because it was accidental

02:03:21   It was accidental

02:03:24   And you can find the show notes at ATP

02:03:28   FM and if you're into Twitter

02:03:32   You can follow them at

02:03:36   As ey l is s so that's Casey lists ma RC o ar m

02:03:43   anti Marco Arman

02:03:46   Sir AC USA, Syracuse

02:04:06   So keeping with the car theme I

02:04:08   Have a group chat that I think I've mentioned before that is myself into

02:04:13   Car enthusiast friends of mine and it's not the two of you

02:04:17   One of them is the guy that recommended the Subaru the BMW

02:04:22   and now has basically a clone of my car except his is the wrong transmission and

02:04:27   we were chatting the three of us the other D and

02:04:31   One of them I forget which one it was made the point

02:04:35   What's the point of Audi?

02:04:38   and

02:04:39   I should have looked back at this conversation preparation for today, but if you want to get something Audi like

02:04:46   Why would you get an Audi when you can get a Volkswagen? That's like

02:04:51   90% as nice in most cases

02:04:55   but half the price or

02:04:58   if you want to go to the other direction you want something that's obscenely nice and

02:05:04   Just obscenely expensive and get a Porsche. So what's the point now D? I

02:05:09   Mean setting aside the fact that the corporate ownership structure that we have today didn't always exist. And so it wasn't quite as absurd a question

02:05:17   I this whole I think you just basically described market segmentation the whole idea of car

02:05:24   Regular car brands eventually having a luxury brand companion was big in the 90s and is a proven business model

02:05:32   You take your Toyota's and you make them a little bit fancier and you saw him for a no more money and you get a Lexus

02:05:36   You do the same thing with the Nissan and you get Infinities to lesser effect

02:05:40   Take a Honda and you make it a little bit fancier and you get an Acura which is usually a worse car

02:05:45   You should just buy Honda's but like this. Yeah, I'm saying it's it's a proven business model

02:05:50   I think in the case of Volkswagen Audi

02:05:52   The Volkswagen is the regular people brand you take a Volkswagen you make it fancier and you get an Audi and yes

02:05:58   Obviously you're paying more and the margins are higher and you're not getting quote unquote your money's worth if you look at it in terms

02:06:03   Of features and experience or whatever, but that's the that's market segmentation and luxury goods

02:06:07   You always pay proportionally more to get proportionally less

02:06:10   But I don't think there are many people who would say that a really good Audi is not a nicer car than a really good

02:06:16   Volkswagen even if they're literally made on the same platform, so I think it makes just as much sense as you know

02:06:23   Well, I keep citing infinity. I feel bad for them because I think their cars are crappy but

02:06:27   Like what's what's Lexus?

02:06:28   I guess Lexus is the best one because Toyota is a very popular brand sells a lot of cars and

02:06:32   Lexus are acknowledged to be yes

02:06:35   They're just fancy totalist, but guess what's a fancy Toyota is a good car and for people who like Toyota's

02:06:40   But wish they were fancier Lexus is right there for them and there's bigger margins on it

02:06:44   So the point of Audi is the same as the point of Lexus and infinity. Okay, I guess I phrased the question poorly

02:06:49   Why would one buy an Audi?

02:06:52   Rather than I mean other than like completely emotional reasons like I just want to look fancy

02:06:57   It's nicer as they have higher performance. You can get the RS 6 or 7

02:07:02   There's no equivalent

02:07:03   Volkswagen one of those and there's you can get higher performance cars with fancier interiors with more luxury features for way more money

02:07:09   That's a luxury brand right and and Porsche is it's an even higher step above that

02:07:14   So Audi is is like, you know a good choice if you want something fancier from that car family

02:07:22   Than the Volkswagen, but you don't want to go all the way to Porsche

02:07:26   Which is substantially more expensive and has much much more sporting and less luxurious, right?

02:07:31   I don't know if I would say that I

02:07:33   Less luxurious and that the ride quality is harsher

02:07:37   Yeah, maybe I mean it's been a long time since I've been in a Porsche

02:07:41   But I'm not so sure it's quite as harsh in most applications

02:07:45   If you're not getting the performance version of an Audi the ride is gonna be much more comfortable than it is than any Porsche

02:07:51   Yeah, I I can't argue with you, but I'm not so sure that that you should be as confident as you are

02:07:56   Anyway, I don't think I don't know who made this point

02:07:59   But I think it's just if you find Audi pointless

02:08:01   Then you should find all luxury car brands pointless because what's true about is true of all of them

02:08:05   I mean maybe the complaint is that is the Audi's that are too they're too much like the

02:08:09   Volkswagens like if you squint you can see the Volkswagen lurking under the covers, but I don't I don't really buy that

02:08:14   I think Audi's makes cars that appeal to people who like Audi's and I

02:08:19   Find some of them appealing and some of them not to my taste, but I never questioned why the brand exists

02:08:23   It makes perfect sense to me. I

02:08:25   Guess unlike BMW which doesn't really have a cheap brand like I guess kind of sort of mini

02:08:31   If they made that hatchback, you know, he is not cheap. I mean the mini is not cheap. You're exactly right

02:08:37   And yes, the 318 TI I believe it was which our valedictorian drove and it seemed like a piece of garbage

02:08:42   You know, there's no cheap BMW

02:08:45   There's no cheap Mercedes that I'm that I can think of right? So

02:08:49   There's no real equivalent in in Audi's two main competitors

02:08:54   Whereas if if I were to look at an Audi in almost all circumstances, I would almost surely get the equivalent Volkswagen

02:09:02   Oh, yes, there are cases where there is no equivalent Volkswagen

02:09:04   But in almost all cases there are and and that's what I would certainly get because it just seems to me like

02:09:10   Why would one choose an Audi for non emotional reasons? Why would one choose an Audi over the equivalent Volkswagen or

02:09:17   Why are you naming their competitors as being Mercedes and BMW?

02:09:20   It's just geographic competitors. Like, you know, Lexus would say that they're a competitor to Audi

02:09:25   Acura would say that they're a competitor infinity would say just excluding those luxury brands like other, you know

02:09:33   Cadillac would say they're a competitor to Audi and I get I feel like they're just the fact that you know

02:09:38   I think it's an accident history that BMW and Mercedes just grew into these luxury brands and warrants spawned from sort of

02:09:43   Non luxury brands, right? You know, I don't think Mercedes started out as the luxury brand

02:09:49   They are today, but they didn't get spun out of something and the companies that did spin out of being like, you know

02:09:55   the people's car Volkswagen right or

02:09:57   Honda or Toyota or whatever or even things like Ford like

02:10:01   When you come out of a brand that is trying to sell to the mass market you eventually realize the business people say, you know

02:10:06   We can make a little bit more money if we made a fancier version of this car and gave it a different name and so you

02:10:10   Get Cadillac right, you know

02:10:12   You get you get the luxury brand spawning out of a regular brand if you're not

02:10:16   Lucky enough if you want to consider it to be a luxury brand from day one

02:10:20   But if you are like your brand from day one like Porsche

02:10:22   Maybe you'll try to buy Volkswagen because they sell a lot of cars

02:10:24   But that didn't quite work out the way everyone thought it would I

02:10:26   Guess to me. I don't really perceive

02:10:30   the the Japanese

02:10:34   luxury marks marquees marks makers automakers as

02:10:37   As as real direct equivalents because I feel like they're more reliable to do reliable to compete with the German brands. Yes

02:10:45   Yes that and yes, and I feel like they have a very different personality having driven several Japanese cars and admittedly

02:10:54   Not luxury cars, but I've owned a couple of Japanese cars in years past and I've owned a couple German cars now

02:11:00   and I feel like

02:11:03   And I don't know how to

02:11:05   Explain it concretely

02:11:07   But there's a very different attitude to your average Japanese car versus your average German or perhaps even European car because I feel like Aaron's

02:11:14   You know semi Swedish Volvo

02:11:17   Also feels German ish or and so I think I should really be saying you're there you

02:11:22   German I know I'm saying they have it. They have a similar feel in in spirit to them

02:11:30   I mean, there's been a lot of homogenization. I feel like in the luxury car segment like when Lexus first came out

02:11:35   It was so clearly targeting Mercedes

02:11:37   Like just you just look at it and you look at the Mercedes that they were targeting

02:11:41   You're like they just you know

02:11:42   I I can tell who you're competing with and yet despite so clearly targeting Mercedes the original LS 400 could not help but feel

02:11:50   Toy - right it just you just can't help it

02:11:54   It's just you're right you totally right that it's in the culture in the same way that a Cadillac

02:11:57   Despite trying to compete with BMW. There is no question that you're in a Cadillac when you get into one of those things

02:12:03   It's supposed to be in a BMW

02:12:04   So the homogenization has been I feel like in the feature set and maybe even the in sort of internal amenities and aesthetics

02:12:10   but the values represented by the

02:12:13   transmission chassis engine like combination driving experience

02:12:19   Not setting even aside obviously the styling is still radically different from the German brands the American brands the Japanese brands the Swedish brands

02:12:26   The Chinese brands and I think that's part of what makes the auto industry great

02:12:30   But I wouldn't say that eliminates them as competitors from each other like they're going to they're gonna be different

02:12:35   No, I don't mean to imply they're not competitors

02:12:37   I guess what I'm saying is I think in the same way that

02:12:41   Volkswagen Audi and Porsche occupy different spaces in my mind and maybe I'm the only one

02:12:46   the the

02:12:49   European versus Japanese versus American luxury brands. I mean nobody's even said Lincoln yet

02:12:54   But all I think all three of those groups have to your point and to the point

02:12:59   I was trying to make earlier very very different attitudes and feelings and kind of spirit about them

02:13:04   And so even though I agree they are all competitors

02:13:08   I view them as only competing within their little circle like I personally I don't think I would cross shop a BMW in a Cadillac

02:13:15   or a BMW and a Lexus

02:13:18   Whereas I would absolutely cross shop a BMW and Mercedes for example and I would cross shop a Cadillac and a Lincoln and I would

02:13:26   Certainly cross shop in Acura and I would I actually probably cross shop the infinity and and a Lexus

02:13:31   but I don't know it just it seems to me like

02:13:34   Particularly with respect to Volkswagen Auto Group, there's a lot of there's a lot of overlap and I

02:13:42   Don't I can't put my finger on anything that I think Audi does

02:13:47   extraordinarily well

02:13:49   That would make me say yes

02:13:50   I want an Audi now with there are a couple of exceptions and one you pointed out earlier is

02:13:54   There are cars that Audi makes a Volkswagen does not and I don't have anywhere near enough money to afford an RS6

02:14:02   But if I was given infinite money tomorrow

02:14:04   I would bring an RS6 to my desert island because oh my gosh that thing looks so awesome

02:14:09   And even though the correct more correct answer for a you know

02:14:13   Really fast wagon is whatever the current Mercedes wagon is that is certainly the better choice

02:14:18   But god, I love the look of the RS6 so much and I want one so badly

02:14:22   The Audi fast wagons are actually pretty good. Someone posted a link to in the chat room

02:14:28   We'll put it in the show notes to a car wizard video

02:14:30   Showing a more modern Lexus versus the more modern modern Mercedes

02:14:35   I think people do cross shop Lexus and Mercedes and

02:14:38   Lexus apparently continues to a Mercedes styling and features and size and everything

02:14:44   So like I was thinking of the original LS 400 which was what 90s the early 90s and they were nice cars

02:14:50   But it was it was so clearly like just they looked at Mercedes S-class and I said

02:14:55   Let's make the Toyota version of that and here is modern video showing there

02:14:58   Continue to do that and I think that's a good business because if you want a Mercedes

02:15:01   But want it to be more reliable and even more comfortable

02:15:04   Get a Lexus

02:15:07   (door slams)