PodSearch

ATP

528: My Favorite Slap in the Face

 

00:00:00 ◼   ► Mmm, good cookies.

00:00:01 ◼   ► - Oh, what are you eating?

00:00:03 ◼   ► - Girl Scout S'mores.

00:00:04 ◼   ► - You know, I am not the world's biggest fan

00:00:08 ◼   ► of all of the Girl Scout cookies that the world loves.

00:00:11 ◼   ► Like, the peanut buttery ones are good.

00:00:14 ◼   ► - Which ones, the chocolate covered ones

00:00:16 ◼   ► or the sandwich ones?

00:00:17 ◼   ► - The former, the chocolate covered ones.

00:00:19 ◼   ► - Yeah, those are good.

00:00:20 ◼   ► Tagalogs.

00:00:21 ◼   ► - I mean, they're not amazing in my personal estimation,

00:00:24 ◼   ► but they're good.

00:00:25 ◼   ► Thin mints aren't really for me,

00:00:28 ◼   ► But the key for me, and we've probably talked about this

00:00:30 ◼   ► at some point, is the shortbread, the trefoils,

00:00:34 ◼   ► trefoils, however you pronounce it.

00:00:35 ◼   ► - Yeah, those are good.

00:00:35 ◼   ► - I could go through a box of those in a sitting.

00:00:37 ◼   ► It wouldn't even blink an eye.

00:00:38 ◼   ► - Are you in the Samoa zone, Casey?

00:00:42 ◼   ► - I honestly don't know.

00:00:44 ◼   ► Is there any way to find out?

00:00:45 ◼   ► - I do not know.

00:00:46 ◼   ► That is the best Girl Scout cookie

00:00:47 ◼   ► and it's the only one you should even bother getting.

00:00:50 ◼   ► - It's the coconut circle with caramel.

00:00:51 ◼   ► - Yeah.

00:00:52 ◼   ► - That is two things that I am convinced

00:00:54 ◼   ► that I don't enjoy, but Aaron will regularly point out to me

00:00:57 ◼   ► that any time I consume caramel or coconut,

00:01:00 ◼   ► I always say, you know, I really don't like blank,

00:01:03 ◼   ► but this is actually pretty good.

00:01:05 ◼   ► (laughing)

00:01:06 ◼   ► - Which suggests that you probably actually like it.

00:01:08 ◼   ► - Which suggests that I probably do.

00:01:10 ◼   ► - I was asking, is there the two different bakers

00:01:12 ◼   ► who do the Girl Scout cookies, and one of them,

00:01:14 ◼   ► the bad version of that is called Caramel Delights,

00:01:17 ◼   ► and I am unfortunately in the Caramel Delight zone,

00:01:19 ◼   ► so I have to get illicit imported Samoas.

00:01:21 ◼   ► - We have not one, but two new anniversaries

00:01:27 ◼   ► to celebrate, I am not even kidding.

00:01:29 ◼   ► - What now?

00:01:30 ◼   ► - Oh, I saw that in the email.

00:01:32 ◼   ► Now I've decoded the notes here.

00:01:34 ◼   ► (laughing)

00:01:36 ◼   ► I think I replied to that and shamed him

00:01:38 ◼   ► for having another anniversary.

00:01:40 ◼   ► - Of course you did.

00:01:41 ◼   ► All right, well actually, so the first one is for a Mr.,

00:01:44 ◼   ► let me check my notes, John Siracusa,

00:01:46 ◼   ► who a year ago, tomorrow as we record this,

00:01:49 ◼   ► but by the time you hear this, a year ago today,

00:01:51 ◼   ► in all likelihood, had announced

00:01:54 ◼   ► that he was going independent.

00:01:55 ◼   ► So John, how's the last year been?

00:01:57 ◼   ► - I could swear I put that in my calendar

00:02:00 ◼   ► to remind myself to talk about it.

00:02:02 ◼   ► Are you off by the day or something?

00:02:04 ◼   ► - No, it's hypercritical.co/2022/03/30/independence-day.

00:02:09 ◼   ► - Maybe I just missed it.

00:02:13 ◼   ► - We don't need to belabor this,

00:02:14 ◼   ► but how's the last year been, bud?

00:02:16 ◼   ► - That's fine.

00:02:18 ◼   ► I mean, I did put, like I said,

00:02:21 ◼   ► I did put, I thought I put something in my calendar

00:02:23 ◼   ► to say, hey, it's been a year or whatever,

00:02:25 ◼   ► but really realistically setting aside that thing

00:02:27 ◼   ► I probably put in my calendar like a year ago,

00:02:30 ◼   ► the main thing I'm thinking about is that 2023

00:02:33 ◼   ► will be the first full year.

00:02:35 ◼   ► And this is in front of my mind

00:02:36 ◼   ► because we're doing like tax stuff now,

00:02:38 ◼   ► will be my first full year without jobby job income.

00:02:41 ◼   ► So like, I feel like it just doesn't count

00:02:43 ◼   ► 'cause last year was like a jobby job

00:02:45 ◼   ► and then I didn't this year.

00:02:46 ◼   ► And you know, if everything works out,

00:02:48 ◼   ► there'll be no jobby job income.

00:02:49 ◼   ► And so this will be the first full year.

00:02:51 ◼   ► So if you're excused to have another anniversary,

00:02:53 ◼   ► which is basically next year around tax time,

00:02:55 ◼   ► you can ask me, what was it like having an entire year

00:02:59 ◼   ► without a jobby job?

00:03:00 ◼   ► And I'm gonna say, well, with the podcast ad market

00:03:03 ◼   ► the way it is, it was pretty rough, but anyway.

00:03:05 ◼   ► - I was gonna say, you picked a hell of a year.

00:03:08 ◼   ► It's like the worst ads we've seen in years.

00:03:11 ◼   ► - It's kinda like when my son was born,

00:03:15 ◼   ► my first child, my oldest was born,

00:03:16 ◼   ► and then I got laid off like a week later.

00:03:18 ◼   ► So that's just kinda the way I roll.

00:03:20 ◼   ► - Did I know that?

00:03:21 ◼   ► I don't feel like I knew that.

00:03:22 ◼   ► It was like it was one of the ebook company got bought out and they said, "Hey everybody,

00:03:26 ◼   ► you could either pick up your family and move to North Carolina or whatever or you're all

00:03:30 ◼   ► out of a job tomorrow.

00:03:31 ◼   ► Let us know.

00:03:32 ◼   ► You get 24 hours."

00:03:33 ◼   ► Nice.

00:03:34 ◼   ► And we all know you wouldn't set foot anywhere south of Long Island.

00:03:39 ◼   ► If it was a job that I love for people that I thought were the people who bought the company,

00:03:44 ◼   ► if I didn't think they were a bunch of tools, I might have considered moving.

00:03:48 ◼   ► But no, they were terrible people and none of us liked them and we all just left.

00:03:53 ◼   ► But yeah, Alex, I remember bringing Alex to the office in his little infant carrier thingy

00:03:58 ◼   ► or whatever.

00:03:59 ◼   ► So anyway, here I am.

00:04:01 ◼   ► I'm still hanging in there, atp.fm/join.

00:04:03 ◼   ► Yes, please.

00:04:04 ◼   ► We're going to talk about that more in a minute.

00:04:06 ◼   ► But I am glad that you're still hanging in and congratulations, all snark aside, congratulations

00:04:10 ◼   ► on a year of independence.

00:04:12 ◼   ► You've made at least one, so that's a good start.

00:04:14 ◼   ► And then we alluded to this moments ago, but it was brought to our attention via email

00:04:18 ◼   ► that we have another anniversary to celebrate, which is the 10 year anniversary of friend

00:04:22 ◼   ► of the show, Jonathan Mann's ATP ending theme.

00:04:27 ◼   ► I almost said theme song, but it was actually entitled on YouTube, ATP ending theme.

00:04:31 ◼   ► And so it was released 10 years ago, a couple of days back, was it the 26th of March, 2023.

00:04:40 ◼   ► And we started using it every day.

00:04:42 ◼   ► I don't know, Marco, what was it, like the 27th, basically?

00:04:45 ◼   ► It was like immediate.

00:04:46 ◼   ► - Yeah, it was pretty soon afterwards, yeah.

00:04:48 ◼   ► - So thank you to Jonathan Mann.

00:04:50 ◼   ► Please check out all of his work.

00:04:52 ◼   ► - That song, I remember we were talking,

00:04:55 ◼   ► at the time, we were talking to Merlin Mann,

00:04:58 ◼   ► just casually like, "Hey, are you interested

00:05:00 ◼   ► "in maybe writing us a theme song?"

00:05:01 ◼   ► - Yeah, I forgot about that.

00:05:03 ◼   ► - And then Jonathan wrote this song,

00:05:04 ◼   ► you know, unbeknownst to us,

00:05:06 ◼   ► he kinda came out of nowhere with this song.

00:05:08 ◼   ► I forget exactly the timeline of it,

00:05:10 ◼   ► but after some brief amount of time,

00:05:12 ◼   ► this song was still in our heads.

00:05:14 ◼   ► And it was so much in our heads,

00:05:16 ◼   ► and I'm like, first of all, I like this song a lot,

00:05:19 ◼   ► and it stuck in my head.

00:05:20 ◼   ► Second of all, if I like it and it stuck in my head,

00:05:23 ◼   ► other people would probably like it as well,

00:05:25 ◼   ► and it would probably stick in their heads,

00:05:27 ◼   ► and that's probably good for our podcast.

00:05:29 ◼   ► So we basically went to Merlin, like, you know what,

00:05:31 ◼   ► if since you haven't started yet, nevermind,

00:05:33 ◼   ► we got something else, thanks, sorry.

00:05:34 ◼   ► And we started putting this song in every show,

00:05:38 ◼   ► and it's fantastic.

00:05:40 ◼   ► I love the song so much.

00:05:41 ◼   ► Just so thankful to Jonathan for writing it

00:05:43 ◼   ► and letting us use it all this time.

00:05:45 ◼   ► - Yep, and then Merlin did do the theme song

00:05:46 ◼   ► for Reconcilable Differences,

00:05:48 ◼   ► so he got to do a podcast theme.

00:05:49 ◼   ► - Yeah. - Oh, that's true.

00:05:50 ◼   ► There you go.

00:05:51 ◼   ► So yeah, we'll have some links in the show notes

00:05:53 ◼   ► to Jonathan's stuff, to the actual YouTube video,

00:05:56 ◼   ► to John's announcement post,

00:05:59 ◼   ► and the ATP wherein we discussed all this.

00:06:02 ◼   ► And it was one of my favorite, bar none,

00:06:04 ◼   ► one of my favorite moments of ATP

00:06:05 ◼   ► when John just dropped this on us.

00:06:07 ◼   ► And I certainly had no idea,

00:06:09 ◼   ► And I think Marco, you also had no idea, is that correct?

00:06:12 ◼   ► - What were your guesses?

00:06:12 ◼   ► Like I made you guess, what were your guesses?

00:06:14 ◼   ► - Oh, it was terrible.

00:06:15 ◼   ► It was truly terrible.

00:06:16 ◼   ► I know what you're thinking of

00:06:17 ◼   ► and I can't remember what we guessed.

00:06:18 ◼   ► I think Marco was closer,

00:06:19 ◼   ► but both of us were pretty far off.

00:06:22 ◼   ► Well, anyway, so congratulations.

00:06:24 ◼   ► More anniversaries to come.

00:06:25 ◼   ► I just gotta figure out what excuse I can come up with

00:06:27 ◼   ► to figure some out.

00:06:29 ◼   ► But maybe we'll let the occasional inflation rest for now.

00:06:33 ◼   ► All right, we also need to talk about,

00:06:35 ◼   ► speaking of ATP members and ATP.fm/join,

00:06:39 ◼   ► We have recorded another ATP member special.

00:06:42 ◼   ► Jon, would you like to tell us about it?

00:06:44 ◼   ► - We talked a lot about it on the actual episode,

00:06:46 ◼   ► so I won't go too far into it,

00:06:47 ◼   ► but it's another ATP Movie Club episode.

00:06:51 ◼   ► This time I picked the movie,

00:06:53 ◼   ► but I picked it kind of at the request of Marco and Casey

00:06:57 ◼   ► because they expected me to make them watch

00:07:02 ◼   ► a Studio Ghibli movie or something,

00:07:04 ◼   ► or The Godfather or something like that,

00:07:06 ◼   ► and I didn't, I made them watch Edge of Tomorrow.

00:07:09 ◼   ► And so they said, "Well, what if we do that?

00:07:11 ◼   ► What if you pick out a Studio Ghibli movie for us to watch?"

00:07:14 ◼   ► And then I had a big debate about which one I was gonna pick,

00:07:16 ◼   ► which I talk about on the show.

00:07:18 ◼   ► I ended up picking "My Neighbor Totoro,"

00:07:20 ◼   ► which is kind of straight up the middle

00:07:21 ◼   ► for a first Studio Ghibli movie.

00:07:23 ◼   ► But it's not straight up the middle

00:07:25 ◼   ► when the people watching it for the first time

00:07:26 ◼   ► are Marco and Casey.

00:07:27 ◼   ► So if you are an ATP member,

00:07:31 ◼   ► please check out this episode.

00:07:33 ◼   ► It may not be exactly what you expect,

00:07:35 ◼   ► but I think we delve into the movie in a way

00:07:39 ◼   ► that you probably haven't heard before

00:07:41 ◼   ► because the other two people on the show are first timers.

00:07:45 ◼   ► - I think it was quite interesting.

00:07:46 ◼   ► (laughing)

00:07:47 ◼   ► - It was, it was something.

00:07:49 ◼   ► So yeah, so please feel free to check that out.

00:07:51 ◼   ► ATP.fm/join, you can join for a month,

00:07:54 ◼   ► you can join for a year.

00:07:55 ◼   ► You can join for a month just to get this one episode

00:07:57 ◼   ► and then, oh, forget to cancel it, whoopsie-doopsies,

00:07:59 ◼   ► no problem there.

00:08:01 ◼   ► So do what you gotta do, but we encourage you,

00:08:04 ◼   ► especially in this genuinely trying time

00:08:06 ◼   ► when it comes to podcast advertising,

00:08:09 ◼   ► it would be lovely if you had a few bucks to send our way.

00:08:12 ◼   ► We would appreciate it.

00:08:13 ◼   ► And we try to do good stuff for you.

00:08:16 ◼   ► I don't wanna make any promises

00:08:17 ◼   ► about future HP member episodes.

00:08:19 ◼   ► We do intend to do them maybe once every month or two

00:08:24 ◼   ► is our goal.

00:08:25 ◼   ► It doesn't mean we'll succeed, but that's the goal.

00:08:26 ◼   ► We've been kicking around some other ideas

00:08:28 ◼   ► that are not movie club.

00:08:29 ◼   ► I'm sure we will return to the movie club well,

00:08:32 ◼   ► But we are trying to be inventive and creative

00:08:36 ◼   ► even though that's not necessarily in our wheelhouse.

00:08:38 ◼   ► So we will actually be talking a little bit more

00:08:41 ◼   ► about this probably in the post show.

00:08:42 ◼   ► But anyways, atp.fm/join, you can join us in watching

00:08:47 ◼   ► or discussing at least My Neighbor Totoro.

00:08:50 ◼   ► - And keep in mind that if you join up,

00:08:52 ◼   ► even if you're just joining up to hear this one episode,

00:08:53 ◼   ► like if it's a monthly membership at minimum,

00:08:56 ◼   ► you can listen to all of the member special episodes

00:08:59 ◼   ► in that time, there's only like what,

00:09:00 ◼   ► four or five of them at this point.

00:09:01 ◼   ► So you're not that far behind and you'd be getting

00:09:04 ◼   ► your money's worth even if you just pay for one month.

00:09:06 ◼   ► - Yeah, you have access to everything

00:09:07 ◼   ► that we've ever done as a member, anything.

00:09:09 ◼   ► The full fee, it isn't just from the time

00:09:12 ◼   ► you sign up forward, you have access to everything

00:09:14 ◼   ► that we've done in the past.

00:09:15 ◼   ► So yeah, feel free, help yourself,

00:09:17 ◼   ► and then just, yeah, kinda forget to cancel.

00:09:19 ◼   ► You'd be shocked how bad the podcast ad market

00:09:22 ◼   ► has been so far this year.

00:09:24 ◼   ► So we're fine, don't worry about us,

00:09:27 ◼   ► but if you've been on the fence about becoming a member,

00:09:30 ◼   ► this is the great time to do it.

00:09:32 ◼   ► - Yeah, selfishly it would be lovely.

00:09:35 ◼   ► There are six episodes, there are five movie club episodes,

00:09:37 ◼   ► the original trilogy, if you will,

00:09:39 ◼   ► and then the oopsie doopsie,

00:09:41 ◼   ► we never watched "Hunt for October"

00:09:42 ◼   ► and oopsie doopsie, we never watched a Ghibli movie,

00:09:45 ◼   ► and then the frozen dinner fiasco,

00:09:47 ◼   ► which we may never live down.

00:09:50 ◼   ► So there's plenty of good stuff for you to check out

00:09:53 ◼   ► if you're interested.

00:09:53 ◼   ► Moving on, let's do some follow up,

00:09:55 ◼   ► and John, there's maybe good news,

00:09:59 ◼   ► maybe not about HDMI quick media switching in action

00:10:02 ◼   ► on an Apple TV 4K.

00:10:04 ◼   ► Tell me about this, please.

00:10:04 ◼   ► - I think we talked about it when the new Apple TV 4K

00:10:07 ◼   ► came out and had support for this.

00:10:09 ◼   ► And we discussed the technology involved a little bit.

00:10:12 ◼   ► And then the capper was unfortunately

00:10:15 ◼   ► no television support this feature.

00:10:17 ◼   ► So you've got it on your Apple TV box, but it's pointless.

00:10:21 ◼   ► Well, now it's 2023,

00:10:22 ◼   ► the 2023 crop of televisions have come out

00:10:25 ◼   ► and several of them do support quick media switching.

00:10:29 ◼   ► What this is supposed to do for you is make it so that when the television switches something

00:10:34 ◼   ► about the picture it displays, it switches from 1080 to 4K, it switches from 60 frames

00:10:40 ◼   ► per second to 24, it switches from SDR to HDR, if it does any of those things, most

00:10:45 ◼   ► modern televisions will black out the screen, kind of like it's an old CRT or something,

00:10:50 ◼   ► make it go all black, and then it waits a couple seconds, maybe a couple three, couple

00:10:55 ◼   ► four seconds and then it will come back on with whatever the new settings are.

00:10:59 ◼   ► This is relevant because if you use my recommended settings on the Apple TV

00:11:04 ◼   ► that tell you to match frame rate and match what is it called match dynamic

00:11:09 ◼   ► range or whatever that means any time you switch between one mode and another

00:11:14 ◼   ► you will get that black screen and that happens surprisingly often because

00:11:19 ◼   ► probably when you're using the Apple TV initially you're just on the menu and

00:11:22 ◼   ► and you're going through the menus

00:11:23 ◼   ► and you can pick what you want the menus to be displayed in,

00:11:26 ◼   ► you know, like the little grid of all the icons,

00:11:27 ◼   ► all your different apps on your Apple TV.

00:11:29 ◼   ► You can pick if you want that to be in 1080, in 4K,

00:11:31 ◼   ► in SDR, in HDR, right?

00:11:33 ◼   ► But it doesn't matter what you pick

00:11:34 ◼   ► because chances are good that when you launch an app

00:11:37 ◼   ► and start watching something in the app,

00:11:39 ◼   ► it will be different than what you picked

00:11:41 ◼   ► because I think, actually, I think your only choice,

00:11:43 ◼   ► well, I guess it's not your only choice,

00:11:44 ◼   ► but the default choice that most people do, for example,

00:11:47 ◼   ► is 60 frames per second for the thing

00:11:49 ◼   ► where you see the apps and stuff.

00:11:51 ◼   ► Like why would you put that in 24 frames per second?

00:11:53 ◼   ► That would be weird.

00:11:54 ◼   ► But again, no matter what you pick,

00:11:56 ◼   ► if you watch a TV show,

00:11:57 ◼   ► that's probably not gonna be 24 frames per second.

00:11:58 ◼   ► If you watch a movie,

00:11:59 ◼   ► it probably will be 24 frames per second.

00:12:01 ◼   ► Is the show you're watching HDR?

00:12:02 ◼   ► Is the show you're watching SDR?

00:12:04 ◼   ► There's gonna be a mode switch somewhere in your future.

00:12:06 ◼   ► And that induces a black screen

00:12:09 ◼   ► and a couple seconds of wait, and that is annoying.

00:12:13 ◼   ► And the reason I recommend having that feature on,

00:12:15 ◼   ► even though that black screen is annoying,

00:12:18 ◼   ► is because to do otherwise would be to pick a mode

00:12:22 ◼   ► and dynamic range thing and just watch everything in that.

00:12:25 ◼   ► So you say 60 frames per second HDR,

00:12:27 ◼   ► everything's gonna be like that.

00:12:28 ◼   ► Well, everything's not 60 frames per second HDR.

00:12:31 ◼   ► And if you ask your television or your Apple TV

00:12:34 ◼   ► to convert everything to 60 frames per second HDR,

00:12:37 ◼   ► it'll do it and it will look awful.

00:12:39 ◼   ► No matter what you pick, pick 24 SDR,

00:12:42 ◼   ► it's going to be incorrect for some show.

00:12:45 ◼   ► So you do want it to switch, but you don't wanna wait.

00:12:48 ◼   ► Quick media switching was in theory some part of the HDMI spec that was supposed to help

00:12:52 ◼   ► with this, but as we said last time we discussed it, the only thing it helps with is when you

00:12:57 ◼   ► change frame rate.

00:13:00 ◼   ► That's it.

00:13:01 ◼   ► So if you change any other aspect of the thing, if you change from 1080 to 4K or back, if

00:13:05 ◼   ► you change from SDR to HDR, you still get a black screen.

00:13:09 ◼   ► So I was kind of disappointed in that standard, but it was like, well, let's wait to see when

00:13:13 ◼   ► it comes out on TV what it's like.

00:13:14 ◼   ► So now it's out on the TV, we'll put a link in the show notes to a YouTube video so you

00:13:18 ◼   ► You can see it in action with an Apple TV 4K on a new 2023 LG Television.

00:13:26 ◼   ► And when you switch only resolution, no black screen.

00:13:30 ◼   ► Thumbs up!

00:13:31 ◼   ► You know, it still does like a crossfade or whatever, but at least the screen doesn't

00:13:34 ◼   ► go completely black and you have to wait.

00:13:37 ◼   ► When you do anything else, black screen.

00:13:40 ◼   ► But – and I don't understand this, but you can see the results in the video for yourself

00:13:43 ◼   ► If you have quick media switching enabled on this particular LG television and it goes to the black screen to switch modes

00:13:50 ◼   ► The black screen is up for less time than if you don't have quick media switching on that makes no sense to me because it's like

00:13:57 ◼   ► if you change something other than

00:14:00 ◼   ► What do you call it frame rate?

00:14:02 ◼   ► It's quickly the switching shouldn't be involved and yet it is so you can see the results

00:14:06 ◼   ► It also puts up a big this LG television puts up a big gray banner that says quick media switching or something

00:14:11 ◼   ► It's like, it kind of defeats the purpose.

00:14:13 ◼   ► I don't need to see a banner.

00:14:14 ◼   ► Just do it.

00:14:15 ◼   ► Don't, anyway.

00:14:17 ◼   ► So the struggle continues for actual timely, fast switching.

00:14:22 ◼   ► And I guess we kind of just got that with the ARM based Macs.

00:14:26 ◼   ► Remember we were talking about when the M1 Macs

00:14:28 ◼   ► first came out, how quickly they changed resolution

00:14:31 ◼   ► and how we were used to the idea that on the Intel Macs,

00:14:33 ◼   ► of course your screen's gonna blank out for a second.

00:14:35 ◼   ► And when they didn't do that and it was like instant,

00:14:37 ◼   ► like, wow, this is great.

00:14:39 ◼   ► We're still waiting for the day that TVs do that.

00:14:41 ◼   ► But in the meantime, it seems like quick media switching

00:14:44 ◼   ► is a slight, very slight upgrade from not having it.

00:14:48 ◼   ► So if you happen to have a fancy new Apple TV 4K,

00:14:51 ◼   ► you happen to be in the market to buy a new television 2023,

00:14:55 ◼   ► I guess look for one with quick media switching

00:14:57 ◼   ► and then just wait with the rest of us

00:14:59 ◼   ► for five to 10 years when HDMI standards catch up

00:15:02 ◼   ► with what we want them to do.

00:15:04 ◼   ► - Yeah, we'll see what happens.

00:15:05 ◼   ► But I was, like you said, I was super disappointed

00:15:07 ◼   ► that it was only for, what was it, frame rate you said?

00:15:11 ◼   ► Or whatever it was.

00:15:12 ◼   ► And everything else, it was the exact same thing that we--

00:15:16 ◼   ► - But not the exact same thing.

00:15:17 ◼   ► It's faster black screen.

00:15:18 ◼   ► That's what's so weird.

00:15:19 ◼   ► All right, and the other thing,

00:15:22 ◼   ► the reason it's only frame rate

00:15:23 ◼   ► is because it's built on VRR, variable refresh rate,

00:15:27 ◼   ► which is a feature of HDMI where,

00:15:29 ◼   ► it's mostly for gaming, like when you're playing a game,

00:15:32 ◼   ► instead of having the game,

00:15:33 ◼   ► demanding that the game produce 60 frames every second,

00:15:37 ◼   ► and refreshing the screen at 60 frames per second.

00:15:40 ◼   ► Instead, you can, the television or the screen

00:15:43 ◼   ► or whatever says to the game,

00:15:44 ◼   ► just give me a frame when it's ready, right?

00:15:46 ◼   ► You know, if you don't have a frame ready

00:15:48 ◼   ► when you're supposed to, don't worry,

00:15:49 ◼   ► I won't refresh the screen,

00:15:50 ◼   ► I'll just wait for you to give me the frame.

00:15:51 ◼   ► That's variable refresh rate.

00:15:52 ◼   ► So since they already had that feature implemented,

00:15:55 ◼   ► it's many, many years old feature,

00:15:57 ◼   ► they already had that implemented,

00:15:59 ◼   ► you can think of changing from 24 frames per second to 60

00:16:02 ◼   ► as a weird kind of variable refresh rate

00:16:04 ◼   ► where it's like 24, 20, 20, 24,

00:16:06 ◼   ► and then 60 and so the tech,

00:16:08 ◼   ► the sort of the hardware and software to do that

00:16:11 ◼   ► was already kind of built in

00:16:12 ◼   ► so they could build this on top of it,

00:16:14 ◼   ► which basically makes quick media switching.

00:16:16 ◼   ► It's not like, it's like they didn't really do any work.

00:16:18 ◼   ► They're like, well, we've already got VRR,

00:16:19 ◼   ► can we just do something with that?

00:16:21 ◼   ► Sure, we'll call it quick media switching.

00:16:22 ◼   ► It's basically VRR, but for your television.

00:16:24 ◼   ► Anyway, disappointing, but you know,

00:16:27 ◼   ► it's HDMI, what do you expect?

00:16:29 ◼   ► - And then John, you have all sorts of new figurative

00:16:33 ◼   ► and potentially literal tools in your tool chest

00:16:35 ◼   ► with regard to destroying and recreating

00:16:38 ◼   ► your own custom furniture.

00:16:40 ◼   ► - Yeah, my little story about cutting some threaded rod

00:16:43 ◼   ► to shrink some furniture that I bought

00:16:45 ◼   ► resonated with a lot of people.

00:16:48 ◼   ► The most common suggestion I got was a better place

00:16:51 ◼   ► to buy threaded rod and other things.

00:16:53 ◼   ► I bought mine from like grainger.com or something.

00:16:56 ◼   ► Everybody recommended it.

00:16:58 ◼   ► McMaster-car, it's mcmaster.com, M-C-M-A-S-T-E-R.com.

00:17:03 ◼   ► They sell stuff like that, threaded rod fasteners

00:17:05 ◼   ► or whatever, very popular company, everybody who wrote in about them loves them, says this

00:17:09 ◼   ► is where you should get this stuff.

00:17:10 ◼   ► I did look and they did have Threaded Rod, the price was similar to what I paid, they

00:17:15 ◼   ► didn't have stainless steel though, which is kind of what I preferred as opposed to

00:17:18 ◼   ► like zinc coated whatever, but anyway, that's a website people recommended.

00:17:23 ◼   ► Sean Cameron was one of many people to recommend tool lending services, everybody said this

00:17:31 ◼   ► as well expressed, "As a fellow technologist who is tool inclined and having a lot of the

00:17:36 ◼   ► same predilections as John about how things should be around the house, I also find myself

00:17:39 ◼   ► holding back on buying all sorts of tools, including vices."

00:17:43 ◼   ► As in things that squish things.

00:17:44 ◼   ► "I wanted to mention that many communities have either workshop spaces or tool lending

00:17:49 ◼   ► libraries through which you can get access to specific tools for a specific job.

00:17:53 ◼   ► This is a much better approach than spending money on your own version of a tool that you

00:17:56 ◼   ► only need once or twice."

00:17:58 ◼   ► And then, what's this?

00:18:00 ◼   ► CC Helberg tooted to say, "I couldn't find one near you, but tool-ending libraries are

00:18:06 ◼   ► a thing for both woodworking and more, and also for things like specialized-shaped baking

00:18:09 ◼   ► dishes or even fly-fishing kits.

00:18:11 ◼   ► I've seen everything from power tools, drill bits, ladders, garden tools, and even a cement

00:18:14 ◼   ► mixer in them."

00:18:16 ◼   ► And the website, which we'll link in the show notes, is localtools.org/find.

00:18:20 ◼   ► Many people sent me this URL while also noting that they could not find any near me.

00:18:24 ◼   ► So I guess it's not everywhere, but check around you and maybe nearby.

00:18:29 ◼   ► That would be a good idea if I cared a lot more about cutting some threaded rod.

00:18:35 ◼   ► Again I got the job done.

00:18:36 ◼   ► It would have taken me more than a day to find this place, drive to it and see if they

00:18:39 ◼   ► had something for me and then return it and blah blah blah.

00:18:41 ◼   ► So probably not appropriate for what I was doing but very handy for other things.

00:18:45 ◼   ► And it does save you from having to buy a tool.

00:18:48 ◼   ► And finally lots of people suggested something that I already knew about but did not employ

00:18:55 ◼   ► which is when cutting a threaded rod and you don't want to script the threads with your

00:19:00 ◼   ► hacksaw or whatever, one trick is to thread one or two nuts onto the threaded rod, either

00:19:04 ◼   ► having two nuts tightened against each other or two nuts with a gap between them so that

00:19:09 ◼   ► you're basically protecting the threaded rod with a metal thing that is fixed in place.

00:19:13 ◼   ► And also, after you finish cutting through it with your hacksaw pressed against one of

00:19:19 ◼   ► the nuts, then you back the nut off of the threaded rod and that will smooth out any

00:19:24 ◼   ► burrs that are on the threaded rod, you know, to get it so the thing goes on and off.

00:19:28 ◼   ► All good ideas.

00:19:29 ◼   ► I did not have any nuts to put on the threaded rod.

00:19:31 ◼   ► And they're like, "Oh, you can just buy one of those at McMaster."

00:19:34 ◼   ► Yeah, I could have, but now I'm ordering another thing, waiting for it to come, or I'm going

00:19:37 ◼   ► to another home store and looking for an M6 1.0 nut and buying a bag of them for $5 that

00:19:42 ◼   ► I'm never going to use again, and yada, yada, yada.

00:19:44 ◼   ► Anyway, I cut it by hand and I survived, so thank you for the suggestions, but if you

00:19:48 ◼   ► had to cut more than one piece of threaded rod, get a vice.

00:19:52 ◼   ► Get a vise, get some nuts to fit on it,

00:19:54 ◼   ► get a new hacksaw blade, I guess don't do what I did.

00:19:58 ◼   ► - Only on this show do we have a threaded rod follow up.

00:20:02 ◼   ► - Yeah. - Indeed.

00:20:02 ◼   ► - And everybody wanted me to buy a hacksaw blade,

00:20:04 ◼   ► like, "I'll buy a hacksaw blade, they're $2."

00:20:06 ◼   ► They're $6, you know, they're not $2, but yeah.

00:20:09 ◼   ► (laughing)

00:20:11 ◼   ► - It's a tough ad market,

00:20:14 ◼   ► we can't be buying hacksaw blades every week.

00:20:15 ◼   ► - Right, right?

00:20:17 ◼   ► Yeah, no, they're not, yeah, you can buy new one all day.

00:20:19 ◼   ► I should probably get a new one, but you know, again,

00:20:20 ◼   ► I was just the home store for thread rod.

00:20:23 ◼   ► I didn't think to look for hacksaw blades.

00:20:24 ◼   ► Then you gotta take the old one off and blah, blah, blah.

00:20:27 ◼   ► Next time I need to use my hacksaw, I will definitely do it.

00:20:30 ◼   ► But truthfully, I thought the hacksaw blade

00:20:32 ◼   ► was not as in rough shape as it was.

00:20:34 ◼   ► Because like, how often do I use it?

00:20:36 ◼   ► But I had forgotten that this, I think this hacksaw

00:20:38 ◼   ► was like from my father-in-law's tool collection.

00:20:42 ◼   ► So it had seen a lot of use before it even got to me.

00:20:45 ◼   ► And I was under the impression that it was actually

00:20:47 ◼   ► a newish hacksaw with a newish blade and I was wrong.

00:20:50 ◼   ► [LAUGHTER]

00:20:52 ◼   ► Ay yai yai.

00:20:53 ◼   ► Well, I'm glad we have that resolved.

00:20:55 ◼   ► Josh Calvetti writes with regard to camera apps,

00:21:00 ◼   ► as in for physical cameras and geotagging and things.

00:21:03 ◼   ► Josh writes, "When I was shooting Sony about a year ago,

00:21:05 ◼   ► I was using Camrot--" I'm assuming that's a camera mode

00:21:08 ◼   ► or something.

00:21:09 ◼   ► Anyway, "for geotagging and control of my A6600.

00:21:12 ◼   ► Much more user friendly and stable than the official Sony

00:21:15 ◼   ► app, and it doesn't require you to sign up for anything."

00:21:17 ◼   ► and that's C-A-M-R-O-T-E dot app on the web.

00:21:20 ◼   ► We'll put a link in the show notes.

00:21:22 ◼   ► - Yeah, there's a lot of third party apps.

00:21:23 ◼   ► As we were complaining about first party apps,

00:21:24 ◼   ► like the apps from Fuji or Sony

00:21:26 ◼   ► or whatever, how terrible they are.

00:21:27 ◼   ► There are actually a lot of third party apps

00:21:29 ◼   ► that will work with various brands of camera

00:21:30 ◼   ► and as you would imagine, they're all, you know,

00:21:32 ◼   ► much, much better than the first party ones.

00:21:34 ◼   ► I actually did try this camrote thing.

00:21:37 ◼   ► I don't have occasion to use my big camera in geotagging.

00:21:40 ◼   ► Like I'm just using it around the house.

00:21:41 ◼   ► I guess I could still geotag those,

00:21:42 ◼   ► but I can geotag those manually too

00:21:44 ◼   ► 'cause I'm literally in my house.

00:21:46 ◼   ► But next time I go, you know, on my next outing,

00:21:48 ◼   ► I'm definitely gonna use that because I said before,

00:21:50 ◼   ► I can't actually sync both of my Sony cameras with my phone

00:21:53 ◼   ► because the stupid Sony app only lets you sync

00:21:54 ◼   ► one camera at a time.

00:21:55 ◼   ► So I will try the third party one and we'll see how it goes.

00:21:58 ◼   ► - And then speaking of cameras,

00:22:00 ◼   ► but this time ones within phones,

00:22:03 ◼   ► apparently the Samsung fun hasn't ended yet.

00:22:06 ◼   ► You can opt into, so this is different

00:22:09 ◼   ► than the moon discussion we had a couple of weeks back.

00:22:11 ◼   ► The moon thing was happening just kind of automagically,

00:22:14 ◼   ► but you can also opt into quote-unquote "remastering" photos.

00:22:19 ◼   ► And according to one person, and the Verge picked this up,

00:22:23 ◼   ► and they said that they weren't able to recreate it themselves.

00:22:26 ◼   ► But nevertheless, according to this one person,

00:22:29 ◼   ► they took pictures of their baby

00:22:31 ◼   ► and then tried this remaster thing.

00:22:33 ◼   ► And this very gummy baby suddenly had teeth

00:22:36 ◼   ► because the remaster thing kind of just thought,

00:22:40 ◼   ► oh, that human should have teeth there.

00:22:42 ◼   ► And it's a little creepy.

00:22:44 ◼   ► I think it's not as a dramatic problem or difference,

00:22:48 ◼   ► perhaps is a better word for it, as the whole moon thing,

00:22:51 ◼   ► but it's definitely a little weird and kind of funny.

00:22:54 ◼   ► So there's a link in the show notes to the Verge

00:22:56 ◼   ► that covers all this.

00:22:57 ◼   ► It has some GIFs that you can look at.

00:22:59 ◼   ► It's something else.

00:23:00 ◼   ► - I think the moon feature is on by default.

00:23:02 ◼   ► I'm not sure if this one is,

00:23:03 ◼   ► but this is definitely the type of thing

00:23:05 ◼   ► where if you didn't notice it

00:23:07 ◼   ► and then went back years later,

00:23:08 ◼   ► especially if it burns it into your picture,

00:23:10 ◼   ► you know, like if you can't go back to the original

00:23:12 ◼   ► as captured by the camera or whatever,

00:23:14 ◼   ► You're like, how does this three-week-old baby have teeth?

00:23:18 ◼   ► It's like the magic of Samsung.

00:23:19 ◼   ► [LAUGHTER]

00:23:22 ◼   ► We are brought to you this week by Collide.

00:23:25 ◼   ► And they have some big news.

00:23:26 ◼   ► If you're an Okta user, they can get your entire fleet

00:23:29 ◼   ► to 100% compliance.

00:23:31 ◼   ► How?

00:23:32 ◼   ► If a device isn't compliant, the user

00:23:34 ◼   ► can't just log into your cloud apps.

00:23:35 ◼   ► They just can't do it till you've fixed the problem.

00:23:38 ◼   ► It is that simple.

00:23:39 ◼   ► Collide patches one of the major holes in zero trust

00:23:42 ◼   ► architecture, device compliance.

00:23:45 ◼   ► Without Collide, IT struggles to solve basic problems,

00:23:48 ◼   ► like keeping everyone's OS and browser up to date.

00:23:50 ◼   ► Insecure devices can be logging into your company's apps

00:23:53 ◼   ► because there's nothing there to stop them.

00:23:55 ◼   ► Collide is the only device trust solution

00:23:58 ◼   ► that enforces compliance as part of authentication,

00:24:01 ◼   ► and it's built to work seamlessly with Okta.

00:24:04 ◼   ► The moment Collide's agent detects a problem,

00:24:06 ◼   ► it alerts the user and gives them instructions to fix it.

00:24:09 ◼   ► If they don't fix the problem within the time you set,

00:24:12 ◼   ► They're blocked.

00:24:13 ◼   ► Collide's method means fewer support tickets,

00:24:15 ◼   ► less frustration, and most importantly,

00:24:17 ◼   ► 100% fleet compliance.

00:24:20 ◼   ► Visit collide.com/ATP to learn more or book a demo.

00:24:25 ◼   ► That's Collide spelled K-O-L-I-D-E.

00:24:27 ◼   ► Collide, K-O-L-I-D-E.com/ATP.

00:24:32 ◼   ► Thank you so much to Collide for sponsoring our show.

00:24:35 ◼   ► - All right, and then we have some information.

00:24:41 ◼   ► Did we cover the true Siri experience?

00:24:43 ◼   ► I didn't think we covered this on the show, did we?

00:24:45 ◼   ► - Yeah, that was the title of the last episode

00:24:46 ◼   ► and we covered this exact thing.

00:24:48 ◼   ► I couldn't remember the details,

00:24:49 ◼   ► but then I revisited it or whatever.

00:24:50 ◼   ► It was the person asking Siri for the weather.

00:24:53 ◼   ► They just got a HomePod and they said,

00:24:55 ◼   ► "I just tried to ask it the weather

00:24:56 ◼   ► "and all it said was done."

00:24:57 ◼   ► - Okay, my mistake.

00:24:59 ◼   ► So anyway, so with regard to that,

00:25:01 ◼   ► Benjamin Mayo wrote and had a really good point.

00:25:04 ◼   ► Benjamin wrote, "Siri having just said done

00:25:07 ◼   ► "implies that it's running a shortcut.

00:25:09 ◼   ► "Do you happen to have a Siri shortcut in your library?"

00:25:11 ◼   ► Benjamin was talking to the person who originally posted this,

00:25:13 ◼   ► "Do you happen to have a shortcut in your library

00:25:15 ◼   ► that has the name somewhere to weather?

00:25:16 ◼   ► It might be getting confused and running the shortcut

00:25:18 ◼   ► instead of actually looking up the weather."

00:25:19 ◼   ► And the original poster, Nairobi, wrote back and said,

00:25:21 ◼   ► "I sure did.

00:25:22 ◼   ► I had two that seemed to have no real purpose.

00:25:25 ◼   ► I deleted them, and Siri seems to be able to answer me now,

00:25:27 ◼   ► consistently even, which is good news."

00:25:29 ◼   ► So as much as I love crapping on Siri,

00:25:31 ◼   ► turns out this one was a legitimate oops.

00:25:34 ◼   ► -Yeah, but this is a situation where you're like,

00:25:36 ◼   ► "Yeah, there is a problem,

00:25:37 ◼   ► but how would anyone figure that out?"

00:25:39 ◼   ► You know, like you just, you, you ask, you know, that you're able to ask the home pod.

00:25:43 ◼   ► What the weather is.

00:25:44 ◼   ► You do that and it does something different.

00:25:46 ◼   ► Like what's your next debugging step.

00:25:48 ◼   ► Are you going to know that you have some random shortcut that happens to have, you

00:25:51 ◼   ► know, it's called check the weather or something.

00:25:53 ◼   ► Cause you clicked on some link that you forgot about a year ago.

00:25:56 ◼   ► It's the debug ability of voice and systems.

00:25:58 ◼   ► The discoverability we talked about before of like, what can I actually say to you is not great.

00:26:03 ◼   ► And then when something goes wrong, like what do you do to figure out what the problem is?

00:26:09 ◼   ► because the interface is talking,

00:26:11 ◼   ► and if it doesn't understand what's the weather,

00:26:13 ◼   ► the idea that it's going to understand you conversing

00:26:16 ◼   ► to it about what went wrong is probably not particularly

00:26:20 ◼   ► likely, although this next item has more on that topic.

00:26:24 ◼   ► - Indeed, so somebody put together, basically,

00:26:27 ◼   ► chat GPT inside an iOS shortcut,

00:26:30 ◼   ► which is kind of bananas.

00:26:32 ◼   ► And there's a really interesting,

00:26:33 ◼   ► unfortunately it's on Medium,

00:26:34 ◼   ► but there's a really interesting post about this,

00:26:36 ◼   ► and there's a video included as well.

00:26:39 ◼   ► It is fascinating and from the way the video is edited and I think there was a little bit of

00:26:44 ◼   ► complementary or

00:26:46 ◼   ► Aggressive editing on this video I think but nevertheless the way the video is edited it is darn impressive

00:26:52 ◼   ► So the the person whose name I don't have in front of me wrote I explained everything in plain English

00:26:58 ◼   ► Oh, I'm sorry. So this is with regard to how did they put hang all this together? And so

00:27:03 ◼   ► Apparently what this person wanted to do was have ChatGPT basically interpret their verbal

00:27:11 ◼   ► commands and turn it into a JSON payload that could be sent on to other things.

00:27:16 ◼   ► And so how did they convince ChatGPT to do this?

00:27:20 ◼   ► Well, they literally explained it to them.

00:27:22 ◼   ► So now quoting from this post, "I explained everything in plain English.

00:27:25 ◼   ► I described the types of requests, the exact structure of the response, and asked it to

00:27:28 ◼   ► behave like a sentient AI, giving advice even for personal questions.

00:27:31 ◼   ► I also provided a few details about time location in the devices in rooms in the house. From this

00:27:36 ◼   ► we will receive a perfectly structured message, and that's all there's no, that's all there is to programming it. So there was no

00:27:42 ◼   ► you know, direct specification of here's an example JSON.

00:27:46 ◼   ► It was just build a JSON object that has the keys and values and so on and so forth. It's nuts.

00:27:51 ◼   ► So there's an example here, an example command quote, "I sent my son to bed to read for another 20 minutes.

00:27:59 ◼   ► "Can you switch off the lights in his room

00:28:00 ◼   ► when it's time to sleep?"

00:28:02 ◼   ► And sure enough, this works.

00:28:03 ◼   ► And so in this case, GPT-3 understood

00:28:05 ◼   ► that it is probably the bedroom that needs switching off,

00:28:07 ◼   ► and it added the correct timestamp,

00:28:09 ◼   ► which is 20 minutes after the time we passed the request.

00:28:11 ◼   ► And you can see a little sample JSON there.

00:28:13 ◼   ► All of this done without actually writing any code,

00:28:16 ◼   ► at least on the chat GPT side.

00:28:18 ◼   ► And then I guess the other end of this

00:28:20 ◼   ► was like some bananas, just bananas complex shortcut,

00:28:25 ◼   ► Iowa shortcut that processes this JSON

00:28:27 ◼   ► and takes action on it.

00:28:28 ◼   ► I think it's like sending it to Home Assistant or something.

00:28:32 ◼   ► So the reason I put this in here,

00:28:33 ◼   ► and the reason everyone was sending this to me,

00:28:35 ◼   ► is because it's exactly what I described in the last episode

00:28:38 ◼   ► when I talked about how useful is ChatGPT

00:28:41 ◼   ► to making Siri better, essentially.

00:28:44 ◼   ► And I said, well, one thing you could do with it

00:28:47 ◼   ► is have it interpret what the person is saying

00:28:51 ◼   ► and then translate it to the very, very limited

00:28:54 ◼   ► and rigid structured vocabulary of Siri,

00:28:57 ◼   ► Because that seems to be the stumbling point.

00:28:58 ◼   ► Like, you have to phrase things in a certain way for them

00:29:00 ◼   ► to work with Siri.

00:29:01 ◼   ► We talked about this with adding new words,

00:29:03 ◼   ► taking six weeks to rebuild the database and everything.

00:29:06 ◼   ► Siri can understand all sorts of things that you say,

00:29:08 ◼   ► but every single one of those had

00:29:09 ◼   ► to be thought of and explicitly put into Siri by a person.

00:29:13 ◼   ► The number of variations are not infinite.

00:29:15 ◼   ► You could never say something to Siri like, hey, dingus,

00:29:18 ◼   ► I sent my son to bed to read for 20 minutes.

00:29:20 ◼   ► Can you switch off the lights in his room

00:29:22 ◼   ► when it's time to sleep?

00:29:23 ◼   ► Siri will not make heads and tails about it.

00:29:25 ◼   ► be like, "That's not one of the forms that I know how to parse, I have no idea what you're

00:29:29 ◼   ► talking about."

00:29:30 ◼   ► Or it'll make a bad guess, or terrible things will go wrong, right?

00:29:32 ◼   ► So the idea that you have one of these large language models sitting in front of Siri,

00:29:38 ◼   ► listening to what you say, figuring out, in this case, once it figures out what you want,

00:29:42 ◼   ► also formulating a JSON message that it then sends to Home Assistant or some other thing,

00:29:47 ◼   ► or translates into the form that Siri understands it.

00:29:51 ◼   ► Because the chat GPT thing, the large language model figured out, you probably mean the key

00:29:55 ◼   ► kids bedroom, 20 minutes from now means that's when it should happen and you

00:29:58 ◼   ► want the lights to go off. Like it figured all that out and then it can

00:30:01 ◼   ► issue a command "hey dingus" in 20 minutes turn the lights off in the

00:30:05 ◼   ► bedroom and that Siri can understand that. I don't necessarily think layering

00:30:09 ◼   ► things in that way is the best approach for Apple but at the very least it is a

00:30:13 ◼   ► way to take two things that we have now. Siri, that can do a bunch of things as

00:30:18 ◼   ► long as you phrase it in one of a very long list of ways, and large language

00:30:23 ◼   ► models that can take a bunch of input text and figure out the most likely output text

00:30:30 ◼   ► for it that fits the prompt and everything and sew those two things together.

00:30:35 ◼   ► The video is a little bit janky because obviously having to run a shortcut is not the same as

00:30:40 ◼   ► being able to say "hey dingus" and shortcuts take time to run.

00:30:43 ◼   ► You can see the edit points in the thing where it's not as seamless as you could imagine.

00:30:46 ◼   ► But of course if Apple implemented this they wouldn't make you run a shortcut to do it.

00:30:49 ◼   ► They would fuse this into Siri and they say,

00:30:51 ◼   ► "Oh, it's Siri 2, now powered by quote unquote AI."

00:30:55 ◼   ► And honestly, it would be better, right?

00:30:57 ◼   ► 'Cause we don't care what's happening.

00:30:58 ◼   ► We don't care that under the covers

00:31:00 ◼   ► it's a language model translating it into

00:31:02 ◼   ► a very text adventure style thing.

00:31:04 ◼   ► All we know is that now we are able to say more things

00:31:08 ◼   ► and actually get what we want from them.

00:31:10 ◼   ► - Yeah, I mean, it was certainly impressive.

00:31:13 ◼   ► - Honestly, I would even take just simpler things.

00:31:15 ◼   ► Make Siri work every time.

00:31:17 ◼   ► - Imagine that.

00:31:18 ◼   ► It's just, it fails in such weird, stupid ways so often.

00:31:23 ◼   ► Like, honestly, this is, you know,

00:31:26 ◼   ► I go on a rollercoaster up and down

00:31:28 ◼   ► with what I currently think about my HomePods

00:31:31 ◼   ► as I have for the entire lifetime of these products now.

00:31:35 ◼   ► And I'm currently at a bit of a down phase

00:31:39 ◼   ► in terms of the functionality of Siri and Apple Music.

00:31:44 ◼   ► Like, it's, oh, it's so buggy.

00:31:47 ◼   ► It's so unreliable.

00:31:49 ◼   ► These are brand new products.

00:31:51 ◼   ► This is like, they're so buggy.

00:31:54 ◼   ► Like now they're faster and they're bugs.

00:31:57 ◼   ► Like they behave buggy faster.

00:32:01 ◼   ► But they're still, and it's, oh.

00:32:05 ◼   ► Can somebody like, somehow make sure

00:32:10 ◼   ► that Tim Cook listens to music every single day

00:32:12 ◼   ► using a stereo pair of HomePods and operating them by a Siri?

00:32:16 ◼   ► Like somehow, someone make that happen.

00:32:18 ◼   ► Like somehow in some non-creepy way,

00:32:21 ◼   ► replace all the music playing equipment

00:32:24 ◼   ► in Tim Cook's home and office,

00:32:26 ◼   ► again in a non-creepy way,

00:32:28 ◼   ► with stereo pairs of home pods.

00:32:30 ◼   ► And just make sure that he has to operate them

00:32:33 ◼   ► every single day.

00:32:34 ◼   ► And let's see if maybe this product

00:32:36 ◼   ► can't get a little bit better.

00:32:37 ◼   ► - That or use Apple Music in any platform,

00:32:40 ◼   ► for any reason.

00:32:42 ◼   ► - Well 'cause that's using Apple Music.

00:32:43 ◼   ► I seriously doubt he's a Spotify user.

00:32:46 ◼   ► So he's gonna be using Apple Music via Siri,

00:32:49 ◼   ► this'll be good.

00:32:50 ◼   ► - I'm not sure if his main motivational driver

00:32:54 ◼   ► is how frustrating he finds the products.

00:32:57 ◼   ► Steve Jobs, sure, if something went wrong for him,

00:33:01 ◼   ► make it his mission in life to make sure that that gets

00:33:04 ◼   ► fixed 'cause he is embarrassed to be shipping a bad product.

00:33:07 ◼   ► - He would burn the world down until it was fixed.

00:33:10 ◼   ► - Or at least he would try or until he gets bored

00:33:11 ◼   ► and moves on to something else.

00:33:12 ◼   ► But anyway, I feel like Tim Cook's reaction

00:33:15 ◼   ► would be to look at how the HomePod is selling and if sales seem like in line with projections

00:33:21 ◼   ► then I guess everything's fine.

00:33:22 ◼   ► Yeah, but see, and again, the HomePod's one part of this. Like this is why, you know,

00:33:27 ◼   ► we keep harping on, hey, Siri has to be better and not only in these, you know, cleverness

00:33:34 ◼   ► ways, like as we are seemingly in full swing now of the AI revolution here, you know, the

00:33:40 ◼   ► expectations people have are going to keep going up for how smart they expect it to be.

00:33:45 ◼   ► But also, it still doesn't get the basics right.

00:33:49 ◼   ► It still is unreliable and slow

00:33:51 ◼   ► and does stupid things with basic requests very frequently.

00:33:54 ◼   ► And inconsistent is another big problem that it has.

00:33:57 ◼   ► It's very inconsistent.

00:33:58 ◼   ► Apple is not only gonna fall behind

00:34:01 ◼   ► in competitive expectations of assistants

00:34:04 ◼   ► as they all move more into AI stuff,

00:34:07 ◼   ► but also, Apple is about to launch a brand new product

00:34:13 ◼   ► that seems like it's gonna be a pretty big bet

00:34:16 ◼   ► the company is making, that also by all accounts

00:34:20 ◼   ► seems like it might be pretty heavily relying on Siri

00:34:23 ◼   ► for certain functionality.

00:34:24 ◼   ► How are they gonna do that if Siri continues

00:34:29 ◼   ► to have the reputation of seeming to work a lot better

00:34:33 ◼   ► in Apple executives' homes than in any other house

00:34:36 ◼   ► in the world?

00:34:37 ◼   ► I don't know anybody for whom Siri works

00:34:40 ◼   ► as well as Apple seems to think it works.

00:34:43 ◼   ► and this is gonna hold them back.

00:34:45 ◼   ► It's gonna keep holding them back.

00:34:47 ◼   ► Imagine the products that they envision.

00:34:51 ◼   ► I mean, look, obviously I'm talking about

00:34:52 ◼   ► the VR headset thing, but also look at things like AirPods,

00:34:56 ◼   ► or the Apple Watch, or the phone, or the HomePod.

00:34:59 ◼   ► All of their products now involve Siri in some way,

00:35:02 ◼   ► to varying extents, some more reliant on it than others.

00:35:06 ◼   ► If they try to launch a product that depends heavily on Siri,

00:35:10 ◼   ► they're gonna present it one way,

00:35:11 ◼   ► and that'll be nice and it'll seem like everything

00:35:14 ◼   ► is awesome and works, but then when we actually get

00:35:17 ◼   ► the product, it's gonna have all these weird inconsistencies

00:35:20 ◼   ► and shortcomings and that's gonna make the product

00:35:23 ◼   ► itself look and work badly.

00:35:26 ◼   ► Siri is such a fundamental technology

00:35:30 ◼   ► to Apple's modern product line and they keep only leaning

00:35:33 ◼   ► more into that over time and for the amount

00:35:37 ◼   ► that they are relying on Siri for the operation

00:35:41 ◼   ► and success of their products,

00:35:43 ◼   ► they seem to be allowing it to be

00:35:45 ◼   ► a very poor performer in quality.

00:35:48 ◼   ► They care so much about so many of the details

00:35:52 ◼   ► and the fundamental technologies their products depend on.

00:35:56 ◼   ► And then Siri is just miserable.

00:35:59 ◼   ► And I don't understand why they don't seem

00:36:02 ◼   ► to put a higher priority on making

00:36:04 ◼   ► that fundamental technology as good as it can be.

00:36:09 ◼   ► I almost wonder if it's because when you're on the inside,

00:36:12 ◼   ► you see how the sausage is made or not,

00:36:14 ◼   ► depending on how you want to look at it.

00:36:16 ◼   ► And, you know, maybe they all know it's trash,

00:36:19 ◼   ► but they can explain it away.

00:36:21 ◼   ► Well, it's garbage because blah, blah, blah.

00:36:23 ◼   ► Well, it's garbage because politics.

00:36:25 ◼   ► It's garbage because, you know, servers.

00:36:28 ◼   ► It's garbage because any number of reasons.

00:36:30 ◼   ► And I mean, I've been told from anyone I know

00:36:34 ◼   ► that works or has worked at Apple

00:36:36 ◼   ► that they are their own biggest critic,

00:36:39 ◼   ► which I would believe, but golly, from an outsider's point of view, and we're going to be talking about this a lot later,

00:36:45 ◼   ► from an outsider's point of view, we sure can't tell, because Siri sure ain't getting better.

00:36:50 ◼   ► My keyboard on my phone still wants to change W-E-L-L to W-E-apostrophe-L-L and vice versa,

00:36:57 ◼   ► no matter what I do, it's always choosing the wrong one.

00:37:00 ◼   ► It sure doesn't look like anyone cares from the outside.

00:37:04 ◼   ► And at some point, everyone has a different line,

00:37:08 ◼   ► but at some point people are gonna stop being like,

00:37:10 ◼   ► well, it's okay.

00:37:12 ◼   ► At some point it's just gonna be so frustrating

00:37:14 ◼   ► that people are gonna stop using these products.

00:37:16 ◼   ► I mean, I don't have HomePods

00:37:18 ◼   ► or any other voice cylinder in the house

00:37:22 ◼   ► because the Amazon one got way too chatty

00:37:26 ◼   ► and all it wants to do is have me talk to it

00:37:28 ◼   ► and advertise things to me and so on and so forth.

00:37:31 ◼   ► - By the way. - Yeah, exactly.

00:37:33 ◼   ► Then I never wanted a home pod originally because they were too expensive and then later

00:37:38 ◼   ► I just didn't feel like it was solving a need I have and now I

00:37:41 ◼   ► Certainly don't want any because I'm such a Sonos fanboy. Nobody can nobody even wants to hear me talk about it anymore

00:37:46 ◼   ► So it's it's if the home pod to your point Marco if the home pod in Siri were amazing

00:37:52 ◼   ► If they were really and truly great, I would probably have one in the house. I haven't tried the Google stuff

00:37:58 ◼   ► And again, I don't feel like this is a need

00:38:00 ◼   ► I need to fill and maybe the Google stuff is great

00:38:03 ◼   ► I'm waiting for John to pipe in as soon as I stopped talking, but if if Siri was amazing

00:38:08 ◼   ► I would probably have a home pod by now

00:38:10 ◼   ► But why would I spend a pile of money for a home pod even leaving aside the Sonos stuff?

00:38:14 ◼   ► Why would I spend a pile of money on a home pod when one of the marquee features?

00:38:18 ◼   ► Never friggin works from everything I've ever heard like why would I do that? It just seems bananas

00:38:24 ◼   ► I know John tell me I'm tell me I'm a dummy and that I should get some Google stuff

00:38:27 ◼   ► We talked about this last week, like with the difficulty of Siri.

00:38:30 ◼   ► One of the downsides of being early in the market, like Apple was pretty early with a

00:38:36 ◼   ► voice assistant heavily integrated into its product family that does voice assistanty

00:38:42 ◼   ► things, right?

00:38:43 ◼   ► Siri was 2011 or whatever, as we discussed, and people who come later with using different,

00:38:49 ◼   ► entirely different approaches to solving this problem, like the large language models, which,

00:38:53 ◼   ► give you capabilities that Siri does not have,

00:38:56 ◼   ► although there is, like we said, there are still gaps

00:38:58 ◼   ► that a large language model can't do that Siri can do.

00:39:01 ◼   ► But anyway, using more modern technology,

00:39:03 ◼   ► yeah, you're later to the market

00:39:05 ◼   ► and you missed out on all those years

00:39:06 ◼   ► of having products with these features,

00:39:08 ◼   ► but you get to start with a newer, better technology

00:39:10 ◼   ► that's on a faster trajectory.

00:39:13 ◼   ► It could be that whatever, however Siri is made

00:39:16 ◼   ► is sort of an evolutionary dead end

00:39:18 ◼   ► in terms of how it's structured and programmed,

00:39:21 ◼   ► and there are a bunch of new branches

00:39:22 ◼   ► going off in other directions.

00:39:23 ◼   ► So, like, for Apple to say, okay, well, Apple was early

00:39:28 ◼   ► and they had this other thing,

00:39:30 ◼   ► but now they can just use the new thing.

00:39:31 ◼   ► Well, the problem for Apple is they can't replace Siri

00:39:34 ◼   ► with something built on new technology,

00:39:36 ◼   ► unless it can pretty much do everything that Siri does,

00:39:38 ◼   ► 'cause you don't wanna have a regression

00:39:39 ◼   ► where it's like, well, you used to be able to use Siri

00:39:42 ◼   ► to do these hundred things,

00:39:43 ◼   ► but now we have a new quote unquote AI-powered Siri,

00:39:47 ◼   ► but it can do one fifth of the stuff.

00:39:48 ◼   ► So they've kind of, you know, again,

00:39:50 ◼   ► it's the curse of being early.

00:39:51 ◼   ► you build up all this functionality,

00:39:52 ◼   ► Siri, for all we complain about it,

00:39:54 ◼   ► is integrated into so many products

00:39:56 ◼   ► and it can do so many different things.

00:39:58 ◼   ► And even though we don't use all those things,

00:39:59 ◼   ► someone out there is relying on the fact

00:40:01 ◼   ► that you can ask Siri to predict the temperature

00:40:05 ◼   ► in a different country a month from now or something,

00:40:08 ◼   ► and then if you come out with a new one

00:40:10 ◼   ► that's powered by AI and it can't do that,

00:40:11 ◼   ► they've lost functionality.

00:40:12 ◼   ► So Apple has a difficult,

00:40:15 ◼   ► kind of like it was with the operating system.

00:40:16 ◼   ► If you build an operating system before,

00:40:18 ◼   ► like memory protection and preemptive multitasking

00:40:20 ◼   ► common and you build this huge customer base and all these apps built on it, yeah you got

00:40:24 ◼   ► all those years of good money but now when it comes time to have a modern operating system,

00:40:27 ◼   ► someone who starts from scratch right now can build an operating system with all those

00:40:31 ◼   ► features from day one whereas you have to kind of retrofit it and it's a more difficult

00:40:35 ◼   ► task so it's not that bad with Siri but I think it is actually a challenge to use better

00:40:41 ◼   ► more modern technologies to make a better Siri while also sort of replacing all the

00:40:46 ◼   ► the functionalities. You have to kind of do a piecemeal where it's like well, excuse me,

00:40:51 ◼   ► well unbeknownst to you when you ask this we take this path in the code and we all go

00:40:55 ◼   ► off into the new like large language model things but when you ask anything else it's

00:40:59 ◼   ► the old Siri path and they slowly replace it from the inside like this is just basic

00:41:02 ◼   ► you know software engineering product management stuff but it is difficult and I hope something

00:41:08 ◼   ► like that is happening inside Apple like there is lots of motion in the sort of AI section

00:41:14 ◼   ► of the company.

00:41:15 ◼   ► Granted, a lot of it has been related to ML, which was the other buzzword before AI, you

00:41:19 ◼   ► know, machine learning.

00:41:20 ◼   ► We've seen lots of ML-powered features being built into Apple's applications and devices,

00:41:25 ◼   ► particularly around the camera and, you know, or any of the stuff, even the keyboard autocomplete

00:41:30 ◼   ► that you're complaining about was "ML-powered," you know, and it doesn't seem to be working

00:41:34 ◼   ► out that well.

00:41:35 ◼   ► But anyway, they've been doing things.

00:41:36 ◼   ► It just seems like the things they've been doing have not been Siri.

00:41:40 ◼   ► Siri's been sitting there, being what it is, taking six weeks to rebuild its database in

00:41:44 ◼   ► 2014, hopefully that's better now, but not really getting better, better.

00:41:48 ◼   ► So I mean, maybe this is the new thing that will be, you know, we have all these like

00:41:53 ◼   ► five to 10 year projects that we talk about in this program of like, when is Apple going

00:41:56 ◼   ► to do X?

00:41:57 ◼   ► And eventually they do do it.

00:41:58 ◼   ► And every time that happens, someone says like, well, now what are you going to complain

00:42:01 ◼   ► about?

00:42:02 ◼   ► Now that you've got the Mac Pro, now what are you going to complain about?

00:42:03 ◼   ► And you got this one, you got that.

00:42:05 ◼   ► It's like, there's always something.

00:42:06 ◼   ► There's always something, and Siri is kind of bubbling up to the top as the, you know,

00:42:11 ◼   ► long-term thing that Apple needs to deal with.

00:42:14 ◼   ► They got a new file system.

00:42:15 ◼   ► The Mac Pro, they build a new one, but then they forget about it for five years and we

00:42:18 ◼   ► freak out again.

00:42:19 ◼   ► So that'll be evergreen, but like, you know, they have laptop CPUs that don't overheat,

00:42:23 ◼   ► that are really fast, low power, like a lot of the things, they fix the keyboard, right?

00:42:28 ◼   ► They knock down a lot of these things.

00:42:30 ◼   ► They got a new operating system with memory detection and preemptive multitasking, right?

00:42:34 ◼   ► But there's always something else, and it seems like Siri,

00:42:37 ◼   ► it might be the long pole, at least until

00:42:39 ◼   ► the headset arrives and we have a whole new thing

00:42:41 ◼   ► to complain about.

00:42:42 ◼   ► (laughing)

00:42:43 ◼   ► - Which apparently is going to be in early June,

00:42:45 ◼   ► but we're gonna talk about that.

00:42:47 ◼   ► Yeah, yeah, yeah.

00:42:48 ◼   ► I don't know, where are we?

00:42:49 ◼   ► I feel like we got, oh, the ChatGBT thing, right.

00:42:52 ◼   ► So, anything else on that before we move along?

00:42:54 ◼   ► - I think we've covered it.

00:42:56 ◼   ► - All right.

00:42:57 ◼   ► Microsoft has threatened to restrict data

00:43:00 ◼   ► from rival AI search tools, according to Bloomberg.

00:43:03 ◼   ► Bloomberg writes, "Microsoft has threatened to cut off access to its internet search data,

00:43:07 ◼   ► which it licenses to rival search engines, if they do not stop using it as the basis

00:43:10 ◼   ► for their own artificial intelligence chat products.

00:43:13 ◼   ► The company has told at least two customers that using its Bing search index to feed their

00:43:17 ◼   ► AI chat tools violates the terms of their contract."

00:43:20 ◼   ► Whoops, please.

00:43:21 ◼   ► So, yeah, we've talked about this before in the context of like artists having their artwork

00:43:27 ◼   ► used as training data, you know, and whether that is legal, whether it should be legal,

00:43:32 ◼   ► whether it is ethical, and how these things are going to work themselves out in court

00:43:39 ◼   ► cases, depends largely on who the litigants are.

00:43:42 ◼   ► In this case, it's a bunch of big companies, Microsoft and the other companies that it's

00:43:45 ◼   ► licensing stuff to.

00:43:48 ◼   ► Not surprisingly, a big company thinks it's perfectly fine for them to trade their large

00:43:52 ◼   ► language models on every single thing they can find on the internet, but not fine for

00:43:57 ◼   ► somebody else to use their search index stuff to train their models.

00:44:01 ◼   ► So everyone wants, I, big corporation,

00:44:04 ◼   ► should be able to get any data I want

00:44:06 ◼   ► and use it to train my thing.

00:44:07 ◼   ► But once I've done that, nobody can use

00:44:10 ◼   ► what I've generated to train their things.

00:44:12 ◼   ► Because now, I've created value.

00:44:14 ◼   ► See what I've done there?

00:44:15 ◼   ► You can't use mine to train your thing.

00:44:17 ◼   ► And it kinda gets into the whole thing of like,

00:44:18 ◼   ► the argument added, certain, whatever it is

00:44:22 ◼   ► where you extend something to a certain degree.

00:44:25 ◼   ► Like well if there's no humans creating anything,

00:44:26 ◼   ► and it's just AIs creating things,

00:44:28 ◼   ► and they're not allowed to train off each other's data,

00:44:30 ◼   ► eventually they all just shrivel and die in place

00:44:32 ◼   ► because no one wants to share their data

00:44:33 ◼   ► and no one is producing any new data

00:44:35 ◼   ► and you've already trained on everything else

00:44:37 ◼   ► and they just sort of like, I don't know,

00:44:38 ◼   ► it's like the AI inbreeding where they just shrivel up

00:44:43 ◼   ► and become little shells to themselves.

00:44:45 ◼   ► So yeah, there was one other story here

00:44:47 ◼   ► that I actually didn't put out,

00:44:48 ◼   ► like the US Copyright Office is forming a committee

00:44:52 ◼   ► to discuss forming a committee to discuss researching,

00:44:56 ◼   ► whatever, they're doing something about like

00:44:57 ◼   ► the legality of copyright and AI training or whatever.

00:45:01 ◼   ► But unsurprisingly, big companies think

00:45:04 ◼   ► that they should get everything

00:45:06 ◼   ► and nobody should get what they do.

00:45:07 ◼   ► And Microsoft is trying to enforce that in their contracts

00:45:09 ◼   ► and we'll see how this all plays out.

00:45:11 ◼   ► But yeah, it's great when this stuff is up and coming

00:45:14 ◼   ► and it's like a free for all and like,

00:45:16 ◼   ► oh, nobody minds, it's just an academic project.

00:45:18 ◼   ► Oh, this is new and exciting.

00:45:19 ◼   ► Nobody really cares.

00:45:20 ◼   ► But then all of a sudden when there's real money to be made

00:45:22 ◼   ► and people are making products, they're like, wait a second.

00:45:24 ◼   ► These, as I said before, these products have no value

00:45:27 ◼   ► without good data to train them on.

00:45:29 ◼   ► Where does that good data come from

00:45:31 ◼   ► and what relationship is there between the data

00:45:34 ◼   ► that you're training on

00:45:34 ◼   ► and the product that you make from it?

00:45:37 ◼   ► And Microsoft is saying like,

00:45:38 ◼   ► "If we train on a bunch of this data,

00:45:40 ◼   ► "you can't take the stuff that we've trained

00:45:42 ◼   ► "to train your training."

00:45:43 ◼   ► (laughing)

00:45:44 ◼   ► It's like, I bet, you know,

00:45:45 ◼   ► 'cause people are putting AI generated images on the web

00:45:48 ◼   ► and like in tweets and stuff like that.

00:45:50 ◼   ► And then other image generation AIs are being trained

00:45:55 ◼   ► on images generated from other AI things,

00:45:57 ◼   ► but they say, "Whoa, whoa, you can't train on those.

00:45:59 ◼   ► "There's the product of our machine learning.

00:46:01 ◼   ► "You can only train on things from actual human artists.

00:46:04 ◼   ► "You can steal that, no one cares about them.

00:46:05 ◼   ► "But once Microsoft uses our technology

00:46:08 ◼   ► "to generate something like that,

00:46:09 ◼   ► "you can't train on that, it's in our contract."

00:46:12 ◼   ► You know, and there's a bunch of court cases

00:46:14 ◼   ► surrounding this or whatever,

00:46:15 ◼   ► so it is rapidly heading towards

00:46:17 ◼   ► what will surely be a series of terrible court decisions

00:46:20 ◼   ► that we will complain about on the show.

00:46:22 ◼   ► - No, of course not.

00:46:24 ◼   ► I just love the idea of like Microsoft, Google, Apple,

00:46:27 ◼   ► Amazon, all like legally barring each other

00:46:30 ◼   ► from looking at each other.

00:46:32 ◼   ► Don't let your larger language models

00:46:34 ◼   ► look at any of my data.

00:46:35 ◼   ► If you do that, your data is tainted

00:46:36 ◼   ► and we own your whole company.

00:46:37 ◼   ► It's like, hey, no, that's not fair.

00:46:39 ◼   ► And then they'll probably do what they do with patents

00:46:40 ◼   ► and everything is they just have

00:46:41 ◼   ► these cross-license agreements.

00:46:42 ◼   ► So it's like, look, this is annoying, we all hate it.

00:46:44 ◼   ► Let's just have a giant patent cross-licensing agreement

00:46:47 ◼   ► that says we all agree we can use each other's patents

00:46:49 ◼   ► because the whole patent system is incredibly dumb

00:46:52 ◼   ► and would destroy the entire industry

00:46:53 ◼   ► if it was allowed to play out.

00:46:55 ◼   ► So instead we'll just say,

00:46:57 ◼   ► "We giant companies agree to ignore the patents.

00:46:59 ◼   ► "We'll only use them to crush small companies."

00:47:02 ◼   ► America!

00:47:03 ◼   ► (laughing)

00:47:04 ◼   ► - Yay!

00:47:04 ◼   ► Oh, my word.

00:47:07 ◼   ► You are so right.

00:47:08 ◼   ► All right, we have semi-breaking news.

00:47:12 ◼   ► WWDC has been announced.

00:47:14 ◼   ► - Woo!

00:47:15 ◼   ► - It is going to be a week long, asterisk.

00:47:17 ◼   ► It is going to be, as we all foretold, June five through nine.

00:47:22 ◼   ► It will be in Cupertino, well sort of, but mostly online.

00:47:26 ◼   ► But in the same vein as last year, and again, as we're told,

00:47:30 ◼   ► there will be a special event the Monday, June 5th

00:47:35 ◼   ► at Apple Park where you can sign up to get,

00:47:39 ◼   ► I believe it's a free ticket if you leave aside

00:47:41 ◼   ► the fact you have to travel there,

00:47:43 ◼   ► that you can request to attend.

00:47:45 ◼   ► They will accept requests until April 4th

00:47:47 ◼   ► at nine o'clock in the morning Pacific

00:47:49 ◼   ► or noon Eastern time.

00:47:52 ◼   ► And they're gonna do something presumably similar

00:47:54 ◼   ► to what they did last year.

00:47:55 ◼   ► And I put my name in the hat, we'll see what happens.

00:47:59 ◼   ► I genuinely don't know whether the three of us

00:48:02 ◼   ► are gonna be there or not,

00:48:03 ◼   ► and we don't necessarily need to talk about that today.

00:48:05 ◼   ► But I'm hopeful that all three of us would be there

00:48:09 ◼   ► 'cause I haven't seen you two at all,

00:48:10 ◼   ► literally not once, since WWDC 2019,

00:48:13 ◼   ► and that is too damn long.

00:48:14 ◼   ► So we'll figure that out amongst ourselves,

00:48:17 ◼   ► but I'm excited that there are dates.

00:48:20 ◼   ► I'm excited that there's a pretty good chance

00:48:22 ◼   ► that I think all three of us will be there.

00:48:23 ◼   ► So I'm just excited.

00:48:24 ◼   ► This is good news.

00:48:25 ◼   ► - You think there's a pretty good chance?

00:48:27 ◼   ► Well, so we just got done complaining about Apple in Syria

00:48:29 ◼   ► and we are about to complain even more about Apple,

00:48:31 ◼   ► but in between, this is like the reverse of a (beep)

00:48:34 ◼   ► sandwich.

00:48:35 ◼   ► (laughing)

00:48:37 ◼   ► In this scenario, the (beep) is the bread

00:48:40 ◼   ► instead of the meat.

00:48:42 ◼   ► In the middle, what I'm gonna say is,

00:48:43 ◼   ► "Hey, Apple, send us press passes."

00:48:46 ◼   ► [LAUGHTER]

00:48:48 ◼   ► Because otherwise, it's a lottery.

00:48:49 ◼   ► Like, as Apple says, invitations will

00:48:51 ◼   ► be allocated by a random selection process.

00:48:53 ◼   ► And so we'll find out by April 5 whether we got the random.

00:48:56 ◼   ► I put my name in the hat as well.

00:48:57 ◼   ► But the odds aren't great, because it's not like WWDC.

00:49:00 ◼   ► It seems like it's a smaller number of people.

00:49:02 ◼   ► It's not 5,000 people they're getting invitations to,

00:49:04 ◼   ► I don't think.

00:49:04 ◼   ► No, it seems like it's exactly like last year, the one day

00:49:07 ◼   ► in person at Apple's campus with the in-person keynote

00:49:10 ◼   ► presentation, and then everything else is online,

00:49:13 ◼   ► basically.

00:49:13 ◼   ► The in-person thing, the old conference

00:49:16 ◼   ► when everyone was in the conference center

00:49:18 ◼   ► held about 5,000 attendees.

00:49:20 ◼   ► Last year at Apple it seemed to be about 1,000,

00:49:25 ◼   ► maybe 1,500, something in that ballpark.

00:49:28 ◼   ► I would expect about that same number this year.

00:49:31 ◼   ► Maybe a little bit more if they could fit,

00:49:33 ◼   ► it seemed like they might be able to fit a few more people,

00:49:34 ◼   ► maybe 2,000 at most, but that's probably

00:49:38 ◼   ► about as high as you could expect.

00:49:39 ◼   ► So it's gonna be same deal as last year basically.

00:49:43 ◼   ► Some people will get there for that one day thing.

00:49:46 ◼   ► If you can't get there, you don't really need to worry

00:49:49 ◼   ► about missing much of anything,

00:49:51 ◼   ► 'cause all the content will be online,

00:49:53 ◼   ► which, and I'm very happy with that, honestly,

00:49:55 ◼   ► because I think this new format that,

00:49:58 ◼   ► COVID kind of forced them into this new format,

00:50:00 ◼   ► but we were kind of heading in this direction for a while,

00:50:03 ◼   ► and COVID just forced them to make it

00:50:05 ◼   ► the premium primary experience.

00:50:08 ◼   ► And it's so much better, honestly,

00:50:10 ◼   ► than the old conference sessions

00:50:12 ◼   ► that were performed in person,

00:50:14 ◼   ► just by the nature of what they can do with this new format,

00:50:16 ◼   ► like it's so much better as a developer resource.

00:50:21 ◼   ► And so I am very, very happy

00:50:22 ◼   ► that they are continuing to do this.

00:50:25 ◼   ► Also, you know, downtown San Jose,

00:50:27 ◼   ► most of the stores you like to close.

00:50:29 ◼   ► And they're worth that money to begin with.

00:50:31 ◼   ► - Yeah, there were only like three or four as it was,

00:50:33 ◼   ► and I guess most of them are not there,

00:50:35 ◼   ► or wildly changed.

00:50:36 ◼   ► Like the sausage place isn't a sausage place anymore.

00:50:39 ◼   ► - No, they brought the sausage back, I thought.

00:50:41 ◼   ► - Well, there's like a sausage.

00:50:42 ◼   ► - Yeah, it's more of like a burger place now.

00:50:45 ◼   ► At least the vegan Indian place is still there

00:50:46 ◼   ► and it's still amazing.

00:50:47 ◼   ► But at least it was last summer,

00:50:49 ◼   ► I don't know if it's still there now, I hope so.

00:50:51 ◼   ► I might take a dinner trip there this year if I can.

00:50:53 ◼   ► But anyway, I'm very happy they're doing this format again

00:50:57 ◼   ► because it worked really well last year.

00:50:59 ◼   ► And even though it's not the same as the old conference

00:51:01 ◼   ► in terms of like, there's way less reason

00:51:05 ◼   ► for a lot of people to gather there in person

00:51:07 ◼   ► and because it's held at Apple's campus,

00:51:10 ◼   ► which is not even itself, downtown San Jose,

00:51:12 ◼   ► it's close but it's not in downtown San Jose and there is almost nothing around

00:51:16 ◼   ► Apple's campus besides like houses and other office buildings. There's not

00:51:21 ◼   ► really like a downtown area to congregate there's only a couple a

00:51:24 ◼   ► handful of small hotels you know so there's not much of like a community

00:51:29 ◼   ► gathering really going on there so it's a much smaller event for the in-person

00:51:34 ◼   ► people. That being said as I said on Under the Radar this week if you have

00:51:39 ◼   ► the opportunity to go and if you can swing the cost and logistics of going I

00:51:45 ◼   ► would suggest it just because it is kind of a cool pilgrimage for Apple fans like

00:51:51 ◼   ► it's it's cool to go there it's it's amazing to actually walk into Apple Park

00:51:55 ◼   ► and to see the actual you know the big circle building to be in that you know

00:52:01 ◼   ► tremendous cafeteria you know auditorium atrium kind of thing like it's a it's an

00:52:06 ◼   ► an amazing experience to see this place.

00:52:08 ◼   ► It's a beautiful building, it's a beautiful environment

00:52:12 ◼   ► they've built around it, and it's just a really cool feeling

00:52:15 ◼   ► to be there with everybody, even though you're just

00:52:17 ◼   ► watching the video in all likelihood,

00:52:18 ◼   ► 'cause that's what it was last year,

00:52:19 ◼   ► even if you're just watching a video

00:52:22 ◼   ► and sitting there getting a slow sunburn

00:52:23 ◼   ► 'cause you forgot to put on the sunscreen,

00:52:24 ◼   ► they literally gave you in the bag,

00:52:26 ◼   ► please put on the sunscreen, it's in your bag,

00:52:28 ◼   ► it's in your goodie bag, just put it on.

00:52:30 ◼   ► But anyway, it's cool to be there with everybody,

00:52:33 ◼   ► it's cool to be in the crowd as everyone

00:52:36 ◼   ► of seeing stuff for the first time

00:52:37 ◼   ► and you get to feel the crowd reaction

00:52:40 ◼   ► like being at a live event, you know, 'cause it is one.

00:52:42 ◼   ► I also find it very helpful as a developer,

00:52:46 ◼   ► I feel like it actually motivates me a lot.

00:52:48 ◼   ► Like when I'm there, in that environment,

00:52:52 ◼   ► it's like a theme park or a pilgrimage,

00:52:55 ◼   ► as I said earlier, for Apple stuff,

00:52:56 ◼   ► and so that actually really motivates me

00:52:59 ◼   ► to come home and work really hard

00:53:01 ◼   ► on all the stuff they just announced.

00:53:03 ◼   ► And throughout the rest of the summer,

00:53:06 ◼   ► the excitement fades.

00:53:07 ◼   ► You actually get the beta, you realize,

00:53:10 ◼   ► wow, the stuff they announced really doesn't work yet.

00:53:13 ◼   ► Or it doesn't do what I hoped it would do,

00:53:15 ◼   ► or it's missing some functionality

00:53:17 ◼   ► that I hope it will have later.

00:53:19 ◼   ► Or wow, this is a real pain in the butt

00:53:21 ◼   ► having to deal with all these deprecations

00:53:22 ◼   ► that just happened, and wow,

00:53:24 ◼   ► and now I have to change this whole API

00:53:26 ◼   ► I've been using back here for the last 10 years

00:53:27 ◼   ► 'cause they just changed it or killed it or whatever.

00:53:30 ◼   ► And so there's all this kind of grind

00:53:32 ◼   ► or pain in the butt stuff

00:53:34 ◼   ► that you have to deal with later in the summer,

00:53:35 ◼   ► but at that point, at the very first day

00:53:37 ◼   ► that everything's unveiled, when you're there that week

00:53:40 ◼   ► or that day, it's all fun.

00:53:43 ◼   ► It's all like, wow, look at this, it's so amazing,

00:53:45 ◼   ► and everyone's excited, and everything's positive

00:53:47 ◼   ► 'cause no one's found all the crap yet,

00:53:49 ◼   ► and it's just a really nice experience to be there,

00:53:51 ◼   ► and it is very motivating as a developer to go there.

00:53:53 ◼   ► So I do strongly recommend, I mean, look,

00:53:57 ◼   ► if you don't live anywhere near California,

00:53:59 ◼   ► that's gonna be a lot of expense and time,

00:54:01 ◼   ► and so it's probably not worth it to you

00:54:02 ◼   ► for objective reasons.

00:54:05 ◼   ► But if you win the ticket lottery thing,

00:54:08 ◼   ► and if you get the opportunity to go,

00:54:09 ◼   ► and if you can handle the cost and time to get there,

00:54:13 ◼   ► it's a fun pilgrimage and a fun event.

00:54:15 ◼   ► It's not anything that you can put a monetary value on,

00:54:20 ◼   ► it's just fun and motivating.

00:54:22 ◼   ► And it's really great for that,

00:54:24 ◼   ► and so it's recommended if you can swing it.

00:54:26 ◼   ► And I'm gonna do my best to be there.

00:54:28 ◼   ► - Yeah, the only reason I've been considering

00:54:30 ◼   ► going this year is just to have the Apple Park experience,

00:54:34 ◼   ► that everyone had the other year.

00:54:36 ◼   ► 'Cause I still don't really want to be traveling.

00:54:38 ◼   ► I don't relish being on a plane,

00:54:40 ◼   ► breathing other people's air.

00:54:41 ◼   ► I don't relish doing all that stuff.

00:54:43 ◼   ► I don't relish getting COVID again.

00:54:45 ◼   ► Many, many reasons that I would be very unlikely to go.

00:54:48 ◼   ► But considering I saw everybody go all last year

00:54:50 ◼   ► and how much fun they had,

00:54:51 ◼   ► I think it's worth it for me to do as an experience.

00:54:53 ◼   ► 'Cause who knows how many more times they'll do it

00:54:55 ◼   ► in this exact format and who knows how long Apple Park

00:54:58 ◼   ► will be the way it is.

00:54:59 ◼   ► So I want to visit Apple Park.

00:55:01 ◼   ► across I'll be, I fully expect that if I do end up going, I will be very annoyed by the

00:55:06 ◼   ► fact that apparently you're not allowed to bring real cameras into Apple Park and I'll

00:55:09 ◼   ► have to take pictures of my iPhone the whole time I'm there.

00:55:12 ◼   ► But you know, what can you do?

00:55:13 ◼   ► I'm so sorry.

00:55:14 ◼   ► You just think of how good those pictures would be.

00:55:16 ◼   ► So many beautiful things and I could take cool pictures of people and crowds but nope,

00:55:19 ◼   ► not allowed, just iPhone only.

00:55:21 ◼   ► Does it actually say that or is it one of those things where it's like no detachable

00:55:24 ◼   ► lenses?

00:55:25 ◼   ► Like there's a couple of...

00:55:26 ◼   ► Yeah, it's basically, yeah, it's basically no real cameras.

00:55:28 ◼   ► I know that you can use iPhones to take pictures

00:55:31 ◼   ► within limited context, but I think the thing last year

00:55:33 ◼   ► was no, maybe they did say it was no

00:55:36 ◼   ► interchangeable lens cameras, but I feel like

00:55:37 ◼   ► they were just basically like, no cameras except iPhones.

00:55:41 ◼   ► Or no cameras except phones, I guess.

00:55:44 ◼   ► - Yeah. - Is probably what they mean.

00:55:45 ◼   ► - I don't remember that, I mean, I believe you.

00:55:47 ◼   ► I just, I do not remember that being a thing.

00:55:48 ◼   ► - Maybe I'm misremembering, someone from Apple can tell me.

00:55:50 ◼   ► But anyway, this all--

00:55:51 ◼   ► - No, I remember it being kind of vague,

00:55:52 ◼   ► like, because what they basically intend for the rule to be

00:55:57 ◼   ► is no professional photography.

00:55:59 ◼   ► But that's hard to codify,

00:56:01 ◼   ► and so usually it ends up being like,

00:56:02 ◼   ► no professional cameras,

00:56:04 ◼   ► and that's also hard to codify.

00:56:07 ◼   ► - I think they also don't want you to have zoom lenses,

00:56:09 ◼   ► because all the walls are glass,

00:56:11 ◼   ► and if you have like a big zoom lens,

00:56:13 ◼   ► you could like read things off whiteboards that are, you know.

00:56:16 ◼   ► - I wonder like, you know,

00:56:17 ◼   ► if the rule ends up being like no detachable lenses,

00:56:19 ◼   ► like well, could you bring in like the Nikon P1000,

00:56:22 ◼   ► and like, it's basically a telescope.

00:56:25 ◼   ► - Yeah, yeah, I know.

00:56:26 ◼   ► - You bring in a super zoom with an 800 millimeter lens,

00:56:28 ◼   ► it's like, hey, it doesn't detach.

00:56:29 ◼   ► - Oh, it's a 3000 millimeter lens,

00:56:32 ◼   ► but it doesn't detach.

00:56:33 ◼   ► - Just bring a Samsung phone,

00:56:35 ◼   ► it'll just make up things on Apple's whiteboards

00:56:37 ◼   ► that seem plausible.

00:56:38 ◼   ► - Yeah.

00:56:39 ◼   ► - Or just bring a drone, fly it right up to the edge.

00:56:40 ◼   ► I'm sure they won't mind that or notice that at all.

00:56:42 ◼   ► - Oh, I'm sure they would love that.

00:56:44 ◼   ► - Did you go as press last year, Marco?

00:56:46 ◼   ► - Yes. - Just regular, yeah.

00:56:47 ◼   ► So I think if you go as press,

00:56:49 ◼   ► you get to do and see more stuff.

00:56:50 ◼   ► Didn't they have like a day before thing

00:56:52 ◼   ► where they showed you the developer center

00:56:53 ◼   ► and stuff like that?

00:56:54 ◼   ► - Yeah, there was a developer center tour,

00:56:56 ◼   ► they were doing various groups for that,

00:56:58 ◼   ► and there was a hands-on area after the keynote

00:57:01 ◼   ► where we got to see the new MacBook Air,

00:57:02 ◼   ► and I got to be in the way of Johnny Ives' shot again,

00:57:04 ◼   ► or Tim Cook's shot, sorry.

00:57:06 ◼   ► - That's another reason that Apple

00:57:07 ◼   ► should give us press passes.

00:57:08 ◼   ► - Yeah, 'cause then all three of us could be in the way

00:57:10 ◼   ► for Tim Cook trying to handle the new product

00:57:12 ◼   ► for the camera shots.

00:57:13 ◼   ► - Yeah, we'll be too busy talking about all the stuff

00:57:16 ◼   ► we did in the hands-on room, we won't even have time

00:57:18 ◼   ► to complain about Apple like we're about to do.

00:57:20 ◼   ► (laughing)

00:57:21 ◼   ► - Yes, that's it.

00:57:21 ◼   ► - I mean, it actually is true,

00:57:23 ◼   ► Like that actually happens.

00:57:24 ◼   ► (laughs)

00:57:25 ◼   ► - Oh my word.

00:57:26 ◼   ► I don't know, I mean WWDC,

00:57:27 ◼   ► I granted I haven't been since 2019

00:57:28 ◼   ► and I miss the event.

00:57:31 ◼   ► Golly, do I miss seeing you two

00:57:32 ◼   ► and all of our other mutual friends.

00:57:35 ◼   ► But WWDC, at least the way I remember it,

00:57:38 ◼   ► and granted it is different now,

00:57:39 ◼   ► but it is exactly what Marco was describing.

00:57:41 ◼   ► It's just a really great event

00:57:43 ◼   ► to get you really excited about your work

00:57:46 ◼   ► or about Apple, even if it's not your work,

00:57:48 ◼   ► or if you hope for it to one day become your work.

00:57:51 ◼   ► It's just it's super fun and and I really hope that all three of us end up there and you know

00:57:57 ◼   ► Whether we get press passes or just get very lucky with the lottery or just choose to go

00:58:01 ◼   ► Because we haven't seen each other in a long friggin time one way or another

00:58:05 ◼   ► I hope that I hope that it works out, but I don't know there's that much more to say about this now

00:58:11 ◼   ► But I am I'm excited that they've announced it

00:58:15 ◼   ► I'm excited that I have a specific thing to look forward to

00:58:18 ◼   ► I'm excited that if I fly on Sunday,

00:58:21 ◼   ► apparently Richmond has some airline,

00:58:23 ◼   ► I forget, like Breeze or something,

00:58:24 ◼   ► that does direct from Richmond, Virginia to SFO,

00:58:27 ◼   ► which is stunning.

00:58:28 ◼   ► - Wow.

00:58:29 ◼   ► - Unfortunately, I think the return trip

00:58:30 ◼   ► is like every other day or something like that.

00:58:33 ◼   ► It's not the day I would want to take back,

00:58:35 ◼   ► but that's neither here nor there.

00:58:38 ◼   ► Anyway, I'm just excited,

00:58:39 ◼   ► and I really hope it works out for the three of us.

00:58:40 ◼   ► So anything else about WWDC?

00:58:42 ◼   ► We'll do more about things we expect to see

00:58:45 ◼   ► when we get closer to time.

00:58:47 ◼   ► We don't have a merchandise story for ATP for WWDC yet.

00:58:50 ◼   ► We are working on that, no promises,

00:58:52 ◼   ► but anything else about Dub-Dub?

00:58:55 ◼   ► - I would just say it's almost,

00:58:57 ◼   ► I know this is rich coming from me,

00:59:00 ◼   ► it's almost like seeing a live sports event

00:59:02 ◼   ► versus watching it on TV.

00:59:04 ◼   ► - That is rich coming from you.

00:59:05 ◼   ► - Yeah, I can't even tell you which sport.

00:59:08 ◼   ► (laughing)

00:59:09 ◼   ► But no, the feeling of being there,

00:59:12 ◼   ► of actually seeing the building

00:59:15 ◼   ► and being right there with everyone else

00:59:17 ◼   ► and everyone's cheering together

00:59:19 ◼   ► when something good is announced.

00:59:21 ◼   ► The feeling of being there is really cool

00:59:24 ◼   ► and really energizing and it's a great experience.

00:59:26 ◼   ► And again, and what you're paying for

00:59:29 ◼   ► with all the travel logistics and everything,

00:59:30 ◼   ► what you're paying for is that experience.

00:59:33 ◼   ► You're not paying for the developer content, that's free,

00:59:36 ◼   ► but you're paying for the coolness

00:59:39 ◼   ► of seeing it in person live.

00:59:41 ◼   ► That I think is the main selling point.

00:59:44 ◼   ► So that's why if you get in,

00:59:46 ◼   ► and if you can swing the travel logistics,

00:59:48 ◼   ► it's pretty cool and you should do it.

00:59:50 ◼   ► You don't have to do it every year,

00:59:51 ◼   ► but you should do it at least once.

00:59:52 ◼   ► - Yeah, I agree.

00:59:53 ◼   ► And actually, I should point out,

00:59:55 ◼   ► as part of the meat in this poo-poo sandwich,

00:59:58 ◼   ► every Apple employee that I've met is awesome.

01:00:03 ◼   ► Individually, Apple people are super great.

01:00:05 ◼   ► We may strongly disagree with the decisions

01:00:09 ◼   ► and policies of the organization,

01:00:11 ◼   ► but pretty much all the rank,

01:00:13 ◼   ► especially the rank and file people, are pretty awesome.

01:00:16 ◼   ► And I can't think of any examples that disprove the rule.

01:00:19 ◼   ► Like pretty much everyone I've spoken to,

01:00:21 ◼   ► both people that I kinda know, people that I do know,

01:00:24 ◼   ► and even just strangers that I find out,

01:00:25 ◼   ► oh, you work at Apple, they're all super chill

01:00:27 ◼   ► and super cool, and that doesn't necessarily mean

01:00:30 ◼   ► you'd meet any while you're there,

01:00:32 ◼   ► but just being in the proximity gives you a chance.

01:00:34 ◼   ► So we'll see what happens.

01:00:36 ◼   ► - I mean, frankly, I know we're not doing

01:00:39 ◼   ► a hiring ad for them, really, but of all the

01:00:42 ◼   ► kind of Bay Area tech company or any all the big tech company I guess candidates

01:00:48 ◼   ► that one could possibly go to work for over on the West Coast somewhere I would

01:00:53 ◼   ► go to Apple before going to any anyone else like it see it's such a cool place

01:00:57 ◼   ► and it attracts really good people for a reason it's it's a really great place to

01:01:03 ◼   ► work and and it's a really cool thing to see it's a really great team that you

01:01:07 ◼   ► that you work with there.

01:01:08 ◼   ► And so when you go there, you see,

01:01:12 ◼   ► again, you won't, as Keith said,

01:01:15 ◼   ► you're not walking through the offices or anything.

01:01:18 ◼   ► You don't see a single desk from somebody

01:01:21 ◼   ► that somebody's working at.

01:01:22 ◼   ► You're escorted in with event staff to the lunch area,

01:01:27 ◼   ► and you sit in these chairs that are set up and everything.

01:01:31 ◼   ► You're not walking through the design lab or anything.

01:01:33 ◼   ► But any person you run into there,

01:01:36 ◼   ► 'cause you will see a lot of Apple employees there.

01:01:38 ◼   ► And anybody you can talk to, talk to.

01:01:42 ◼   ► Because it's a company that attracts really good people

01:01:45 ◼   ► for lots of good reasons.

01:01:46 ◼   ► And yeah, it's, again, it's a heck of an event.

01:01:51 ◼   ► I strongly encourage you to go if you can.

01:01:54 ◼   ► I understand if you can't because it is a huge expense

01:01:56 ◼   ► to get most people to California

01:01:58 ◼   ► and to stay in a hotel for a few days or whatever.

01:02:01 ◼   ► I get that, but if you can do it, it's really cool.

01:02:06 ◼   ► Consider becoming an ATP member.

01:02:08 ◼   ► Members get all sorts of fun little goodies,

01:02:11 ◼   ► number one of which is an ad-free version of the show.

01:02:14 ◼   ► You get your own private feed

01:02:15 ◼   ► that you can add to any podcast app you want,

01:02:17 ◼   ► and it's an ad-free version of our show.

01:02:20 ◼   ► You also get access to the bootleg feed if you'd like it.

01:02:22 ◼   ► The bootleg is our unedited live broadcast.

01:02:26 ◼   ► It's released right after we finish the show recording,

01:02:28 ◼   ► so it's usually the night before the main show comes out

01:02:31 ◼   ► in the regular feed, so you get a faster release,

01:02:34 ◼   ► and it contains all of our beginning and ending

01:02:38 ◼   ► kind of small talk stuff, the title selection process,

01:02:40 ◼   ► a few little bonus things here and there,

01:02:42 ◼   ► as well as any kind of mistimed jokes

01:02:45 ◼   ► that I would have fixed in the edit.

01:02:47 ◼   ► You get to hear me do the bell live,

01:02:49 ◼   ► that's not a sound effect I drop in,

01:02:50 ◼   ► I actually do it live.

01:02:51 ◼   ► You get to hear Casey swearing,

01:02:53 ◼   ► anything I would bleep out in the edited show

01:02:54 ◼   ► that comes right through in the bootleg, it's great.

01:02:56 ◼   ► And we also occasionally do member exclusive content.

01:03:00 ◼   ► That's what we have.

01:03:01 ◼   ► Just yesterday we released member exclusive content.

01:03:04 ◼   ► It is a movie club episode on John's beloved Miyazaki movie,

01:03:09 ◼   ► My Neighbor Totoro.

01:03:11 ◼   ► It's so fun, you gotta listen to it.

01:03:13 ◼   ► Member exclusive content is occasionally a fun thing

01:03:15 ◼   ► we do there, but all of this comes to you

01:03:18 ◼   ► for just eight bucks a month.

01:03:19 ◼   ► Mainly you get the ad-free feed and the bootleg feed.

01:03:21 ◼   ► Those are the big things, and then the occasional

01:03:23 ◼   ► exclusive content is kind of a fun little bonus.

01:03:26 ◼   ► Join us today at ATP.FM/join.

01:03:29 ◼   ► Again, eight bucks a month.

01:03:31 ◼   ► We have different currencies, annual plan if you want it,

01:03:34 ◼   ► But that's the gist of it.

01:03:34 ◼   ► Eight bucks a month, you get our ad-free feed,

01:03:36 ◼   ► our bootleg feed, and our occasional exclusive content.

01:03:39 ◼   ► It is great.

01:03:39 ◼   ► See for yourself, ATP.fm/join.

01:03:42 ◼   ► Thank you so much for listening,

01:03:43 ◼   ► and please consider becoming a member.

01:03:45 ◼   ► Thanks.

01:03:45 ◼   ► (upbeat music)

01:03:49 ◼   ► - All right, so if you are an Apple person,

01:03:52 ◼   ► I need you to tune out and come back to this episode

01:03:55 ◼   ► after WWDC, because,

01:03:58 ◼   ► it's that time again, fellas.

01:04:01 ◼   ► Let's have a chat about radar,

01:04:03 ◼   ► because it's time.

01:04:04 ◼   ► Just to very, very briefly recap,

01:04:08 ◼   ► Radar is Apple's internal tool.

01:04:09 ◼   ► It used to be also to some degree externally visible.

01:04:12 ◼   ► Now it's been replaced from an external perspective

01:04:14 ◼   ► by Feedback Assistant.

01:04:16 ◼   ► Radar is their internal tool.

01:04:17 ◼   ► It's their bug tracker or issue tracker, what have you.

01:04:20 ◼   ► It is basically the only way that we have

01:04:25 ◼   ► as external people to communicate with Apple

01:04:27 ◼   ► is to just throw a radar or really a feedback.

01:04:30 ◼   ► We'll probably use the terms interchangeably.

01:04:32 ◼   ► throw feedback over the wall,

01:04:33 ◼   ► where I guess it gets internally turned into a radar,

01:04:36 ◼   ► and just hope that a human eventually looks at it

01:04:38 ◼   ► and does something with it.

01:04:40 ◼   ► And it is a deeply hostile and awful approach

01:04:45 ◼   ► to developer relations.

01:04:51 ◼   ► Because, you know, I can only speak for myself,

01:04:53 ◼   ► I presume that Marco, you probably have,

01:04:55 ◼   ► and you don't have to say one way or the other,

01:04:57 ◼   ► you probably have at least a couple of contacts

01:04:59 ◼   ► in developer relations,

01:05:00 ◼   ► because you are on the bigger side,

01:05:02 ◼   ► especially as an indie person,

01:05:04 ◼   ► in terms of your reach and your company size and so on.

01:05:07 ◼   ► But I don't have any-- - You'd be surprised.

01:05:09 ◼   ► - Oh, okay, fair enough.

01:05:11 ◼   ► I can tell you, I certainly don't have any sort of contact

01:05:14 ◼   ► in Developer Relations that if I have a question,

01:05:15 ◼   ► I can ask them.

01:05:16 ◼   ► I have a bunch of contacts that I've made

01:05:19 ◼   ► completely personally that are outside Developer Relations,

01:05:21 ◼   ► just rank and file engineers, that are friends of mine

01:05:24 ◼   ► that I've made friends with,

01:05:26 ◼   ► not because I'm trying to use them

01:05:27 ◼   ► for any particular reason,

01:05:28 ◼   ► just because they're good people,

01:05:29 ◼   ► like we were talking about, and I enjoy them,

01:05:31 ◼   ► and hopefully they enjoy me too.

01:05:33 ◼   ► But I don't have any formal contacts within Apple

01:05:35 ◼   ► for any sort of bugs or questions or anything like that.

01:05:39 ◼   ► And if I have a problem, the easiest way,

01:05:42 ◼   ► easiest and best way for me to get an answer

01:05:44 ◼   ► is to tweet/tute about it, and most times I'll get

01:05:47 ◼   ► something that'll either push me in the right direction

01:05:49 ◼   ► or maybe even solve my problem.

01:05:50 ◼   ► But if I have a problem, if I have a demonstrated problem

01:05:54 ◼   ► with an Apple API, I can put together a feedback

01:05:59 ◼   ► which will almost certainly not get looked at.

01:06:02 ◼   ► If it is, I will get asked for sample code, okay fine,

01:06:06 ◼   ► which sometimes though takes hours to put together.

01:06:10 ◼   ► This is uncompensated time by the way.

01:06:12 ◼   ► I don't know what an iOS developer contracts for,

01:06:14 ◼   ► but years ago it was like $150 an hour.

01:06:16 ◼   ► I'm sure it's like up around $175, $200 by now.

01:06:19 ◼   ► So many hours of work to create a sample project for them,

01:06:24 ◼   ► which I understand why they ask for it,

01:06:25 ◼   ► but we're talking about an effective investment

01:06:28 ◼   ► if I was going to spend that time contracting myself out,

01:06:31 ◼   ► of like $1,000 of my time that could be used

01:06:35 ◼   ► putting together a sample project

01:06:36 ◼   ► for them to promptly ignore.

01:06:38 ◼   ► You oftentimes get asked for a cyst diagnosis,

01:06:41 ◼   ► which is basically like a bunch of diagnostic information.

01:06:44 ◼   ► Again, in and of itself, that's fair,

01:06:45 ◼   ► but 90% of the time it's not even necessary or useful.

01:06:50 ◼   ► It's just frickin' broken.

01:06:52 ◼   ► And you had an experience recently,

01:06:54 ◼   ► and I think you were talking about it here on ATP,

01:06:56 ◼   ► I don't think it was under the radar,

01:06:57 ◼   ► where you had said, "Oh, I filed a radar,

01:07:00 ◼   ► "and it's something that's really broken with audio stuff,

01:07:03 ◼   ► "if memory serves."

01:07:04 ◼   ► And you sent that across the wire

01:07:07 ◼   ► and threw it over the fence, and you didn't hear squat.

01:07:10 ◼   ► And this is kind of a big deal, particularly for you,

01:07:13 ◼   ► but arguably for Apple in general.

01:07:15 ◼   ► In fact, why don't I let you interrupt me,

01:07:17 ◼   ► and can you remind me what that bug was, if you recall?

01:07:20 ◼   ► - Yeah, I'll dig up the number and put it in the show notes,

01:07:22 ◼   ► but effectively, it was the 16.4 betas

01:07:26 ◼   ► were having the audio services were reset notification,

01:07:31 ◼   ► which I think is a background demon crash.

01:07:33 ◼   ► They were having that crash and reset audio services a lot

01:07:37 ◼   ► whenever I would begin playback in Overcast.

01:07:40 ◼   ► It was quite a common thing, way more than ever before.

01:07:45 ◼   ► It was causing problems like you'd hit play on 16.4 betas

01:07:48 ◼   ► and just it wouldn't play.

01:07:50 ◼   ► And then if you go and check the Overcast log,

01:07:51 ◼   ► you'd see, oh, this thing crashed like three times in a row.

01:07:54 ◼   ► - Cool.

01:07:55 ◼   ► And yeah, so it was a big problem with that

01:07:59 ◼   ► and I attached SysDiagnosis and the reproduction step

01:08:04 ◼   ► to get it which was pretty easy,

01:08:05 ◼   ► it's like play something on Overcast

01:08:06 ◼   ► and you see this in the log.

01:08:07 ◼   ► (laughing)

01:08:08 ◼   ► And I did everything I was supposed to do

01:08:11 ◼   ► and as far as I know that bug is still open.

01:08:14 ◼   ► I never heard anything.

01:08:17 ◼   ► I think it might be fixed in the last couple of betas

01:08:21 ◼   ► and now 16.4 is now out just like as of this week

01:08:24 ◼   ► And I think it is fixed in the release version of 16.4.

01:08:28 ◼   ► But it was not fixed even as recently as like two weeks ago.

01:08:31 ◼   ► And so I was getting a little nervous

01:08:33 ◼   ► it was gonna get shipped to everybody.

01:08:35 ◼   ► But I think it's fixed now.

01:08:36 ◼   ► But the bug is still sitting there, open.

01:08:38 ◼   ► I never heard a thing about it.

01:08:40 ◼   ► - Right, so here's the thing is that I was talking

01:08:44 ◼   ► with a friend at Apple and asked, just out of curiosity,

01:08:48 ◼   ► hey, can you look at feedback, blah, blah, blah, blah,

01:08:50 ◼   ► we'll put it in the show notes.

01:08:52 ◼   ► I don't need to know specifics,

01:08:53 ◼   ► but just, has a human being looked at this feedback,

01:08:57 ◼   ► yes or no?

01:08:58 ◼   ► And it turns out that yes, a human had looked at it.

01:09:02 ◼   ► And in fact, apparently there was internal activity on it

01:09:05 ◼   ► within 24 hours of you filing it,

01:09:08 ◼   ► which no bull (beep)

01:09:09 ◼   ► - No one told me.

01:09:10 ◼   ► - That is incredible.

01:09:11 ◼   ► That is exactly what we wanna see.

01:09:13 ◼   ► I am not lying.

01:09:14 ◼   ► I'm not being facetious.

01:09:15 ◼   ► Truly, that is exactly what you wanna see.

01:09:18 ◼   ► - That's, yeah, that's amazing.

01:09:20 ◼   ► - But the problem is what you just said, Marco,

01:09:23 ◼   ► Did you know this?

01:09:24 ◼   ► Were you aware of this?

01:09:25 ◼   ► - No.

01:09:26 ◼   ► - No.

01:09:26 ◼   ► What did you get back from Apple Marco?

01:09:27 ◼   ► Would you remind me real quick?

01:09:29 ◼   ► - Nothing.

01:09:30 ◼   ► - Exactly.

01:09:31 ◼   ► - I just loaded up the bug now in feedback system.

01:09:33 ◼   ► It says recent similar reports, none,

01:09:34 ◼   ► resolution open, no comments.

01:09:37 ◼   ► - It's not really tenable.

01:09:40 ◼   ► It's not really fair maybe.

01:09:41 ◼   ► I know I say that a lot.

01:09:43 ◼   ► I'm trying to get better about it,

01:09:44 ◼   ► but it's just, it ain't right.

01:09:46 ◼   ► And it's just, that's not a way for a company

01:09:50 ◼   ► who allegedly cares about developers?

01:09:53 ◼   ► And what is the triad?

01:09:55 ◼   ► It's Apple first, then users,

01:09:56 ◼   ► and then somewhere below that is developers.

01:09:58 ◼   ► You know, it's--

01:09:59 ◼   ► - It's not an equilateral triangle either.

01:10:01 ◼   ► - Well, that's also fair.

01:10:02 ◼   ► It's, if Apple cares about developers at all,

01:10:05 ◼   ► can we have some sort of communication the other direction?

01:10:09 ◼   ► And it's just, I'm not even getting into documentation

01:10:14 ◼   ► and all the other problems with Apple's,

01:10:15 ◼   ► you know, the whole developer story.

01:10:17 ◼   ► But this is not okay, that this is something

01:10:22 ◼   ► that could be a really friggin' big deal for Overcast,

01:10:27 ◼   ► like a colossally big deal.

01:10:28 ◼   ► - Yeah, I was really worried about this one.

01:10:30 ◼   ► - Right, and what are you supposed to do about this?

01:10:33 ◼   ► And yes, okay, let's leave aside,

01:10:36 ◼   ► what is it, the something incident,

01:10:38 ◼   ► what's the formal name for it, I always forget.

01:10:40 ◼   ► The DTS or something like that, what am I thinking of?

01:10:43 ◼   ► - Yeah, the DTS tickets, so yeah,

01:10:44 ◼   ► so they had, or DTS incident, whatever they call it,

01:10:47 ◼   ► - Yeah, so with your developer membership,

01:10:50 ◼   ► the $100 a year developer membership,

01:10:52 ◼   ► comes with two DTS, developer tech support,

01:10:56 ◼   ► instances, or tickets or whatever.

01:10:58 ◼   ► You can raise one of these two tickets a year,

01:11:00 ◼   ► and they don't build up,

01:11:01 ◼   ► like if you don't use them within the year,

01:11:03 ◼   ► they just expire.

01:11:04 ◼   ► If you run out, you can buy one for 50 bucks each, I think.

01:11:07 ◼   ► You can buy extra ones.

01:11:08 ◼   ► This actually, it gets you an actual DTS engineer

01:11:12 ◼   ► to look at your problem,

01:11:13 ◼   ► and they literally provide code-level support.

01:11:16 ◼   ► You can include code and they will look at it

01:11:19 ◼   ► and they will try it and they will try to figure out

01:11:20 ◼   ► what the problem is.

01:11:21 ◼   ► And I think, I don't know, this has probably changed

01:11:24 ◼   ► over the years, but I think there's some exception

01:11:26 ◼   ► where like if you have stumbled upon an actual bug

01:11:28 ◼   ► that's their fault, then they don't charge you

01:11:30 ◼   ► for the ticket or something like that.

01:11:32 ◼   ► The problem with this system, first of all,

01:11:33 ◼   ► is that most developers never use it

01:11:34 ◼   ► 'cause we don't even know about it.

01:11:36 ◼   ► I've known about this system for years.

01:11:37 ◼   ► I've been an Apple developer for, oh my god,

01:11:40 ◼   ► how many developer members have I bought?

01:11:41 ◼   ► 12, at least? (laughing)

01:11:43 ◼   ► 15, whatever it's been.

01:11:44 ◼   ► yeah, like 15 years, something like that.

01:11:46 ◼   ► I've never used one.

01:11:48 ◼   ► Mostly because when I first heard about them,

01:11:51 ◼   ► and I heard that you only get two a year,

01:11:54 ◼   ► I thought, well, I better save that up

01:11:55 ◼   ► for when I really need one.

01:11:57 ◼   ► - Exactly.

01:11:58 ◼   ► - Even after I learned that you can buy one for 50 bucks

01:12:00 ◼   ► if you really need to, like if you run out,

01:12:02 ◼   ► even after that, I'm like, I still consider it like,

01:12:05 ◼   ► this like, you know, only in an emergency

01:12:07 ◼   ► would I ever use this kind of thing.

01:12:09 ◼   ► And so I never even think to do it.

01:12:12 ◼   ► I forget about it all the time.

01:12:13 ◼   ► I never consider it as an option.

01:12:16 ◼   ► And I probably shouldn't, I really should just use it,

01:12:18 ◼   ► but because it's so limited,

01:12:20 ◼   ► I completely forget that it's an option at all.

01:12:24 ◼   ► - Yeah, same, and I mean, some of this is on us, to be fair.

01:12:27 ◼   ► We should be employing, and I'm looking at Marco,

01:12:30 ◼   ► I'm looking in the mirror, we should be employing these

01:12:33 ◼   ► and seeing if it's any better.

01:12:34 ◼   ► But it's just so frustrating,

01:12:37 ◼   ► especially in the cases where one puts together,

01:12:40 ◼   ► and I don't know if this was the case

01:12:42 ◼   ► with Marko's most recent one,

01:12:43 ◼   ► but when one puts together a sample project,

01:12:45 ◼   ► and I'm about to give Jon the floor,

01:12:46 ◼   ► and you did this, Jon.

01:12:48 ◼   ► When you put together a sample project,

01:12:49 ◼   ► and you explain exactly what's going on,

01:12:51 ◼   ► here's a very simple sample project

01:12:53 ◼   ► that demonstrates the problem,

01:12:54 ◼   ► and you throw that over the wall,

01:12:57 ◼   ► and then crickets.

01:12:58 ◼   ► And crickets, and crickets.

01:12:59 ◼   ► And it's just, and I understand,

01:13:01 ◼   ► in the defense of Apple,

01:13:02 ◼   ► I understand that they get just an inconceivable

01:13:06 ◼   ► amount of issues.

01:13:07 ◼   ► I get that.

01:13:09 ◼   ► But what I also get is that the current system does not work.

01:13:15 ◼   ► It doesn't work for external people.

01:13:17 ◼   ► And from everything I've heard from the internal people, it doesn't f*cking work for them either.

01:13:23 ◼   ► So who is this in service of?

01:13:25 ◼   ► Yes, I know that Apple is a big company.

01:13:27 ◼   ► Yes, I know that radars go back to like literally the early 90s.

01:13:30 ◼   ► I get that.

01:13:32 ◼   ► But at some point, what is this in service of?

01:13:34 ◼   ► And don't even get me f*cking started about the fact that the way in which you say that you really care about something

01:13:41 ◼   ► is duplicating a radar.

01:13:43 ◼   ► It's just, "Oh, if Marco and I agree that this is a problem, well then both of you file it and that's your de facto way of voting."

01:13:49 ◼   ► Are you kidding me with this?

01:13:53 ◼   ► Just no! That is not okay!

01:13:56 ◼   ► That is not a mechanism by which you vote.

01:13:59 ◼   ► It's by throwing a radar across the wall,

01:14:01 ◼   ► then inevitably we'll come back with an "F you, give me a cyst diagnosed anyway."

01:14:04 ◼   ► This is just, this is not okay. And the fact that this is still a thing

01:14:09 ◼   ► blows my mind. And yes, Feedback Assistant, the app is a lot better than Radar, the web app was,

01:14:17 ◼   ► but it doesn't matter. It's still, the whole friggin' system is broken. It's awful. And I'm

01:14:24 ◼   ► gonna, I'm gonna really lose my cool, believe it or not, I haven't yet. So instead I'm gonna say,

01:14:27 ◼   ► say, "John, tell me your recent story about your radars and how swimmingly they went."

01:14:31 ◼   ► So you two are gonna make me be the big company representative again because I

01:14:37 ◼   ► have spent more time in big companies than both of you. You're the closest we

01:14:41 ◼   ► got right now. Yeah, that's true. I've spent some time, don't get me wrong, but you have certainly

01:14:45 ◼   ► spent a lot more. So I do understand a lot of how things work here. A couple of

01:14:50 ◼   ► reactions to things you two have said. When, you know, like the time we spend to

01:14:56 ◼   ► file a feedback, right? I would imagine that in a lot of cases the vast majority

01:15:02 ◼   ► of that time, at least I would hope the vast majority of that time, is the time

01:15:07 ◼   ► figuring out whose bug it is. Because, you know, all our programs are filled with

01:15:11 ◼   ► bugs, right? And we have to figure out why doesn't this work. And that takes a long

01:15:15 ◼   ► time depending on how thorny the bug is. But the only the only point where we're

01:15:20 ◼   ► gonna hopefully file something with Apple is we've done all the debugging

01:15:24 ◼   ► and we have determined to the best of our ability that no, I am using that API right,

01:15:29 ◼   ► it just doesn't work. Right? And it's hard to determine that because applications are complicated,

01:15:35 ◼   ► APIs are complicated, we don't have the source code to the frameworks, which also complicates

01:15:39 ◼   ► things. The thing that I'm used to as a web developer having the source code to all the third

01:15:42 ◼   ► party code really helps you determine is this my bug? Am I doing something wrong? Or is this a bug

01:15:48 ◼   ► with, you know, the third party thing? And it's kind of like the beginning programmer thing saying,

01:15:53 ◼   ► "I think I found a bug in the compiler."

01:15:54 ◼   ► You've almost never found a bug in the compiler.

01:15:56 ◼   ► (laughter)

01:15:57 ◼   ► It's a typical beginner programmer thing

01:15:59 ◼   ► because your program does something unexpected

01:16:02 ◼   ► and you think you understand how it should work,

01:16:03 ◼   ► but you really don't, right?

01:16:05 ◼   ► And that's how you learn and grow as a programmer.

01:16:07 ◼   ► So, I think, in my experience,

01:16:10 ◼   ► getting to the point where you're ready to file a feedback,

01:16:14 ◼   ► that's on us, not on Apple.

01:16:16 ◼   ► - Yeah, no, I agree with that.

01:16:17 ◼   ► - You can't charge Apple for the time

01:16:19 ◼   ► you spend debugging your program, right?

01:16:20 ◼   ► - Totally.

01:16:21 ◼   ► And it's hard to get to that point.

01:16:23 ◼   ► And that's why it feels frustrating

01:16:24 ◼   ► because you spend hours, days, weeks, however long,

01:16:28 ◼   ► trying to figure something out,

01:16:29 ◼   ► and eventually you figure it out,

01:16:31 ◼   ► I think this is not even my fault.

01:16:32 ◼   ► And it feels like such an injustice,

01:16:34 ◼   ► because normally it's your fault.

01:16:35 ◼   ► Like 99.9% of the time it's your fault, right?

01:16:37 ◼   ► You did something dumb in your program.

01:16:39 ◼   ► But you're like, no, I think this is a bug

01:16:41 ◼   ► in one of these frameworks, which does happen, right?

01:16:44 ◼   ► Then we go into the time,

01:16:45 ◼   ► if you are a conscientious bug reporter,

01:16:47 ◼   ► which I tried to be when I actually think

01:16:49 ◼   ► I have a legit bug and I'm not just complaining

01:16:50 ◼   ► about a feature suggestion or some crap like that,

01:16:52 ◼   ► which also goes into feedback,

01:16:54 ◼   ► which is why there's so many of them, right?

01:16:56 ◼   ► So I think I've got a legit issue.

01:16:58 ◼   ► I will go the extra mile to make a sample application.

01:17:02 ◼   ► This is after I've determined,

01:17:03 ◼   ► and probably part of the way I determine

01:17:06 ◼   ► that it's actually a bug in a framework

01:17:09 ◼   ► is by making that sample application.

01:17:10 ◼   ► So some of that time is attributable to me really

01:17:13 ◼   ► because you get frustrated, you're like, wait a second.

01:17:15 ◼   ► I think, forget about my app, forget about all my code,

01:17:19 ◼   ► forget about stuff I'm doing, fresh clean sheet of paper,

01:17:21 ◼   ► new project Xcode, let me see if I can reproduce this.

01:17:25 ◼   ► I got my real code here and I got my toy one

01:17:27 ◼   ► and they kind of like meet in the middle

01:17:28 ◼   ► until I can get the toy one to reproduce the problem

01:17:30 ◼   ► with the minimum number of code

01:17:31 ◼   ► and that's your sample project, right?

01:17:33 ◼   ► So some of that time building that is, you know,

01:17:36 ◼   ► is you figuring out where the bug is

01:17:38 ◼   ► because very often, as happens to me plenty,

01:17:40 ◼   ► I make the trivial sample project

01:17:42 ◼   ► or more often these days I use playgrounds

01:17:44 ◼   ► which has its own set of bugs, but anyway,

01:17:46 ◼   ► use playgrounds to do something

01:17:49 ◼   ► And if it works right in playgrounds

01:17:50 ◼   ► or it works right in your toy example

01:17:52 ◼   ► but it doesn't work right in your real app,

01:17:53 ◼   ► that's still probably your bug, right?

01:17:55 ◼   ► That happens all the time.

01:17:56 ◼   ► But sometimes it goes the other way.

01:17:57 ◼   ► So when it goes the other way, you're like,

01:17:59 ◼   ► all right, I'm gonna polish up the sample project,

01:18:01 ◼   ► I'm gonna file the bug.

01:18:02 ◼   ► At this point in your head, you understand the issue

01:18:06 ◼   ► because you have boiled it down, you have debugged it,

01:18:09 ◼   ► you have figured out.

01:18:11 ◼   ► When you do X and Y and Z, Q should happen,

01:18:13 ◼   ► P happens instead.

01:18:14 ◼   ► You already figured that out.

01:18:16 ◼   ► And you're like, I'm serving this up to you, Apple,

01:18:18 ◼   ► on a silver platter.

01:18:19 ◼   ► I've got a sample project,

01:18:21 ◼   ► the source code to the sample project

01:18:22 ◼   ► is on a public GitHub URL,

01:18:24 ◼   ► a zip of it is included,

01:18:26 ◼   ► there's a sys diagnose that the feedback app already ran,

01:18:29 ◼   ► I can describe in five sentences,

01:18:31 ◼   ► here's the problem, expected results, actual results,

01:18:33 ◼   ► it fits on a page, you could print this on an index card.

01:18:36 ◼   ► Here it is.

01:18:37 ◼   ► A bunch of things can happen at that point.

01:18:41 ◼   ► One is that you may be perhaps one of the best,

01:18:45 ◼   ► but one of a thousand people who sent that bug to Apple

01:18:47 ◼   ► they already know about it.

01:18:49 ◼   ► And we would hope in a sane system

01:18:50 ◼   ► that there would be some communication that says,

01:18:53 ◼   ► yeah, no, we know about that one.

01:18:54 ◼   ► It's been 50 people who have filed it, right?

01:18:55 ◼   ► - One would think.

01:18:57 ◼   ► - Right, yes, but anyway, that could happen.

01:18:59 ◼   ► The other thing that could happen

01:19:01 ◼   ► is that could just never get looked at

01:19:02 ◼   ► because it's the bottom of a big pile

01:19:04 ◼   ► and you would never know.

01:19:05 ◼   ► But usually, especially if you have a tech podcast

01:19:09 ◼   ► that Apple people listen to

01:19:09 ◼   ► or you're too devoted or whatever,

01:19:11 ◼   ► someone will listen to the program

01:19:13 ◼   ► and look at the bug or whatever

01:19:14 ◼   ► and then get to us your back channels

01:19:16 ◼   ► that X, Y, and Z is happening, right?

01:19:18 ◼   ► But there's a lot of these bugs and it's difficult

01:19:21 ◼   ► to get to all of them in a timely manner.

01:19:24 ◼   ► You can't expect, and honestly,

01:19:27 ◼   ► bugs that I file for my stupid apps,

01:19:29 ◼   ► Apple should not look at, for the purposes of my app,

01:19:33 ◼   ► because who cares about my app?

01:19:35 ◼   ► The only time they should look at them is because,

01:19:37 ◼   ► oh, all right, we don't care about John's apps,

01:19:41 ◼   ► because whatever, who cares, right?

01:19:42 ◼   ► But if this is actually a bug in our framework,

01:19:45 ◼   ► this could affect Photoshop,

01:19:47 ◼   ► or like a real app that people care about, right?

01:19:49 ◼   ► If it's a legit bug in the framework,

01:19:51 ◼   ► especially if it's a new bug,

01:19:52 ◼   ► it didn't exist in the last version of the US

01:19:54 ◼   ► and it does exist in this one,

01:19:55 ◼   ► it's a regression as they say.

01:19:57 ◼   ► That's worth lurking at, not because of my apps,

01:20:00 ◼   ► but because tons of apps use these frameworks.

01:20:02 ◼   ► I'm not using super obscure frameworks,

01:20:03 ◼   ► so if I have found a legit bug

01:20:06 ◼   ► or a legit change in behavior,

01:20:08 ◼   ► someone should look at that.

01:20:10 ◼   ► How do you determine that?

01:20:11 ◼   ► It's a big pile of bugs.

01:20:12 ◼   ► How many of them are people saying,

01:20:13 ◼   ► I think the color of this button should be purple,

01:20:15 ◼   ► and how many of them are a carefully reproduced bug

01:20:19 ◼   ► with a minimal sample project, right?

01:20:21 ◼   ► That's a legit bug that affects Microsoft's office.

01:20:23 ◼   ► You need people to sort through all those things,

01:20:26 ◼   ► triage them, and figure out which is which.

01:20:28 ◼   ► And Apple doesn't seem to be particularly good

01:20:30 ◼   ► at doing that either.

01:20:31 ◼   ► Forget about the communication part of it, right?

01:20:33 ◼   ► So the most recent one I had, and I do this,

01:20:35 ◼   ► I found a handful of bugs

01:20:37 ◼   ► and I made little sample projects.

01:20:38 ◼   ► The most recent one I found was interesting,

01:20:40 ◼   ► or the one I'm gonna talk about here,

01:20:42 ◼   ► was interesting in that it was a straight regression.

01:20:44 ◼   ► This is a thing that worked in my app in Monterey

01:20:47 ◼   ► and didn't work in Ventura, which right away makes me think

01:20:50 ◼   ► this might be some kind of behavior change.

01:20:52 ◼   ► And then I go look at the release notes,

01:20:53 ◼   ► 'cause when the new versions of the OS come out,

01:20:55 ◼   ► they have like framework level release notes.

01:20:57 ◼   ► Hey, if you use this framework,

01:20:58 ◼   ► here's what's changed in this thing, right?

01:20:59 ◼   ► Because they change things.

01:21:00 ◼   ► So this used to do that, this is deprecated,

01:21:03 ◼   ► we added these function, we removed those,

01:21:05 ◼   ► we changed this, like nothing about this

01:21:08 ◼   ► in any of the release notes.

01:21:09 ◼   ► I look at the documentation in Ventura.

01:21:11 ◼   ► Documentation doesn't say anything about this.

01:21:13 ◼   ► This was, specifically this bug was like a,

01:21:16 ◼   ► there's a thing in AppKit that you can put on a view

01:21:19 ◼   ► that tracks when the cursor enters it,

01:21:21 ◼   ► and like tracks where the cursor is or whatever.

01:21:24 ◼   ► It's called NSTrackingArea,

01:21:26 ◼   ► and I use it to track when the cursor enters area.

01:21:29 ◼   ► I'm using it for its intended purpose, right?

01:21:32 ◼   ► In Monterey, it worked as I expected.

01:21:34 ◼   ► In Ventura, it would track the cursor normally,

01:21:36 ◼   ► except if you were dragging something.

01:21:40 ◼   ► And then if you were dragging something,

01:21:42 ◼   ► And it's tracking error would be like, I don't see any cursor.

01:21:44 ◼   ► I don't know what you're talking about.

01:21:45 ◼   ► It would not track at all.

01:21:46 ◼   ► And that broke a feature of my application,

01:21:48 ◼   ► because I needed to track it when things are being dragged.

01:21:51 ◼   ► And I was debugging it for a while.

01:21:52 ◼   ► I'm like, why is this not-- anyway, found the bug,

01:21:54 ◼   ► isolated it, made a minimal reproduction sample application.

01:21:59 ◼   ► You don't need to read anything.

01:22:00 ◼   ► I always put all the text in the app.

01:22:02 ◼   ► Like when you launch the app, it has text that says, here,

01:22:05 ◼   ► do this, do that.

01:22:07 ◼   ► I expect this to happen, and that happens.

01:22:09 ◼   ► You don't even need to read the readme.

01:22:11 ◼   ► Made the sample app, submitted it.

01:22:12 ◼   ► Again, the fact that my app broke in Ventura,

01:22:15 ◼   ► not a big deal.

01:22:16 ◼   ► But if this is a legit change in behavior

01:22:19 ◼   ► for NSTracking, that is a commonly used thing

01:22:22 ◼   ► in applications.

01:22:23 ◼   ► It is a, you know, it's from AppKit,

01:22:25 ◼   ► lots of applications use AppKit,

01:22:26 ◼   ► and that's a significant piece of functionality

01:22:29 ◼   ► that just doesn't work anymore.

01:22:31 ◼   ► And you know, I didn't get any response or whatever.

01:22:33 ◼   ► Eventually, I added a comment to the thing.

01:22:36 ◼   ► Someone did respond to it,

01:22:37 ◼   ► because I probably complained about it

01:22:39 ◼   ► on probably back then, Twitter or whatever.

01:22:41 ◼   ► And said, oh, you should, you know, what is,

01:22:44 ◼   ► they asked me what is your application or whatever,

01:22:46 ◼   ► and they said actually you should be using

01:22:48 ◼   ► the drag handling thing to handle drag,

01:22:50 ◼   ► so on and so forth, you know.

01:22:52 ◼   ► There was actually some feedback.

01:22:53 ◼   ► I'm like, okay, right, well, so I understand

01:22:56 ◼   ► that I could use the drag thing,

01:22:57 ◼   ► but like it worked in Monterey and doesn't work in mature.

01:22:59 ◼   ► Is NSTrackingArea just not gonna track drags anymore?

01:23:02 ◼   ► 'Cause if that's the case, like,

01:23:04 ◼   ► I was trying to get like, was this an intentional change?

01:23:06 ◼   ► Or are you just telling me, hey, there's a bug,

01:23:08 ◼   ► but you can work around it in this way,

01:23:10 ◼   ► or are you telling me from now on,

01:23:11 ◼   ► NSTrackingArea will not do this, so just get used to it.

01:23:14 ◼   ► And if that's true, you should probably update

01:23:16 ◼   ► the documentation and release notes and say,

01:23:18 ◼   ► oh, by the way, - Oh, imagine that!

01:23:18 ◼   ► Imagine that! (laughs)

01:23:19 ◼   ► - From now on, NSTrackingArea won't do this or whatever.

01:23:22 ◼   ► So I added a comment to the task that said,

01:23:24 ◼   ► or to the feedback that said,

01:23:26 ◼   ► my application is whatever,

01:23:29 ◼   ► and I've since added a workaround

01:23:33 ◼   ► to using the drag handling to do this.

01:23:35 ◼   ► Like I said, if you're on Venturi,

01:23:37 ◼   ► the drag handling, you know, whatever.

01:23:39 ◼   ► And the next response I got in feedback was,

01:23:42 ◼   ► great, we've closed your bug.

01:23:44 ◼   ► (laughing)

01:23:46 ◼   ► As I said, I'll read you the text,

01:23:48 ◼   ► which is not great, sorry.

01:23:49 ◼   ► Let's see.

01:23:50 ◼   ► Thank you for letting us know

01:23:51 ◼   ► that your issue has been resolved.

01:23:53 ◼   ► You can close this feedback by selecting Close Feedback

01:23:55 ◼   ► by the actions button found above.

01:23:57 ◼   ► As you've indicated this issue was resolved,

01:23:58 ◼   ► this feedback will no longer be monitored

01:24:00 ◼   ► and incoming messages will not be reviewed.

01:24:02 ◼   ► - Cool. - Should you find the issue,

01:24:02 ◼   ► that the issue is still present,

01:24:04 ◼   ► please file a new feedback report.

01:24:06 ◼   ► So this is like double whammy, because one,

01:24:08 ◼   ► I wasn't saying it's resolved.

01:24:10 ◼   ► I was saying I found a workaround, which

01:24:11 ◼   ► programmers do all the time.

01:24:13 ◼   ► Like, oh, there's a bug or a change in behavior.

01:24:15 ◼   ► You can code around it or whatever.

01:24:18 ◼   ► And two, saying, oh, and by the way,

01:24:19 ◼   ► don't even bother responding to this,

01:24:21 ◼   ► because even though we can't close this issue for you

01:24:23 ◼   ► and we want you to close it yourself,

01:24:24 ◼   ► we're just never going to look at it again.

01:24:26 ◼   ► If you think this issue is still there, file a new bug.

01:24:28 ◼   ► So I did file a new bug and said,

01:24:31 ◼   ► I think it's still there, because basically, I

01:24:34 ◼   ► don't know what you're telling me here.

01:24:36 ◼   ► Again, my question was, is this intentional new behavior,

01:24:40 ◼   ► or is it a bug that you're going to eventually fix?

01:24:42 ◼   ► Not that I care that much, but it is basic functionality.

01:24:46 ◼   ► And I complained about it on Mastodon,

01:24:48 ◼   ► and Apple people saw it.

01:24:49 ◼   ► And so eventually, I got someone to respond to the task

01:24:52 ◼   ► and explain the situation.

01:24:53 ◼   ► But John, running to the press never helps.

01:24:55 ◼   ► Yeah, yeah.

01:24:56 ◼   ► Explain the situation in English, basically saying,

01:24:58 ◼   ► this is an intentional change.

01:25:00 ◼   ► We think this is the way it's supposed to work.

01:25:03 ◼   ► It's not going to work the other way.

01:25:05 ◼   ► yes, we know we haven't updated the documentation

01:25:07 ◼   ► or put anything in release notes,

01:25:08 ◼   ► and we've already filed separate internal radars

01:25:11 ◼   ► to deal with that or whatever.

01:25:14 ◼   ► Here's what I'm going to say about this particular

01:25:16 ◼   ► experience.

01:25:16 ◼   ► I'm not going to say, oh, why didn't my bug get fixed

01:25:19 ◼   ► and why did it take too long and all this other stuff.

01:25:20 ◼   ► Because honestly, who cares, right?

01:25:22 ◼   ► What I am going to say is that from a policy perspective,

01:25:26 ◼   ► one of the things that Apple should really work on--

01:25:30 ◼   ► setting aside all the things we already talked about,

01:25:32 ◼   ► like, oh, you know, be better, right?

01:25:36 ◼   ► When you get to a point where a human being has somehow

01:25:41 ◼   ► found their way to my feedback, whether it's

01:25:43 ◼   ► because I have a podcast and post it on Mastodon

01:25:47 ◼   ► or it's just random luck, at some point,

01:25:50 ◼   ► hey, you come up on the rotation.

01:25:52 ◼   ► Your feedback is being triaged.

01:25:54 ◼   ► A human being has now got 37 seconds

01:25:57 ◼   ► to look at your feedback and do something with it.

01:26:01 ◼   ► I think one of the worst things that they do now that they can fix without really spending

01:26:05 ◼   ► any more money or time or whatever is when a human does that, make sure you spend that

01:26:12 ◼   ► time doing something useful because that's not going to come back again.

01:26:17 ◼   ► You're going to have to wait.

01:26:18 ◼   ► Like the time gap between some of these things sometimes is like weeks or months between

01:26:21 ◼   ► any response, right?

01:26:23 ◼   ► So in that moment, when the human is looking at it for 37 seconds, please, human, spend

01:26:30 ◼   ► the extra five seconds to write a coherent sentence because we know no one is going to

01:26:35 ◼   ► look at that again for three months.

01:26:37 ◼   ► This is the one chance I get from my bug to have its time in the sunshine and all I wanted

01:26:42 ◼   ► as a human with reading comprehension skills to say to me, "This is intended behavior.

01:26:48 ◼   ► We're sorry that it's not documented but just FYI it's going to work this way from now on."

01:26:54 ◼   ► That's it.

01:26:55 ◼   ► And that wouldn't take any more time than the sentence that I just read you, or the

01:27:00 ◼   ► feedback that was in there.

01:27:01 ◼   ► It's actually a shorter sentence.

01:27:04 ◼   ► Spend the time that you have, which is small and not enough, spend that time wisely because

01:27:09 ◼   ► it wastes all of our time to get a response which we have all gotten, every developer

01:27:15 ◼   ► has gotten us, a response that makes you think the person writing it either A, isn't a person

01:27:20 ◼   ► and is a bot, or B, did not read anything in your feedback.

01:27:25 ◼   ► If a response like that is put in, ostensibly, I'm told these are all done by humans, if

01:27:30 ◼   ► a human spends their 37 seconds to give a response that makes the person who posted

01:27:34 ◼   ► it think that they didn't read the feedback, either A, they didn't read the feedback, which

01:27:39 ◼   ► is bad, or B, they wasted that time.

01:27:42 ◼   ► So my one, in this particular round of being mad about radar and feedback, my one plea

01:27:48 ◼   ► for Apple is, in the tiny slice of time, human's time that we get, in the too small slice of

01:27:54 ◼   ► human times will get, please let them do a reasonable job of feedback because it

01:28:01 ◼   ► will save all of us so much time. It wastes so much more time to have three

01:28:06 ◼   ► rounds of back and forth with a month between each round than to just have the

01:28:11 ◼   ► person write a coherent sentence on the first one that sounds like a human, not

01:28:15 ◼   ► like a PR machine, and that reflects the fact that they saw the bug.

01:28:21 ◼   ► I mean, that's what really bothered me about this.

01:28:23 ◼   ► Secondarily, if anyone is listening or whatever,

01:28:25 ◼   ► I think it is insane that NSTrackingArea,

01:28:28 ◼   ► which has an option called enabled during mouse drag,

01:28:32 ◼   ► now does not work during mouse drag.

01:28:34 ◼   ► And I await anxiously the updated documentation,

01:28:39 ◼   ► how are they gonna document

01:28:40 ◼   ► the enabled during mouse drag option?

01:28:42 ◼   ► They're gonna say, this used to enable during mouse drag,

01:28:45 ◼   ► but it totally doesn't anymore, sorry about that.

01:28:47 ◼   ► I think that's dumb.

01:28:48 ◼   ► But that's the type of thing,

01:28:49 ◼   ► like if it was an open source project,

01:28:51 ◼   ► I'd be in the issue arguing like,

01:28:53 ◼   ► I think this is a bad change in its tracking area,

01:28:56 ◼   ► you're breaking apps for no reason,

01:28:57 ◼   ► there's an option called enabled during mouse drag,

01:28:59 ◼   ► what the hell, right?

01:29:00 ◼   ► You can't have that argument with Apple

01:29:02 ◼   ► because it would be three months between replies,

01:29:04 ◼   ► and by the way, they already said

01:29:05 ◼   ► they're not monitoring this bug,

01:29:06 ◼   ► so you'd have to be refiling it every single time.

01:29:08 ◼   ► Like that's pointless, that's the time-wasting,

01:29:10 ◼   ► open-sourced arguing over bugs that Apple actually,

01:29:14 ◼   ► you know, has a happy accident

01:29:16 ◼   ► of their terrible feedback system avoids or whatever.

01:29:19 ◼   ► But setting that aside,

01:29:21 ◼   ► I'm willing to say, just tell me, Apple.

01:29:23 ◼   ► Just tell me this is the new way it is.

01:29:25 ◼   ► Communicate that successfully.

01:29:26 ◼   ► Communicate that you know that you haven't documented it.

01:29:29 ◼   ► And by the way, on this particular issue,

01:29:32 ◼   ► as far as I can tell, I mean, I don't know,

01:29:35 ◼   ► 'cause obviously we don't know what happens on Apple

01:29:36 ◼   ► and we just talked about how there's no communication.

01:29:38 ◼   ► But it seems like what happened

01:29:41 ◼   ► is whatever team is responsible for NSTracking area

01:29:43 ◼   ► or that whole framework or whatever,

01:29:45 ◼   ► decided they were gonna make this change,

01:29:46 ◼   ► probably for some efficiency reason

01:29:48 ◼   ► or someone thought it would be a good idea.

01:29:50 ◼   ► This happens all the time.

01:29:51 ◼   ► We've decided that the behavior of this needs to change.

01:29:54 ◼   ► Even though it's going to be annoying for some people,

01:29:56 ◼   ► it'll have fewer bugs, it'll have better performance.

01:29:58 ◼   ► I get it, right?

01:29:59 ◼   ► So they thought they were going to do this,

01:30:01 ◼   ► setting aside the fact that there's an enable

01:30:02 ◼   ► during mousetrap auction, whatever.

01:30:03 ◼   ► But they were going to do this.

01:30:05 ◼   ► But it seemed like they were going to do it,

01:30:07 ◼   ► and they knew it might break some applications,

01:30:10 ◼   ► but they didn't want to mention it

01:30:12 ◼   ► and the release notes are documented

01:30:13 ◼   ► 'cause they were like, fingers crossed,

01:30:15 ◼   ► maybe this won't break anyone's app

01:30:16 ◼   ► and I hope no one notices. - Shh, shh, shh.

01:30:17 ◼   ► Don't tell anyone, don't tell anyone.

01:30:18 ◼   ► - Yeah, don't tell anyone.

01:30:20 ◼   ► Which totally happens, you're like Apple,

01:30:22 ◼   ► the big company would never do that, trust me.

01:30:24 ◼   ► This absolutely happens, because the incentives

01:30:27 ◼   ► are structured for you not to go,

01:30:29 ◼   ► oh, this has to be in the release notes,

01:30:31 ◼   ► and then we have to make, you know,

01:30:32 ◼   ► we have some policy that was made 10 years ago

01:30:34 ◼   ► that says if you do any breaking change to AppKit,

01:30:36 ◼   ► you have to clear it with Microsoft explicitly

01:30:38 ◼   ► to make sure it doesn't break Office.

01:30:39 ◼   ► Can we just make the change and put it in the betas

01:30:41 ◼   ► and maybe just no one will notice?

01:30:43 ◼   ► And here I am with my dinky little app

01:30:45 ◼   ► that five people run saying, oh, excuse me,

01:30:47 ◼   ► I noticed an engineer, and they must be like,

01:30:51 ◼   ► damn it, somebody noticed, and it's an app

01:30:53 ◼   ► that doesn't matter, so who cares,

01:30:54 ◼   ► but it's a stupid guy with a podcast, right?

01:30:57 ◼   ► And I don't fault those engineers

01:31:00 ◼   ► for trying to slip on under, I have 100% done this

01:31:03 ◼   ► so many times, and I've been caught doing it,

01:31:05 ◼   ► and I've also snuck a bunch through,

01:31:06 ◼   ► and it feels really good when you see the shirt,

01:31:08 ◼   ► it's like, look, I'm just gonna change the behavior,

01:31:09 ◼   ► and I bet nothing's gonna break,

01:31:11 ◼   ► and if I just don't say anything, it'll be fine.

01:31:13 ◼   ► But I'm gonna say that's also probably

01:31:15 ◼   ► not the best way to do things.

01:31:15 ◼   ► So whatever incentives are structured to make engineers

01:31:18 ◼   ► want to sneak this out without putting any release notes,

01:31:22 ◼   ► change those incentives.

01:31:23 ◼   ► Because engineers should be incentivized

01:31:25 ◼   ► to do the right thing, which is,

01:31:26 ◼   ► hey, we're changing the behavior of this.

01:31:28 ◼   ► It's in the release notes, we updated the docs,

01:31:30 ◼   ► sorry if it breaks your app.

01:31:31 ◼   ► And if it breaks too many apps, roll it back,

01:31:33 ◼   ► but just wanted you to know this is a change.

01:31:34 ◼   ► 'Cause that would have saved me a little bit

01:31:36 ◼   ► of my time on my app, and who knows,

01:31:37 ◼   ► maybe it did break Microsoft's office or something,

01:31:40 ◼   ► and there's some other feedback about that.

01:31:43 ◼   ► But yeah, this year's, this month's,

01:31:46 ◼   ► whatever advice for Apple is,

01:31:48 ◼   ► spend the tiny slice of time you have wisely

01:31:50 ◼   ► because it wastes most of our time if you don't.

01:31:52 ◼   ► And I don't think it actually requires any more time,

01:31:56 ◼   ► it just requires slightly differently spent time.

01:31:59 ◼   ► Above and beyond that,

01:32:00 ◼   ► not to go over all the things

01:32:01 ◼   ► we've talked about in the comments before,

01:32:03 ◼   ► but I do feel like there is a big difference

01:32:06 ◼   ► between a concise bug report with a minimal sample project

01:32:11 ◼   ► that's on GitHub from a known good developer

01:32:13 ◼   ► and a random feedback about the color of a button

01:32:15 ◼   ► from someone you've never heard of before.

01:32:17 ◼   ► And it's the same thing with the App Store

01:32:18 ◼   ► that is frustrating when a company like Panic,

01:32:21 ◼   ► that should be like AAA white glove gold tier status

01:32:24 ◼   ► in Apple Developer, can't get their game through

01:32:27 ◼   ► to the App Store.

01:32:29 ◼   ► Their famous well-reviewed game

01:32:30 ◼   ► that's on a million other platforms from the company Panic,

01:32:33 ◼   ► while scam apps sail through.

01:32:35 ◼   ► The goal of these faceless bureaucracies

01:32:39 ◼   ► is not to be a roulette wheel for outcomes.

01:32:43 ◼   ► There should be some, when you're triaging things,

01:32:46 ◼   ► you should take into account the quality of the report,

01:32:49 ◼   ► who it's coming from.

01:32:50 ◼   ► They certainly do for Adobe, Microsoft,

01:32:52 ◼   ► the big companies like that.

01:32:53 ◼   ► - Oh, funny how that is.

01:32:55 ◼   ► - But they should also triage based on like,

01:32:59 ◼   ► is there a sample project historically,

01:33:01 ◼   ► like give it, it's like Uber drivers and ratings,

01:33:03 ◼   ► give the developers a rating.

01:33:04 ◼   ► This person, Daniel Jalkut, five stars,

01:33:07 ◼   ► gives amazing bug reports, always very concise,

01:33:10 ◼   ► always technically accurate, hardly ever makes a mistake,

01:33:13 ◼   ► hardly ever blames the compiler,

01:33:14 ◼   ► comes with a sample project, is smart, is responsive.

01:33:17 ◼   ► Look at those first, you're triaging,

01:33:21 ◼   ► you can't look at them all, there's too many.

01:33:23 ◼   ► When you triage, bubble up the good ones,

01:33:25 ◼   ► have a system of rating them,

01:33:27 ◼   ► and then getting to Casey's point,

01:33:28 ◼   ► I have to file a second one, what can I do,

01:33:31 ◼   ► but public issue tracking systems have this solved,

01:33:34 ◼   ► we all know that, Apple's usual response is,

01:33:36 ◼   ► Well, we can't use public issue tracking

01:33:38 ◼   ► 'cause Adobe sends the source code to Photoshop

01:33:40 ◼   ► or you can't have them up or whatever.

01:33:41 ◼   ► And the answer to that from us has always been

01:33:44 ◼   ► let people opt into it.

01:33:45 ◼   ► Let developers say, "I agree that anyone can see

01:33:49 ◼   ► "this bug report.

01:33:50 ◼   ► "You know what, it's on me.

01:33:51 ◼   ► "I'm saying market is public.

01:33:52 ◼   ► "I'm not gonna put Photoshop source code in here.

01:33:54 ◼   ► "What I'm gonna put is my little sample project that I made

01:33:56 ◼   ► "and I'm gonna say everybody can see this."

01:33:58 ◼   ► Because then they can send the link to all their friends

01:34:00 ◼   ► who will go to that URL and hit the me too vote up button

01:34:04 ◼   ► on the thing instead of having to file something themselves.

01:34:06 ◼   ► These are all eminently solvable problems

01:34:08 ◼   ► without hiring more people except for to improve the system,

01:34:11 ◼   ► which they already did once with the feedback thing,

01:34:13 ◼   ► without staffing up someone and so forth.

01:34:15 ◼   ► And then I guess the final thing I'll say is

01:34:18 ◼   ► App Review used to be, believe it or not,

01:34:20 ◼   ► way worse than it is in terms of

01:34:22 ◼   ► how long things would go through.

01:34:23 ◼   ► - Oh, so much worse.

01:34:25 ◼   ► - And then at some point, something happened inside Apple

01:34:28 ◼   ► and App Review got faster.

01:34:29 ◼   ► Did they do that by cutting corners

01:34:31 ◼   ► and getting worse quality?

01:34:32 ◼   ► Maybe, but the point is, it got faster.

01:34:35 ◼   ► - No, I think they actually did it by firing somebody.

01:34:37 ◼   ► - Yes, right, whatever had to happen.

01:34:40 ◼   ► I'm not saying there's easy solutions.

01:34:42 ◼   ► Oh, we'll just spend less time and do a worse job

01:34:44 ◼   ► and we can do more of them.

01:34:45 ◼   ► And I'm not even sure if that's the right term.

01:34:47 ◼   ► But the point is, it is possible

01:34:49 ◼   ► for big things to change inside Apple.

01:34:52 ◼   ► It's happened before with App Review.

01:34:54 ◼   ► It can happen with feedback and radar.

01:34:57 ◼   ► It is not a intractable problem.

01:34:59 ◼   ► Yes, they'll probably have to spend more money

01:35:01 ◼   ► and hire more staff or whatever.

01:35:02 ◼   ► Whatever it is that they did to make App Review

01:35:04 ◼   ► way, way, way faster, and I think we would all agree that that's a net win.

01:35:08 ◼   ► The quality still sucks, and they still do terrible things like rejecting Pank's games,

01:35:11 ◼   ► and all the horror stories.

01:35:13 ◼   ► That all is still there, but I feel like that's about been a constant, but the time has gone

01:35:17 ◼   ► way down.

01:35:18 ◼   ► So, if the time between me getting useless, incoherent feedback responses was three days

01:35:24 ◼   ► instead of three weeks or three months, I would feel a lot better about it.

01:35:27 ◼   ► So I feel like it is possible for Apple to change and improve feedback.

01:35:33 ◼   ► I don't know what has to happen for that to happen,

01:35:35 ◼   ► but I know it's possible.

01:35:37 ◼   ► I know you can do it at Apple, right?

01:35:39 ◼   ► There are basic suggestions that you ask any developer,

01:35:42 ◼   ► pull someone off, develop Apple, develop off the street

01:35:44 ◼   ► and say, "What can we do to improve feedback?"

01:35:45 ◼   ► They have seven ideas for you.

01:35:46 ◼   ► They're all good, just take them.

01:35:47 ◼   ► Like, they're so obvious.

01:35:49 ◼   ► Everybody knows what they are.

01:35:50 ◼   ► Doesn't mean they're easy.

01:35:51 ◼   ► Doesn't mean you can do them overnight.

01:35:53 ◼   ► Doesn't mean you don't have to hire new people.

01:35:54 ◼   ► Like, I understand, but this is an important part

01:35:57 ◼   ► of the company, kind of like App Review,

01:35:59 ◼   ► an important part of the developer ecosystem

01:36:01 ◼   ► that was really, really bad, making improvements,

01:36:04 ◼   ► and it pays dividends, please do this.

01:36:07 ◼   ► - You know, we love, the three of us in particular,

01:36:09 ◼   ► love to whine about, well, you know,

01:36:11 ◼   ► why isn't such and such better, why isn't it better?

01:36:13 ◼   ► And I think one of the things that we can do

01:36:17 ◼   ► is talk about, you know, well, how would this,

01:36:19 ◼   ► how could this become better?

01:36:21 ◼   ► And I think what you're saying, Jon, is excellent.

01:36:24 ◼   ► You know, if a reviewer's looking at it,

01:36:26 ◼   ► like, really properly look at it.

01:36:28 ◼   ► If it's more than just a, "This is broken,"

01:36:32 ◼   ► do something about that.

01:36:34 ◼   ► If there's a sample app, run the sample app.

01:36:37 ◼   ► Acknowledge that this reviewer or this submitter

01:36:40 ◼   ► has done good work.

01:36:41 ◼   ► And like you said, have a rating system

01:36:43 ◼   ► or something like that.

01:36:44 ◼   ► Oh, Daniel Jalkett always writes amazing bug reports.

01:36:47 ◼   ► We should pay attention to him.

01:36:48 ◼   ► Maybe even, and this is gonna be weird, Apple,

01:36:51 ◼   ► but maybe even reply to him.

01:36:54 ◼   ► Wouldn't that be amazing? - Whoa.

01:36:55 ◼   ► - I know, right?

01:36:57 ◼   ► This is some real new thought technology.

01:36:59 ◼   ► You know, Casey, all he does is fuss and moan.

01:37:02 ◼   ► He never includes a sample app.

01:37:03 ◼   ► That's not true for the sake of discussion.

01:37:05 ◼   ► He never includes a sample app.

01:37:06 ◼   ► Oh, he doesn't deserve a reply.

01:37:07 ◼   ► Well, you know what, okay, that's kinda deserved.

01:37:10 ◼   ► But another thing that I've been thinking about is

01:37:13 ◼   ► you're never going, Apple will never ever tell us

01:37:16 ◼   ► what they're doing internally,

01:37:17 ◼   ► which I don't think that has to be the case,

01:37:20 ◼   ► but you know, it's Apple, I understand it, that's fine.

01:37:22 ◼   ► But what if there was like some sort of indication

01:37:27 ◼   ► on the public facing feedback,

01:37:30 ◼   ► the last time that anyone within Apple has touched this,

01:37:33 ◼   ► we don't know what they've done,

01:37:35 ◼   ► we don't know if they just opened it

01:37:36 ◼   ► and closed it immediately,

01:37:37 ◼   ► but somebody touched this a week ago,

01:37:40 ◼   ► a day ago, two days ago,

01:37:42 ◼   ► and then fast forward a week,

01:37:44 ◼   ► and it says today,

01:37:46 ◼   ► then you don't have to tell me a damn thing.

01:37:49 ◼   ► I at least know, assuming this isn't just fakery,

01:37:52 ◼   ► I at least know that some friggin' human being

01:37:56 ◼   ► has looked at this in the last six months.

01:37:59 ◼   ► That would make me feel at least a little bit better,

01:38:03 ◼   ► probably even so much better,

01:38:05 ◼   ► because at least I know things are,

01:38:07 ◼   ► I don't know what's happening,

01:38:08 ◼   ► maybe I won't see the results of it for a year,

01:38:10 ◼   ► but at least I know somebody cares enough

01:38:12 ◼   ► to have looked at it in the last week.

01:38:13 ◼   ► And now of course I could argue on the flip side of that is,

01:38:16 ◼   ► well, most of these are probably gonna get looked at

01:38:17 ◼   ► once and ever again.

01:38:18 ◼   ► Well, we already know that.

01:38:20 ◼   ► You're not telling us anything we don't already know.

01:38:22 ◼   ► Like who cares put in writing maybe somebody who actually gives a up high will be able to do something about it

01:38:28 ◼   ► Like, ah, there's there's there's so many it's like John said there's so many ways to fix this and it's it's just

01:38:34 ◼   ► There's so many ways to fix this and if any one of them, you know

01:38:38 ◼   ► I would like I am in hell and I would love a cold glass of water, please anything

01:38:43 ◼   ► Anything Apple, please and my favorite by the way my favorite slap in the face

01:38:48 ◼   ► And I think John you just had this happen recently

01:38:51 ◼   ► Is oh here's something you reported years ago

01:38:56 ◼   ► Which kudos to Apple for keeping it around and having looked at it years later, but nevertheless

01:39:02 ◼   ► Here's something that happened years ago, and we think we fixed it. Hey you want to do me a solid and go check

01:39:08 ◼   ► Well okay fair enough, but John what happens if you don't check immediately well actually this one

01:39:13 ◼   ► It wasn't a years ago when it was a thing where they said and this is well

01:39:16 ◼   ► We'll link in the show notes to who's LapCat Software.

01:39:20 ◼   ► Who's that guy?

01:39:21 ◼   ► - Jeff Johnson, is that right?

01:39:22 ◼   ► - Yes, Jeff Johnson.

01:39:24 ◼   ► Had a similar complaint to mine, but yeah.

01:39:26 ◼   ► File the thing, they fixed it, or they said it was fixed,

01:39:29 ◼   ► and they do the thing which I think is good,

01:39:31 ◼   ► which is, hey, don't just close the bug when you fixed it.

01:39:34 ◼   ► Actually get the person who opened the bug

01:39:36 ◼   ► to agree with you, the yes, I agree, you have fixed it,

01:39:39 ◼   ► so we can close the report.

01:39:40 ◼   ► And that would be a good system

01:39:42 ◼   ► if we weren't sending messages to each other

01:39:44 ◼   ► by carrier pigeon, right?

01:39:46 ◼   ► because it takes three months for anything

01:39:47 ◼   ► to get back and forth.

01:39:48 ◼   ► So that kind of makes it dumb.

01:39:49 ◼   ► But anyway, I had filed something.

01:39:51 ◼   ► They said, we think this is fixed.

01:39:52 ◼   ► And Apple's thing that they've been doing lately,

01:39:54 ◼   ► as in the past few years, is they'll send you the "we think

01:39:58 ◼   ► it's fixed" message, incoherently written in a way

01:40:01 ◼   ► that you have to read seven times to figure out what the

01:40:03 ◼   ► heck they're even talking about.

01:40:04 ◼   ► As you'll see, like, we think this is fixed.

01:40:05 ◼   ► And they'll give a build number.

01:40:07 ◼   ► And you're like, wait, what OS is that?

01:40:08 ◼   ► What beta is that?

01:40:09 ◼   ► How do I get that?

01:40:10 ◼   ► How do I install that?

01:40:10 ◼   ► They'll tell you, basically, we think it's fixed in a beta.

01:40:13 ◼   ► And what they want you to do is, oh, just try your app

01:40:18 ◼   ► or your sample program in this beta of the operating system

01:40:22 ◼   ► and let us know whether it's fixed.

01:40:24 ◼   ► And one of mine was they sent this bug.

01:40:31 ◼   ► And it wasn't one of my good bug reports.

01:40:33 ◼   ► It was one of my bad ones.

01:40:34 ◼   ► It was from a user's perspective.

01:40:35 ◼   ► It was related to my programmer.

01:40:36 ◼   ► There was like, a thing is happening in system settings

01:40:39 ◼   ► that I don't think should be happening

01:40:40 ◼   ► based on what my program does.

01:40:42 ◼   ► And they're like, "Oh, you know, it wasn't a great bug report."

01:40:44 ◼   ► So they said, "We think we've got it fixed.

01:40:45 ◼   ► Can you confirm it in a beta?"

01:40:47 ◼   ► And my answer -- I didn't say anything,

01:40:48 ◼   ► but like my reading it was like,

01:40:51 ◼   ► "I don't have a good way to install a macOS beta.

01:40:53 ◼   ► I'm not going to install it on my main machine.

01:40:55 ◼   ► I don't have a drive available.

01:40:56 ◼   ► All my laptops have been lent out to, like, kids.

01:40:58 ◼   ► My son had to take two laptops to college for --"

01:41:01 ◼   ► So he had to run a VM on an Intel Mac,

01:41:04 ◼   ► but he has an ARM Mac. And anyway,

01:41:06 ◼   ► it wasn't convenient for me to install a beta anymore.

01:41:09 ◼   ► So I just had the Casey-style childlike satisfaction

01:41:13 ◼   ► of them saying, "Please let us know

01:41:14 ◼   ► if this is fixed in the last beta,"

01:41:15 ◼   ► and then I just ignored it.

01:41:17 ◼   ► (laughing)

01:41:18 ◼   ► I mean, 'cause like, you know, I could have responded

01:41:21 ◼   ► and said, "Oh, I don't have time to install a beta,"

01:41:22 ◼   ► but like, bottom line is, "Okay, how about I let your thing

01:41:26 ◼   ► sit there un-responded for six months,

01:41:27 ◼   ► see how you like that?

01:41:28 ◼   ► How about I leave your thing un-responded?

01:41:29 ◼   ► I know Apple, suddenly you want my feedback

01:41:32 ◼   ► and you're sending me emails every week saying,

01:41:33 ◼   ► "Hey, just so you know, your feedback, we asked for,

01:41:36 ◼   ► you know, we need a response from you,

01:41:38 ◼   ► we need some feedback, engineering needs you to confirm this.

01:41:40 ◼   ► They would send you emails every week or two saying,

01:41:43 ◼   ► letting you know that you're supposed to respond.

01:41:45 ◼   ► And I would just ignore them and be like,

01:41:47 ◼   ► I don't have, like not because I'm being mean and spiteful,

01:41:50 ◼   ► but I literally don't have time to install a beta

01:41:53 ◼   ► to figure that out.

01:41:53 ◼   ► And what I figured was,

01:41:55 ◼   ► the new public version of macOS will come out

01:41:58 ◼   ► and then I'll be able to see if it's fixed, right?

01:42:00 ◼   ► That's what I figured would happen, right?

01:42:02 ◼   ► Instead, what happened is after in my case, 35 days,

01:42:07 ◼   ► Apple said, "We're just gonna close your bug.

01:42:10 ◼   ► "We didn't hear from you, so later."

01:42:12 ◼   ► (laughing)

01:42:13 ◼   ► Right, and basically-- - Awesome, awesome.

01:42:14 ◼   ► - So the tolerance of Apple,

01:42:17 ◼   ► I thought it was like on a fixed timer,

01:42:18 ◼   ► but apparently not because Geoff Johnson

01:42:20 ◼   ► had only waited like 16 days.

01:42:22 ◼   ► Like when they ask you, "Hey, confirm that this is fixed,"

01:42:25 ◼   ► if you don't respond on their timetable,

01:42:28 ◼   ► they'll just say, "Well, we waited a while,

01:42:30 ◼   ► "and we didn't hear from you,

01:42:31 ◼   ► "so we'll just assume it's fixed, done, bye."

01:42:34 ◼   ► Which is not the way it should work.

01:42:36 ◼   ► If you're gonna have this system

01:42:37 ◼   ► where we don't close it until the developer confirms

01:42:39 ◼   ► that it's fixed, you have to wait for them to confirm.

01:42:42 ◼   ► And if basically no response, well I'll assume it's fixed,

01:42:46 ◼   ► why would you assume it's fixed?

01:42:47 ◼   ► Maybe I'm dead, that's why I didn't respond.

01:42:50 ◼   ► You don't know what's going on over here.

01:42:51 ◼   ► I didn't respond to your confirmation thing,

01:42:54 ◼   ► you can't be, that must mean it's fixed.

01:42:55 ◼   ► I'm closing it out, right?

01:42:57 ◼   ► At least let the release version of the OS come out

01:43:00 ◼   ► because I'll update, I'll update to the latest version

01:43:04 ◼   ► and then I'll be able to tell,

01:43:05 ◼   ► and by the way, it's not fixed.

01:43:06 ◼   ► But I'll paint the latest version

01:43:10 ◼   ► 'cause 13.3 is out, it's totally not fixed.

01:43:12 ◼   ► It's a bad bug report, I don't wanna get into it.

01:43:14 ◼   ► Like I don't blame Apple, this is a really complicated issue

01:43:16 ◼   ► I don't even know how to fully report this

01:43:18 ◼   ► but it's doing something that it shouldn't be doing

01:43:20 ◼   ► or maybe it should be, it's hard to tell

01:43:21 ◼   ► without talking to a human but it's a minor issue.

01:43:23 ◼   ► I don't really care that much about it.

01:43:24 ◼   ► But like, but and Jeff Johnson has a similar story,

01:43:27 ◼   ► his was closed after 16 days.

01:43:29 ◼   ► For the same reason, he's like,

01:43:29 ◼   ► "I don't have a good way to install a beta,

01:43:31 ◼   ► "I'll just wait for the release."

01:43:32 ◼   ► Oh, nevermind, they closed it before the release came out.

01:43:36 ◼   ► Apple's internal system patience for lack of response from developers seems very low.

01:43:43 ◼   ► Whereas we file things and months, weeks, years go by and we hear nothing, we're expected

01:43:48 ◼   ► to just tolerate that, right?

01:43:50 ◼   ► So it is a very asymmetrical relationship.

01:43:53 ◼   ► And I think Apple's policy surrounding this is not great.

01:43:55 ◼   ► I would actually argue for inside Apple, if you think you fixed the issue, to save us

01:44:01 ◼   ► all time, close the bug.

01:44:02 ◼   ► Say closed, we think it's fixed as whatever.

01:44:04 ◼   ► And I know they have this weird thing where you can't reopen bugs, which just seems like a real problem with their system, but like

01:44:09 ◼   ► Yeah, if you wait for all developers to confirm it's gonna take you forever

01:44:14 ◼   ► And they don't actually wait for you to confirm. They'll auto close it after n days anyway

01:44:19 ◼   ► So it's like just be honest and say when you think you fix it just close it as resolved say

01:44:23 ◼   ► Resolved fixed in Mac OS blah blah blah blah blah because then there's a known resolution and if I come back to it

01:44:29 ◼   ► I'm on vacation. I come back from vacation

01:44:31 ◼   ► and they're like, oh, looks like my bug was closed,

01:44:33 ◼   ► and they said it was fixed, and macOS, blah, blah, blah.

01:44:35 ◼   ► I can confirm that at any time at my leisure.

01:44:37 ◼   ► If I care about that bug, presumably macOS has rolled on

01:44:41 ◼   ► since then, and I'll try to reproduce it.

01:44:43 ◼   ► And if it's not fixed, in a sane world,

01:44:45 ◼   ► I would reopen the bug, but in this world,

01:44:47 ◼   ► I can refile it, right?

01:44:48 ◼   ► You don't have to wait for me to confirm

01:44:50 ◼   ► and send me nagging emails and then just close it anyway

01:44:52 ◼   ► when I don't respond for two weeks.

01:44:54 ◼   ► All right, that was just a little bonus content there,

01:44:56 ◼   ► so I can link to the Jeff Johnson thing,

01:44:57 ◼   ► but that policy also seems counterproductive, let's say,

01:45:01 ◼   ► because it's just, it's pretending that a relationship exists

01:45:05 ◼   ► that doesn't actually exist, which is like,

01:45:07 ◼   ► we're talking back and forth,

01:45:08 ◼   ► we're working together on this bug, no, we're not.

01:45:10 ◼   ► We're throwing things over the wall,

01:45:12 ◼   ► and you are occasionally popping up every few months

01:45:14 ◼   ► to ask us to do something which may be inconvenient for us.

01:45:17 ◼   ► - Yeah, and as a final note on this,

01:45:20 ◼   ► in the same vein as what I was saying about Siri,

01:45:24 ◼   ► like, I think that there's a lot of people within Apple

01:45:27 ◼   ► would agree that radar is perhaps not optimal, but I don't think that most people, even potentially

01:45:32 ◼   ► the rank and file, really understand how aggressively awful it is for third-party developers.

01:45:39 ◼   ► And here again, it's one of those things where I think it's easy for Apple to be like,

01:45:43 ◼   ► "Eh, it's not great for us either," you know, or, "Eh, you know, you don't really understand how many we get,"

01:45:49 ◼   ► or, "Eh, it's really, really a hard problem to solve," which all those things are true.

01:45:54 ◼   ► But ultimately, that doesn't matter. At some point, you need to fix the problem. At some point,

01:46:03 ◼   ► Siri needs to be better than a pile of trash. At some point, Radar and Feedback Assistant

01:46:11 ◼   ► need to be better than just throwing things into Dev null and hoping for the best.

01:46:15 ◼   ► Like, it doesn't matter if you can excuse yourselves away from why this is bad. I don't

01:46:22 ◼   ► care. You all make a ridiculous amount of money to solve really hard problems. Here's a really hard

01:46:29 ◼   ► problem to solve. Fix radar. It's actually not that hard, but still fix radar. Please and thank you.

01:46:34 ◼   ► All right, can we do some Ask ATP to cheer me up please? Yes please. All right, Steven Goza writes,

01:46:40 ◼   ► "John and others have mentioned a bunch about Mastodon being federated and I can't wrap my

01:46:44 ◼   ► head around it. I ignored it for a while until last week, which was probably two months ago,

01:46:48 ◼   ► when John said an instance could become "unfederated."

01:46:52 ◼   ► Now I can't ignore my confusion anymore and would love an explanation when you have a chance.

01:46:55 ◼   ► Which, unfortunately, that time didn't come until now, but now we have the chance.

01:46:59 ◼   ► So John, what does "federating" or "federation" mean?

01:47:02 ◼   ► - Usually people use the email analogy,

01:47:05 ◼   ► and I will use that briefly here before I try a different one as well.

01:47:08 ◼   ► So the email analogy is you can pick an email provider, Gmail, Hotmail,

01:47:13 ◼   ► you can host your own email in your own domain, whatever, iCloud, Mail, all that stuff.

01:47:17 ◼   ► stuff, that is kind of your instance.

01:47:21 ◼   ► You can email me at myname@icloud.com, at myname@gmail.com, or whatever.

01:47:25 ◼   ► You picked Gmail, you picked iCloud, you picked Yahoo, you picked Hotmail.

01:47:29 ◼   ► Those are your instances.

01:47:30 ◼   ► But you can send email to anybody.

01:47:32 ◼   ► When they say, "Oh, just send me your email address," you don't look and say, "Oh, I can't

01:47:35 ◼   ► email you.

01:47:36 ◼   ► I'm on Gmail and you're on Hotmail."

01:47:38 ◼   ► No.

01:47:39 ◼   ► You know that you can send email to anyone on any other email instance, because that's

01:47:43 ◼   ► how email works.

01:47:44 ◼   ► It is a federated system, kind of.

01:47:47 ◼   ► So in Mastodon, we have little Mastodon addresses.

01:47:50 ◼   ► It's your username at your instance.

01:47:51 ◼   ► They look kind of like email addresses,

01:47:52 ◼   ► but we put another ad on the thing.

01:47:54 ◼   ► So mine is @Syracusa@Mastodon.social, right?

01:47:57 ◼   ► It's like an email address, right?

01:48:00 ◼   ► But I can follow people on any other instance.

01:48:03 ◼   ► And they can follow me the same way

01:48:05 ◼   ► we could email each other if we are in different email

01:48:08 ◼   ► instances or servers or whatever.

01:48:10 ◼   ► That's what Federation means.

01:48:12 ◼   ► The more precise or slightly more precise technical explanation,

01:48:17 ◼   ► which still glosses over some details, is the Mastodon.social server that I'm on.

01:48:22 ◼   ► It talks to other servers to find out what's happening on them.

01:48:27 ◼   ► And the way it does that is it looks all the people who have accounts on Mastodon.social.

01:48:31 ◼   ► What is the... I'm going to give you a SQL query now.

01:48:34 ◼   ► Give me the unique list of instances that people follow on the server.

01:48:39 ◼   ► So 500 people follow someone from this instance,

01:48:42 ◼   ► one person follows from this instance,

01:48:43 ◼   ► just give me the uniquefied list of all the instances.

01:48:46 ◼   ► Those are the instances

01:48:48 ◼   ► that mastodon.social needs to talk to.

01:48:50 ◼   ► It doesn't need to talk to all the instances in the world,

01:48:52 ◼   ► because if nobody on mastodon.social

01:48:53 ◼   ► follows someone on foobar.social,

01:48:56 ◼   ► it doesn't need to talk to that thing at all, right,

01:48:58 ◼   ► and vice versa.

01:48:59 ◼   ► So it can figure out who do I need to talk to,

01:49:01 ◼   ► and then periodically,

01:49:03 ◼   ► they communicate using the activity protocol

01:49:05 ◼   ► to exchange information.

01:49:08 ◼   ► tell me what the people that my people follow are saying,

01:49:10 ◼   ► and by the way, here's what my people are saying,

01:49:12 ◼   ► and I will send that to all the other instances

01:49:15 ◼   ► for people that follow them, right?

01:49:17 ◼   ► So you can sort of see how they work,

01:49:19 ◼   ► in the same way that an email server will receive email

01:49:21 ◼   ► from anybody who sends it,

01:49:22 ◼   ► and then will allow email to go out or whatever.

01:49:25 ◼   ► Unfederation is something that kind of also happens

01:49:29 ◼   ► in email as well, where an instance,

01:49:33 ◼   ► where one instance will decide, like for example, Hotmail.

01:49:36 ◼   ► If Hotmail decided, you know what,

01:49:38 ◼   ► we're not going to allow any more email from Gmail users.

01:49:41 ◼   ► Not that they would ever do that, but just humor me, right?

01:49:44 ◼   ► That would mean that if you're on Gmail

01:49:46 ◼   ► and you send email to someone at Hotmail,

01:49:47 ◼   ► it would bounce back and say, nah, sorry,

01:49:50 ◼   ► I couldn't deliver the email.

01:49:52 ◼   ► The Hotmail server said they're not accepting email

01:49:54 ◼   ► from Gmail anymore, right?

01:49:56 ◼   ► That happens with spammers.

01:49:57 ◼   ► We're like, there's some thing that's emailing

01:50:00 ◼   ► and it's spamming, right?

01:50:02 ◼   ► The big email services like Gmail, Hotmail, Yahoo,

01:50:05 ◼   ► iCloud will unfederate.

01:50:07 ◼   ► - By the way, I'm pretty sure it's called defederate.

01:50:09 ◼   ► - Yeah, the big email servers will have a denialist

01:50:12 ◼   ► that will remove all of the spam servers

01:50:15 ◼   ► that they don't wanna receive email from.

01:50:17 ◼   ► So you can imagine with a federated system like this,

01:50:20 ◼   ► especially with something like Mastodon

01:50:22 ◼   ► that's not quite the same as email,

01:50:24 ◼   ► you could draw them out as little islands.

01:50:26 ◼   ► You could have an island of instances

01:50:28 ◼   ► that all talk to each other,

01:50:30 ◼   ► but they don't talk to this other island of instances,

01:50:31 ◼   ► or maybe there's one or two connections or whatever.

01:50:34 ◼   ► So it's not like there's just one giant pool

01:50:36 ◼   ► and if you get defederated, you're off to the side.

01:50:40 ◼   ► It could break up into a whole bunch of little islands

01:50:42 ◼   ► with sparse connections between them

01:50:43 ◼   ► and lots of internal connections.

01:50:44 ◼   ► We'll see how this is gonna shake out.

01:50:46 ◼   ► But in the case of Mastodon,

01:50:49 ◼   ► defederating is considered a feature, not like a burden,

01:50:54 ◼   ► 'cause email is supposed to be universal communication.

01:50:56 ◼   ► Setting aside spammers,

01:50:57 ◼   ► anyone should be able to email anyone else.

01:51:00 ◼   ► But on a social network,

01:51:02 ◼   ► the instance can set rules for behavior.

01:51:05 ◼   ► For instance, just off the top of my head you could say,

01:51:08 ◼   ► this instance does not allow anyone to use curse words.

01:51:12 ◼   ► And everybody who doesn't wanna see curse words

01:51:16 ◼   ► could be on that instance.

01:51:17 ◼   ► And they might decide, that instance might decide

01:51:19 ◼   ► to de-federate from any other instance

01:51:21 ◼   ► that allows the use of curse words.

01:51:24 ◼   ► If they did that, anyone who's on that instance

01:51:25 ◼   ► would be like, wait a second,

01:51:26 ◼   ► I used to follow a person over there,

01:51:28 ◼   ► now I can't see their stuff anymore.

01:51:29 ◼   ► And they say, oh well, we don't want curse words

01:51:32 ◼   ► coming into our instance, so we defederated from them.

01:51:34 ◼   ► And that person might say, oh, that sucks.

01:51:37 ◼   ► I'm leaving this instance and going to an instance

01:51:39 ◼   ► that is federated, and in that way,

01:51:41 ◼   ► people would sort themselves into groups

01:51:43 ◼   ► according to who they are willing to be federated with

01:51:47 ◼   ► or whatever.

01:51:48 ◼   ► In practice, what we mostly expect

01:51:50 ◼   ► is there'll be a reasonable set of behavioral rules

01:51:55 ◼   ► that the vast majority of people will agree upon,

01:51:57 ◼   ► and defederation will only happen when a Nazi

01:52:00 ◼   ► or a child porn server or some terrible thing comes and they'll be defederated and they'll

01:52:04 ◼   ► kind of be like the civilized world of people who have basic standards for behavior and

01:52:12 ◼   ► you know because defederating is like the nuclear option right you can always just not

01:52:16 ◼   ► follow people and you can block individual people and you can mute people you can do

01:52:19 ◼   ► all those types of things.

01:52:20 ◼   ► So the defederation is like look this entire instance is filled with Nazis.

01:52:23 ◼   ► It's so bad it's unredeemable if any good people are there I'm sorry but we're going

01:52:27 ◼   ► to defederate from you or whatever.

01:52:30 ◼   ► And so we don't know how this is gonna work out.

01:52:31 ◼   ► This is kind of the first time this is being done

01:52:33 ◼   ► at a large scale where defederation is a feature

01:52:37 ◼   ► of the system and not just something to use

01:52:39 ◼   ► to deal with spam and abuse,

01:52:40 ◼   ► but just a potentially ideological tool

01:52:43 ◼   ► or a way for people to sort them into different bins.

01:52:46 ◼   ► As I said in past shows, it may be the case

01:52:49 ◼   ► that what happens here is kind of what happened with emails.

01:52:51 ◼   ► You get a bunch of really big instances

01:52:53 ◼   ► that are kind of too big to fail

01:52:54 ◼   ► and that could never defederate from each other

01:52:56 ◼   ► because it would break the entire system

01:52:57 ◼   ► and that would be kind of a shame

01:52:58 ◼   ► because that kind of defeats the purpose of federation

01:53:01 ◼   ► when you have these, you know,

01:53:03 ◼   ► duopoly or whatever really big things,

01:53:05 ◼   ► but we'll see how it shakes out.

01:53:07 ◼   ► So that's how Mastodon is structured.

01:53:10 ◼   ► That's how it's supposed to work.

01:53:11 ◼   ► We'll see how it's gonna actually work in practice.

01:53:14 ◼   ► - Yeah, really quick shout out to the "Decoder" podcast,

01:53:17 ◼   ► which I don't personally listen to every episode,

01:53:19 ◼   ► but everyone I've heard has been very good.

01:53:21 ◼   ► They just had on Eugene Roachko.

01:53:24 ◼   ► I probably butchered that pronunciation.

01:53:25 ◼   ► I'm sorry about that.

01:53:26 ◼   ► he is the the benevolent dictator for life for Mastodon and it's like an hour

01:53:32 ◼   ► hour and a quarter it was really really really good I just listened to it a few

01:53:36 ◼   ► hours ago so that is worth listening to and it's it's clear that he is someone

01:53:41 ◼   ► who whether or not you agree with him deeply cares about Mastodon and deeply

01:53:46 ◼   ► cares about doing the right thing and I think I generally agree with a lot of

01:53:51 ◼   ► the things he said except maybe quote tweets or quote toots but that's neither

01:53:54 ◼   ► here nor there, but they talk a bit about federation in this and I really think it's

01:54:00 ◼   ► a fascinating case study on, you know, can communities really self-govern? What happens

01:54:06 ◼   ► if they turn kind of evil? You know, what is this all going to mean? This is what you

01:54:09 ◼   ► were talking about earlier, John, but the conversation with the guy who created Mastodon

01:54:14 ◼   ► is really, really, really interesting. And so if you have the time, I definitely suggest

01:54:18 ◼   ► it. We'll put a link in the show notes. All right, moving on. Eric Smith wants to know,

01:54:23 ◼   ► Is software getting worse?

01:54:25 ◼   ► And this is a blog post on the Stack Overflow blog from late January.

01:54:30 ◼   ► And it talks about, you know, is software legitimately getting worse?

01:54:33 ◼   ► And so someone, I presume John, pulled some quotes for me to read from this blog post.

01:54:39 ◼   ► I suspect bugs per line of code is more or less staying constant, but applications are

01:54:42 ◼   ► much more complex than they were, leading to more bugs in the absolute number sense.

01:54:46 ◼   ► Also, the threshold for a quote unquote "bug" has changed over time.

01:54:50 ◼   ► For example, tearing and frame latency were considered normal.

01:54:53 ◼   ► Now they're a bug.

01:54:54 ◼   ► I don't think that expanding the set of "bug" is terrible, but a byproduct of that will

01:54:59 ◼   ► be that it's hard to keep that set small.

01:55:01 ◼   ► There's an old adage in software, which is one of those old adages that no one really

01:55:07 ◼   ► has the wherewithal to actually test, but people hear and it rings true to them, so

01:55:10 ◼   ► we keep repeating it, so here I am doing that.

01:55:12 ◼   ► It's that the number of bugs per line of code written by a programmer hasn't changed that

01:55:18 ◼   ► much over the years.

01:55:20 ◼   ► You know, there's a range, there's a bell curve or whatever, but in general if you're

01:55:23 ◼   ► going to write a thousand lines of code, how many bugs on average do you expect to find

01:55:26 ◼   ► in a thousand lines of code?

01:55:28 ◼   ► And that makes some sense, obviously, not all lines are created equal, you know, it

01:55:33 ◼   ► depends on what language you're writing it or whatever, but in general if you're going

01:55:36 ◼   ► to write a thousand lines, there's some average percentage amount of bugs you're going to

01:55:41 ◼   ► have.

01:55:42 ◼   ► And then you debug and there's various software testing methodologies and QA and stuff to

01:55:46 ◼   ► remove those bugs and make the software as bug free as time and money will allow.

01:55:50 ◼   ► That is a well known thing.

01:55:51 ◼   ► I don't think that's changing much.

01:55:53 ◼   ► The reason most people believe that is because although the software industry and technology

01:55:57 ◼   ► advances by leaps and bounds, humans change way slower.

01:56:03 ◼   ► In the blink of an eye between the invention of electricity and today, human evolution

01:56:09 ◼   ► has done nothing, except for maybe like work up some immunities to some viruses and stuff,

01:56:15 ◼   ► but like just generally nothing.

01:56:17 ◼   ► So it's not as if, oh, because humors do faster, we'll get so much better at programming that

01:56:22 ◼   ► we'll make fewer mistakes.

01:56:23 ◼   ► Now we're pretty much making the same amount of mistakes.

01:56:25 ◼   ► And incidentally, this particular argument very often comes up in the context of high-level

01:56:30 ◼   ► versus low-level languages, which we've talked about many times in the past.

01:56:33 ◼   ► It's why proponents like me of high-level languages say no matter how much you love

01:56:38 ◼   ► C or C++ or assembly or whatever you may be arguing for our objective C or whatever, the

01:56:44 ◼   ► bottom line is higher level languages let you write fewer lines of code and even if you think

01:56:48 ◼   ► it's all syntactic sugar or it's pointless or it's taking me too far away from the internals and I

01:56:54 ◼   ► need lower level whatever, the the unescapable fact is the more things you type the more opportunity

01:57:01 ◼   ► there is to make bugs. So if you have a higher level language that lets you do things with

01:57:06 ◼   ► fewer lines of code with less boilerplate,

01:57:09 ◼   ► with less repeated things, with less worrying about details

01:57:13 ◼   ► that aren't important to your program,

01:57:14 ◼   ► you will produce fewer bugs

01:57:17 ◼   ► for the functionality you're making.

01:57:19 ◼   ► You're still doing the same number of bugs per lines of code

01:57:21 ◼   ► but because a thousand lines of Swift

01:57:24 ◼   ► does way more than a thousand lines of assembly,

01:57:27 ◼   ► your bug per line is the same

01:57:30 ◼   ► but your bug per functionality is way better.

01:57:32 ◼   ► As for Eric's question, is software getting worse?

01:57:36 ◼   ► I think basically no.

01:57:39 ◼   ► I think it's actually getting better.

01:57:41 ◼   ► Mostly because every part of the stack that we're using gets higher and higher and higher

01:57:45 ◼   ► level and the workhorse we're building on top of everything that has come before, we're

01:57:50 ◼   ► getting so much more functionality for the amount of bugs that we're getting.

01:57:55 ◼   ► Now that might not feel important to you because you're like, "I don't care that what Twitter

01:58:00 ◼   ► Quine is doing would be science fiction to someone in the 60s in terms of holy cow, what

01:58:05 ◼   ► What is it actually doing under the covers?

01:58:07 ◼   ► Networking stacks and requests and data encoding and decoding and the whole operating system

01:58:13 ◼   ► stack on top of it and the layout engine.

01:58:16 ◼   ► It is insane.

01:58:17 ◼   ► And then for you it's like I scroll, I see a bunch of words and I scroll.

01:58:21 ◼   ► It's easy for us to take that for granted, but the amount of functionality as in what

01:58:25 ◼   ► is it actually doing to let you use your thumb to scroll a bunch of words is phenomenal.

01:58:31 ◼   ► And the number of bugs that it has compared to that amount of functionality versus the

01:58:34 ◼   ► the number of bugs like a recipe manager on an Apple 2e had,

01:58:38 ◼   ► like the number of bugs is similar,

01:58:40 ◼   ► but the functionality is vastly greater.

01:58:43 ◼   ► So I would say software is getting better,

01:58:45 ◼   ► just maybe not in a way that users notice

01:58:47 ◼   ► 'cause users are very quick to take for granted

01:58:50 ◼   ► like the magic of what these things are doing.

01:58:54 ◼   ► And then all we can see is like,

01:58:55 ◼   ► yeah, but there are still bugs.

01:58:56 ◼   ► There are always going to be bugs

01:58:58 ◼   ► unless you can spend huge amounts of time and money

01:59:00 ◼   ► stamping them a lot, which you can't for an application

01:59:03 ◼   ► and lets you scroll tweets or whatever, right?

01:59:05 ◼   ► But we do get more and more functionality over time.

01:59:07 ◼   ► So that's my take on this question.

01:59:09 ◼   ► - Yeah, I think there's also,

01:59:11 ◼   ► you have to look at what software is asked to do over time

01:59:16 ◼   ► and how that changes over time.

01:59:18 ◼   ► Our expectations are so vastly accelerating over time

01:59:23 ◼   ► and what we expect software to do today

01:59:26 ◼   ► is so different from what it did back when we had Apple IIs

01:59:30 ◼   ► running Printile Pro or whatever.

01:59:32 ◼   ► It's so different compared to that.

01:59:35 ◼   ► We expect our software to do way more.

01:59:37 ◼   ► On one level, John is right that the languages get better,

01:59:41 ◼   ► the abstractions we're working on get better,

01:59:42 ◼   ► the tools get better, and so that does,

01:59:45 ◼   ► that multiplies our productivity.

01:59:47 ◼   ► Like how good can a program be per programmer working on it

01:59:52 ◼   ► or per hour of time that's put into working on it?

01:59:56 ◼   ► We have made huge advances there.

01:59:58 ◼   ► But the reason it can feel like software

02:00:00 ◼   ► so buggy these days is that we are asking it

02:00:02 ◼   ► to do a heck of a lot more than we ever have before,

02:00:04 ◼   ► and that's always increasing.

02:00:06 ◼   ► As soon as software achieves some new amount

02:00:09 ◼   ► of functionality, we immediately take it for granted

02:00:12 ◼   ► and move on to asking about other things.

02:00:15 ◼   ► So for instance, even if, we don't have to go back

02:00:17 ◼   ► to the Apple II, I'll just go back to the beginning

02:00:19 ◼   ► of the iPhone, 'cause this is like where I've done

02:00:22 ◼   ► a lot of my professional software development,

02:00:24 ◼   ► so I've been here a while, I've seen a lot of things change

02:00:27 ◼   ► over time and customer expectations changing over time.

02:00:31 ◼   ► And when the iPhone, I'll even say when the App Store

02:00:33 ◼   ► first launched, so the iPhone gets its first year for free.

02:00:36 ◼   ► When the App Store first launched in 2008,

02:00:39 ◼   ► one person could make an app and the tools

02:00:43 ◼   ► were pretty primitive, the hardware was pretty primitive,

02:00:46 ◼   ► not compared to the Apple II, by any means,

02:00:47 ◼   ► we were way past that, compared to where we are today.

02:00:52 ◼   ► Things were simpler and more primitive and lower level.

02:00:55 ◼   ► We didn't have luxuries, I mean heck,

02:00:57 ◼   ► the first version of the iPhone SDK

02:00:59 ◼   ► didn't even have interface builder,

02:01:00 ◼   ► or core data, or anything like that.

02:01:02 ◼   ► We were super early, everything was just to see,

02:01:06 ◼   ► manual, retain, release, auto-release,

02:01:08 ◼   ► like that kind of stuff.

02:01:09 ◼   ► - Oh gosh, that's right.

02:01:10 ◼   ► - All the UI was built in code for that first,

02:01:12 ◼   ► there were no storyboards yet, or anything like that.

02:01:14 ◼   ► So it was early, it was basic,

02:01:17 ◼   ► and UIKit was super early, super basic.

02:01:20 ◼   ► But all you had to focus on

02:01:23 ◼   ► was whatever that app could do on the iPhone 2.0 screen.

02:01:28 ◼   ► And it was a single device with a single screen resolution

02:01:33 ◼   ► and there was no background tasking,

02:01:35 ◼   ► there were no extensions, there was no Apple Watch,

02:01:40 ◼   ► there was no iPad, there was no Catalyst app,

02:01:42 ◼   ► there was no widgets, like all the stuff

02:01:44 ◼   ► that we expect today wasn't there.

02:01:46 ◼   ► And back then, you expected also that the app

02:01:49 ◼   ► would kind of hold its own data.

02:01:51 ◼   ► There was a lot less expectation of cloud-based storage,

02:01:55 ◼   ► a lot less expectation of syncing and of cloud backup.

02:01:59 ◼   ► Most things didn't use accounts

02:02:01 ◼   ► and didn't have account mechanics in them.

02:02:04 ◼   ► There was no in-app purchase.

02:02:06 ◼   ► There were very few ads.

02:02:08 ◼   ► It was such a different experience back then,

02:02:12 ◼   ► not only because of the technological situation,

02:02:14 ◼   ► but also because the customer expectations were simpler.

02:02:17 ◼   ► Now, you are expected, if you're making an iPhone app,

02:02:21 ◼   ► you're expected to have all of that stuff.

02:02:24 ◼   ► You're expected definitely to have Sync.

02:02:27 ◼   ► To do Sync well, you're probably gonna need

02:02:29 ◼   ► some kind of basic account system,

02:02:31 ◼   ► and that adds a whole bunch of complexity.

02:02:32 ◼   ► (laughs)

02:02:33 ◼   ► That's a lot there.

02:02:35 ◼   ► You're probably gonna have interactions

02:02:37 ◼   ► with different web services to pull different stuff in.

02:02:39 ◼   ► Your customers are gonna expect you to have things

02:02:41 ◼   ► like an iPhone and iPad app that somehow Sync.

02:02:45 ◼   ► Definitely those have to be the same purchase.

02:02:47 ◼   ► You're gonna have to have a watch app probably

02:02:49 ◼   ► for certain types of things.

02:02:50 ◼   ► you're gonna have to have extensions,

02:02:51 ◼   ► you're gonna have to have share extensions,

02:02:52 ◼   ► you're gonna have to have a widget somewhere,

02:02:55 ◼   ► lock screen widget, main screen widget,

02:02:57 ◼   ► watch complication maybe.

02:02:59 ◼   ► So the expectations of what people want you to do

02:03:01 ◼   ► are so high that the software necessarily

02:03:05 ◼   ► has to be more complicated just to fit

02:03:08 ◼   ► what people expect all apps to do these days.

02:03:11 ◼   ► And so it can feel like things are worse quality

02:03:14 ◼   ► because we're just asking them to do so much more.

02:03:17 ◼   ► There are parts of what we do that are crappy quality.

02:03:20 ◼   ► We mentioned Siri earlier,

02:03:21 ◼   ► and Siri's really inconsistent,

02:03:23 ◼   ► but Siri is so vastly more complex

02:03:28 ◼   ► than anything we ask things to do,

02:03:29 ◼   ► even 15 or 20 years ago.

02:03:31 ◼   ► It's frankly amazing it works at all,

02:03:34 ◼   ► let alone as quote, "Well," as it actually does.

02:03:37 ◼   ► 'Cause Siri actually does work well

02:03:38 ◼   ► in certain things sometimes.

02:03:40 ◼   ► And it's amazing to know that when you were here

02:03:44 ◼   ► in earlier days of technology,

02:03:45 ◼   ► when we didn't have anything close to that,

02:03:47 ◼   ► and it's remarkable that it works the way it does even.

02:03:51 ◼   ► But the software that we wrote back in the day

02:03:53 ◼   ► that might have felt more solid was a lot simpler

02:03:57 ◼   ► and in some ways was more solid,

02:03:59 ◼   ► but also now we wouldn't be happy with that

02:04:02 ◼   ► and customers demand so much more now.

02:04:05 ◼   ► You can't make software like that anymore.

02:04:07 ◼   ► And it's a shame because I would love

02:04:09 ◼   ► if software was super reliable and super simple

02:04:13 ◼   ► in some ways or rather I think I would love that,

02:04:15 ◼   ► But then my actual customer demands would be like,

02:04:19 ◼   ► well, I love this really simple software,

02:04:21 ◼   ► but can you maybe make an iPad app,

02:04:23 ◼   ► or can you maybe add some shortcut support?

02:04:26 ◼   ► There's always something that you want them to add.

02:04:29 ◼   ► Man, I love paying once for apps

02:04:31 ◼   ► and never having to pay again.

02:04:32 ◼   ► But oh, can you add Sync to a cloud service?

02:04:34 ◼   ► Like there's so many of those things

02:04:37 ◼   ► that modern customer expectations

02:04:40 ◼   ► and modern technological environments

02:04:42 ◼   ► in which everything has to work and interoperate

02:04:44 ◼   ► and meet expectations just can't support

02:04:49 ◼   ► that old simpler way of looking at software.

02:04:52 ◼   ► - Oh, you know, so if the lines of,

02:04:54 ◼   ► the bugs per lines of code was still the same back then,

02:04:56 ◼   ► part of the reason, and I think it was,

02:04:58 ◼   ► and that is still a factor, but part of the reason

02:05:01 ◼   ► some of those older programs felt more reliable,

02:05:04 ◼   ► especially the good ones that we remember,

02:05:06 ◼   ► is because the market structure and the incentive structure

02:05:10 ◼   ► were different back then, and not back when the iPhone

02:05:12 ◼   ► came out, but I'm talking farther back than that.

02:05:15 ◼   ► So before the internet, you had to buy your software

02:05:18 ◼   ► in a box on a floppy disk.

02:05:20 ◼   ► And if there was something wrong with it,

02:05:22 ◼   ► you couldn't just go download an update to that.

02:05:25 ◼   ► You could download it where?

02:05:26 ◼   ► On a CompuServe?

02:05:27 ◼   ► Maybe.

02:05:28 ◼   ► They'd have a second version on a different floppy disk.

02:05:31 ◼   ► So the incentives were for the software developer

02:05:34 ◼   ► to spend way more time making sure the software they were

02:05:37 ◼   ► going to pay to put on millions of floppy disks

02:05:41 ◼   ► was as bug-free as possible because they knew they can't just have people install a patch,

02:05:46 ◼   ► a day one patch when they launched the app because there was no internet, right?

02:05:49 ◼   ► So those incentives are different, but like that doesn't mean that the programmers weren't

02:05:53 ◼   ► making the exact same number of bugs per lines of code.

02:05:55 ◼   ► All that means is they had to spend more time and more money getting that version 1.0 to

02:06:02 ◼   ► a more bug-free state.

02:06:04 ◼   ► Like any company could do that today, it would just mean they have to ship later, right?

02:06:07 ◼   ► It also means if there was a bug, and there certainly was, there was always bugs, it would

02:06:12 ◼   ► take way longer for you to get that fixed because you couldn't just download an update.

02:06:16 ◼   ► They'd have to print a version 1.1, put that on floppy disk and sometimes sell it to you,

02:06:20 ◼   ► or you'd send a way for it and it's just like it was worse in all sorts of ways that people

02:06:24 ◼   ► would not tolerate, right?

02:06:25 ◼   ► Whereas now we just expect, "Oh, there's a bug.

02:06:27 ◼   ► There better be an update tomorrow when I wake up."

02:06:31 ◼   ► There was not going to be an update to your floppy disk when you woke up, right?

02:06:34 ◼   ► It was what it was.

02:06:36 ◼   ► So those incentives could exist today and do in different markets for example in theory,

02:06:40 ◼   ► I don't know if this is true, maybe Casey can tell me, but in theory military software

02:06:45 ◼   ► development has a much slower pace and more thorough QA process and you know whatever.

02:06:50 ◼   ► I hope so.

02:06:51 ◼   ► Yeah, well you know also more money being spent in various states to be basically a

02:06:58 ◼   ► jobs program where we blow people up.

02:07:00 ◼   ► Anyway.

02:07:01 ◼   ► Yeah but it's also a lot higher stakes than like you know some weather app on your phone.

02:07:04 ◼   ► Yeah or like self-driving.

02:07:06 ◼   ► think about it. That was originally the DARPA challenge, you guys don't remember that, it

02:07:10 ◼   ► was a good NOVA on it. Anyway, so I think like different incentive structures can and

02:07:18 ◼   ► do exist and those also influence perceived quality but in general the, you know, human

02:07:23 ◼   ► beings produce X number of bugs per Y number of lines of code is not going to change until

02:07:28 ◼   ► and unless human beings change and that happens really slowly. So I think any perception that

02:07:33 ◼   ► you have. Think about the surrounding context. You know, what functionality am I getting?

02:07:40 ◼   ► What incentives exist for this functionality? How fast can I get an update? Because you're

02:07:44 ◼   ► trading things off. You're trading off the ability to ship something with a bug in it

02:07:50 ◼   ► is traded off against the ability for that bug to be fixed tomorrow through the magic

02:07:54 ◼   ► of software updates. Right? And so that creates an incentive structure for shipping software

02:07:58 ◼   ► that is different from the one where you know you can't do an update until six months from

02:08:01 ◼   ► now.

02:08:02 ◼   ► - Alrighty, and then finally for tonight,

02:08:04 ◼   ► Thomas Alvarez writes, "John mentioned how he wants

02:08:07 ◼   ► "a Mac Pro with GPUs on cards, and I'm curious

02:08:09 ◼   ► "what use he has for GPU-powered in an ARM-based Mac.

02:08:13 ◼   ► "If it's gaming, aren't we past that on the Mac now

02:08:15 ◼   ► "with Apple Silicon and moved on to running Windows

02:08:18 ◼   ► "on a dedicated gaming PC?"

02:08:19 ◼   ► We all know how you feel about a dedicated gaming PC,

02:08:22 ◼   ► but would you just mind answering the question, please?

02:08:25 ◼   ► - Yeah, so I mean, I don't think I've actually talked

02:08:27 ◼   ► about my specific needing GPUs on cards

02:08:31 ◼   ► cards for an ARM-based Mac.

02:08:33 ◼   ► Mostly we've been talking about if it doesn't have GPUs on cards, how is it not just a,

02:08:38 ◼   ► you know, a Mac Studio with a bunch of empty space or something.

02:08:41 ◼   ► So anyway, setting that thing aside, I am actually interested in significant GPU-powered

02:08:47 ◼   ► in an ARM-based Mac.

02:08:50 ◼   ► Back when we were still entertaining rumors of this sort of quad SoC arrangement, and

02:08:55 ◼   ► I did the math on that, that would have enough GPU power to be equivalent to a pretty okay

02:09:05 ◼   ► external PC graphics card and I would be fine with that.

02:09:07 ◼   ► And why do I want that?

02:09:08 ◼   ► It's to play games.

02:09:09 ◼   ► And you'd be like, "Well, you can't play any games on an ARM Mac."

02:09:12 ◼   ► I still am personally holding out hope that Windows and gaming will get on the ARM bandwagon

02:09:19 ◼   ► eventually.

02:09:20 ◼   ► I don't have any reason to particularly believe that because it doesn't seem to be really

02:09:24 ◼   ► happening but you know it seems plausible technically it's certainly possible we know

02:09:29 ◼   ► that but markets move slowly and I'm not sure if there's much motion there maybe the server

02:09:34 ◼   ► stuff needs to go and destroy the economics of good x86 CPUs for that to happen I don't

02:09:39 ◼   ► know how that's all going to happen but I would like that to happen and in the meantime

02:09:43 ◼   ► I just you know for the same reason I have this big honking Mac that I don't need over

02:09:46 ◼   ► here I just like the idea of having more computing power than I actually need even if it's just

02:09:51 ◼   ► So I can download like some demo of some 3d program that I'm never going to figure out how to use and just play with

02:09:55 ◼   ► or whatever or you know, like I

02:09:57 ◼   ► Locked myself out of a locked note bag, you know

02:10:01 ◼   ► The Apple Notes like back before you could use your Apple ID to lock a note

02:10:05 ◼   ► You could put individual passwords on notes

02:10:07 ◼   ► And I had a note that I had put an individual password on that

02:10:10 ◼   ► I had forgotten and hadn't put it in keychain or anything like that

02:10:13 ◼   ► And so I used my dual GPUs to crack it like

02:10:19 ◼   ► - To brute force crack, yeah, you can.

02:10:21 ◼   ► - That's amazing.

02:10:22 ◼   ► - To brute force crack my own password, and guess what?

02:10:24 ◼   ► The fans really smiled on my Mac Pro,

02:10:27 ◼   ► but I did crack, 'cause it was a short,

02:10:29 ◼   ► like throwaway password or whatever, I just--

02:10:31 ◼   ► - How long did it take?

02:10:32 ◼   ► - I don't know, like five minutes, like it wasn't--

02:10:34 ◼   ► - Oh my god.

02:10:35 ◼   ► - I did not use a 15 character, whatever password,

02:10:37 ◼   ► like this is an argument for you to do the thing where,

02:10:40 ◼   ► I don't remember when they did that, it was ages ago,

02:10:42 ◼   ► where they let you do the thing like,

02:10:43 ◼   ► do you wanna update your thing,

02:10:44 ◼   ► so your Apple ID in your face can unlock all your notes,

02:10:46 ◼   ► or whatever, I eventually did that, right?

02:10:49 ◼   ► But that's just a silly example.

02:10:51 ◼   ► But I could have also cracked it on an iPhone.

02:10:55 ◼   ► I'm not pretending that I'm in a big Jeep, you do this.

02:10:57 ◼   ► But the same reason that people don't need a sports car,

02:11:00 ◼   ► 'cause they're not race car drivers,

02:11:01 ◼   ► they just like to have one,

02:11:02 ◼   ► even though you can't really use it without breaking the law.

02:11:05 ◼   ► At least I'm not breaking the law

02:11:07 ◼   ► with my Mac Pro here or whatever.

02:11:09 ◼   ► Remember those ads when you couldn't export the G4

02:11:12 ◼   ► to communist countries

02:11:15 ◼   ► because it was like a restricted export thing?

02:11:17 ◼   ► I think Apple had an ad campaign about that.

02:11:18 ◼   ► classified as ammunition because it's too good of a computer.

02:11:20 ◼   ► - Yeah, anyway, I just want it.

02:11:23 ◼   ► Even if it's for that, you know, so I can play

02:11:24 ◼   ► a five year old port, a port of a five year old game

02:11:27 ◼   ► and high frame rates, the Mac OS version or whatever.

02:11:30 ◼   ► That's it, it's, you know, and it's for games.

02:11:32 ◼   ► Like I really hope someday, you know,

02:11:34 ◼   ► 'cause ARM based SOCs made by Apple with lots of GPU power,

02:11:39 ◼   ► that's really good hardware for games.

02:11:41 ◼   ► Too bad no one makes games for it.

02:11:42 ◼   ► Too bad Windows doesn't run it, like I get it.

02:11:44 ◼   ► Doesn't make perfect sense.

02:11:46 ◼   ► And as for the dedicated gaming PC,

02:11:48 ◼   ► - Honestly, if I had a different house with another desk

02:11:51 ◼   ► for things to put on,

02:11:52 ◼   ► I probably would have bought a gaming PC by this point.

02:11:54 ◼   ► But I don't know.

02:11:55 ◼   ► - The desk is what's holding you back?

02:11:57 ◼   ► - Yeah, right?

02:11:58 ◼   ► - I'm gonna buy an entire Mac Pro instead of a desk.

02:12:02 ◼   ► - Well, no, it's not the desk,

02:12:05 ◼   ► it's the house where the desk would go.

02:12:06 ◼   ► Like there's no, there's no place,

02:12:08 ◼   ► it's not like I'm getting a new house anytime soon.

02:12:10 ◼   ► And I do have my, I've talked to those about it,

02:12:12 ◼   ► I do have my own irrational personal biases

02:12:14 ◼   ► against Microsoft and Windows

02:12:15 ◼   ► that will make me never wanna buy a PC.

02:12:17 ◼   ► and honestly at this point it's been such a long streak,

02:12:18 ◼   ► I feel like I need to keep it going.

02:12:20 ◼   ► But in theory, I also haven't bought an Xbox

02:12:24 ◼   ► for that same stupid reason.

02:12:25 ◼   ► But in theory, if I had a bigger house

02:12:27 ◼   ► with another desk for me to put stuff on,

02:12:28 ◼   ► I might actually get a gaming PC to play PC games.

02:12:31 ◼   ► And that's why I'm enjoying my Mac Pro.

02:12:32 ◼   ► I can play Microsoft Flight Simulator

02:12:34 ◼   ► with my fancy new GPU and it looks really cool

02:12:36 ◼   ► and I can't play it on any other platform.

02:12:38 ◼   ► I play it in Windows and I get good frame rate

02:12:40 ◼   ► and it looks really nice.

02:12:42 ◼   ► And someday soon, well, someday, I don't wanna say soon,

02:12:45 ◼   ► but someday that will be over

02:12:46 ◼   ► because I'll have an ARM-based Mac Pro.

02:12:48 ◼   ► But hopefully by then, like Microsoft will like port

02:12:51 ◼   ► Flight Simulator to Windows on ARM,

02:12:54 ◼   ► and I'll be able to somehow boot into Windows on ARM

02:12:57 ◼   ► from an ARM-based Mac Pro and play Flight Simulator

02:13:00 ◼   ► at even higher frame rates.

02:13:01 ◼   ► That is the future I believe in that I'm dreaming of,

02:13:04 ◼   ► and that's why I want my ARM-based computer

02:13:07 ◼   ► to have a beefy GPU.

02:13:09 ◼   ► - Good luck.

02:13:10 ◼   ► - You might have to keep dreaming on that one.

02:13:12 ◼   ► - I know, I know.

02:13:13 ◼   ► - Thanks to our sponsor this week, Collide,

02:13:15 ◼   ► and thanks to our members who support us directly.

02:13:18 ◼   ► You can join us at ATP.fm/join.

02:13:21 ◼   ► Thank you so much, we will talk to you next week.

02:13:24 ◼   ► ♪ Now the show is over ♪

02:13:29 ◼   ► ♪ They didn't even mean to begin ♪

02:13:32 ◼   ► ♪ 'Cause it was accidental ♪

02:13:34 ◼   ► ♪ Oh it was accidental ♪

02:13:38 ◼   ► ♪ John didn't do any research ♪

02:13:39 ◼   ► ♪ Marco and Casey wouldn't let him ♪

02:13:42 ◼   ► ♪ 'Cause it was accidental ♪

02:13:45 ◼   ► It was accidental And you can find the show notes at ATP.FM

02:13:52 ◼   ► And if you're into Twitter You can follow them @C-A-S-E-Y-L-I-S-S

02:14:02 ◼   ► So that's Casey Liss M-A-R-C-O-A-R-M

02:14:06 ◼   ► Anti-Marco Armin, S-I-R-A-C, U-S-A-C-R-A-C-U-S-A, it's accidental. They didn't mean too accidental. Tech podcast so long.

02:14:26 ◼   ► All right, so speaking of sponsorships and memberships and things of that nature, we

02:14:33 ◼   ► are trying to come up with, like we were talking about the pre-show, more ideas for member

02:14:38 ◼   ► specials and it would be really awesome if we could get some ideas from listeners.

02:14:44 ◼   ► And so it would be excellent if you used Mastodon, if possible, to toot at, and I'll take the

02:14:49 ◼   ► fall on this, you can toot at me or the ATP show account, but you can send it my way.

02:14:55 ◼   ► - In particular-- - What is the ATP show account,

02:14:57 ◼   ► Casey?

02:14:58 ◼   ► - Good question.

02:14:58 ◼   ► - I believe it's @ATPFM@Mastodon.social.

02:15:03 ◼   ► - Thank you.

02:15:04 ◼   ► - How does Mike do this on upgrade?

02:15:05 ◼   ► He has a really good way of handling it.

02:15:07 ◼   ► It's on Mastodon.social @ATPFM, which is what--

02:15:11 ◼   ► - Yeah, you don't need to overcomplicate it.

02:15:13 ◼   ► Most Mastodon clients and the websites,

02:15:15 ◼   ► the search is good enough that if you just type ATPFM

02:15:18 ◼   ► into your search box on any Mastodon instance,

02:15:21 ◼   ► it will probably find us.

02:15:22 ◼   ► They should do a better job.

02:15:23 ◼   ► I was thinking about this,

02:15:24 ◼   ► should do a better job of indicating the verified URL.

02:15:29 ◼   ► - Oh, that's a good point.

02:15:30 ◼   ► Yeah, like put it like as like a little subtitle

02:15:32 ◼   ► in the search results, like name, verified URL.

02:15:35 ◼   ► - Yeah, 'cause what you wanna know,

02:15:36 ◼   ► if there's like 15 ATP FM accounts that like impersonate,

02:15:39 ◼   ► which one is the real one?

02:15:40 ◼   ► Only one of them can possibly be verified

02:15:43 ◼   ► against ATP.fm, the website,

02:15:45 ◼   ► and clients know that and show it,

02:15:48 ◼   ► they should show it in search

02:15:48 ◼   ► 'cause it would help people find things.

02:15:50 ◼   ► But anyway, that's the address,

02:15:51 ◼   ► we'll put a link in the show notes.

02:15:52 ◼   ► You can also go to what?

02:15:53 ◼   ► ATB.FM/feedback?

02:15:57 ◼   ► - Yes, but that sends email.

02:15:58 ◼   ► Nobody likes email.

02:15:59 ◼   ► - Oh, email's fine.

02:16:01 ◼   ► - Anyway, yeah, so if you have ideas for members episodes,

02:16:07 ◼   ► okay, so here's the criteria.

02:16:08 ◼   ► Like, we'll accept any ideas,

02:16:09 ◼   ► but generally speaking, what we're trying to figure out

02:16:12 ◼   ► is something that we are equipped to handle.

02:16:16 ◼   ► So as an example, I would love to play Destiny one time

02:16:22 ◼   ► with John and Marco.

02:16:23 ◼   ► I don't have any PlayStation in the house.

02:16:25 ◼   ► I don't have any video capture software in the house.

02:16:27 ◼   ► I don't think any of the three of us, except maybe John,

02:16:30 ◼   ► has the patience to put together a video

02:16:32 ◼   ► or do any of that sort of thing.

02:16:33 ◼   ► - Oh, I totally have the patience for it.

02:16:35 ◼   ► And like I said, PlayStation 5 is video capture built in.

02:16:37 ◼   ► We're very close people.

02:16:38 ◼   ► Marco's got a PS5, I've got a PS5, KC's the holdout.

02:16:41 ◼   ► But anyway, that's already on the list.

02:16:42 ◼   ► You don't have to suggest that one.

02:16:43 ◼   ► - Well, I'm just saying that like something

02:16:45 ◼   ► along those lines that requires hundreds of dollars

02:16:47 ◼   ► of investment and--

02:16:48 ◼   ► - Or us going on a road trip across Australia,

02:16:50 ◼   ► probably not gonna happen, cool idea, but you know.

02:16:52 ◼   ► Great idea, but not gonna happen.

02:16:53 ◼   ► So things that we can handle with just a microphone,

02:16:57 ◼   ► and we can spend some amount of money.

02:17:00 ◼   ► In fact, if I can convince the boys,

02:17:03 ◼   ► I think I have a pretty decent idea for one

02:17:05 ◼   ► that involves spending an absurd amount of money

02:17:07 ◼   ► for a little bit of food.

02:17:09 ◼   ► I mean those words, I choose those words very carefully.

02:17:11 ◼   ► But anyway, something that we can handle,

02:17:14 ◼   ► and one thing in particular that we've been wrestling with,

02:17:16 ◼   ► particularly John, is we think,

02:17:19 ◼   ► how did you phrase this when we were talking privately?

02:17:21 ◼   ► we think we can get a pretty good licensing agreement,

02:17:24 ◼   ► I think John had said, for top four.

02:17:26 ◼   ► And so what is a good top four?

02:17:29 ◼   ► Well, top four Apple products, sure, that's kind of obvious,

02:17:32 ◼   ► but there's gotta be something more creative.

02:17:34 ◼   ► Top four, we were talking about doing privately,

02:17:36 ◼   ► we were talking about top four Apple announcements,

02:17:38 ◼   ► but then we have to do like 35 hours of research,

02:17:41 ◼   ► remembering all these announcements.

02:17:42 ◼   ► - Or do we, haven't you listened to top four?

02:17:45 ◼   ► - Yeah, fair. - Yeah.

02:17:46 ◼   ► - Anyway, the point is, particularly in the vicinity

02:17:50 ◼   ► top four, but even in general, if you have a member idea, please, you know, send us a

02:17:57 ◼   ► toot on Mastodon or feedback if you must. I guess our feedbacks are much better than

02:18:01 ◼   ► Apple's, aren't they? But anyway, yeah, send it our way. We would love to hear it. And

02:18:08 ◼   ► we hope to, again, this is not a guarantee, but our kind of goal, which we may not always

02:18:14 ◼   ► achieve, is maybe one of these a month if we can. It probably won't be every month,

02:18:18 ◼   ► maybe every other, but our goal, our hope is about one a month. So, and we can keep

02:18:22 ◼   ► watching movies and I'm sure we will, but let's, let's try to figure out as a collective,

02:18:26 ◼   ► let's figure out some other fun stuff to do. And if enough of you do join, then yes, I

02:18:29 ◼   ► will buy a stupid PlayStation and I will play stupid Destiny with my stupid friends.

02:18:33 ◼   ► And your kids will thank you for it. And by the way, for people who don't know, Top Four

02:18:36 ◼   ► is a podcast that Marco does with his wife, Tiff. It is on Relay. We'll put a link in

02:18:41 ◼   ► the show notes. They, I don't want to try to explain it. They ostensibly list the top

02:18:45 ◼   ► for of something, it's an experience. It is an experience for sure. It will make you mad,

02:18:51 ◼   ► guaranteed. Can confirm. And I have to say I have a newfound respect for what they do

02:18:56 ◼   ► in that program, having done just one very easy food-based challenge on a podcast, and

02:19:02 ◼   ► I cannot fathom what these two champions have done to their bodies over the course of this

02:19:07 ◼   ► show. Very, very true. It is like I have a visceral reaction now to thinking about what

02:19:13 ◼   ► there going through.

02:19:15 ◼   ► And that's also why I'm not really gung-ho about new food-based challenges in ATP, but

02:19:19 ◼   ► I may be forced to do so.

02:19:23 ◼   ► Semi-related to membership, which Casey also skipped over because I wanted to put before

02:19:26 ◼   ► this, I'm going to take advantage of my podcast platform to say I'm trying to sell my old

02:19:32 ◼   ► cameras and no one seems to want to buy them.

02:19:34 ◼   ► So I'm going to put a link in the show notes to a webpage I put up for me selling my old

02:19:39 ◼   ► cameras.

02:19:40 ◼   ► I'm being silly and for now trying to sell them to people who are willing to meet up

02:19:45 ◼   ► in the Boston metro area to avoid shipping fees and stuff like that, that's probably

02:19:49 ◼   ► not going to work and it's probably going to fall through and I'm going to have to ship

02:19:51 ◼   ► these too.

02:19:52 ◼   ► But for now, if you live in the Boston metro area and want to buy any of my stuff that's

02:19:57 ◼   ► listed on this webpage that's going to be in the show notes, it's just my old Sony A6300

02:20:00 ◼   ► and a couple lenses for what I think are pretty reasonable prices and everything is in nice

02:20:05 ◼   ► condition, hit me up.

02:20:07 ◼   ► All the information is on the webpage that will be in the show notes or you can just

02:20:10 ◼   ► go to hypercritical.co/for-sale/camera.

02:20:16 ◼   ► Anyway go to the show notes.

02:20:18 ◼   ► And I'm not going to say this is directly related to the bad sponsorships but it's not

02:20:22 ◼   ► not related.

02:20:25 ◼   ► [BEEPING]