PodSearch

ATP

509: Tiny Tyrants

 

00:00:00 ◼   ► - Does anyone have Taylor Swift tickets

00:00:01 ◼   ► they wanna sell me?

00:00:02 ◼   ► Massachusetts shows?

00:00:03 ◼   ► Not for $12,000, which is the current going rate.

00:00:07 ◼   ► - So back up, so I was watching this,

00:00:08 ◼   ► and it happened through Christina Warren,

00:00:11 ◼   ► former and one of the only guests ever on the show,

00:00:14 ◼   ► former guest Christina Warren,

00:00:15 ◼   ► and dear friend of the show.

00:00:16 ◼   ► Anyways, I was watching her try to do her whole rigmarole

00:00:20 ◼   ► in order to get herself Taylor Swift tickets.

00:00:22 ◼   ► So my limited understanding is,

00:00:24 ◼   ► you got in some sort of queue,

00:00:27 ◼   ► and it said there's 2,000 or more people in front of you.

00:00:30 ◼   ► And then she had retweeted,

00:00:32 ◼   ► I doubt I'll be able to find it,

00:00:33 ◼   ► but she had retweeted somebody saying,

00:00:34 ◼   ► in the time I've spent in the queue,

00:00:36 ◼   ► I wrote a Chrome extension to figure out

00:00:38 ◼   ► exactly where you are in the queue, which is amazing.

00:00:42 ◼   ► - The queue that she was in,

00:00:43 ◼   ► I didn't even get a chance to enter that queue

00:00:45 ◼   ► 'cause I lost that lottery.

00:00:47 ◼   ► But today there was another queue that I could get in.

00:00:49 ◼   ► And rather than download that Chrome extension,

00:00:52 ◼   ► I just opened the Chrome dev tools

00:00:53 ◼   ► and looked at the JSON flying by.

00:00:55 ◼   ► I was telling Mark of this before.

00:00:56 ◼   ► And yeah, you can see where you actually are in the queue.

00:00:58 ◼   ► Not that that helps you.

00:00:59 ◼   ► It's like, oh great, now I know, you know,

00:01:01 ◼   ► I started at 15,000 and I'm around 10,000,

00:01:03 ◼   ► even though the UI says 2000 plus.

00:01:05 ◼   ► But that doesn't tell you anything.

00:01:06 ◼   ► Like the rate at which that number went down varied wildly.

00:01:10 ◼   ► Like it went down like thousands in like, you know,

00:01:12 ◼   ► 15 minutes and then didn't budge for like an hour

00:01:15 ◼   ► and then went down three and in the next 15,

00:01:18 ◼   ► it's just, I don't know what it's based on.

00:01:21 ◼   ► You know, we had multiple windows going here

00:01:24 ◼   ► with the same thing, different accounts.

00:01:26 ◼   ► Anyway, the queue closed and they said,

00:01:29 ◼   ► sorry, all the things that we had reserved

00:01:32 ◼   ► for the people who are supposed to buy tickets today

00:01:35 ◼   ► was like Capital One credit card holders.

00:01:37 ◼   ► Sorry, we sold all those out.

00:01:39 ◼   ► So even though you're still in line, tough luck.

00:01:41 ◼   ► See you later.

00:01:42 ◼   ► So Friday is my next chance, my next and final chance.

00:01:45 ◼   ► And Friday is the day that everybody gets a chance

00:01:48 ◼   ► to be in the queue.

00:01:49 ◼   ► So if I couldn't get in the queue

00:01:49 ◼   ► when just competing against Capital One credit card holders,

00:01:52 ◼   ► I don't know what I'm gonna do on Friday.

00:01:54 ◼   ► So you would say that John is a Swifty.

00:01:57 ◼   ► I think that's what we're learning today.

00:01:58 ◼   ► - Tickets are not for me,

00:01:59 ◼   ► although I do like Taylor Swift's music.

00:02:02 ◼   ► - I mean, I think the answer here is like,

00:02:04 ◼   ► the price of seeing Taylor Swift

00:02:06 ◼   ► is just whatever it takes to buy these on StubHub

00:02:08 ◼   ► or whatever, that's the reality here.

00:02:10 ◼   ► It's like, it's not, whatever the list price is,

00:02:12 ◼   ► I mean, it doesn't really matter.

00:02:13 ◼   ► Like, it's like, a handful of lucky people

00:02:16 ◼   ► will get the list price.

00:02:17 ◼   ► For the most part, you're competing with a whole bunch

00:02:18 ◼   ► of bots and scammers probably, and resellers and scalpers,

00:02:21 ◼   ► And so you're gonna have to be either very lucky

00:02:24 ◼   ► or play that game.

00:02:25 ◼   ► - Well yeah, but the actual going rate for tickets

00:02:28 ◼   ► for these shows is, I'm not kidding,

00:02:29 ◼   ► like 11 or $12,000 right now.

00:02:31 ◼   ► - Oh my word.

00:02:32 ◼   ► - I'm not paying that.

00:02:33 ◼   ► - Well, but that's right now.

00:02:35 ◼   ► Wait until the shows are two weeks away

00:02:37 ◼   ► and it'll be different.

00:02:38 ◼   ► - Yeah, we'll see.

00:02:40 ◼   ► - 'Cause right now, no one has the tickets yet.

00:02:41 ◼   ► So everyone's like, oh my god, I need to buy one of that.

00:02:44 ◼   ► But give time for all of the actual tickets

00:02:47 ◼   ► to be acquired by people.

00:02:49 ◼   ► And then a week or two before the show,

00:02:51 ◼   ► you can probably pick them up for maybe a few hundred bucks,

00:02:53 ◼   ► I don't know.

00:02:54 ◼   ► - This is what I get for not being,

00:02:55 ◼   ► well a few hundred bucks is lower than the actual price,

00:02:57 ◼   ► by the way, Mark.

00:02:58 ◼   ► I like the actual word.

00:02:59 ◼   ► - Oh my God, what's the actual price?

00:03:02 ◼   ► - So I believe it's, if you want floor seats,

00:03:05 ◼   ► I had this info before, let me look it up for you

00:03:08 ◼   ► so you can be suitably shocked.

00:03:10 ◼   ► This is not the scalper price, this is the price if you,

00:03:14 ◼   ► for the price if you buy it from Ticketmaster.

00:03:17 ◼   ► - Is floor more desirable or less?

00:03:19 ◼   ► - Yes, the floor seats start at $350 and go up to $900.

00:03:23 ◼   ► That's not the scalper price.

00:03:24 ◼   ► That's the just straight up price, right?

00:03:27 ◼   ► And then the other sections are in the other ranges

00:03:29 ◼   ► as you would imagine.

00:03:30 ◼   ► They have a $200 to $300 range.

00:03:31 ◼   ► And if you're in the bleachers

00:03:33 ◼   ► at the top of the football stadium, it's $50 to $100.

00:03:36 ◼   ► So it varies from basically $1,000 for your best seat

00:03:39 ◼   ► to $50 for your worst.

00:03:40 ◼   ► And they cover every price range in between.

00:03:42 ◼   ► And that is, again, not the scalper price.

00:03:44 ◼   ► That is the price that you pay if you're lucky enough

00:03:46 ◼   ► to get a ticket at the actual retail price.

00:03:48 ◼   ► - I am so happy to be a Fish fan right now.

00:03:50 ◼   ► - That is utterly bananas.

00:03:52 ◼   ► - Yeah, Fish has a few more shows

00:03:53 ◼   ► and is slightly less popular than Teleswap.

00:03:57 ◼   ► - A little, maybe.

00:03:58 ◼   ► - All right, let's do some follow up.

00:04:01 ◼   ► Tell me about what you,

00:04:04 ◼   ► you made many mistakes with your phone transition.

00:04:08 ◼   ► We got some feedback about it.

00:04:10 ◼   ► I am a little annoyed at myself

00:04:12 ◼   ► that I didn't yell one password repeatedly

00:04:14 ◼   ► while you were telling the story because we had your--

00:04:16 ◼   ► - Don't worry, plenty of other people did.

00:04:17 ◼   ► - Okay, good, good, good.

00:04:18 ◼   ► But there are other approaches you could have taken

00:04:20 ◼   ► with regard to moving your 2FA stuff

00:04:23 ◼   ► from one phone to the other.

00:04:24 ◼   ► Can you tell me about this?

00:04:25 ◼   ► - Well, speaking of one password, though,

00:04:26 ◼   ► I did mention on the show, I thought,

00:04:27 ◼   ► every time I get a list of people,

00:04:28 ◼   ► I'm like, did Marco edit this out?

00:04:29 ◼   ► This is the thought I always have

00:04:30 ◼   ► when the feedback starts coming in.

00:04:32 ◼   ► I'm like, did Marco edit this out?

00:04:33 ◼   ► And the answer's almost always, no, he didn't edit out.

00:04:35 ◼   ► People just haven't gotten to that part in the show yet.

00:04:37 ◼   ► - But that almost is how I keep you on your toes.

00:04:40 ◼   ► - Yeah. (laughing)

00:04:41 ◼   ► Or they just didn't hear me when I said it.

00:04:42 ◼   ► But I do have the two-factor stuff

00:04:46 ◼   ► on more than one device.

00:04:47 ◼   ► The reason I didn't want to just like,

00:04:48 ◼   ► why didn't you just take the phone, bring it home,

00:04:50 ◼   ► and you know, blah, blah, blah.

00:04:51 ◼   ► Well, then there's two things to that.

00:04:52 ◼   ► One is I did want to do the device-to-device transfer

00:04:55 ◼   ► because based on my last experience,

00:04:56 ◼   ► I have learned that that is the best way to do it

00:04:58 ◼   ► and I don't want to have to sign into everything.

00:05:00 ◼   ► So restoring from an iCloud backup is not as good,

00:05:03 ◼   ► it seems like, as device-to-device transfer.

00:05:05 ◼   ► So I still have to do the device-to-device transfer.

00:05:06 ◼   ► But secondly, yeah, I've got it on another device,

00:05:08 ◼   ► but like the whole point of redundancy is not to,

00:05:11 ◼   ► you know, two is one, one is none.

00:05:13 ◼   ► If I only have it on one other device,

00:05:15 ◼   ► I don't want to also have that device be screwed up.

00:05:19 ◼   ► I don't want to risk it.

00:05:20 ◼   ► Like say I hit the wrong button when

00:05:21 ◼   ► I'm trying to do the export or whatever

00:05:22 ◼   ► and I delete it instead of exporting it.

00:05:24 ◼   ► Now I've just destroyed my one and only backup of that stuff.

00:05:27 ◼   ► That's why-- and yes, lots of things sync.

00:05:30 ◼   ► iCloud keychain syncs, one passport syncs,

00:05:32 ◼   ► all these things.

00:05:33 ◼   ► There's tons and tons of two-factor apps.

00:05:34 ◼   ► I probably will eventually get everything

00:05:37 ◼   ► into iCloud keychain because that's kind of where

00:05:39 ◼   ► I'm going with this.

00:05:41 ◼   ► Now that it syncs and now that it supports two-factor stuff,

00:05:43 ◼   ► I just haven't gotten around to it.

00:05:44 ◼   ► So anyway, setting that aside, what if you just don't want to do this whole thing like

00:05:48 ◼   ► sitting in the Apple Store for hours?

00:05:50 ◼   ► There are other options, and I could have pursued these, which involve not going to

00:05:53 ◼   ► an Apple Store and just doing it on the telephone, right?

00:05:56 ◼   ► I mostly went to the Apple Store because I wanted to talk to a human, and I needed to

00:06:00 ◼   ► see another iPhone 14 Pro to say, to convince myself, is there something wrong with my camera

00:06:05 ◼   ► or is it just me being weird and picky?

00:06:07 ◼   ► And that's why I needed to get hands-on an ostensibly working 14 Pro to compare, and

00:06:12 ◼   ► And also to talk to the person in the Apple store who sees these phones all day and say,

00:06:15 ◼   ► "Does this look like it's broken to you or does it just look like that's what they're

00:06:18 ◼   ► all like?"

00:06:19 ◼   ► And that's not the type of thing I can do over the phone with somebody.

00:06:22 ◼   ► I could have convinced the person over the phone to say, "Look, I just think the camera's

00:06:25 ◼   ► bad.

00:06:26 ◼   ► You need to send me a replacement."

00:06:27 ◼   ► But anyway, the reason the phone comes up is if you do it over the phone, you can get

00:06:31 ◼   ► them to overnight you a device and then you can do the data transfer at your leisure in

00:06:36 ◼   ► your house and then send it back.

00:06:37 ◼   ► And I believe they just charge your credit card or authorize your credit card for the

00:06:40 ◼   ► purchase so if you don't send it back you're out the money.

00:06:43 ◼   ► Particles on Twitter said that if you get AppleCare Plus with theft and loss protection

00:06:47 ◼   ► you get the Express replacement.

00:06:49 ◼   ► I think they probably still authorize your credit card.

00:06:52 ◼   ► I'm not sure if Express replacement is only if you have theft and loss.

00:06:56 ◼   ► I'm pretty sure you can get them to cross ship you something if you are convincing enough

00:06:59 ◼   ► over the telephone.

00:07:00 ◼   ► What I am kind of disappointed in is when I was complaining about that I had to spend

00:07:03 ◼   ► three hours in the Apple store, the Apple store employee never said, "Oh well if you

00:07:08 ◼   ► don't want to do that now that we've gone through all the rigamarole and I've tested

00:07:11 ◼   ► your phone and brought it into the back and we tried.

00:07:12 ◼   ► Now that we did all that, you don't have to get it replaced here.

00:07:15 ◼   ► You can just go home and call them on the phone and that's probably what I should have

00:07:18 ◼   ► done.

00:07:19 ◼   ► They didn't say that to me.

00:07:20 ◼   ► I don't have theft and loss protection so maybe that's why they didn't say that to me.

00:07:24 ◼   ► But either way, next time I do it I have many other options.

00:07:27 ◼   ► I can by that point have moved all my two factors off to something that syncs.

00:07:34 ◼   ► It depends on what the problem is.

00:07:35 ◼   ► If I don't have a camera issue that I need to see in person,

00:07:37 ◼   ► I could just do it all over the phone

00:07:38 ◼   ► and have them cross-ship me something.

00:07:40 ◼   ► Anyway, so just FYI,

00:07:42 ◼   ► if you don't want to spend three hours in the Apple Store

00:07:44 ◼   ► listening to people tell Apple Store employees

00:07:47 ◼   ► about their computer problems,

00:07:49 ◼   ► consider doing it over the phone.

00:07:51 ◼   ► - And then we could even set up a special Apple Watch face

00:07:56 ◼   ► when you're in the Apple Store.

00:07:57 ◼   ► Do you want to tell me about that?

00:07:58 ◼   ► - I don't have an Apple, I do have an Apple Watch.

00:08:00 ◼   ► I wonder if it's so dead that it won't boot anymore.

00:08:02 ◼   ► I should take it out and try it.

00:08:03 ◼   ► And my Series 0, my awesome looking Series 0,

00:08:05 ◼   ► still lurking in my drawer.

00:08:07 ◼   ► Anyway, Alex, Siri, you wrote in to tell us,

00:08:10 ◼   ► I enjoyed the episode with the PSA

00:08:11 ◼   ► about customizing complications on Apple Watch faces,

00:08:13 ◼   ► and I wanted to share one more cool thing with watch faces.

00:08:15 ◼   ► You can change them with personal automations

00:08:17 ◼   ► in the Shortcuts app.

00:08:18 ◼   ► Every Friday at 5 PM, my watch automatically

00:08:20 ◼   ► switches to the weekend face.

00:08:22 ◼   ► And every Sunday at 9 PM, it switches to the weekday face.

00:08:24 ◼   ► These both run without intervention

00:08:26 ◼   ► and without any extraneous notifications.

00:08:28 ◼   ► And what's especially cool is that any automation

00:08:30 ◼   ► can trigger-- that you can trigger in Shortcuts

00:08:31 ◼   ► can be used.

00:08:32 ◼   ► So an event like arriving at a location

00:08:34 ◼   ► or connecting to a specific Bluetooth device

00:08:36 ◼   ► can cause a change to your watch face.

00:08:39 ◼   ► Might be something Marco used to switch over

00:08:40 ◼   ► to sand driving watch face when he gets in the car

00:08:42 ◼   ► or just when he arrives at the beach.

00:08:44 ◼   ► That is cool, like shortcuts,

00:08:46 ◼   ► one of the great powerful features of it

00:08:48 ◼   ► is that shortcuts can do things,

00:08:50 ◼   ► you don't have to trigger them.

00:08:51 ◼   ► Like they can do things based on environmental factors

00:08:54 ◼   ► that they are aware of.

00:08:55 ◼   ► And having your watch face kind of automatically change

00:08:57 ◼   ► based on your location or time of day or day of the week

00:09:00 ◼   ► is kind of a cool thing if you do have multiple watch faces

00:09:03 ◼   ► and you don't wanna bother like swiping

00:09:05 ◼   ► between them manually.

00:09:06 ◼   ► - Excellent, Matt Friedman writes,

00:09:08 ◼   ► with regard to why bother with new Apple TV,

00:09:11 ◼   ► if anybody still has a first gen Apple TV 4K,

00:09:14 ◼   ► a second or third gen model will allow them

00:09:16 ◼   ► to watch HDR on YouTube without having to swap back

00:09:18 ◼   ► to the TV's native YouTube app,

00:09:20 ◼   ► which may or may not support it

00:09:21 ◼   ► depending on the age of your TV, which is pretty cool.

00:09:23 ◼   ► - I didn't even realize that I had totally forgotten

00:09:26 ◼   ► that there was a second or third gen Apple TV 4K

00:09:28 ◼   ► as we were talking on Twitter about this

00:09:30 ◼   ► And I was like, I'm pretty sure I get HDR in YouTube app.

00:09:33 ◼   ► That's what I was using to demo when I got my new TV

00:09:36 ◼   ► or whatever.

00:09:37 ◼   ► I didn't need the brand new Apple TV 4K,

00:09:39 ◼   ► like the smaller one that we were just talking about last

00:09:41 ◼   ► show.

00:09:41 ◼   ► I didn't need that to watch HDR.

00:09:43 ◼   ► So I was like, but you didn't have the second gen model,

00:09:46 ◼   ► did you?

00:09:47 ◼   ► You have the second gen, the first gen.

00:09:48 ◼   ► I'm like, I don't know.

00:09:49 ◼   ► Yeah, there was apparently a first gen Apple TV 4K.

00:09:51 ◼   ► And for whatever reason, it didn't get HDR in YouTube.

00:09:55 ◼   ► That's the problem with these product lines.

00:09:57 ◼   ► I mean, not that I endorse the idea of having something

00:10:00 ◼   ► parentheses to differentiate them, but the generation names are kind of worse than the

00:10:04 ◼   ► year number because I had totally forgotten about that one. So if you're wondering, "Hey,

00:10:08 ◼   ► I already have an Apple TV 4K, why the heck would I want this new one that's slightly

00:10:11 ◼   ► smaller?" If you have a first gen Apple TV 4K and you care at all about HDR on the YouTube

00:10:15 ◼   ► app, get one of the new ones.

00:10:17 ◼   ► Good talk. Jacob writes, "With regard to using multiple smart albums to work around the lack

00:10:23 ◼   ► of nested Boolean logic in Mac OS's photo smart albums, unfortunately photos doesn't

00:10:28 ◼   ► allow you to reference another smart album into smart album's conditions.

00:10:31 ◼   ► Whoopsie doopsies.

00:10:32 ◼   ► I couldn't believe that.

00:10:33 ◼   ► I would have to go double check it and see if it was true.

00:10:35 ◼   ► It's like, how?

00:10:36 ◼   ► Why?

00:10:37 ◼   ► Like, things are so weird and limited.

00:10:38 ◼   ► Like that has to be possible.

00:10:39 ◼   ► Like, that's the awkward work around we talked about, but no, he's right.

00:10:42 ◼   ► It's not possible.

00:10:43 ◼   ► It'll let you reference, I think it'll let you reference an album, but not a smart album.

00:10:47 ◼   ► Smart albums are so weird.

00:10:48 ◼   ► Like iOS has no idea that they exist and they're just so powerful and cool.

00:10:51 ◼   ► I wish they would like get first class treatment across all of Apple's platforms.

00:10:55 ◼   ► If only.

00:10:56 ◼   ► This is a YouTube topic,

00:10:59 ◼   ► would you like to cover this actually?

00:11:01 ◼   ► - Sure, Aaron wrote in to say,

00:11:02 ◼   ► maybe the YouTube album removal page fell away

00:11:05 ◼   ► because Apple added the ability to hide purchases.

00:11:07 ◼   ► We'll put a link in the show notes to a support article

00:11:09 ◼   ► that lets you just basically pick anything

00:11:11 ◼   ► in your library, your iTunes library, and just hide it.

00:11:15 ◼   ► Removing from an account requires contact to support,

00:11:17 ◼   ► but this is a non-destructive solution

00:11:19 ◼   ► that is enough for almost everybody.

00:11:20 ◼   ► So if you listened to the last show and you're like,

00:11:21 ◼   ► "Oh no, I've got the YouTube album

00:11:22 ◼   ► "and the delete page is gone.

00:11:24 ◼   ► "What do I do?

00:11:24 ◼   ► "I don't wanna call support."

00:11:25 ◼   ► you can just hide it and then forget that it exists.

00:11:28 ◼   ► We were brought to you this week by Linode,

00:11:31 ◼   ► my favorite place to run servers.

00:11:33 ◼   ► Visit linode.com/ATP and see why Linode has been voted

00:11:37 ◼   ► the top infrastructure as a service provider

00:11:39 ◼   ► by both G2 and TrustRadius.

00:11:42 ◼   ► I host all of my servers at Linode because frankly,

00:11:45 ◼   ► they just make it really easy and they're a fantastic value.

00:11:49 ◼   ► So value, I can't say enough how great of a value they are.

00:11:52 ◼   ► We'll start there.

00:11:53 ◼   ► It is incredible.

00:11:55 ◼   ► What you get at Linode, what you're paying for the resource

00:11:57 ◼   ► levels you have is unmatched in the industry.

00:11:59 ◼   ► And I've been with them for a very long time, many years now.

00:12:02 ◼   ► And they've always been the best value in the business.

00:12:04 ◼   ► I've never found anybody better than them.

00:12:06 ◼   ► And then capability-wise, they have pretty much everything

00:12:09 ◼   ► you might want to run servers these days.

00:12:11 ◼   ► So of course, they have cloud instances,

00:12:13 ◼   ► what used to be called VPSs or server instances.

00:12:16 ◼   ► They have any kind of resource level

00:12:18 ◼   ► you might need from very small and inexpensive to very big

00:12:22 ◼   ► or very specialized needs.

00:12:23 ◼   ► so high memory plans, dedicated CPU plans,

00:12:26 ◼   ► GPU compute plans, and more.

00:12:28 ◼   ► And they also have now managed services too.

00:12:30 ◼   ► So they recently launched their managed database service

00:12:34 ◼   ► that supports MySQL, Postgres, Mongo,

00:12:37 ◼   ► and so much more coming in the future.

00:12:39 ◼   ► And they have things like managed backups,

00:12:41 ◼   ► managed load balancers, all sorts of block storage,

00:12:45 ◼   ► object storage, which is S3 compatible,

00:12:47 ◼   ► and so much more, all of this at Linode.

00:12:50 ◼   ► And it's just an amazing value

00:12:52 ◼   ► to price per compute, and they have all this backed

00:12:55 ◼   ► by great support, a great API, a great interface

00:12:58 ◼   ► for managing stuff, so I have nothing bad to say

00:13:01 ◼   ► about Linode, I've used them for a very long time.

00:13:03 ◼   ► I pay for them out of my own pocket,

00:13:05 ◼   ► like they don't comp my servers or anything,

00:13:06 ◼   ► I pay for it all myself and it is an incredible value,

00:13:09 ◼   ► I'm there very happily.

00:13:11 ◼   ► So visit linode.com/atp, create a free account there,

00:13:15 ◼   ► and you get $100 in credit.

00:13:17 ◼   ► Once again, linode.com/atp, new accounts there,

00:13:21 ◼   ► $100 in credit. Thank you so much to Linode for being a great place to run my servers and for sponsoring our show

00:13:27 ◼   ► Elon Musk has decided to fire basically any Twitter employee that

00:13:36 ◼   ► Criticizes him because he is the thinnest skinned human that has ever lived. It was kind of another day

00:13:41 ◼   ► I forget what day was another day on Twitter watching, you know, the the Elon Musk drama and he was saying stupid things

00:13:48 ◼   ► You know spouting like every day

00:13:50 ◼   ► Yeah spouting off the way you would expect like a teenager who has just learned a program would spout off about something company, right?

00:13:57 ◼   ► Oh, he's he's he owns the company, but he's like these dummies

00:14:01 ◼   ► They're doing this the thing reason this is closed

00:14:03 ◼   ► Slow is because of XYZ and then one of the engineers who works on the thing that he was talking about said actually that's not

00:14:08 ◼   ► True. Here's the actual situation and laid out in a series of I thought very polite and concise technically accurate tweets from a developer

00:14:14 ◼   ► who knows, here's the actual situation.

00:14:16 ◼   ► And then Elon Musk said later that he fired that guy,

00:14:19 ◼   ► and he did.

00:14:20 ◼   ► 'Cause he didn't like being,

00:14:21 ◼   ► and then all of the Elon fanboys were like,

00:14:24 ◼   ► that's what happens if you publicly contradict the boss,

00:14:27 ◼   ► you should say that stuff in private.

00:14:29 ◼   ► You know, like don't contradict the CEO of your company

00:14:32 ◼   ► on Twitter and just publicly embarrass him.

00:14:34 ◼   ► Well, A, if he's doing an embarrassing thing,

00:14:36 ◼   ► he's really just embarrassing himself.

00:14:37 ◼   ► And B, I would hope that publicly correcting the CEO

00:14:41 ◼   ► of your company is not an immediately fireable offense,

00:14:43 ◼   ► but apparently in Twitter it is, right?

00:14:44 ◼   ► And so then the obvious followup to that is

00:14:48 ◼   ► people who were saying mean things about Elon Musk

00:14:51 ◼   ► on Twitter's internal Slack also fired.

00:14:54 ◼   ► Because Elon asked a bunch of people

00:14:57 ◼   ► to go through all the messages on the internal Slack

00:14:59 ◼   ► and find all the people who said mean things about them

00:15:01 ◼   ► and fire them.

00:15:02 ◼   ► And so they got an email at 1.30 a.m.

00:15:04 ◼   ► telling them that they were no longer employed by Twitter.

00:15:07 ◼   ► So yeah, he's a big jerk and a dummy head

00:15:10 ◼   ► and he does hilariously, like sort of comic book,

00:15:15 ◼   ► comic book villain, comic book petulant villain,

00:15:17 ◼   ► like Dr. Evil, like I don't even know.

00:15:20 ◼   ► I just, it really, you know, it really boggles my mind

00:15:24 ◼   ► that people can still find something to not admire

00:15:28 ◼   ► in just like a, you know,

00:15:29 ◼   ► a petulant thin-skinned billionaire bully,

00:15:32 ◼   ► but here he is doing what he does.

00:15:34 ◼   ► - I'm starting to try to figure out like,

00:15:36 ◼   ► what has made his other companies successful?

00:15:41 ◼   ► - Delegation, baby, that's what.

00:15:43 ◼   ► - Does he, though?

00:15:44 ◼   ► It seems like he has made a lot of good bets

00:15:49 ◼   ► in what to invest in and what direction to go in.

00:15:54 ◼   ► He wasn't the original founder of Tesla,

00:15:56 ◼   ► but he got in super early, took it over,

00:16:00 ◼   ► probably kicked out the actual founders.

00:16:02 ◼   ► - Yeah, I don't know the details,

00:16:03 ◼   ► but basically, he got in there early,

00:16:06 ◼   ► And I think Tesla, I think he really benefited that company.

00:16:11 ◼   ► His direction and his boldness in a lot of ways

00:16:17 ◼   ► I think really helped Tesla product-wise.

00:16:20 ◼   ► - And his ability to get them enough money

00:16:22 ◼   ► so they didn't go out of business.

00:16:23 ◼   ► I think that is the key thing that he brought to the table

00:16:25 ◼   ► because without him scrambling for money,

00:16:28 ◼   ► or again, another person who was equally good

00:16:30 ◼   ► at scrambling for money because that is a skill

00:16:32 ◼   ► that a lot of people have,

00:16:33 ◼   ► finding a way to keep the company afloat

00:16:35 ◼   ► by any means necessary, including lying,

00:16:38 ◼   ► which he's in trouble for with the SEC.

00:16:40 ◼   ► But whatever, he did what it took

00:16:42 ◼   ► to make sure Tesla did not go out of business.

00:16:44 ◼   ► - Yeah, but it seems, it just seems like

00:16:47 ◼   ► the things that succeed are in spite of him,

00:16:51 ◼   ► not because of him.

00:16:52 ◼   ► And that for people in these companies

00:16:54 ◼   ► to produce good work, they're almost just kinda using him

00:16:58 ◼   ► as like the bank and like the guy who gets the money

00:17:02 ◼   ► from investors/lying to the stock market.

00:17:04 ◼   ► - And they also have to learn how to navigate him.

00:17:07 ◼   ► They also have to, like the people,

00:17:08 ◼   ► the companies that are able to succeed

00:17:10 ◼   ► with him running them have, are filled with people

00:17:13 ◼   ► who have learned how to get the job done

00:17:16 ◼   ► within the parameters laid out by him.

00:17:19 ◼   ► What those parameters might be,

00:17:21 ◼   ► and I'm sure they change from company to company.

00:17:23 ◼   ► Right now the parameters are,

00:17:24 ◼   ► if you say anything mean about me, I fire you.

00:17:25 ◼   ► So if you are inside Twitter and you're like,

00:17:28 ◼   ► I really want Twitter to succeed,

00:17:29 ◼   ► how do I make that happen?

00:17:30 ◼   ► You would have to learn to navigate the environment

00:17:32 ◼   ► which if you ever say anything mean or contradictory

00:17:35 ◼   ► to your boss, even when your boss is totally wrong,

00:17:37 ◼   ► you're gonna get fired.

00:17:37 ◼   ► So figure out how to navigate that,

00:17:39 ◼   ► and then figure out how to succeed despite that.

00:17:43 ◼   ► I don't think he's necessarily always been like that,

00:17:46 ◼   ► but right now at Twitter, that's what he's like.

00:17:48 ◼   ► So those are the parameters, and those parameters suck.

00:17:52 ◼   ► - What gave me hope initially is,

00:17:54 ◼   ► when you look at the list of his other companies,

00:17:56 ◼   ► as I said a few episodes ago,

00:17:58 ◼   ► he tries to solve hard problems.

00:18:01 ◼   ► and running a giant social network,

00:18:04 ◼   ► especially one that doesn't print money

00:18:06 ◼   ► and needs a lot of help in that department,

00:18:08 ◼   ► but just running a giant social network

00:18:10 ◼   ► is a hugely hard problem.

00:18:12 ◼   ► And I think the difference here is that

00:18:17 ◼   ► the really hard problems in his other companies

00:18:20 ◼   ► were mostly engineering problems or--

00:18:23 ◼   ► - Or financial problems.

00:18:24 ◼   ► - Yeah, like problems getting difficult things to market,

00:18:28 ◼   ► things that are difficult to make,

00:18:30 ◼   ► getting them to market and keeping the lights on

00:18:33 ◼   ► and keeping the money coming in.

00:18:34 ◼   ► Those are hard problems.

00:18:36 ◼   ► Running a social network that's already established

00:18:40 ◼   ► is not mostly an engineering problem,

00:18:42 ◼   ► it's mostly a people problem.

00:18:45 ◼   ► And he is just the worst with people.

00:18:48 ◼   ► He is horrendously bad and every week, every day,

00:18:51 ◼   ► every hour he finds new ways to be horrendously bad

00:18:54 ◼   ► with dealing with people,

00:18:55 ◼   ► both his own people and the public.

00:18:57 ◼   ► And I just, I don't, I'm having a really hard time

00:19:00 ◼   ► seeing how this ends well.

00:19:02 ◼   ► Because there is no engineering product to make here

00:19:07 ◼   ► that is the final product.

00:19:08 ◼   ► There is no like, all right, we succeeded in building

00:19:11 ◼   ► the rocket hover car or whatever.

00:19:12 ◼   ► There is no end here like that,

00:19:15 ◼   ► the way there is with these other companies.

00:19:16 ◼   ► This is just something very difficult.

00:19:19 ◼   ► This is like running a messy political human set

00:19:23 ◼   ► of human problems of humans.

00:19:25 ◼   ► and he's even worse than Google

00:19:28 ◼   ► at dealing with human problems.

00:19:30 ◼   ► He is so disgustingly bad at dealing with people.

00:19:35 ◼   ► And this latest thing with the email of,

00:19:39 ◼   ► better be prepared to work 24/7 or get fired,

00:19:42 ◼   ► like, God, I'm so mad about that.

00:19:44 ◼   ► - Yep, so we'll put links in the show notes of both these.

00:19:46 ◼   ► First is a New York Times article

00:19:48 ◼   ► about the firing people who criticize them.

00:19:49 ◼   ► The next is a Washington Post article.

00:19:52 ◼   ► The headline is, "Musk issues ultimatum to staff.

00:19:53 ◼   ► "commit to quote unquote hardcore Twitter

00:19:56 ◼   ► "or take severance."

00:19:57 ◼   ► Here's the summary.

00:19:58 ◼   ► Employees were told that they had to sign a pledge

00:20:00 ◼   ► to stay on with the company.

00:20:01 ◼   ► Quote, this is from the email,

00:20:02 ◼   ► "If you're sure that you wanna be part of the new Twitter,

00:20:05 ◼   ► "please click yes on the link below."

00:20:08 ◼   ► Anyone who did not sign the pledge

00:20:09 ◼   ► by five p.m. Eastern time Thursday

00:20:11 ◼   ► will receive three months severance pay.

00:20:12 ◼   ► The message said, "In the midnight email,"

00:20:14 ◼   ► which is obtained by Washington Post,

00:20:15 ◼   ► Musk said, "We will need to be extremely hardcore.

00:20:17 ◼   ► "Going forward, this will mean working,"

00:20:19 ◼   ► this is a quote, "This will mean working long hours

00:20:21 ◼   ► "at high intensity," he said,

00:20:22 ◼   ► "Only exceptional performance will constitute a passing grade.

00:20:25 ◼   ► The pledge email paired with a new policy mandating a return to the office is expected

00:20:29 ◼   ► to lead to even more attrition at the company whose staff Musk had already reduced by half."

00:20:33 ◼   ► So he's basically saying, he's sort of getting the company ready to say, "Look, it's going

00:20:37 ◼   ► to be hard, you're going to have to work long hours and sign this pledge saying if you're

00:20:42 ◼   ► up for that and if you're not up for that, that's great, you get three months severance,

00:20:45 ◼   ► see you later."

00:20:46 ◼   ► Because to your point earlier, Margo, this not being a technical problem, he wants it

00:20:51 ◼   ► to be a technical problem.

00:20:52 ◼   ► And he has created, not created, but like he has identified a technical challenge.

00:20:57 ◼   ► In his mind, I think the technical challenge is like this company, it's, you know, is inefficient.

00:21:01 ◼   ► Like their infrastructure, though it may work fine and there's no more failwales, it's,

00:21:05 ◼   ► you know, it could be done better.

00:21:06 ◼   ► Smarter people could make this better.

00:21:07 ◼   ► We can cut our infrastructure costs, save a lot of money.

00:21:10 ◼   ► Like it's, it's bloated and overrun.

00:21:11 ◼   ► There's a lot of stuff we probably don't need.

00:21:13 ◼   ► And the stuff we do need could be more efficient, right?

00:21:16 ◼   ► He's decided, because I think that's what appeals to him, that that is the technical

00:21:20 ◼   ► challenge in front of them.

00:21:21 ◼   ► And what he wants is a crack team of people who are willing to sacrifice their own lives,

00:21:27 ◼   ► family, mental and physical health, who will never contradict him or say anything mean

00:21:33 ◼   ► to him or about him, even when he's entirely wrong, to destroy themselves to help him achieve

00:21:38 ◼   ► that goal.

00:21:39 ◼   ► And as you pointed out, it's alright.

00:21:41 ◼   ► So you snap your fingers and you achieve that goal.

00:21:43 ◼   ► Have you solved any problem for Twitter?

00:21:46 ◼   ► Like yeah, you probably saved a little bit of money in infrastructure.

00:21:49 ◼   ► hey, let's say you can cut their infrastructure costs

00:21:51 ◼   ► in half, have you found a way to make enough money

00:21:54 ◼   ► to service your debt now that all the advertisers are gone

00:21:56 ◼   ► because of the other stupid things that you did?

00:21:58 ◼   ► Probably not, right?

00:21:59 ◼   ► So I don't know why he's identified that as a problem

00:22:01 ◼   ► that is super important to tackle,

00:22:03 ◼   ► and I think if you are going to tackle that,

00:22:05 ◼   ► trying to tell the entire company that you have, you know,

00:22:08 ◼   ► you have until tomorrow at 5 p.m. to sign this pledge

00:22:12 ◼   ► saying you will destroy yourself from me,

00:22:14 ◼   ► otherwise you're fired.

00:22:15 ◼   ► I mean, it seems like that's not the best way

00:22:18 ◼   ► to staff up for attacking this problem.

00:22:21 ◼   ► And the only thing I can say is like,

00:22:22 ◼   ► maybe if you had a startup and you're like,

00:22:24 ◼   ► look, I'm gonna be the worst startup CEO ever,

00:22:27 ◼   ► I'm gonna destroy everybody who works for me,

00:22:29 ◼   ► they're all gonna burn out,

00:22:30 ◼   ► but the few that don't will get a big payday from an IPO.

00:22:33 ◼   ► And by the way, we don't have a product yet,

00:22:35 ◼   ► but this crack team is gonna build it.

00:22:36 ◼   ► But that's not the situation at Trigger.

00:22:37 ◼   ► They already got the product.

00:22:39 ◼   ► They already got a big company with the product,

00:22:40 ◼   ► they don't have to build it.

00:22:41 ◼   ► And it's almost like he wants to destroy it

00:22:43 ◼   ► so it becomes nothing, and then build it back up from zero

00:22:46 ◼   ► with his crack team of burned out

00:22:48 ◼   ► sycophants. And I mean, that's one way to go about it. But it's

00:22:52 ◼   ► just totally like, you know, destructive to value destructive

00:22:57 ◼   ► to people's lives. And this is the point that Twitter already

00:23:00 ◼   ► exists. Like you don't have to build it, it's already there.

00:23:03 ◼   ► You just need to learn how to run it in such a way that it

00:23:06 ◼   ► makes money and is better in whatever way you decide is

00:23:09 ◼   ► better.

00:23:09 ◼   ► You're right. Like he's so over focused on the technical side,

00:23:14 ◼   ► and the overhead side.

00:23:15 ◼   ► Even if he's correct, they were overstaffed before.

00:23:20 ◼   ► Maybe not as much as he thinks they were,

00:23:22 ◼   ► but they were overstaffed before.

00:23:24 ◼   ► And we have heard stories that their technical stack

00:23:27 ◼   ► was kind of a mess.

00:23:28 ◼   ► However, that's not the hard part about running Twitter.

00:23:32 ◼   ► The hard part about running Twitter

00:23:34 ◼   ► is all the people issues, all the politics issues,

00:23:36 ◼   ► all the abuse issues.

00:23:39 ◼   ► - Policies, incentives, and business models.

00:23:41 ◼   ► Those are the actual hard parts,

00:23:42 ◼   ► but he's not interested in those.

00:23:43 ◼   ► he's interested and I wanna write code,

00:23:45 ◼   ► because that, I don't know, that seems more fun.

00:23:47 ◼   ► - Or at least it's, he's going in there,

00:23:50 ◼   ► look, every 20 year old, every like smart 20 year old

00:23:54 ◼   ► programmer has left college where they were the smart

00:23:58 ◼   ► 20 year old hotshot and they go get a job

00:24:01 ◼   ► and they look at everything around them

00:24:02 ◼   ► and they're like, that's stupid, why is it done that way?

00:24:05 ◼   ► We should just X, right?

00:24:08 ◼   ► And it's the dumb 20 year old thing to do.

00:24:10 ◼   ► We've all been there, most of us,

00:24:11 ◼   ► myself included, have been that guy.

00:24:14 ◼   ► I, like, you look at something from an ignorant,

00:24:18 ◼   ► inexperienced point of view and you think,

00:24:21 ◼   ► this is a much simpler problem than these other idiots

00:24:24 ◼   ► seem to make it out to be, I'm gonna waltz in there

00:24:26 ◼   ► and make a simple fix.

00:24:27 ◼   ► And then you waltz in there and you realize,

00:24:29 ◼   ► oh God, this is way more complicated than I thought it was,

00:24:32 ◼   ► or it was done this way for a reason,

00:24:34 ◼   ► and you get your butt kicked effectively.

00:24:36 ◼   ► - But what if you didn't have to ever realize that,

00:24:39 ◼   ► because what you could do is simply fire everyone

00:24:40 ◼   ► who contradicted you.

00:24:41 ◼   ► (laughing)

00:24:43 ◼   ► Like imagine if the 20 year old comes into the company,

00:24:45 ◼   ► says that, and instead of learning a hard lesson

00:24:47 ◼   ► by trying to rewrite something and messing up production

00:24:51 ◼   ► and getting a stern talking to and blah, blah, blah,

00:24:53 ◼   ► if instead they came in and said that,

00:24:55 ◼   ► the people who knew better corrected him

00:24:57 ◼   ► and then the 20 year old fired them.

00:24:59 ◼   ► Right, that's the situation we're in.

00:25:01 ◼   ► It's like, that's not a path to success.

00:25:06 ◼   ► Again, I want Twitter to succeed.

00:25:10 ◼   ► I decreaseingly want him to succeed.

00:25:13 ◼   ► I think he's such a horrible person right now.

00:25:17 ◼   ► Like the way he--

00:25:18 ◼   ► - He did say he's gonna get someone else to be CEO,

00:25:20 ◼   ► which is, I think maybe he's getting tired

00:25:21 ◼   ► of people yelling at him,

00:25:22 ◼   ► so like someone else can run the company

00:25:24 ◼   ► and he can go back to whatever he normally does.

00:25:26 ◼   ► - You know, all I can say is like,

00:25:28 ◼   ► keep the heat up, everyone.

00:25:29 ◼   ► Like keep telling him how much of a piece of crap he is.

00:25:32 ◼   ► - Unless you're a Twitter employee,

00:25:34 ◼   ► in which case you're gonna get fired.

00:25:35 ◼   ► (laughing)

00:25:36 ◼   ► And the downside, I mean, God, oh God,

00:25:38 ◼   ► my opinion of him is dropping so quickly.

00:25:42 ◼   ► I've decided I'm selling my Tesla,

00:25:44 ◼   ► I don't want it anymore, I don't want him anymore.

00:25:46 ◼   ► I'm still gonna be on Twitter

00:25:47 ◼   ► because I want Twitter to succeed,

00:25:49 ◼   ► but God, I wish it wasn't his.

00:25:51 ◼   ► And I outlined last week why I want Twitter to succeed.

00:25:55 ◼   ► And we'll get to a little bit more of that later,

00:25:57 ◼   ► but I want everything bad to happen to him.

00:26:01 ◼   ► I want him to be constantly trolled,

00:26:04 ◼   ► I want him to not have any peace in his life

00:26:08 ◼   ► so that, 'cause people are constantly telling him

00:26:10 ◼   ► how much of an a** and an idiot he is.

00:26:12 ◼   ► That's what I want for him, because he,

00:26:14 ◼   ► what he does to people.

00:26:15 ◼   ► 'Cause here's the thing, like, this email he sent,

00:26:17 ◼   ► I mean, this angered me on so many levels,

00:26:19 ◼   ► this thing, this ultimatum that you have to become,

00:26:21 ◼   ► you know, work your butt off extra hours forever or leave.

00:26:26 ◼   ► That is such like Silicon Valley toxic workaholism culture.

00:26:33 ◼   ► and I take such deep offense to that in our industry.

00:26:37 ◼   ► It's a huge problem in our industry

00:26:38 ◼   ► and I've talked about it before,

00:26:40 ◼   ► I am so strongly against that workaholism culture

00:26:44 ◼   ► because it has so many negative effects.

00:26:46 ◼   ► Because the thing is, not everyone is

00:26:48 ◼   ► some 20 year old hotshot who wants to sleep at the office

00:26:51 ◼   ► and eat pizza in Silicon Valley, like the TV show.

00:26:54 ◼   ► Not everyone is like that and not everyone can do that.

00:26:57 ◼   ► And when you create a workplace

00:27:00 ◼   ► where that's the only acceptable culture,

00:27:02 ◼   ► Not only does it burn out those people

00:27:06 ◼   ► who are willing to do that,

00:27:07 ◼   ► but it excludes tons of people

00:27:09 ◼   ► who can't or won't work that way.

00:27:12 ◼   ► And then it creates other things, like for instance,

00:27:14 ◼   ► one of the problems we now have is that

00:27:17 ◼   ► as the tech industry is laying off tons of people,

00:27:19 ◼   ► we have to deal with H1B visa holders,

00:27:22 ◼   ► where this is the type of visa,

00:27:23 ◼   ► for anyone who doesn't know, in the US,

00:27:26 ◼   ► we offer visas for people who are not US citizens

00:27:29 ◼   ► to come here and work using this work visa.

00:27:33 ◼   ► And I don't know the details, forgive me,

00:27:35 ◼   ► but the company who you're working for

00:27:37 ◼   ► kind of sponsors it in some way.

00:27:39 ◼   ► So a lot of people who are gonna stay,

00:27:41 ◼   ► who are gonna keep working for this jerk,

00:27:44 ◼   ► are H-1B visa holders who,

00:27:47 ◼   ► if they decide not to accept his terms,

00:27:49 ◼   ► they have to leave the country.

00:27:51 ◼   ► And that's a serious thing.

00:27:53 ◼   ► And so there's all these little knock-on effects

00:27:56 ◼   ► that when you first think about what he's doing,

00:27:59 ◼   ► You might think, oh, well, he just wants really good workers

00:28:03 ◼   ► and only the most dedicated people will stay.

00:28:06 ◼   ► Well, it's not that simple.

00:28:08 ◼   ► You're gonna have all these people who really can't

00:28:11 ◼   ► and don't want to work that way,

00:28:13 ◼   ► but are kind of forced to for reasons like this,

00:28:15 ◼   ► and it excludes tons of people who can't work that way.

00:28:18 ◼   ► What if you have a kid?

00:28:20 ◼   ► You shouldn't be at the office

00:28:21 ◼   ► working long nights every night if you have a kid.

00:28:24 ◼   ► What if you have to take care of somebody at home?

00:28:26 ◼   ► Like there's just, there's so many groups of people

00:28:30 ◼   ► or situations that you either exclude or abuse

00:28:34 ◼   ► with these simplistic views of the world that,

00:28:36 ◼   ► oh, you better work here 'cause you wanna be hardcore.

00:28:38 ◼   ► Like, things are not that simple.

00:28:40 ◼   ► Things have never been that simple.

00:28:41 ◼   ► And if he would just take his head out of his ass

00:28:44 ◼   ► for two seconds and look around,

00:28:45 ◼   ► he might have a small chance of seeing that.

00:28:47 ◼   ► But unfortunately, that's never gonna happen.

00:28:49 ◼   ► - And that's the thing that bothers me.

00:28:50 ◼   ► I'm glad you brought that up.

00:28:53 ◼   ► all the Elon fans that I have heard, you know,

00:28:57 ◼   ► shouting into the ether, seem to say things like,

00:28:59 ◼   ► "Oh, it's a meritocracy, and oh,

00:29:01 ◼   ► the best people will be there,

00:29:02 ◼   ► and they won't mind," and blah, blah, blah.

00:29:04 ◼   ► What if the best person is the person

00:29:07 ◼   ► who can only give eight hours a day to their job?

00:29:12 ◼   ► Why is that bad?

00:29:14 ◼   ► Or what if the best person doesn't live

00:29:16 ◼   ► in fucking San Francisco?

00:29:18 ◼   ► Like, why is that bad?

00:29:20 ◼   ► It's so backwards and, I don't know,

00:29:25 ◼   ► when he makes these proclamations,

00:29:27 ◼   ► okay, boomer, sure.

00:29:28 ◼   ► He's only like five or 10, he's like 10 years older than me

00:29:30 ◼   ► and like five years older than Jon, I think.

00:29:32 ◼   ► But it's such a boomer mentality of--

00:29:35 ◼   ► - No, the boomers only work nine to five.

00:29:37 ◼   ► - Ah, true, actually, no, that's fair, that's fair.

00:29:39 ◼   ► - The premise that people accept,

00:29:41 ◼   ► you can even see it in the chat room,

00:29:43 ◼   ► somebody said that this workaholism culture

00:29:45 ◼   ► is the reason why Silicon Valley became successful, right?

00:29:47 ◼   ► - No, it's not.

00:29:48 ◼   ► - And why the employees make so much money.

00:29:50 ◼   ► also not.

00:29:51 ◼   ► - Yeah, so the premise is that if you do live in the office

00:29:56 ◼   ► and spend all your life there or whatever,

00:29:59 ◼   ► that you will somehow do better work

00:30:00 ◼   ► than if you didn't do that,

00:30:01 ◼   ► and that's absolutely not true.

00:30:03 ◼   ► Every time they've ever studied this,

00:30:05 ◼   ► I mean, you should know this just as a programmer,

00:30:06 ◼   ► should I pull an all-nighter or should I go to sleep

00:30:08 ◼   ► and work on this problem again in the morning?

00:30:10 ◼   ► Oh, if I sleep, I'm losing eight hours of working time,

00:30:12 ◼   ► therefore I should pull an all-nighter.

00:30:14 ◼   ► Your efficiency and quality of programming at 3 a.m.

00:30:19 ◼   ► are detrimental to your productivity.

00:30:21 ◼   ► You should go to sleep.

00:30:23 ◼   ► Making people burn themselves out

00:30:26 ◼   ► does not produce better work than letting them be rested.

00:30:29 ◼   ► That's what the smart companies know.

00:30:31 ◼   ► And the companies that have been successful,

00:30:32 ◼   ► like the 8088 was not made by people

00:30:35 ◼   ► who are pulling all-nighters for years at a time, right?

00:30:37 ◼   ► Crunch in the game industry.

00:30:40 ◼   ► Does that make better games?

00:30:41 ◼   ► No, it makes everything worse and it destroys lives.

00:30:43 ◼   ► And even gaming companies are learning,

00:30:45 ◼   ► if we wanna do better, we should try to avoid that, right?

00:30:49 ◼   ► It feels like you're doing, like I'm doing the hard work

00:30:54 ◼   ► and you have to do this,

00:30:56 ◼   ► especially if you're gonna be in a startup.

00:30:57 ◼   ► Nevermind that Twitter is not a startup.

00:30:58 ◼   ► Anyway, this is what you just have to do

00:31:01 ◼   ► for that big payday, you just gotta give your all.

00:31:02 ◼   ► And it's like your fundamental assumption

00:31:06 ◼   ► that working harder in longer hours

00:31:07 ◼   ► produces better work is what you need to reexamine.

00:31:10 ◼   ► And once you've reexamined that, it's much easier.

00:31:11 ◼   ► Setting aside the humanity of don't be cruel to people,

00:31:14 ◼   ► especially dumb 20-year-olds who have no life experience,

00:31:18 ◼   ► oh, they can do it because they don't have a family.

00:31:20 ◼   ► They have health and they should have lives.

00:31:22 ◼   ► It's cruel to essentially, not trick them,

00:31:26 ◼   ► but coerce them into working harder than they should

00:31:29 ◼   ► in a way that they'll regret.

00:31:30 ◼   ► They'll say, I spent my 20s burning myself out

00:31:34 ◼   ► at this company and I saw no benefit from it, right?

00:31:37 ◼   ► And I just wasted my life, right?

00:31:38 ◼   ► And they don't know that now,

00:31:39 ◼   ► but because they don't have kids and can do it,

00:31:41 ◼   ► and they think they will convince themselves

00:31:43 ◼   ► that they're doing better work by working longer hours, no.

00:31:45 ◼   ► And really the bad thing about it,

00:31:47 ◼   ► I don't know a lot about Twitter culture,

00:31:48 ◼   ► but it seems like from all the people bailing on Twitter,

00:31:51 ◼   ► that their culture was, let's say,

00:31:54 ◼   ► I mean, certainly better than this,

00:31:55 ◼   ► and possibly better than average

00:31:57 ◼   ► in terms of work-life balance

00:31:59 ◼   ► and the culture of being able to say things

00:32:01 ◼   ► on internal slacks that are critical of leadership.

00:32:03 ◼   ► I mean, people were bragging about that,

00:32:05 ◼   ► like it's a big deal, but can you,

00:32:07 ◼   ► I can't even imagine working at a company

00:32:09 ◼   ► where if you say something against leadership

00:32:12 ◼   ► in an internal channel or in even an internal meeting,

00:32:15 ◼   ► or to the face of a VP in a meeting.

00:32:18 ◼   ► That shouldn't be a fireable offense.

00:32:20 ◼   ► You can offend people and be rude

00:32:21 ◼   ► and politically get in trouble inside a company,

00:32:25 ◼   ► but a company that will not allow dissent

00:32:27 ◼   ► from within the company and the privacy of that company

00:32:30 ◼   ► is not a healthy company.

00:32:32 ◼   ► And so these Twitter employees were accustomed

00:32:34 ◼   ► to the environment where they weren't told

00:32:36 ◼   ► that you need to work 20 hours a day,

00:32:38 ◼   ► where there was an acknowledgement that you have a life,

00:32:40 ◼   ► where there was an acknowledgement

00:32:41 ◼   ► that you will do better work for the company

00:32:44 ◼   ► if you are well rested and have stability

00:32:47 ◼   ► in the rest of your life.

00:32:48 ◼   ► And there was an acknowledgement within the company

00:32:51 ◼   ► that it's okay to criticize the company

00:32:52 ◼   ► because that's a healthy thing and that's how we get better.

00:32:54 ◼   ► And then overnight, overnight all that changes

00:32:57 ◼   ► and people quit on their own, people get fired,

00:33:00 ◼   ► people get laid off.

00:33:01 ◼   ► I'm wondering how many people will be left

00:33:03 ◼   ► and it's the people who are left are going to be

00:33:05 ◼   ► the people who are foolishly willing enough

00:33:07 ◼   ► to destroy their lives for the amusement essentially,

00:33:10 ◼   ► not benefit 'cause they don't need anything

00:33:11 ◼   ► for the amusement of this billionaire

00:33:13 ◼   ► and the people who are trapped, who have H-1B visas,

00:33:16 ◼   ► or can't get another job quickly,

00:33:18 ◼   ► or really need this job right now

00:33:19 ◼   ► because they're in financial straits

00:33:20 ◼   ► or they need the healthcare.

00:33:22 ◼   ► There are so many reasons in our stupid system,

00:33:24 ◼   ► healthcare being tied to your job, one of the big ones,

00:33:26 ◼   ► something that people who are saying

00:33:27 ◼   ► another country might not think about.

00:33:29 ◼   ► When you leave your job, you lose your healthcare

00:33:32 ◼   ► unless you're willing to pay a lot of money

00:33:33 ◼   ► to continue getting it for some amount of time.

00:33:36 ◼   ► It's messed up, anyway.

00:33:38 ◼   ► So I feel like the only people left will be

00:33:40 ◼   ► the true believers who are going to

00:33:41 ◼   ► destroy themselves for him,

00:33:43 ◼   ► and the people who are trapped.

00:33:44 ◼   ► And those are not the best people.

00:33:45 ◼   ► And then if you drive all those people

00:33:47 ◼   ► to work ridiculous hours, you're gonna get poor work

00:33:50 ◼   ► out of those remaining people.

00:33:51 ◼   ► And it's just not a good situation.

00:33:54 ◼   ► Like I said last week, if you got enough money,

00:33:56 ◼   ► you can just play that game out,

00:33:58 ◼   ► burn the thing to the ground,

00:33:59 ◼   ► and start building up from the bottom purely with,

00:34:02 ◼   ► you know, Elon fans who are willing

00:34:03 ◼   ► to destroy themselves for him.

00:34:05 ◼   ► I don't think that's a healthy company culture either,

00:34:07 ◼   ► but it is a path that he can take

00:34:09 ◼   ► as long as he's willing to continue to put billions

00:34:10 ◼   ► and billions of dollars into this to pay off the debt

00:34:12 ◼   ► and continue to hopefully keep the service running,

00:34:15 ◼   ► he's got enough runway to continue this farce

00:34:19 ◼   ► for as long as he wants.

00:34:20 ◼   ► - And it isn't just about he's gonna ruin these people.

00:34:26 ◼   ► In these kind of working conditions,

00:34:28 ◼   ► the best people won't even work for you.

00:34:31 ◼   ► The best people usually are not the 20-year-olds.

00:34:35 ◼   ► It's good to have those 20-year-olds in the company

00:34:38 ◼   ► because they do provide a lot of energy,

00:34:40 ◼   ► a lot of grunt work.

00:34:42 ◼   ► They do have good ideas that the older people

00:34:43 ◼   ► might not think of, and a little bit of gumption

00:34:46 ◼   ► in certain ways that older people tend to fade off on.

00:34:49 ◼   ► But the older people in the company,

00:34:50 ◼   ► and I mean, this is still Silicon Valley,

00:34:53 ◼   ► the term older means people much younger than me.

00:34:57 ◼   ► (laughs)

00:34:58 ◼   ► I'm talking people who are like 30.

00:35:00 ◼   ► (laughs)

00:35:01 ◼   ► It's really terrible.

00:35:02 ◼   ► We have an awful ageism problem in our industry.

00:35:04 ◼   ► But people who are older who might have a family,

00:35:08 ◼   ► and they are refusing to work 16 hour days for this jerk,

00:35:13 ◼   ► they are better usually.

00:35:15 ◼   ► The experience they have usually makes them

00:35:19 ◼   ► more efficient workers and they know their value

00:35:22 ◼   ► and they know that they can do great work

00:35:26 ◼   ► benefiting the company massively

00:35:28 ◼   ► even if they're only there eight hours a day.

00:35:30 ◼   ► And if your company culture or explicit rules

00:35:34 ◼   ► makes it so that those kind of people

00:35:36 ◼   ► either can't or won't work for you,

00:35:40 ◼   ► then you're only ever going to get those,

00:35:43 ◼   ► either the 20 year old hotshots

00:35:45 ◼   ► or the people who are too stuck and aren't able to leave,

00:35:49 ◼   ► and you're gonna be missing out

00:35:50 ◼   ► on so much of the best talent.

00:35:52 ◼   ► So it isn't just that you're gonna be

00:35:57 ◼   ► being mean to the people you have,

00:35:59 ◼   ► it's that you literally won't even be able

00:36:01 ◼   ► to get the best people,

00:36:03 ◼   ► and even if he's on everything right up to this point,

00:36:05 ◼   ► which of course he so much hasn't,

00:36:08 ◼   ► but the best people won't even work for you.

00:36:10 ◼   ► And so you have to then hire more

00:36:13 ◼   ► of those hotshot 20 year olds,

00:36:15 ◼   ► and you still won't get the quality and efficiency

00:36:17 ◼   ► of work that you get from more experienced people

00:36:20 ◼   ► being present in the ranks.

00:36:22 ◼   ► And so it ends up being even less efficient,

00:36:24 ◼   ► and you have to work people even harder

00:36:26 ◼   ► because you're working less efficiently

00:36:28 ◼   ► or doing things that are less wise.

00:36:30 ◼   ► And it's just such a huge mess,

00:36:31 ◼   ► and it just all, it all comes down to,

00:36:35 ◼   ► wow, for a guy who's run so many companies,

00:36:37 ◼   ► he really seems terrible at running companies.

00:36:39 ◼   ► - Right, that's the thing.

00:36:40 ◼   ► Oh, we gotta move on.

00:36:42 ◼   ► Some of my real-time follow-up from Hayew DVD in the chat,

00:36:45 ◼   ► with regard to the Apple TV 4K,

00:36:46 ◼   ► first-gen, A10X, old Siri remote that everyone hated.

00:36:50 ◼   ► Second-gen, A12, new remote.

00:36:53 ◼   ► Third-gen, A15, USB-C remote.

00:36:57 ◼   ► That's your three generations.

00:36:58 ◼   ► - However, if you bought a new remote

00:37:00 ◼   ► for an older Apple TV. - Yeah, which I did.

00:37:03 ◼   ► - Which every, yeah, I did too.

00:37:04 ◼   ► Then it's all out the window.

00:37:06 ◼   ► We are brought to you this week by Trade Coffee.

00:37:10 ◼   ► You know, the holidays are approaching,

00:37:11 ◼   ► it's kind of shopping season,

00:37:13 ◼   ► and we all have the people in our life

00:37:15 ◼   ► who are more difficult to shop for, let's say.

00:37:17 ◼   ► And if you're looking for something to get,

00:37:18 ◼   ► even the most difficult person to shop for,

00:37:21 ◼   ► consider a personalized coffee subscription

00:37:23 ◼   ► from Trade Coffee.

00:37:26 ◼   ► This is a coffee subscription service

00:37:28 ◼   ► that makes it super simple to discover new coffees

00:37:30 ◼   ► and make your best cup of coffee at home every day.

00:37:34 ◼   ► Trade partners with the nation's

00:37:35 ◼   ► top rated independent roasters to send you coffee

00:37:38 ◼   ► that they know you'll love fresh to your home

00:37:41 ◼   ► and on whatever schedule you want it.

00:37:43 ◼   ► So whether you already know what you like

00:37:45 ◼   ► or you're new to specialty coffee, you need some help,

00:37:47 ◼   ► Trade makes it easy and convenient to discover new coffees.

00:37:51 ◼   ► I personally have used Trade for I think over a year now.

00:37:54 ◼   ► What I love about it is that they have such a variety.

00:37:57 ◼   ► It's incredible and fresh roasted coffee,

00:37:59 ◼   ► which is what you get from Trade,

00:38:01 ◼   ► is by far the best way to make coffee at home.

00:38:03 ◼   ► You don't need a fancy brewer

00:38:05 ◼   ► or some fancy brand name or whatever.

00:38:07 ◼   ► You need fresh roasted coffee.

00:38:09 ◼   ► That's what comes in the mail every week for me with Trade

00:38:11 ◼   ► and it is glorious because I know, I told them what I like,

00:38:15 ◼   ► certain roast levels, certain flavor profiles,

00:38:17 ◼   ► even certain origins.

00:38:18 ◼   ► I tell them how I'm brewing it and they send me new stuff.

00:38:21 ◼   ► I don't have to think about it, it's great.

00:38:22 ◼   ► I can thumb it up if I wanna have more like this

00:38:25 ◼   ► or something, but honestly, I don't really give them

00:38:27 ◼   ► much input, I just keep drinking it 'cause it's just good,

00:38:29 ◼   ► I don't even have to think about it, it's wonderful.

00:38:31 ◼   ► It's not only great for you, it's great as a gift,

00:38:33 ◼   ► so see for yourself, it is great.

00:38:36 ◼   ► So treat yourself or the coffee lover in your life

00:38:39 ◼   ► with Trade Coffee.

00:38:40 ◼   ► Right now, Trade is offering our listeners a total

00:38:42 ◼   ► of $30 off a subscription and access to limited time

00:38:45 ◼   ► holiday specials at drinktrade.com/atp.

00:38:49 ◼   ► That's drinktrade.com/atp for $30 off.

00:38:54 ◼   ► DrinkTrade.com/ATP.

00:38:56 ◼   ► Thank you so much to Trade Coffee

00:38:59 ◼   ► for keeping me caffeinated and sponsoring our show.

00:39:01 ◼   ► - All right, with regard to the utility of HomeKit,

00:39:08 ◼   ► this is from Todd.

00:39:09 ◼   ► Todd writes, "I'm a high-level quadriplegic,

00:39:13 ◼   ► "which means I have no use in my arms or legs.

00:39:15 ◼   ► "I have been doing home automation for 30 years.

00:39:17 ◼   ► "HomeKit has been a blessing.

00:39:18 ◼   ► "It's fairly simple to set up and it is very reliable."

00:39:22 ◼   ► I'm not so sure if that's true,

00:39:23 ◼   ► but hey, if Todd thinks it's reliable,

00:39:24 ◼   ► I'm good with that not so much for consumer level home automation that came before it

00:39:28 ◼   ► I have I device switches all over the place

00:39:30 ◼   ► It's so enabling to be able to tell Siri to turn lights on and off

00:39:32 ◼   ► I have outside lights automated to come on and turn off. It's great for me. There's a lot of return on investment homekit automation

00:39:38 ◼   ► I think that's a really good call and you know, it's not just people without use of their arms and legs

00:39:42 ◼   ► You know

00:39:43 ◼   ► I can think of many many many many different kinds of people that that

00:39:47 ◼   ► Being able to shout into the ether and have a response could be really powerful

00:39:51 ◼   ► So I thought that was a good point from Todd another advantage of one big consumer electronic companies enter an area

00:39:57 ◼   ► It was previously like specialized like we described as consumer level

00:40:00 ◼   ► Automation that came before it like when it was a smaller industry and the only people it's like well most people just have light switches

00:40:06 ◼   ► But if you really need something there's these three companies that try to make things for people who can't reach right switches or whatever, right?

00:40:11 ◼   ► But having a big company like Apple come in has got to be just you know

00:40:15 ◼   ► So much more money and effort put into making it better

00:40:18 ◼   ► So we may all complain about a home kit, but it's probably because that's only the only home automation thing

00:40:23 ◼   ► We've ever dealt with if we had to deal with like cruddy home automation

00:40:25 ◼   ► You know from the 80s or 90s or something that came before this. I'm sure that was much worse

00:40:29 ◼   ► Indeed. I remember when when I was growing up. My dad had what was it x10 something like that?

00:40:36 ◼   ► I forget what it was now the banner ads in the web

00:40:38 ◼   ► Yep, that he had x10 all over the place

00:40:41 ◼   ► Then I put in a very very small extent installation my dorm room because I was that kind of a dork

00:40:44 ◼   ► I think I told this story at one point in the show. But but anyways, I

00:40:48 ◼   ► His X10 setup was really robust

00:40:52 ◼   ► and worked reasonably well, much to my surprise.

00:40:56 ◼   ► I think it was X10, I might have that wrong.

00:40:58 ◼   ► - Didn't they invent the pop under or the pop up?

00:41:00 ◼   ► Was it them?

00:41:01 ◼   ► - I have no idea.

00:41:02 ◼   ► - Yeah, great legacy guys.

00:41:04 ◼   ► - Yeah, there's that.

00:41:05 ◼   ► I don't know, it was cool stuff.

00:41:07 ◼   ► And that, he had to have a dedicated Windows machine

00:41:10 ◼   ► to be the server for it.

00:41:11 ◼   ► It was a mess, but it was cool

00:41:12 ◼   ► that he was doing this in the mid 90s.

00:41:14 ◼   ► Hey, the Mac is entering its third year

00:41:17 ◼   ► of the quote two year transition quote to Apple Silicon.

00:41:21 ◼   ► This was pointed out by Colt of Mac

00:41:24 ◼   ► where we are in the beginning of the third year

00:41:26 ◼   ► and we were supposed to have it all done in two years.

00:41:28 ◼   ► - And that's counting generously

00:41:30 ◼   ► because like they announced in June,

00:41:31 ◼   ► like the first ARM Macs and they basically said,

00:41:34 ◼   ► you know, like we'll begin our two year transition

00:41:36 ◼   ► when like the first one comes out at the end of the year.

00:41:38 ◼   ► So here we are at the end of 2022,

00:41:41 ◼   ► which is generously two years after

00:41:43 ◼   ► not the announcement of ARM Macs,

00:41:45 ◼   ► but when the first one came out.

00:41:46 ◼   ► So yeah, entering year three of the two-year transition,

00:41:49 ◼   ► still waiting for that Mac Pro.

00:41:50 ◼   ► - Yeah, so with regard to that, I got, wait, well, we got,

00:41:54 ◼   ► but I got one of the best feedback emails

00:41:56 ◼   ► that I've received in a while.

00:41:59 ◼   ► And this is from Jonathan Clayton, who writes,

00:42:01 ◼   ► "Because the quote unquote new Mac Pro

00:42:03 ◼   ► was a topic of discussion yet again,

00:42:05 ◼   ► and to validate Casey's anger about discussing the topic,

00:42:08 ◼   ► I did some back of the envelope math.

00:42:09 ◼   ► HP went live," as Jonathan wrote this,

00:42:12 ◼   ► "3,564 days ago as of November 11th, 2022.

00:42:16 ◼   ► For 2,641 days or 74% of its existence,

00:42:19 ◼   ► there's been anticipation about whatever has come

00:42:21 ◼   ► to define the new Mac Pro.

00:42:23 ◼   ► For 257 days was the ATP launch

00:42:26 ◼   ► until the 2013 Mac Pro shipped.

00:42:28 ◼   ► For 1,512 days was the two years

00:42:30 ◼   ► after the 2013 Mac Pro was released,

00:42:33 ◼   ► about the time when people started asking questions

00:42:36 ◼   ► until the Mac Pro 2019 shipped,

00:42:37 ◼   ► and then 872 days and counting

00:42:40 ◼   ► since Apple announced Apple Silicon Transition

00:42:43 ◼   ► at WWDC 2020 and the 2019 Mac Pro was doomed.

00:42:47 ◼   ► Sorry, John.

00:42:47 ◼   ► So there have only been, according to Jonathan,

00:42:50 ◼   ► 923 days in ATP's existence of 3,564 days

00:42:55 ◼   ► where everyone was okay with the current state of the Mac Pro.

00:42:57 ◼   ► So 25% of ATP's nearly 10 years

00:43:02 ◼   ► that the two of you have been, well, really me too,

00:43:05 ◼   ► but all three of us have been satisfied.

00:43:06 ◼   ► And I just thought that was wonderful, delightful,

00:43:08 ◼   ► back-of-the-envelope math to share with everyone.

00:43:10 ◼   ► - So it's interesting math,

00:43:11 ◼   ► but I don't agree with the part where it says,

00:43:13 ◼   ► where these numbers indicate times when we were

00:43:16 ◼   ► or weren't satisfied with the existence of the Mac Pro.

00:43:19 ◼   ► Right now, I'm perfectly satisfied with my Mac Pro.

00:43:22 ◼   ► I don't think like, oh, Apple needs to do something

00:43:23 ◼   ► about the Mac Pro. - You shouldn't be.

00:43:24 ◼   ► - The current Mac Pro is great, it's just what I wanted.

00:43:28 ◼   ► So you can't like basically start counting

00:43:30 ◼   ► as soon as they release one and say,

00:43:32 ◼   ► well, now you're immediately dissatisfied

00:43:33 ◼   ► and waiting for the next one.

00:43:34 ◼   ► Sometimes we were waiting for the next one,

00:43:36 ◼   ► like almost the entire reign of the trash can,

00:43:38 ◼   ► it was kinda like, yeah, yeah,

00:43:39 ◼   ► we're kind of dissatisfied, right?

00:43:41 ◼   ► But for the entire reign of the 2019 Mac Pro,

00:43:43 ◼   ► I certainly haven't been dissatisfied.

00:43:45 ◼   ► I'm not here saying, oh, I'm interested in the new Mac Pro,

00:43:48 ◼   ► but I'm not dissatisfied with the state of it.

00:43:50 ◼   ► I'm not saying, when is Apple gonna make a real Mac Pro?

00:43:52 ◼   ► They made one, I bought it, I've got it, I'm happy.

00:43:54 ◼   ► Thanks for all the math, but I think if you're going

00:44:00 ◼   ► to do sentiment analysis of when we're upset

00:44:02 ◼   ► about the Mac Pro, I think you would find much longer spans

00:44:05 ◼   ► when we're upset, for instance, about the laptops.

00:44:08 ◼   ► - That is fair, that is fair.

00:44:10 ◼   ► - Yeah, that's true.

00:44:10 ◼   ► But the difference is that was completely justified,

00:44:13 ◼   ► whereas I don't know if all that Mac Pro whining was.

00:44:15 ◼   ► But that's okay.

00:44:16 ◼   ► - Oh, it was. - Just wait.

00:44:17 ◼   ► When they come out with the new Mac Pro,

00:44:18 ◼   ► and if it's like another trash can type thing

00:44:20 ◼   ► where it's not satisfactory,

00:44:21 ◼   ► then we'll enter another dark period.

00:44:22 ◼   ► But we'll see. (laughs)

00:44:24 ◼   ► - I'm so very excited.

00:44:26 ◼   ► All right, so something that I'm actually

00:44:28 ◼   ► genuinely excited about is the iPhone's 14

00:44:31 ◼   ► satellite emergency SOS is live if you live in the US,

00:44:35 ◼   ► and I think only the US.

00:44:37 ◼   ► This debuted, I think, Monday, or maybe yesterday.

00:44:40 ◼   ► It was sometime in the last 48 hours.

00:44:42 ◼   ► And we'll put a link to the Apple Newsroom article

00:44:45 ◼   ► where they mentioned that France, Germany, Ireland,

00:44:47 ◼   ► and the UK are coming next month in December.

00:44:50 ◼   ► And I also thought it was interesting.

00:44:52 ◼   ► They kind of made passing mention of this,

00:44:54 ◼   ► but I don't think they ever really discussed how

00:44:56 ◼   ► or the mechanism for it.

00:44:57 ◼   ► But in the Newsroom article, they said,

00:44:59 ◼   ► "Additionally, if users want to reassure friends or family

00:45:02 ◼   ► "of their whereabouts while traveling off the grid,

00:45:04 ◼   ► "they can now open the Find My app

00:45:05 ◼   ► "and share their location via satellite."

00:45:07 ◼   ► And we're gonna talk a little bit more

00:45:08 ◼   ► about that in a moment.

00:45:09 ◼   ► Another thing that I thought was super cool,

00:45:11 ◼   ► and no sarcasm, is that you can actually do a demo

00:45:14 ◼   ► on your iPhone 14.

00:45:16 ◼   ► So if you have an iPhone 14, you can go to settings,

00:45:18 ◼   ► and then emergency SOS is one of the top level settings,

00:45:21 ◼   ► and then go down to try demo,

00:45:23 ◼   ► and you can actually try out a faked,

00:45:27 ◼   ► oh my gosh, I'm having an emergency situation,

00:45:29 ◼   ► and it's completely faked.

00:45:30 ◼   ► - Is it completely faked?

00:45:31 ◼   ► So here's two things.

00:45:32 ◼   ► One, I found out about this thing,

00:45:35 ◼   ► and my very first thought was,

00:45:37 ◼   ► oh, it's kind of a shame I don't have an emergency,

00:45:39 ◼   ► because it would be cool to try that.

00:45:40 ◼   ► - Yeah, exactly.

00:45:41 ◼   ► - And then two seconds later, I found out,

00:45:42 ◼   ► hey, Apple thought of that, and they made a way,

00:45:45 ◼   ► because they know people want to try it,

00:45:46 ◼   ► so they made a way for you to try it

00:45:48 ◼   ► without actually having emergency, which I think is great.

00:45:50 ◼   ► Second, how much of it is faked?

00:45:52 ◼   ► 'Cause I tried it. - Well, that's true.

00:45:54 ◼   ► - And it makes you do like, oh, you know,

00:45:56 ◼   ► point towards the satellite and line up the thing

00:45:57 ◼   ► or whatever, and then obviously it doesn't send the message,

00:46:00 ◼   ► right, 'cause that part is surely fake,

00:46:01 ◼   ► but is the part where you're trying

00:46:03 ◼   ► to find the satellite also fake?

00:46:04 ◼   ► 'Cause you could fool me, like,

00:46:06 ◼   ► just pick an arbitrary point direction

00:46:08 ◼   ► and then make me move my phone?

00:46:10 ◼   ► Because it's not sending anything,

00:46:11 ◼   ► there's no way for me to tell,

00:46:13 ◼   ► is it actually, is the part where you're turning around

00:46:16 ◼   ► to find the satellite real?

00:46:17 ◼   ► 'Cause it does tell you to go outside,

00:46:18 ◼   ► and I went outside, I should have tried it

00:46:20 ◼   ► from like inside underneath a piece of tinfoil

00:46:21 ◼   ► to see if like, if it still says,

00:46:23 ◼   ► "Oh, you found the satellite," you know?

00:46:25 ◼   ► But either way, it's fun to do the demo,

00:46:27 ◼   ► you should try it, it brings you through a bunch of things.

00:46:29 ◼   ► But like, so, you know, almost all of it is fake,

00:46:31 ◼   ► but what I really hope is the part

00:46:33 ◼   ► where you point it at the satellite

00:46:36 ◼   ► and at the very least receives whatever the satellite

00:46:38 ◼   ► is spraying down, I hope that part's real.

00:46:40 ◼   ► I wanna believe it's real.

00:46:41 ◼   ► - Oh, same, and I assumed that part was real,

00:46:44 ◼   ► although then as I was talking about it during the show,

00:46:46 ◼   ► I was thinking, well, maybe that wasn't real at all.

00:46:48 ◼   ► But I assumed the satellite connectivity part was real,

00:46:51 ◼   ► it's just the emergency part,

00:46:53 ◼   ► just like you said a moment ago,

00:46:54 ◼   ► the emergency part was not.

00:46:55 ◼   ► But you make a good point, and it occurred to me,

00:46:58 ◼   ► like I said while I was talking about it,

00:46:59 ◼   ► that maybe everything was fake, I don't know.

00:47:01 ◼   ► We'll have to maybe follow up.

00:47:02 ◼   ► - Yeah, and also, when you're doing this demo,

00:47:04 ◼   ► Like they put, this is, all right,

00:47:06 ◼   ► so the fact this feature exists I think is great.

00:47:08 ◼   ► This is like Apple at its best

00:47:09 ◼   ► anticipating what people want to do.

00:47:11 ◼   ► And then they just, like, they did a good job

00:47:14 ◼   ► of making this fake UI, because it's not an easy task

00:47:17 ◼   ► to make it clear that you're doing something that's fake,

00:47:20 ◼   ► to make sure you can't accidentally do the non-fake thing,

00:47:24 ◼   ► and on every single screen, making it so that like,

00:47:28 ◼   ► there's no confusion about the fact,

00:47:30 ◼   ► don't worry, you're not actually telling ambulances

00:47:33 ◼   ► to come to your house.

00:47:34 ◼   ► difficult problem they did not have to tackle

00:47:36 ◼   ► just for this purely like, hey, people wanna try this

00:47:39 ◼   ► because it's fun.

00:47:40 ◼   ► And it's not just fun, it's also rehearsal

00:47:42 ◼   ► for if you ever have an emergency.

00:47:43 ◼   ► Because the last thing you wanna be doing in an emergency

00:47:45 ◼   ► is like, I know my phone's supposed to do this thing,

00:47:48 ◼   ► but I've literally never done it

00:47:49 ◼   ► and I have no idea where it is,

00:47:50 ◼   ► which is why one of the cool features of this

00:47:52 ◼   ► is like you don't have to remember where it is.

00:47:53 ◼   ► Just in America.

00:47:55 ◼   ► Dial 911 and if it can't dial 911,

00:47:57 ◼   ► that's all you have to remember.

00:47:58 ◼   ► That's what people know anyway.

00:47:59 ◼   ► Oh, you know, something terrible's happened, dial 911.

00:48:02 ◼   ► If you're in the mountains and have no signal,

00:48:05 ◼   ► right on the screen where you don 911,

00:48:06 ◼   ► it will throw up a button that says,

00:48:09 ◼   ► you know, satellite, do this, SOS, whatever,

00:48:11 ◼   ► because it will try 911, but there's no phone available,

00:48:13 ◼   ► so you don't have to learn, like,

00:48:14 ◼   ► oh, I have to go into settings,

00:48:15 ◼   ► or what app is this under, or whatever.

00:48:17 ◼   ► If you just do the first thing that comes to your mind,

00:48:19 ◼   ► which is dial the emergency number,

00:48:21 ◼   ► you will be presented with an option

00:48:22 ◼   ► to do this if necessary.

00:48:24 ◼   ► - Yeah, that's really cool, 'cause like, that's,

00:48:26 ◼   ► when I first saw that there was a demo,

00:48:28 ◼   ► I was like, what?

00:48:29 ◼   ► Like that's so unlike Apple to offer that kind of thing,

00:48:33 ◼   ► so it's noteworthy, first of all, that it's there.

00:48:36 ◼   ► And then I started thinking, why is it there?

00:48:37 ◼   ► And at first I thought, well, it's probably there

00:48:39 ◼   ► just for the PR of this new software release,

00:48:42 ◼   ► so now everyone can try it out and see.

00:48:43 ◼   ► But then I thought really, oh, that kind of rehearsal angle,

00:48:46 ◼   ► like, oh, they want people to know where this is

00:48:49 ◼   ► for when you need it.

00:48:51 ◼   ► That's really cool.

00:48:52 ◼   ► And again, all this is very un-Apple-like,

00:48:55 ◼   ► but I think in a very good way.

00:48:57 ◼   ► - I think it is Apple-like.

00:48:58 ◼   ► like, and maybe it's because I'm old,

00:48:59 ◼   ► but this is exactly what I think of when I think of Apple,

00:49:02 ◼   ► is someone being really thoughtful about a feature

00:49:04 ◼   ► and then spending way too much time and effort

00:49:07 ◼   ► to make a really good UI for the fake satellite interface.

00:49:10 ◼   ► So because, again, the challenge is there,

00:49:13 ◼   ► is to teach people how it's gonna work.

00:49:15 ◼   ► If you were an emergency,

00:49:16 ◼   ► here's what we would be asking you to do.

00:49:17 ◼   ► We'd be asking you to find satellites.

00:49:19 ◼   ► We'd be like, this is what you're gonna do,

00:49:20 ◼   ► so it's rehearsal, but also the whole time,

00:49:22 ◼   ► make sure that you know you're not doing anything destructive

00:49:25 ◼   ► and it's clear to you that it's a demo.

00:49:26 ◼   ► And that's a lot of work, and that's the best of the Apple

00:49:29 ◼   ► that I think of.

00:49:30 ◼   ► Maybe it's the '80s or '90s Apple,

00:49:32 ◼   ► with the Apple that was all about user experience and user

00:49:35 ◼   ► interface, and surprise and delight, and not ads.

00:49:38 ◼   ► Yeah.

00:49:39 ◼   ► If only.

00:49:41 ◼   ► You have to click through this ad

00:49:43 ◼   ► before you can send the satellite message.

00:49:45 ◼   ► Hey, it looks like you're trying to dial 911.

00:49:47 ◼   ► Can I interest you in a casino app?

00:49:49 ◼   ► Right.

00:49:49 ◼   ► You might want to sign up for Apple Arcade

00:49:50 ◼   ► before you send that message.

00:49:51 ◼   ► Are you sure?

00:49:52 ◼   ► It's going to take you a really long time

00:49:53 ◼   ► before the helicopter gets there.

00:49:54 ◼   ► You might want to kill some time with this new gambling slots app.

00:49:57 ◼   ► All right. Focus gentlemen. So I did this, you know,

00:50:01 ◼   ► demo just like the two of you did and I did a screen recording while I was doing

00:50:05 ◼   ► it and I tweeted it, you know, because as we sit here now,

00:50:07 ◼   ► Twitter is still here miraculously.

00:50:09 ◼   ► And so we'll put a link to that video in the show notes.

00:50:12 ◼   ► I'm sure the quality is garbage, but nevertheless,

00:50:13 ◼   ► it will give you the gist of it if you don't have an iPhone 14. But yeah,

00:50:17 ◼   ► I thought it was really, really cool. I love that,

00:50:19 ◼   ► that this is something you can try and just like the two of you said,

00:50:23 ◼   ► it is a great rehearsal for when the time comes. So all good things. Then the same day,

00:50:28 ◼   ► iJustine on YouTube was given a special privilege to discuss all this with Kyan Drance and Arun

00:50:35 ◼   ► and Tim something or other. I'm sorry, I forgot to write the rest of the names down. But anyways,

00:50:40 ◼   ► they talked about a bunch of things. They mentioned on this and perhaps in the newsroom

00:50:43 ◼   ► as well that it is free for two years, quote, "Starting with the activation of your iPhone

00:50:49 ◼   ► They made some other interesting kind of one-off comments.

00:50:53 ◼   ► They said that the satellites are traveling at 15,000 miles an hour, 800 miles above the

00:50:59 ◼   ► Earth.

00:51:00 ◼   ► Leaving aside the 15,000 miles an hour thing, I still think to this day that it is pretty

00:51:06 ◼   ► freaking cool that this little brick in my hand can talk to a cell tower that's, you

00:51:12 ◼   ► know, maybe a mile, two miles, five miles away.

00:51:15 ◼   ► We're talking about a satellite 800 miles above the Earth.

00:51:21 ◼   ► That is extremely cool.

00:51:23 ◼   ► I hope to never need this feature, but I just think that's super duper cool that this is

00:51:27 ◼   ► something that we have in a run-of-the-mill everyday phone.

00:51:31 ◼   ► I think that's awesome.

00:51:33 ◼   ► It was also interesting that Arun said that if you're in a car accident, the phone will

00:51:38 ◼   ► try to dial 911, but if it can't, it will—and these are direct quotes now—if it's unable

00:51:44 ◼   ► to call 911, it will then use this capability to try to get the message out via satellite.

00:51:49 ◼   ► In that situation, the phone probably does not have a clear view of the sky and might

00:51:53 ◼   ► be between the seats or in the trunk. So we keep the data extremely small in that situation,

00:51:59 ◼   ► and we have a really good confidence that we'll still be able to get that message out

00:52:02 ◼   ► and get you home. How freaking cool is that? That it knows, if you're in a car accident,

00:52:07 ◼   ► like God forbid, that, "Oh, we've got to keep this, whatever the transmission is, crazy

00:52:13 ◼   ► small because we may not have a long time to transmit it.

00:52:16 ◼   ► So I thought that was super neat.

00:52:17 ◼   ► If you're in a car accident or you're on a roller coaster.

00:52:19 ◼   ► Remember that's the we didn't cover that.

00:52:20 ◼   ► We didn't cover that story of people are getting activations on like, uh, you know, amusement

00:52:23 ◼   ► park rides.

00:52:25 ◼   ► And I feel for Apple there because I don't think that's malfunctioning.

00:52:28 ◼   ► I think a lot of the motions that happen to you when you're in amusement park ride are

00:52:31 ◼   ► exactly the same as happened when you're in a car accident, especially when you're considering

00:52:36 ◼   ► its emotion happening to the phone, not necessarily to you.

00:52:39 ◼   ► So I'm not saying amusement park rides injure you, but it could be that in an actual car

00:52:43 ◼   ► accident that injures you, your phone may experience exactly the same accelerations

00:52:48 ◼   ► of exactly the same kind as it would in an amusement park ride if it was in your pocket.

00:52:52 ◼   ► So I don't know how you solve that problem, really.

00:52:55 ◼   ► And then, you know, the worst case scenario, you're in an accident in an amusement park

00:52:59 ◼   ► ride.

00:53:00 ◼   ► So it's not like they're, you know, maybe they could help with their ML model or whatever,

00:53:04 ◼   ► but I feel like it's not doing anything wrong.

00:53:07 ◼   ► Like there is, in many cases there is no difference and so I'm not quite sure how they solve that

00:53:11 ◼   ► problem but it seems like it might be an actual problem.

00:53:15 ◼   ► Maybe they'll have signs at amusement parks that say, you know, put your phone into airplane

00:53:18 ◼   ► mode or don't bring your phone on this ride with you or something like that.

00:53:21 ◼   ► And in general I would say don't bring your phone on the roller coaster.

00:53:25 ◼   ► You don't need to text anybody while you're on it.

00:53:27 ◼   ► And you know, I remember last time I was at, was it Great American?

00:53:31 ◼   ► I think it was universal maybe in Florida,

00:53:35 ◼   ► waiting for my family to get off a ride.

00:53:38 ◼   ► And it was like some looping roller coaster

00:53:40 ◼   ► that went over the water and I'm standing by the railing

00:53:41 ◼   ► looking at the water and down at the bottom of the water,

00:53:43 ◼   ► you could just see the lit up screens of a bunch of phones.

00:53:46 ◼   ► 'Cause it's like we're going over the loops

00:53:48 ◼   ► and they're like falling out of their purse,

00:53:49 ◼   ► falling out of their pocket.

00:53:51 ◼   ► Yeah, don't bring your phone on the ride.

00:53:53 ◼   ► - Well, what else are you supposed to do with it?

00:53:55 ◼   ► It's in your pocket. - They have lockers.

00:53:56 ◼   ► They have lockers that you can put your stuff.

00:53:58 ◼   ► - They cost like $1,000 a minute.

00:54:00 ◼   ► It's an amusement park. I know but like would you rather your phone be lit up at the bottom?

00:54:05 ◼   ► It must have been since they were unlocked

00:54:06 ◼   ► It must have been people like trying to take a video while they're on the roller coaster or something like that

00:54:10 ◼   ► And there they are in the water

00:54:12 ◼   ► Good job. Anyway real-time follow-up. I have no idea if this is you know, 100% true or not

00:54:17 ◼   ► But according to 100 ghosts in the chat

00:54:19 ◼   ► I had a message that said the satellite had passed and I would need to wait two minutes for the next one to be available

00:54:24 ◼   ► This is in the context of doing the demo

00:54:27 ◼   ► So that makes me think it's what you and I expected John that the satellite portion was real

00:54:30 ◼   ► - I've never played a video game. Oh, well, but why would they do that?

00:54:35 ◼   ► It makes the service look they want to give you an authentic experience of what it's really gonna be like

00:54:39 ◼   ► I just don't actually know if you know any actual communication with the satellite is involved

00:54:43 ◼   ► Nothing really matters like the whole point of the rehearsal is this is what you're gonna be asked to do

00:54:46 ◼   ► Maybe it'll say it passed you're gonna have to point in the direction

00:54:49 ◼   ► You're gonna have to hold it there like they can make the rehearsal be authentic. Mm-hmm

00:54:54 ◼   ► Well anyway moving along it is worth noting that in order to do this

00:55:01 ◼   ► Via or to in order to send your location you can do that

00:55:05 ◼   ► Manually it doesn't happen automatically, but you can manually go into the find my app you can do this right now

00:55:11 ◼   ► but I won't let you send it find my me and then my location via satellite and

00:55:16 ◼   ► Presumably I didn't try this but presumably this is where you would say okay?

00:55:19 ◼   ► Who do you want to send it to but it says?

00:55:21 ◼   ► Generally speaking not available and then there's learn more in a chevron and in the learn more

00:55:25 ◼   ► It says something along the lines of hey, you're connected to sell and or Wi-Fi

00:55:30 ◼   ► So we're not gonna bother with the satellite right now

00:55:32 ◼   ► But which I thought was reasonable a couple other things from the I justine interview

00:55:36 ◼   ► The medical ID is sent along with the SOS message

00:55:38 ◼   ► So, you know what you're allergic to how big how tall you are how much you weigh etc, etc

00:55:43 ◼   ► Which I thought was interesting again going back to a rune

00:55:47 ◼   ► This is a quote.

00:55:48 ◼   ► "It was really important to use the satellite constellation that was fully mature and built out.

00:55:51 ◼   ► The challenge became, how do we make the iPhone be able to interact with this thing that's already launched and been up there for a long time and has been mature?

00:55:58 ◼   ► So we had to make the necessary hardware modifications to allow us to optimize that communication back and forth,

00:56:02 ◼   ► and then build an entirely new communication stack that included a whole new waveform and all the layers above,

00:56:08 ◼   ► a custom link layer, a custom networking layer, etc."

00:56:11 ◼   ► And they eventually came out and stated that Globalstar is the partner company,

00:56:15 ◼   ► And they said that that was in no small part because apparently it is unusual for satellite radio operators to have a single

00:56:23 ◼   ► global frequency, but Globalstar does. So whatever it is, you know, 1, 2, 3.5 megahertz or whatever, that is the case across the planet. And

00:56:31 ◼   ► Mike had said that they have Apple proprietary radio systems in each of Globalstar's ground stations to support this.

00:56:41 ◼   ► He also said in summary we have a general idea of the dead zones from cellular networks and he said I'm sorry

00:56:48 ◼   ► I'm paraphrasing what he said that he he had a they have a general idea of where the dead zones are from cellular networks and

00:56:53 ◼   ► They when they were building this all out and figuring out how to make work

00:56:56 ◼   ► They were prioritizing, you know, how do we make these areas work?

00:56:59 ◼   ► So like I don't know the Shenandoah National Park here in the East Coast or one of the eight gazillion parks in, California

00:57:04 ◼   ► They know these are the places that people are going to use this sort of thing. How do we make it work the best there?

00:57:09 ◼   ► So I found all of this extremely fascinating. I think the Justine video, which is about 20 minutes long, is worth your time.

00:57:15 ◼   ► I just think it's super cool.

00:57:17 ◼   ► All right, move right along.

00:57:20 ◼   ► Mastodon.

00:57:22 ◼   ► Is that a thing? Are we doing this?

00:57:24 ◼   ► It seems to maybe possibly be becoming a thing?

00:57:28 ◼   ► I had to look this up because, all right, so we'll talk about Mastodon in a second,

00:57:32 ◼   ► but it'll explain why I have lots of accounts in them.

00:57:35 ◼   ► But my accounts, I signed up for them five years ago,

00:57:39 ◼   ► probably during the last Twitter is doomed cycle, right?

00:57:43 ◼   ► I mean, we all went to app.net at one point,

00:57:45 ◼   ► and not went to, but got signed up for app.net.

00:57:48 ◼   ► And at some point, apparently in 2017,

00:57:51 ◼   ► I signed up for tons of Mastodon stuff.

00:57:53 ◼   ► So when the Mastodon stuff came around, I'm like,

00:57:55 ◼   ► oh, I'm pretty sure I have a Mastodon account.

00:57:56 ◼   ► Turns out I have like six Mastodon accounts,

00:57:58 ◼   ► which is part of the problem.

00:57:59 ◼   ► Anyway, continue.

00:58:00 ◼   ► What is Mastodon?

00:58:01 ◼   ► - Right, so I don't know if I'm the best person

00:58:04 ◼   ► to give a great summary of Mastodon.

00:58:05 ◼   ► But the idea of Mastodon is, you know,

00:58:07 ◼   ► what if you had Twitter, but it wasn't as centralized?

00:58:11 ◼   ► It was kind of quasi-centralized.

00:58:14 ◼   ► And so you could join an instance,

00:58:17 ◼   ► what is there, is an instance the term they use for it?

00:58:19 ◼   ► What do they call it?

00:58:20 ◼   ► - Yeah, instance. - Okay.

00:58:21 ◼   ► You can join an instance, which is basically a server,

00:58:23 ◼   ► where there are like-minded individuals.

00:58:26 ◼   ► And that, well, in theory--

00:58:29 ◼   ► - You can join an instance.

00:58:31 ◼   ► - Well, okay, what-- - It's federated.

00:58:32 ◼   ► You can join an instance.

00:58:34 ◼   ► - No, hear me out for a second.

00:58:35 ◼   ► I think the theory, in my understanding anyway,

00:58:38 ◼   ► of the theory is that you join a server,

00:58:40 ◼   ► an instance that has like-minded individuals,

00:58:42 ◼   ► and then the administrators of that instance

00:58:46 ◼   ► can block other instances from talking to you.

00:58:49 ◼   ► They can do all sorts of content moderation

00:58:52 ◼   ► and so on and so forth.

00:58:53 ◼   ► So if you want to be in a instance where free speech

00:58:58 ◼   ► is a thing, you can do that.

00:59:00 ◼   ► If you want to be in an instance where you mostly chat

00:59:02 ◼   ► about programming stuff, you can do that.

00:59:04 ◼   ► But what's fascinating and interesting about Mastodon

00:59:06 ◼   ► is that, like you said, it's federated.

00:59:08 ◼   ► So what that basically means is you can link up

00:59:11 ◼   ► and follow other accounts from other instances.

00:59:15 ◼   ► So even though I might be on mastodon.social,

00:59:18 ◼   ► which I have an account there,

00:59:19 ◼   ► but I haven't posted anything,

00:59:21 ◼   ► I might be on mastodon.social,

00:59:22 ◼   ► but Jon might be in ItalianAmericans.family

00:59:26 ◼   ► or something like that.

00:59:27 ◼   ► - Jon might be in seven other.

00:59:29 ◼   ► - And seven other ones too.

00:59:31 ◼   ► So in theory, I think that's a kind of neat idea,

00:59:35 ◼   ► but in practice, I think it's kind of aesthetically icky

00:59:40 ◼   ► and I just don't know how well it really works out,

00:59:43 ◼   ► especially since you can, as the instance owner/runner/

00:59:48 ◼   ► whatever, you can just up and decide,

00:59:51 ◼   ► eh, I don't wanna deal with this anymore.

00:59:52 ◼   ► And that has happened.

00:59:54 ◼   ► And I think the code of conduct or whatever

00:59:56 ◼   ► amongst Mastodon administrators is you have to give

01:00:00 ◼   ► six months notice or something like that, but really you don't, I don't think.

01:00:05 ◼   ► What are they going to do?

01:00:06 ◼   ► Well, let me describe some more of the cool features about this and get to the kicker,

01:00:09 ◼   ► which is like last week or maybe the week before Marco was like, "We're not going to

01:00:12 ◼   ► go to Mastodon, and even if we did, it doesn't matter because they're going to have all the

01:00:15 ◼   ► same problems as Twitter."

01:00:16 ◼   ► A lot of people said, "Wait, but have you heard about Mastodon's features?

01:00:19 ◼   ► They're not going to have all the same problems as Twitter because it has all these features."

01:00:21 ◼   ► You already talked about one, Casey.

01:00:22 ◼   ► "Oh, if you're on a server, that server can decide which ones it wants to federate with.

01:00:26 ◼   ► It can just block an entire server filled with trolls, right?

01:00:28 ◼   ► And so you don't have to deal with them and blah, blah, blah.

01:00:31 ◼   ► And there's even more to it than that.

01:00:33 ◼   ► If an instance shuts down, you can transfer, basically,

01:00:37 ◼   ► your followers or your identity, like redirect

01:00:39 ◼   ► to a different thing.

01:00:41 ◼   ► So it's not like, oh, I'm beholden

01:00:43 ◼   ► to the owner of this thing.

01:00:44 ◼   ► So if they shut it down, then I'm screwed

01:00:46 ◼   ► and I lose everything.

01:00:47 ◼   ► No, there's actually a feature where

01:00:48 ◼   ► you can transfer your followers and your account

01:00:51 ◼   ► and your identity to another instance.

01:00:53 ◼   ► And so it's made to be resilient and decentralized,

01:00:56 ◼   ► giving each instance owner the ability to form a community

01:01:00 ◼   ► that works the way they want it to work.

01:01:03 ◼   ► But I think having said all of that,

01:01:05 ◼   ► and I'm sure there's other features

01:01:06 ◼   ► that I'm even missing about this,

01:01:07 ◼   ► having said all of that, like what is it,

01:01:09 ◼   ► ActivityPub, the public API for this type of thing

01:01:12 ◼   ► and everything, you do still have all the same problems

01:01:17 ◼   ► as Twitter, you just have them in miniature form,

01:01:21 ◼   ► repeated many different times.

01:01:23 ◼   ► What are the problems of Twitter?

01:01:24 ◼   ► The problems with Twitter are,

01:01:25 ◼   ► how do we set the rules for this community?

01:01:28 ◼   ► How do we decide what behavior is and isn't allowed?

01:01:30 ◼   ► How do we decide which other federated instances

01:01:33 ◼   ► to block and to not block?

01:01:34 ◼   ► How do we decide when to kick somebody off?

01:01:36 ◼   ► How do we make money to keep this service running?

01:01:39 ◼   ► Does making that money make it an unpleasant place

01:01:41 ◼   ► for people to be, right?

01:01:42 ◼   ► It's all exactly the same problems as Twitter.

01:01:45 ◼   ► The good thing about it is that you get many,

01:01:47 ◼   ► many chances to solve those.

01:01:48 ◼   ► So instead of just having one chance

01:01:50 ◼   ► with one stupid Elon Musk running the thing or whatever,

01:01:52 ◼   ► you get 50 chances.

01:01:53 ◼   ► But that's also the bad thing,

01:01:54 ◼   ► and it's why I have so many accounts.

01:01:56 ◼   ► I wanna sign up for Mastodon.

01:01:58 ◼   ► Hmm, which instance should I choose?

01:02:00 ◼   ► The instance where other people I know are?

01:02:05 ◼   ► - Oh, but that doesn't matter.

01:02:07 ◼   ► - But yeah, well, it kinda matters

01:02:09 ◼   ► 'cause you can have a local feed,

01:02:10 ◼   ► but if an instance is like,

01:02:13 ◼   ► oh, it's the place, there's a community

01:02:15 ◼   ► with a set of rules, I wanna go where my friends are

01:02:17 ◼   ► because I bet that set of rules is good.

01:02:18 ◼   ► Well, but it also could just be that all your friends

01:02:21 ◼   ► went to the most popular instance,

01:02:23 ◼   ► and it turns out the most popular instance

01:02:24 ◼   ► is run by a megalomaniac who reads all your DMs,

01:02:27 ◼   ► because by the way, the owner of the instance

01:02:29 ◼   ► can read all your stuff, right?

01:02:31 ◼   ► It's like, you don't know that, right?

01:02:33 ◼   ► So maybe that's the wrong instance.

01:02:34 ◼   ► Maybe I should go to this instance.

01:02:35 ◼   ► Oh, that instance was run by somebody as a hobby

01:02:37 ◼   ► and they shut it down two years ago, right?

01:02:40 ◼   ► When I went into re-sign into my Mastodon things,

01:02:44 ◼   ► one of them was totally gone,

01:02:45 ◼   ► because the thing was shut down.

01:02:47 ◼   ► One of them had a big red banner at the top

01:02:49 ◼   ► said, "Warning, this thing is shutting down imminently."

01:02:51 ◼   ► One of them I forgot my password to forever,

01:02:54 ◼   ► so that one's gone, right?

01:02:56 ◼   ► I don't know why it wasn't in any of my keychains

01:02:57 ◼   ► or something, or maybe I just never knew the password

01:02:59 ◼   ► and didn't save it.

01:03:01 ◼   ► And the quote-unquote popular one, mastodon.social,

01:03:04 ◼   ► I couldn't get my username on,

01:03:06 ◼   ► which frustrates me in the end, right?

01:03:08 ◼   ► And then I have like three other ones, right?

01:03:10 ◼   ► And so I'm shuffling the people, but anyway.

01:03:13 ◼   ► It is better than Twitter because it is less centralized,

01:03:17 ◼   ► but all that means is that all these instances

01:03:21 ◼   ► now have this trial by fire of,

01:03:22 ◼   ► "Hey, you think it's so easy to run Twitter?

01:03:24 ◼   ► "You figure out how to do it,

01:03:25 ◼   ► "and figure out how to keep the lights on,

01:03:28 ◼   ► "figure out how to make enough money to run the instance.

01:03:30 ◼   ► "If your thing becomes popular

01:03:31 ◼   ► "and you're not making any money,

01:03:32 ◼   ► "how much you think it's gonna cost you

01:03:33 ◼   ► "to run Mastodon for all these people

01:03:35 ◼   ► "and do all the federated activity?"

01:03:37 ◼   ► And then, by the way,

01:03:38 ◼   ► if a bunch of Nazis come into your server,

01:03:40 ◼   ► you're gonna spend your whole day fighting them off,

01:03:41 ◼   ► and then spam bots come, and then blah, blah, blah.

01:03:43 ◼   ► It's like, if you become the most successful big instance,

01:03:46 ◼   ► "Oh, Mastodon.social, it's super popular.

01:03:48 ◼   ► "It's got millions of people."

01:03:49 ◼   ► Well, that's like days or weeks away

01:03:51 ◼   ► from facing the same problems that Twitter faced

01:03:54 ◼   ► when it got a million or so people.

01:03:57 ◼   ► So I'm not poo-pooing these things.

01:03:58 ◼   ► I think it is better than having one publicly

01:04:01 ◼   ► or privately held company that is the centralized version

01:04:03 ◼   ► of all of this.

01:04:04 ◼   ► But I think, I'm not gonna say,

01:04:08 ◼   ► oh, it's not gonna help and it's not gonna save us

01:04:11 ◼   ► 'cause if Twitter goes away,

01:04:12 ◼   ► Mastodon is better than nothing, I feel like,

01:04:14 ◼   ► and it is very much Twitter-like.

01:04:16 ◼   ► But boy, they have an uphill climb.

01:04:18 ◼   ► They're gonna have to go through all the same thing.

01:04:19 ◼   ► Their instances are gonna come and go.

01:04:22 ◼   ► They're gonna have to work through

01:04:23 ◼   ► all sorts of different rules.

01:04:24 ◼   ► Hopefully there'll be enough of them

01:04:25 ◼   ► trying these experiments,

01:04:26 ◼   ► but there'll be a lot of wreckage from that

01:04:28 ◼   ► of like, oh, this server screwed up

01:04:30 ◼   ► and this was invaded by Nazis and they set these rules here

01:04:33 ◼   ► and this one doesn't allow cursing.

01:04:35 ◼   ► There's just gonna be a lot of that churn going on

01:04:38 ◼   ► and it's just exhausting to keep up with that.

01:04:40 ◼   ► So that's probably going to keep it

01:04:41 ◼   ► from ever being popular with anybody

01:04:42 ◼   ► except for real nerdy people.

01:04:44 ◼   ► And then all the years of stuff that's happened on Twitter.

01:04:47 ◼   ► The API, all the clients that are built around,

01:04:50 ◼   ► I know everyone just uses the official client,

01:04:51 ◼   ► but like, you can make third party Mastodon clients

01:04:55 ◼   ► probably, but right now, there's the official client

01:04:57 ◼   ► in the web UI, and they're better than Twitter was

01:05:00 ◼   ► in the beginning, but they're not as good as the best

01:05:02 ◼   ► of the best Twitter interfaces that exist today.

01:05:04 ◼   ► How could they be?

01:05:05 ◼   ► They just haven't had time and money to mature.

01:05:07 ◼   ► So, you know, it's not that I'm pessimistic about Mastodon,

01:05:12 ◼   ► but I just don't, the only problem Mastodon solves

01:05:14 ◼   ► is Elon Musk, and it's, granted, that's a big problem,

01:05:17 ◼   ► Or if, you know, previously the only problem it solves

01:05:19 ◼   ► is Twitter is fairly inept management, right?

01:05:23 ◼   ► But all the other problems are there,

01:05:25 ◼   ► they're just now spread into little miniature instances

01:05:28 ◼   ► of those problems, and then people are sprinkled over

01:05:31 ◼   ► those instances like, fend for yourselves, figure it out,

01:05:34 ◼   ► hope you land on something with a good moderator,

01:05:35 ◼   ► don't say anything in DMs that you don't want anybody to see.

01:05:38 ◼   ► I don't know, I don't relish it.

01:05:42 ◼   ► Anyway, I'm on all sorts of Macedon things,

01:05:44 ◼   ► I still do want to get my last name and I asked it

01:05:46 ◼   ► on it on social, but I'm working on it.

01:05:48 ◼   ► So on mastodon.social, they have an about page,

01:05:51 ◼   ► which I don't know if you can see it if you're not logged in,

01:05:53 ◼   ► but it's mastodon.social/about.

01:05:55 ◼   ► There's a section, moderated servers,

01:05:57 ◼   ► and there's a list of just eyeballing it,

01:05:59 ◼   ► maybe a couple hundred, maybe 10 or 20 of which are limited.

01:06:04 ◼   ► And then there's a bunch that are considered suspended.

01:06:07 ◼   ► As I'm scrolling this list, one of the instances that

01:06:12 ◼   ► is limited is, I kid you not, sh*tposter.club, and FYI, it's limited because of harassment,

01:06:19 ◼   ► you don't say. Also, is Elon the president of the sh*tposter club? Because he certainly

01:06:25 ◼   ► thinks he is.

01:06:28 ◼   ► Having instances, that is the one good thing about Mastana, is these tiny tyrants who run

01:06:31 ◼   ► the instances, they are able to do what big companies thus far have not been doing, which

01:06:38 ◼   ► is like, "Hey, if someone's being a jerk in your instance, just boot them out. You don't

01:06:41 ◼   ► have to have this complicated policy.

01:06:43 ◼   ► There's not going to be any New York Times story

01:06:44 ◼   ► about how you booted out the jerks.

01:06:45 ◼   ► It's like having an IRC server back in the day,

01:06:48 ◼   ► or whatever, like BBS.

01:06:50 ◼   ► If you run the BBS and someone's a jerk, you boot them off.

01:06:53 ◼   ► And there's no big story about it, right?

01:06:55 ◼   ► Because it's your thing and you get to run it

01:06:56 ◼   ► and you get to set the rules, right?

01:06:58 ◼   ► But what that means is that every instance is at the whim

01:07:01 ◼   ► of the people who own that instance.

01:07:03 ◼   ► And how well do you know the people who own instances?

01:07:06 ◼   ► Right now, there isn't enough knowledge

01:07:08 ◼   ► for the general public of like,

01:07:11 ◼   ► is this a good instance to be on or a bad one?

01:07:13 ◼   ► It's like, well, you'll find out.

01:07:14 ◼   ► Again, just like BBS is our IRC service,

01:07:16 ◼   ► you'll find out if the admin is a jerk or not eventually.

01:07:19 ◼   ► If this ball keeps rolling,

01:07:23 ◼   ► there should eventually be public knowledge

01:07:25 ◼   ► about which ones are reasonably safe, nice places to be.

01:07:30 ◼   ► But like I said, all that does is fast forward you to

01:07:34 ◼   ► like Twitter circa 2007 or eight or nine, I guess,

01:07:39 ◼   ► where it's like, okay,

01:07:40 ◼   ► now we found a nice pleasant place to be.

01:07:42 ◼   ► And now here come all the problems that Twitter encountered.

01:07:44 ◼   ► How are you going to deal with them,

01:07:46 ◼   ► person who runs this thing in your spare time?

01:07:47 ◼   ► Good luck.

01:07:48 ◼   ► - Yeah, I don't know.

01:07:50 ◼   ► I like, I really feel like I'm turning into old man

01:07:54 ◼   ► who shouts at clouds 'cause I'm,

01:07:56 ◼   ► I don't wanna be pessimistic about everything,

01:07:59 ◼   ► but I just don't love what I've seen so far on Mastodon.

01:08:03 ◼   ► Like, I think it just, it seems like the,

01:08:08 ◼   ► it seems like Linux, right?

01:08:10 ◼   ► I'm sorry, I'm sorry.

01:08:11 ◼   ► But it's like the--

01:08:12 ◼   ► - Linux is way better.

01:08:14 ◼   ► - Well, fair.

01:08:15 ◼   ► It's like the crummy open source version

01:08:17 ◼   ► of something that everyone likes, right?

01:08:19 ◼   ► Which is impressive.

01:08:21 ◼   ► - It's not that crummy.

01:08:22 ◼   ► It's actually, I mean, again,

01:08:23 ◼   ► considering I signed up for it five years ago,

01:08:25 ◼   ► it's pretty feature rich.

01:08:26 ◼   ► And the web UI does not look like it was just

01:08:29 ◼   ► thrown together in a weekend, right?

01:08:31 ◼   ► It's not great, and it's overly confusing and overly

01:08:34 ◼   ► complicated and could be improved or whatever.

01:08:36 ◼   ► But I'm impressed with how many features

01:08:39 ◼   ► it's gotten in the five years that I've been ignoring it.

01:08:41 ◼   ► And I get what you're getting at in that it's like--

01:08:44 ◼   ► open source software.

01:08:47 ◼   ► I mean, the worst thing you say about it

01:08:49 ◼   ► is that they're all kind of running the same software.

01:08:51 ◼   ► So whoever modifies that software

01:08:53 ◼   ► and updates it has the ability to make our lives better

01:08:56 ◼   ► or worse.

01:08:56 ◼   ► And how does that work?

01:08:57 ◼   ► But for people thinking it's going

01:08:59 ◼   ► to be like an IRC type thing.

01:09:02 ◼   ► It is more pleasant than that.

01:09:04 ◼   ► - It is, it is for sure.

01:09:05 ◼   ► - Yes, I mean, to me, the problem with Mastodon

01:09:08 ◼   ► is not anything about its features.

01:09:12 ◼   ► Suppose you get over all the hurdles.

01:09:15 ◼   ► Suppose you choose a server instance or whatever

01:09:18 ◼   ► to host yourself, which will host you for some reason,

01:09:23 ◼   ► indefinitely into the future without problems, lol.

01:09:26 ◼   ► Okay, so suppose you get past that,

01:09:28 ◼   ► And suppose that some of your friends get past it too

01:09:32 ◼   ► and they somehow find you or create accounts or whatever.

01:09:36 ◼   ► It's just really hard to juggle two very similar

01:09:40 ◼   ► social networks where you don't have the same friends

01:09:43 ◼   ► on both, you don't have any good way to get all

01:09:46 ◼   ► of the friends on one onto the other,

01:09:49 ◼   ► and it's kind of hard to know like,

01:09:50 ◼   ► well what do I post where?

01:09:52 ◼   ► Now, if you have say topic specific Mastodon instances,

01:09:57 ◼   ► Like I was on one for Overcast,

01:09:59 ◼   ► there was like a podcast kind of standardized discussion

01:10:02 ◼   ► kind of thing, but that was like topic specific.

01:10:05 ◼   ► For just like general use,

01:10:08 ◼   ► what do I do with two Twitter like services?

01:10:11 ◼   ► Like my entire usage pattern of Twitter

01:10:15 ◼   ► is through these apps.

01:10:17 ◼   ► I have Tweetbot on the Mac, I have Tweetbot on the phone,

01:10:20 ◼   ► there's other apps like Twitturific that are great.

01:10:22 ◼   ► Mastodon has an app and I used it briefly

01:10:26 ◼   ► on my phone last night.

01:10:27 ◼   ► I'm not aware of a Mac app besides the web app

01:10:29 ◼   ► and the web app, and you know,

01:10:30 ◼   ► web apps for this kind of stuff just suck

01:10:32 ◼   ► compared to native apps.

01:10:33 ◼   ► The native apps are way better.

01:10:34 ◼   ► And so on my phone, I tried the Mastodon app

01:10:37 ◼   ► and because it kind of looks like Twitter

01:10:40 ◼   ► and kind of works like Twitter,

01:10:42 ◼   ► you expect it to work like Twitter

01:10:43 ◼   ► and it's a bit uncanny valley-ish

01:10:44 ◼   ► and then you go to do something

01:10:46 ◼   ► that works in your Twitter app of choice

01:10:48 ◼   ► and it doesn't work at all or the same way.

01:10:51 ◼   ► it just kind of feels broken.

01:10:53 ◼   ► And I can post stuff there, but do I post the same thing?

01:10:57 ◼   ► Do I cross post?

01:10:58 ◼   ► Do I have to look at responses from both?

01:11:01 ◼   ► In the ideal case, what would get this off the ground

01:11:05 ◼   ► is one app, say Tweetbot or Twitterific,

01:11:10 ◼   ► where you could attach your Twitter account

01:11:13 ◼   ► and a Mastodon account or two

01:11:16 ◼   ► and view all the replies in one app

01:11:18 ◼   ► and have everything work the same way.

01:11:21 ◼   ► - Can you imagine if it had this, I don't know,

01:11:23 ◼   ► what if your timeline was all together,

01:11:25 ◼   ► if it was like, I don't know, you, you, you,

01:11:27 ◼   ► whoa, whoa, what if it was unified?

01:11:29 ◼   ► I bet that would be cool. - You're making a joke,

01:11:31 ◼   ► but the inability to browse Mastodon

01:11:35 ◼   ► with a unified timeline is actually a barrier

01:11:38 ◼   ► for adoption for me personally,

01:11:39 ◼   ► because that's what Mark was saying.

01:11:41 ◼   ► If you're used to doing it a certain way in Twitter,

01:11:43 ◼   ► since this is so similar, there are habits that you're formed

01:11:45 ◼   ► and you're like, well, I don't wanna use Mastodon,

01:11:47 ◼   ► doesn't let me view it the way I'm used to viewing it.

01:11:51 ◼   ► And obviously the solution is that,

01:11:52 ◼   ► well, if Twitter implodes, Mastodon's

01:11:54 ◼   ► starting looking a lot better, and you don't have

01:11:55 ◼   ► to have this question anymore, because it is so Twitter-like,

01:11:58 ◼   ► and it is the most Twitter-like of the competing things,

01:12:00 ◼   ► that if Twitter literally does implode,

01:12:02 ◼   ► or actually goes down and they can't bring it back up,

01:12:04 ◼   ► or whatever, turns into something terrible

01:12:07 ◼   ► that everybody leaves, Mastodon is there waiting for it.

01:12:10 ◼   ► But I feel like the centralization of Twitter,

01:12:13 ◼   ► people can sign up for it, they know where to go,

01:12:16 ◼   ► they go to twitter.com, right?

01:12:18 ◼   ► The single unified namespace, and you can say,

01:12:20 ◼   ► well, you know, Mastodon has a unified namespace too.

01:12:22 ◼   ► It just has an extra ad and an address in it,

01:12:24 ◼   ► just like an email address, not a big deal.

01:12:26 ◼   ► I think it is a big deal,

01:12:27 ◼   ► especially since when instances go down,

01:12:29 ◼   ► you might not necessarily be able

01:12:30 ◼   ► to get the same username elsewhere.

01:12:31 ◼   ► Stable URLs, tweets for all these years

01:12:34 ◼   ► have had stable URLs.

01:12:36 ◼   ► Not so with Mastodon things,

01:12:37 ◼   ► 'cause if that instance goes down and disappears from the web

01:12:40 ◼   ► that URL that points to that instance

01:12:41 ◼   ► is not gonna work anymore, right?

01:12:43 ◼   ► That's kind of why I like this Jack Dorsey,

01:12:46 ◼   ► you know, wankery project, whatever,

01:12:49 ◼   ► the Project Blue Sky thing,

01:12:51 ◼   ► which is like, let's build Twitter,

01:12:52 ◼   ► but let's do it with open standards and decentralized

01:12:54 ◼   ► and blah, blah, blah.

01:12:56 ◼   ► If you look at the technology and ideas

01:12:58 ◼   ► behind Project Blue Sky, we'll put a link in the show,

01:13:00 ◼   ► it's blueskyweb.xyz,

01:13:03 ◼   ► the technology and the ideas I think are really good.

01:13:06 ◼   ► I don't think it will ever actually come to anything,

01:13:08 ◼   ► which is the problem,

01:13:09 ◼   ► but like what you want is the best of both worlds.

01:13:11 ◼   ► You want the clarity and single unified namespace

01:13:16 ◼   ► and stable URLs of Twitter,

01:13:18 ◼   ► but without it being owned and controlled

01:13:19 ◼   ► by a single private company.

01:13:20 ◼   ► And that is a tall order.

01:13:22 ◼   ► We kind of already have that with blogs and RSS.

01:13:25 ◼   ► It was straightforward.

01:13:27 ◼   ► URLs were stable as they wanted to be.

01:13:29 ◼   ► You presumably owned and controlled your own blog.

01:13:32 ◼   ► And if your hosting company went down,

01:13:33 ◼   ► you can move your blog elsewhere or whatever.

01:13:35 ◼   ► But that was like a ideal world for computer nerds

01:13:39 ◼   ► who know how to make and run

01:13:41 ◼   ► want to make and run their own blog.

01:13:44 ◼   ► And what that rapidly turned into is, "Oh, my blog is on Blogger."

01:13:48 ◼   ► And then eventually Blogger falls out of favor.

01:13:50 ◼   ► "I'm on LiveJournal.

01:13:51 ◼   ► I'm on Tumblr."

01:13:52 ◼   ► And it's just like these big companies that are helping other people do this thing that

01:13:55 ◼   ► only nerds could do before.

01:13:58 ◼   ► And Twitter just solved that problem for everybody.

01:14:00 ◼   ► We're one company, go to one place, we're all talked together in one big giant thing.

01:14:04 ◼   ► And that's why Marco said it two shows ago, it would be ideal if that could just continue

01:14:07 ◼   ► in terms of the simplicity of the user experience, but not ideal in terms of the consequences.

01:14:13 ◼   ► Because as we've seen, a person who controls Twitter can really screw things up for a lot

01:14:17 ◼   ► of people.

01:14:18 ◼   ► And both pre-Elon and post-Elon we saw that, amply demonstrated, right?

01:14:22 ◼   ► So I'm not sure what the solution is, but the blue sky stuff looks really appealing

01:14:26 ◼   ► to me if something like that could ever actually be created and gotten off the ground.

01:14:31 ◼   ► And if they worked out all the problems of like, how do I make it simple for regular

01:14:34 ◼   ► to people to sign up while still not having it eventually

01:14:37 ◼   ► be owned and controlled by a single company.

01:14:38 ◼   ► Because kind of like blogging, you're like,

01:14:40 ◼   ► "Oh, blogging, it's free.

01:14:40 ◼   ► "It's not owned and controlled by a single company."

01:14:42 ◼   ► But once you get the regular people in there

01:14:43 ◼   ► who don't want to write their own servers

01:14:45 ◼   ► or run their own servers or own CMSs,

01:14:48 ◼   ► you get necessarily these companies that,

01:14:50 ◼   ► you know, I don't know if Ben Thompson

01:14:53 ◼   ► will call them aggregators, but like,

01:14:54 ◼   ► "Hey, we're a big company.

01:14:56 ◼   ► "You don't wanna have to worry about running a blog.

01:14:58 ◼   ► "We'll run it for you."

01:15:00 ◼   ► That's why I feel like, you know,

01:15:01 ◼   ► I mean, arguably frequent sponsor Squarespace,

01:15:04 ◼   ► encouraging you to get your own domain name

01:15:07 ◼   ► kind of helps us hedge against that

01:15:09 ◼   ► because in theory, if Squarespace goes away

01:15:12 ◼   ► or becomes evil or starts charging you too much money,

01:15:14 ◼   ► you can just pick up your website

01:15:16 ◼   ► 'cause it's at your own domain name

01:15:17 ◼   ► and put it someplace else.

01:15:17 ◼   ► But now we're back to techie stuff again, right?

01:15:20 ◼   ► And what you'd be looking for is another company

01:15:22 ◼   ► like Squarespace that solves this problem for you.

01:15:24 ◼   ► And that's why you get these big consolidations

01:15:26 ◼   ► of a giant company where most people have their

01:15:29 ◼   ► Twitter replacement blue sky thing,

01:15:31 ◼   ► and then the nerds have their own individual

01:15:33 ◼   ► Twitter replacement blue sky.

01:15:34 ◼   ► Same thing with Mastodon.

01:15:35 ◼   ► You can run your Mastodon since you can get

01:15:36 ◼   ► a Mastodon address that is a domain that you control.

01:15:40 ◼   ► But that is definitely a tech nerdy thing

01:15:41 ◼   ► and most people won't do that.

01:15:42 ◼   ► So, hard problems to solve.

01:15:45 ◼   ► Arguably, running Twitter not like an idiot

01:15:48 ◼   ► is an easier problem to solve

01:15:50 ◼   ► than everything we've discussed here

01:15:51 ◼   ► because Twitter had improved over the years,

01:15:55 ◼   ► learned some hard lessons,

01:15:57 ◼   ► and was on a path that was ever so slowly

01:16:00 ◼   ► getting slightly better over time.

01:16:03 ◼   ► If someone could have just taken over Twitter

01:16:05 ◼   ► and bent that line up to get better faster,

01:16:08 ◼   ► boy that would have been much better than where we are now,

01:16:11 ◼   ► which is bending that line way, way downward real fast.

01:16:15 ◼   ► - Yeah, I don't see Mastodon itself,

01:16:19 ◼   ► and maybe it's possible for something else

01:16:20 ◼   ► to have a better story here.

01:16:21 ◼   ► I don't see Mastodon having the user experience

01:16:26 ◼   ► to really ever get mass traction.

01:16:28 ◼   ► And part of it is because of the weird federation stuff

01:16:32 ◼   ► and the weird double at usernames and everything.

01:16:36 ◼   ► There's a whole bunch there that's just very

01:16:38 ◼   ► normal person hostile.

01:16:40 ◼   ► - The instability of addresses and URLs,

01:16:42 ◼   ► it's a real problem.

01:16:44 ◼   ► - But I think ultimately,

01:16:45 ◼   ► what's gonna take off, if anything,

01:16:50 ◼   ► to replace Twitter is gonna be another centralized company

01:16:53 ◼   ► that's gonna have a really nice app

01:16:54 ◼   ► and be accessible everywhere and be really easy

01:16:58 ◼   ► for everyone to get into and that's what's gonna work.

01:17:01 ◼   ► And Mastodon, while I respect what they're trying to do

01:17:04 ◼   ► and I like a lot of the ideals behind it,

01:17:06 ◼   ► the implementation and the user experience so far

01:17:10 ◼   ► is just so regular person hostile.

01:17:13 ◼   ► And I don't see that meaningfully changing.

01:17:17 ◼   ► What might happen is one Mastodon host

01:17:21 ◼   ► might get really popular and then you just have

01:17:24 ◼   ► a different centralized company, that might happen.

01:17:27 ◼   ► But the whole thing with like,

01:17:29 ◼   ► oh, well you can follow me over here,

01:17:31 ◼   ► it's like, yeah, you can make your moonshine

01:17:34 ◼   ► in your bathtub, but no one's gonna really do that.

01:17:37 ◼   ► It's this whole nerd dream where everyone's gonna have

01:17:39 ◼   ► their own domains and their own URLs,

01:17:42 ◼   ► and over and over again, the industry just proves

01:17:46 ◼   ► that's not what people ever wanna do,

01:17:48 ◼   ► and at least a lot of people.

01:17:51 ◼   ► We can get nerds like us and business owners

01:17:53 ◼   ► and stuff to do it, but to get most of the public

01:17:55 ◼   ► into something like this, it has to be way simpler

01:17:58 ◼   ► and way easier.

01:17:59 ◼   ► There can't be 16 different answers.

01:18:01 ◼   ► There can't be a question that poses 16 different options

01:18:03 ◼   ► of like, all right, well first, before you even use

01:18:05 ◼   ► this thing, where do you wanna make your account?

01:18:07 ◼   ► That, you can't even ask people that.

01:18:10 ◼   ► It shouldn't be a question.

01:18:11 ◼   ► You should instantly start up with like,

01:18:14 ◼   ► we have an amazing app that works really well

01:18:16 ◼   ► and that does everything you want it to do.

01:18:17 ◼   ► Like, that's like table stakes.

01:18:19 ◼   ► For a social network, you have to have apps

01:18:21 ◼   ► on every major platform that have to be great

01:18:24 ◼   ► and they have to be usable and they have to have features

01:18:27 ◼   ► people want and here's the thing,

01:18:29 ◼   ► if you're gonna mimic Twitter in what your product is,

01:18:33 ◼   ► you have to support a lot of things that Twitter supports

01:18:36 ◼   ► and they have to work the same way.

01:18:39 ◼   ► If you're gonna make something that looks like Twitter

01:18:41 ◼   ► and kinda acts like Twitter but then doesn't work

01:18:44 ◼   ► like Twitter, you're gonna anger everybody.

01:18:47 ◼   ► Like I was trying to read a thread,

01:18:48 ◼   ► like somebody, I was poking around Mastodon in the app

01:18:51 ◼   ► and somebody posted a thread with a little thread emoji

01:18:54 ◼   ► to indicate this is a thread.

01:18:56 ◼   ► And for the life of me, I could not figure out

01:18:58 ◼   ► how to see the replies of that thread.

01:19:00 ◼   ► I tried like, you know, tapping into that one message

01:19:02 ◼   ► or swiping right or whatever,

01:19:04 ◼   ► and I got it to show me other replies,

01:19:07 ◼   ► but nowhere in the list was like

01:19:09 ◼   ► the next post in that thread. (laughs)

01:19:11 ◼   ► And so, and again, it was just some like,

01:19:13 ◼   ► some little difference that like,

01:19:15 ◼   ► this is a small behavioral paper cut

01:19:18 ◼   ► that if I'm going to move from Twitter,

01:19:21 ◼   ► I can't be hitting paper cuts like that

01:19:23 ◼   ► because I am going to expect this thing to work like Twitter.

01:19:26 ◼   ► Now, if it's not gonna work like Twitter,

01:19:28 ◼   ► it should be even more different.

01:19:30 ◼   ► Like, I don't get that feeling on Tumblr

01:19:33 ◼   ► because Tumblr is way more different from Twitter

01:19:36 ◼   ► than Mastodon is.

01:19:37 ◼   ► And so Tumblr is its own thing.

01:19:39 ◼   ► And so I can go to Tumblr and while it is

01:19:42 ◼   ► very different from Twitter,

01:19:44 ◼   ► it doesn't frustrate me in the same way

01:19:46 ◼   ► because it's its own thing.

01:19:48 ◼   ► It's not trying to be Twitter.

01:19:49 ◼   ► Whereas Mastodon is basically trying to be Twitter,

01:19:53 ◼   ► and so it has to copy it really well

01:19:56 ◼   ► and have all those features nailed down,

01:19:57 ◼   ► all those little details nailed down.

01:19:59 ◼   ► And Twitter looks like a simple product, but it's not.

01:20:03 ◼   ► And that's a hard thing to totally match.

01:20:07 ◼   ► And I think at this point,

01:20:08 ◼   ► anything that's different from Twitter,

01:20:10 ◼   ► Mastodon's been around long enough

01:20:11 ◼   ► that it's probably a choice,

01:20:13 ◼   ► not a just we haven't gotten to it yet kind of thing.

01:20:15 ◼   ► And so that's gonna hurt them,

01:20:18 ◼   ► and that's gonna hurt them with adoption

01:20:19 ◼   ► for new people who are in there now kicking the tires

01:20:21 ◼   ► 'cause we're all super mad at Elon.

01:20:23 ◼   ► Like, they have a big rush of people

01:20:25 ◼   ► checking it out right now,

01:20:27 ◼   ► but I don't see how that sticks for so many reasons.

01:20:30 ◼   ► So, I don't know, I hope I'm wrong.

01:20:32 ◼   ► - They had a big rush of people five years ago

01:20:33 ◼   ► when I signed up too.

01:20:34 ◼   ► I mean, I think there's been multiple rushes on Mastodon

01:20:36 ◼   ► over the course of time.

01:20:37 ◼   ► Like, one way around that is you could be better, right?

01:20:40 ◼   ► You know, you could be different, but if you're different,

01:20:42 ◼   ► you have to be better enough so that people

01:20:44 ◼   ► are willing to learn your new thing

01:20:45 ◼   ► and accept the betterness of it

01:20:47 ◼   ► because there is advantage to learning the new thing.

01:20:49 ◼   ► And also, like if Twitter goes away,

01:20:50 ◼   ► people will eventually learn how ever Mastodon works.

01:20:52 ◼   ► And then you get into, okay, but how does Mastodon work?

01:20:54 ◼   ► Does it work in a good way?

01:20:55 ◼   ► One example that I saw, I don't even know if this is true,

01:20:57 ◼   ► because it seems so ridiculous that I have a hard time

01:20:59 ◼   ► believing it and I haven't tested it myself,

01:21:00 ◼   ► but I saw somebody say, and people can correct me

01:21:04 ◼   ► and follow up, that if you are doing the equivalent

01:21:06 ◼   ► of DMing, direct messaging, between you and another person

01:21:08 ◼   ► on Mastodon, and you @ mention another person,

01:21:12 ◼   ► they are added to the DM conversation.

01:21:14 ◼   ► Like they get sucked into the DM conversation.

01:21:16 ◼   ► So you say something nasty about somebody--

01:21:18 ◼   ► - The whole conversation.

01:21:19 ◼   ► - Yeah, and they get to see everything you said before

01:21:22 ◼   ► you @ mentioned them as well, right?

01:21:23 ◼   ► That is a terrible misfeature,

01:21:26 ◼   ► like that's just bad product design, right?

01:21:28 ◼   ► And there's always gonna be misfeatures in products,

01:21:30 ◼   ► but that's why the maturity of Twitter platform is valuable

01:21:33 ◼   ► because they've, I'm not gonna say

01:21:35 ◼   ► they learned hard lessons, they did,

01:21:37 ◼   ► but also a lot of the features that are in Twitter

01:21:39 ◼   ► were sort of pioneered by its users,

01:21:41 ◼   ► the use of @ mentions, retweets,

01:21:44 ◼   ► pioneered by its users and the third-party developers, right?

01:21:47 ◼   ► And that process hasn't run long enough on Mastodon

01:21:50 ◼   ► for it to work these things out.

01:21:52 ◼   ► It also helps that Twitter was a single company,

01:21:54 ◼   ► that they could hire product designers and work on it,

01:21:56 ◼   ► whereas Mastodon is more distributed,

01:21:58 ◼   ► and an open source project or whatever.

01:22:00 ◼   ► And I feel like Mastodon is close.

01:22:02 ◼   ► To solve the, if you wanted to solve the problems

01:22:05 ◼   ► that I was citing before of unstable URLs

01:22:08 ◼   ► and not a single namespace or whatever,

01:22:11 ◼   ► I know people are gonna say Web3 and crypto,

01:22:13 ◼   ► but please try to keep those words out of your mind

01:22:15 ◼   ► when you listen to me say this.

01:22:16 ◼   ► What you basically need is a distributed database

01:22:20 ◼   ► that keeps track of-- so imagine downloading a client,

01:22:25 ◼   ► and you downloaded your whatever,

01:22:27 ◼   ► Mastodon 2 client or whatever.

01:22:29 ◼   ► And in the client, it comes with this set

01:22:31 ◼   ► of configurable servers that are like--

01:22:33 ◼   ► I don't know what the equivalent is--

01:22:36 ◼   ► basically index servers that run on the internet

01:22:38 ◼   ► and keep track of where all the Mastodon instances

01:22:41 ◼   ► and runs essentially the central namespace.

01:22:45 ◼   ► And those will change over time,

01:22:47 ◼   ► kind of like the root DNS things change.

01:22:48 ◼   ► People don't know that their web browsers

01:22:49 ◼   ► and their operating systems come with an idea

01:22:51 ◼   ► of what the root DNS servers are,

01:22:52 ◼   ► or come with the idea of the things that are trustable,

01:22:55 ◼   ► the SSL root stuff.

01:22:57 ◼   ► That's built into all of our software.

01:22:59 ◼   ► No users ever need to configure it,

01:23:01 ◼   ► but it is also resilient and decentralized.

01:23:03 ◼   ► Like how does DNS work?

01:23:04 ◼   ► How does the SSL signing certificates work?

01:23:06 ◼   ► That stuff changes over time and is maintained

01:23:09 ◼   ► not by just Apple or just Microsoft or just Amazon,

01:23:14 ◼   ► but users also don't have to deal with it.

01:23:16 ◼   ► You know, it's like, how do I configure the DNS routes?

01:23:20 ◼   ► How do I configure the trusted route certificates?

01:23:22 ◼   ► Like, pretty much users don't have to deal with that.

01:23:25 ◼   ► Their phone just connects through SSL or TLS or whatever.

01:23:27 ◼   ► But that is a decentralized system.

01:23:30 ◼   ► And I would point out, none of that uses crypto.

01:23:33 ◼   ► You can have a shared database among people and be like,

01:23:36 ◼   ► but what if someone poisons it?

01:23:38 ◼   ► Like, yeah, you get a bunch of people who trust each other

01:23:40 ◼   ► through like human relationships and legal contracts,

01:23:43 ◼   ► and you can get people to work on a distributed database

01:23:46 ◼   ► without burning the planet down.

01:23:48 ◼   ► Anyway, I'm gonna go for a crypto rant.

01:23:50 ◼   ► The whole point is a distributed database

01:23:53 ◼   ► is not a foreign thing to the internet.

01:23:55 ◼   ► The whole internet works based on that,

01:23:57 ◼   ► just based on DNS and TLS certificates alone, right?

01:24:00 ◼   ► If that didn't work, nothing would work on the internet

01:24:02 ◼   ► and none of that uses crypto.

01:24:04 ◼   ► And that's what something like a Blue Sky type thing

01:24:08 ◼   ► or a Mastodon type thing should work,

01:24:10 ◼   ► that when you download the client,

01:24:11 ◼   ► You don't have to know any of that's going on

01:24:13 ◼   ► behind the scenes, but it is resilient

01:24:15 ◼   ► against any one company failing.

01:24:17 ◼   ► And it can implement a global namespace.

01:24:19 ◼   ► Hey, DNS, global namespace.

01:24:21 ◼   ► You can implement a global namespace

01:24:22 ◼   ► to give you unstable URLs.

01:24:24 ◼   ► Because like, oh, stable URL, how does this URL work?

01:24:26 ◼   ► Well, when you look up that, when you click on that URL,

01:24:29 ◼   ► you know, we distribute the IP address,

01:24:33 ◼   ► the response to that URL such that some server

01:24:35 ◼   ► will answer on it in your locality

01:24:37 ◼   ► and get you the answer to the, you know,

01:24:39 ◼   ► like, it's complicated.

01:24:41 ◼   ► I'm not saying it's easy, there's no reason no one has done it.

01:24:43 ◼   ► And like, how do you incentivize people to do that?

01:24:46 ◼   ► Like, they're not going to do it unless there's money to be made, right?

01:24:49 ◼   ► And that's why the blue sky thing is kind of like, I think it was Jack Dorsey, like

01:24:52 ◼   ► just feeling bad about making Twitter a private company and starting this project to fix it

01:24:56 ◼   ► or whatever.

01:24:57 ◼   ► And it's probably going to go nowhere, but that's sort of my hope for like the distant

01:25:00 ◼   ► future again, assuming we're not all dead from the water wars, where we come up with

01:25:06 ◼   ► a real better solution to this that gives us the value that we got out of Twitter without

01:25:10 ◼   ► any of the baggage long after Twitter 2.0 or 3.0 or 4.0 have burned to the ground.

01:25:15 ◼   ► See, I feel like even that distributed ID thing, that is a pipe dream of ever becoming

01:25:22 ◼   ► like a significant thing because here's what would happen.

01:25:25 ◼   ► We've seen this pattern over and over again.

01:25:26 ◼   ► Here's what always happens.

01:25:27 ◼   ► I could go in there and get Marco.org as my ID and it's like, "All right, this is me.

01:25:31 ◼   ► This has verified me and I have some crypto signature that says that—"

01:25:35 ◼   ► No, no crypto.

01:25:36 ◼   ► No crypto.

01:25:37 ◼   ► And you just get @marco or @marcoarmint.

01:25:39 ◼   ► Armin, like it doesn't have to be any more complicated than Twitter.

01:25:41 ◼   ► Okay, but then like, what's gonna happen?

01:25:44 ◼   ► That's gonna be too hard for most people to do, and so someone's gonna come up with, you

01:25:48 ◼   ► know, ids.lol/marco, and then they're gonna say, "Hey, you can come sign up at ids.lol

01:25:54 ◼   ► and get whatever you want."

01:25:55 ◼   ► What's the too hard part?

01:25:57 ◼   ► The, like, you know, setting up your own DNS entry or whatever.

01:26:01 ◼   ► You would just download the app and sign up, like the user experience would be exactly

01:26:04 ◼   ► like Twitter, you download an app and you sign up and you enter a username and see if

01:26:07 ◼   ► it's taken and you make a password like that's it that's the user experience.

01:26:10 ◼   ► I don't know with see like but without something central there are so many

01:26:14 ◼   ► potential pitfalls of like abuse spam fraud. Yeah just like there is in DNS and

01:26:20 ◼   ► TLS root certificates this is not I'm not saying this is easy to do but it has

01:26:23 ◼   ► been done without crypto a shared database among parties that ostensibly

01:26:28 ◼   ► don't trust each other building trust in ways that do not involve solving Sudokus.

01:26:32 ◼   ► I don't know that to me like that's a very different problem space like having having you know

01:26:38 ◼   ► How many root certificates are there and I don't know I've I don't know maybe like a hundred

01:26:43 ◼   ► No, I'm not saying it's easy

01:26:44 ◼   ► But I'm saying we have proof like DNS is the best example DNS is a single unified namespace with a lot of entries not

01:26:50 ◼   ► Just like the number of root certificates

01:26:52 ◼   ► There are a lot of DNS names and DNS poisoning is a problem and so on and so forth and parties don't trust each other

01:26:58 ◼   ► and you know authoritarian countries have their own weird DNS things where they're screwing

01:27:03 ◼   ► stuff up, but if DNS didn't work, nothing would work on the internet.

01:27:08 ◼   ► What you're doing mass on that is you're trying to piggyback on DNS to some degree, but that's

01:27:11 ◼   ► like what I'm saying is a system that is like DNS but is not DNS for identity for a service

01:27:16 ◼   ► like Twitter.

01:27:18 ◼   ► And all the crypto people are screaming their bloody heads off right now, it's like this

01:27:21 ◼   ► is exactly what crypto should be used for, again.

01:27:23 ◼   ► Now they're all still crying because all their money got stolen/burned to the ground or whatever.

01:27:27 ◼   ► - I know, it's like, I feel like DNS is--

01:27:29 ◼   ► - It really couldn't have happened to better people.

01:27:31 ◼   ► - Yeah, exactly, there's just so many ridiculous downsides

01:27:35 ◼   ► to that and like, you know, we did this in,

01:27:38 ◼   ► whenever DNS was made in the 60s, 70s,

01:27:41 ◼   ► we have a proof of concept that is super important

01:27:44 ◼   ► to the underpinnings of the internet.

01:27:45 ◼   ► Anything you can say that you're gonna say,

01:27:47 ◼   ► that's why we need crypto, I would just keep pointing

01:27:49 ◼   ► at DNS and say, they didn't need crypto,

01:27:51 ◼   ► but how do they, well, why don't you ask them?

01:27:53 ◼   ► Why don't you ask them how it works?

01:27:54 ◼   ► But what about bad actors?

01:27:55 ◼   ► But what about DNS poisoning?

01:27:56 ◼   ► what about China? It's like, yeah, those are all problems solvable without destroying the

01:28:01 ◼   ► world. Oh, God, I'm sorry. I'm sorry, crypto people.

01:28:04 ◼   ► I'm not. Yeah, I'm not. Before we move on, I think

01:28:09 ◼   ► it's worth, and I don't mean to start a whole other tangent, but I think it's worth calling

01:28:13 ◼   ► out our friend, Matt and Reece, at micro.blog, which has different trade-offs than Mastodon

01:28:19 ◼   ► and is different in a lot of ways. But one of the things that I think is very interesting

01:28:22 ◼   ► about microblog is that it is really intended to be clear that it's your content and it's

01:28:31 ◼   ► your stuff.

01:28:32 ◼   ► Now granted it's stored on the microblog servers and so on, but like my microblog, I have a

01:28:39 ◼   ► microblog account and it's @list, but if you go to list.micro.blog, you can find me there

01:28:47 ◼   ► and you can also, if I remember right, micro.kclist.com?

01:28:50 ◼   ► I think yes, so that is all my stuff.

01:28:54 ◼   ► And when you go to micro.case list.com, it doesn't redirect.

01:28:57 ◼   ► It presents as micro.case list.com.

01:29:00 ◼   ► And I think it's really important to maintain that it's

01:29:03 ◼   ► clear that this is your stuff, and it

01:29:05 ◼   ► lives in kind of your world.

01:29:07 ◼   ► And you can tweak it very Tumblr-esque.

01:29:09 ◼   ► You can tweak it to your heart's content.

01:29:10 ◼   ► And actually, in a lot of ways, it's very similar to Tumblr,

01:29:13 ◼   ► but oriented specifically around microblogging.

01:29:16 ◼   ► And again, a different set of trade-offs.

01:29:18 ◼   ► We need to go into the ins and outs of it right now.

01:29:19 ◼   ► and I'm still trying to figure out exactly

01:29:22 ◼   ► how I would verbalize the trade-offs between the two,

01:29:23 ◼   ► but it is worth pointing out.

01:29:26 ◼   ► And Microblog is, from what I can tell,

01:29:29 ◼   ► a really, really chill place right now,

01:29:31 ◼   ► I think in part because it costs money to join it,

01:29:33 ◼   ► and there's something to be said for that.

01:29:35 ◼   ► So it might be worth taking a look there as well.

01:29:37 ◼   ► And they also, and my understanding of this is very fuzzy,

01:29:42 ◼   ► but you can, I guess, present as a Mastodon-friendly account

01:29:47 ◼   ► using ActivityPub.

01:29:48 ◼   ► you can set up a Mastodon username or something like that,

01:29:51 ◼   ► and then that would allow Mastodon users to follow you,

01:29:54 ◼   ► and I think you can follow Mastodon users in Microblog.

01:29:57 ◼   ► Again, I'm very fuzzy on all this,

01:29:58 ◼   ► but there's some amount of interoperability between the two,

01:30:02 ◼   ► and it's worth checking out.

01:30:04 ◼   ► Again, Manton's a friend of ours.

01:30:06 ◼   ► Jean McDonald, who I think is their community manager,

01:30:08 ◼   ► I think is her title, a dear friend of ours.

01:30:10 ◼   ► So I'm biased, but it's worth looking at.

01:30:14 ◼   ► - Yeah, and this is like,

01:30:16 ◼   ► The idea of the activity pub being like the glue

01:30:19 ◼   ► that can actually glue together all these services,

01:30:23 ◼   ► that's very promising.

01:30:25 ◼   ► I just, I hope that kind of thing really takes off.

01:30:28 ◼   ► Like I hope that I'm totally wrong,

01:30:31 ◼   ► that this kind of stuff will be too hard for people.

01:30:33 ◼   ► And I hope that in a few years,

01:30:35 ◼   ► we're all talking on different services

01:30:37 ◼   ► in a federated world using activity pub

01:30:39 ◼   ► to communicate between them.

01:30:40 ◼   ► And most of them are Mastodon, some of them are Microblog.

01:30:42 ◼   ► Like I hope that world comes to be.

01:30:45 ◼   ► That would be way better than being all centralized

01:30:47 ◼   ► under Twitter in most ways,

01:30:48 ◼   ► but I just don't think it's going to turn out that way.

01:30:53 ◼   ► The world has shown time and time again

01:30:55 ◼   ► that people really value the conveniences

01:30:57 ◼   ► and features of centralized, you know, massive services.

01:31:01 ◼   ► And I hope I'm wrong.

01:31:03 ◼   ► You know, the world proved me wrong here,

01:31:04 ◼   ► but I wouldn't bet on it.

01:31:07 ◼   ► - Yeah, that's what I was saying.

01:31:08 ◼   ► Like, you have to provide the same user experience

01:31:10 ◼   ► as Twitter, I'm just saying there's a technical way

01:31:11 ◼   ► to do that so that the experience is the same

01:31:13 ◼   ► but the underpinnings are not controlled

01:31:15 ◼   ► by a single company, that's the trick.

01:31:16 ◼   ► Because if you do anything that is actually federated,

01:31:20 ◼   ► like just even email, you inevitably end up

01:31:23 ◼   ► with big companies controlling most people on the service.

01:31:26 ◼   ► Most people's email addresses are like

01:31:28 ◼   ► Popmail, Gmail, Yahoo, Reddit, right?

01:31:30 ◼   ► And that's despite the fact that email is totally federated.

01:31:33 ◼   ► You could run your own email server or whatever,

01:31:34 ◼   ► but like the world changed in such a way

01:31:35 ◼   ► that it's basically, A, it's basically impossible

01:31:37 ◼   ► to successfully run your own email server,

01:31:39 ◼   ► which we talked about in the past, right?

01:31:41 ◼   ► And B, most people who aren't tech nerds

01:31:43 ◼   ► end up at one of these big companies, right?

01:31:46 ◼   ► That's inevitable with any kind of thing

01:31:48 ◼   ► that is technically complicated.

01:31:49 ◼   ► So the only way to solve that problem

01:31:51 ◼   ► to actually be decentralized,

01:31:53 ◼   ► but also have the user experience of centralized

01:31:55 ◼   ► is with something like I was describing,

01:31:57 ◼   ► which is very difficult to pull off.

01:31:58 ◼   ► Like, you know, we know it can be done,

01:32:01 ◼   ► but can it be done in today's environment?

01:32:03 ◼   ► Can it be done in the face of, you know,

01:32:05 ◼   ► where actual money gets spent?

01:32:06 ◼   ► VC companies are not gonna fund that

01:32:08 ◼   ► because how do you make money from it?

01:32:09 ◼   ► They want the control.

01:32:11 ◼   ► They want the information, right?

01:32:12 ◼   ► And even if you do that, there are more problems past that.

01:32:16 ◼   ► Twitter search, centralized search,

01:32:19 ◼   ► is much more difficult to do in the federated world.

01:32:21 ◼   ► You end up having to fall all the way back to Google,

01:32:22 ◼   ► but you say, "That's fine, I'll just use Google."

01:32:24 ◼   ► But centralization of Google as a power on the web

01:32:27 ◼   ► is itself a problem, right?

01:32:29 ◼   ► But trying to do real-time,

01:32:32 ◼   ► the type of real-time live searches

01:32:35 ◼   ► and looking at even just hashtags or anything else,

01:32:39 ◼   ► stuff that Twitter is able to pull off

01:32:40 ◼   ► because they are a centralized private company

01:32:42 ◼   ► is so much harder to do in a federated world

01:32:46 ◼   ► and is equally hard to do in a world

01:32:48 ◼   ► that's trying to look centralized but isn't

01:32:50 ◼   ► because looking centralized is half the battle,

01:32:52 ◼   ► then you have to, you know, the fact that you aren't

01:32:55 ◼   ► means you have to now implement these features.

01:32:56 ◼   ► Try implementing real-time search

01:32:58 ◼   ► such that when somebody tweets that anyone in the world

01:33:00 ◼   ► can see that tweet in their search moments later

01:33:03 ◼   ► in a world where things under the covers

01:33:04 ◼   ► are distributed as DNS.

01:33:05 ◼   ► If you've played anything with DNS, you know,

01:33:07 ◼   ► its strength is not making changes visible

01:33:10 ◼   ► to everybody very quickly, right?

01:33:12 ◼   ► That TTL is very often a lie and TTL exists for a reason.

01:33:16 ◼   ► Like, you know, DNS is not the solution to this.

01:33:18 ◼   ► It is just an example of that type of thing.

01:33:20 ◼   ► And that's, you know, and the fact that DNS is there,

01:33:23 ◼   ► it's why people piggyback on DNS so much.

01:33:25 ◼   ► I mean, obviously email does,

01:33:27 ◼   ► but even things like Java with the, you know,

01:33:29 ◼   ► and that everyone else copied

01:33:30 ◼   ► with the reverse DNS naming scheme or whatever,

01:33:33 ◼   ► it's like, I have a big problem.

01:33:35 ◼   ► I need namespaces for classes in my programming languages.

01:33:38 ◼   ► I need namespaces for bundle identifiers for my apps.

01:33:41 ◼   ► That problem is too big for me to solve.

01:33:42 ◼   ► Can I piggyback on DNS?

01:33:44 ◼   ► Done.

01:33:45 ◼   ► (laughs)

01:33:46 ◼   ► And we just make it the convention,

01:33:47 ◼   ► again, not enforced by crypto,

01:33:49 ◼   ► that it has to be com.mycompany.myappname,

01:33:52 ◼   ► com.mycompany.mycooljavaclass, right?

01:33:55 ◼   ► And then we've just pushed off that problem onto DNS.

01:33:58 ◼   ► You cannot push off the Twitter problem onto DNS,

01:34:01 ◼   ► but it shows how much value there is

01:34:02 ◼   ► that we're able to take this janky, mostly unencrypted,

01:34:06 ◼   ► completely insecure, scary, designed in the 70s thing that underpins the entire internet

01:34:12 ◼   ► because it is so essential to have something like that.

01:34:14 ◼   ► And I just hope someday in my life there is another thing that is like DNS but better

01:34:20 ◼   ► modernized but equally decentralized that can underpin the pipe dream of every company

01:34:27 ◼   ► in our lifetimes, especially Microsoft, of centralized identity on the internet that

01:34:32 ◼   ► is not tied to a single company.

01:34:33 ◼   ► I forget what it was called when Microsoft first started running that and everybody freaked

01:34:36 ◼   ► out but now everybody takes a little run at it and then runs away screaming.

01:34:40 ◼   ► But someday it might happen.

01:34:43 ◼   ► We are brought to you this week by Squarespace, the all-in-one platform for building your

01:34:47 ◼   ► brand and growing your business online.

01:34:50 ◼   ► Stand out with a beautiful website, engage with your audience and sell anything.

01:34:53 ◼   ► Your products, content you create, even your time.

01:34:56 ◼   ► All of this and so much more is not only possible with a Squarespace website but it's super

01:35:01 ◼   ► easy and you don't have to be a programmer or a server admin or know anything about how

01:35:06 ◼   ► to host storefronts or anything like that.

01:35:08 ◼   ► They take care of all of that for you.

01:35:10 ◼   ► It's just super easy to use.

01:35:11 ◼   ► So you focus on your site or your business and they have so many business features these

01:35:17 ◼   ► days.

01:35:18 ◼   ► So of course the basics.

01:35:19 ◼   ► You have storefronts.

01:35:20 ◼   ► You can sell products, digital or physical goods.

01:35:22 ◼   ► They have everything you need, built in shipping calculation, tax calculation, inventory management,

01:35:28 ◼   ► whatever you might need for selling stuff, they have it.

01:35:30 ◼   ► They also allow you to have selling things like your time.

01:35:33 ◼   ► If you're maybe a consultant or a trainer

01:35:36 ◼   ► and you wanna sell time slots,

01:35:37 ◼   ► you can do that with Squarespace too.

01:35:40 ◼   ► Maybe you're a content creator

01:35:41 ◼   ► and you wanna have a member area

01:35:43 ◼   ► and that's gated content for members.

01:35:45 ◼   ► They support that now.

01:35:47 ◼   ► You can have videos, online courses, newsletters

01:35:50 ◼   ► with your new member areas with Squarespace.

01:35:53 ◼   ► All this is backed by all the tools you might need

01:35:55 ◼   ► to run a business like analytics.

01:35:57 ◼   ► You can see where your visits

01:35:58 ◼   ► and your sales are coming from.

01:35:59 ◼   ► You can optimize which of your marketing channels are most effective.

01:36:03 ◼   ► They support email campaigns.

01:36:05 ◼   ► You can collect email subscribers, convert them into loyal customers.

01:36:08 ◼   ► You can customize the email template by applying your own brand ingredients and things like

01:36:12 ◼   ► that.

01:36:13 ◼   ► All of this is backed by great SEO so you don't have to worry if you're going to be

01:36:17 ◼   ► findable in search engines.

01:36:18 ◼   ► They have you covered there as well.

01:36:20 ◼   ► It's a great place to build any kind of website, especially business websites.

01:36:24 ◼   ► So go to squarespace.com/atp for a free trial.

01:36:28 ◼   ► When you're ready to launch, use offer code ATP to save 10% off your first purchase of a website or domain.

01:36:33 ◼   ► Once again, squarespace.com/ATP. Start that free trial, use offer code ATP at purchase for 10% off your first purchase of website or domain.

01:36:41 ◼   ► Thank you so much to Squarespace for sponsoring our show.

01:36:44 ◼   ► Let's do some Ask ATP.

01:36:50 ◼   ► SuMarneedy writes, "What's the best way of downloading Xcode?

01:36:53 ◼   ► I've heard a lot of mixed opinions / statements about how the Mac App Store 1 sucks and some downloaded via an app called X codes

01:37:00 ◼   ► I think it'd be interesting to hear about what you all do and what the differences are

01:37:03 ◼   ► I've done Mac App Store. I've done downloading it directly from the web and

01:37:09 ◼   ► Currently my preferred method is the X codes app

01:37:12 ◼   ► X codes basically does magic to look at what the available versions of X code are and makes it basically one-click install or

01:37:21 ◼   ► uninstall and I really dig that and that's what I've been using for the last few months.

01:37:25 ◼   ► I actually just use the developer website like developer.apple.com like where you download the betas. I just download it from there.

01:37:32 ◼   ► Usually the latest versions available at least for a little while after it comes out

01:37:36 ◼   ► and so I just download it there. I have previously had the Mac App Store version.

01:37:42 ◼   ► I have found that to be much slower to update and so if you really want to get oh

01:37:48 ◼   ► oh, I need the latest one right now.

01:37:49 ◼   ► It ends up that usually takes a longer time,

01:37:52 ◼   ► both to see the update and then also then

01:37:54 ◼   ► to actually install the update.

01:37:57 ◼   ► Xcode is a giant app with tons and tons of files

01:38:01 ◼   ► and whatever the process is through the App Store

01:38:04 ◼   ► to update apps, it seems to be significantly slower

01:38:07 ◼   ► than just downloading the .zip thing from Apple

01:38:10 ◼   ► and installing it directly.

01:38:12 ◼   ► So I guess download the zip files now

01:38:14 ◼   ► from the developer site.

01:38:15 ◼   ► - Yeah, I will second that.

01:38:16 ◼   ► do not do the Mac App Store.

01:38:18 ◼   ► I think the Mac App Store is mostly doing the same thing that has to be done by any

01:38:23 ◼   ► of the techniques, but the Mac App Store is so bad at giving you any progress indication

01:38:27 ◼   ► and so bad about letting you pause and resume the thing.

01:38:32 ◼   ► I haven't actually used X codes.

01:38:33 ◼   ► I just go to developer.apple.com, go to the download section, you will get a file that

01:38:38 ◼   ► ends in .xip, that's the zip file.

01:38:40 ◼   ► We're saying an X instead of a Z, it's a .xip.

01:38:45 ◼   ► that file takes a long time depending on your internet connection because it's very large,

01:38:48 ◼   ► right? Decompressing/verifying the signatures of that file, un-XIPing it, unzipping it takes

01:38:56 ◼   ► so long and I love that to be a step that I can take, you know, because downloading

01:39:00 ◼   ► it just downloads into your download folder and it sits there. You can let it sit there

01:39:02 ◼   ► for an hour or a day and come back tomorrow. Unzipping it, un-XIPing it also takes a long

01:39:07 ◼   ► time. While you're doing that, I can be in Xcode doing stuff while that is just running

01:39:12 ◼   ► and then it unzips and then maybe the next day I come

01:39:15 ◼   ► and finally quit Xcode.

01:39:17 ◼   ► I was gonna say drag the old one out of my applications

01:39:20 ◼   ► folder and put it in the garbage, but don't do that.

01:39:22 ◼   ► Listen to me for a second.

01:39:23 ◼   ► Recursively remove the existing Xcode

01:39:27 ◼   ► with the rm command from the command line

01:39:28 ◼   ► because it is so much faster to do that

01:39:30 ◼   ► than to empty the trash in your finder.

01:39:32 ◼   ► See, press it, that's what we talked about this.

01:39:35 ◼   ► And then drag the new one from downloads.

01:39:37 ◼   ► And so that process I may do in a leisurely pace

01:39:39 ◼   ► that I'm not in a big hurry over the course

01:39:41 ◼   ► of one or two days, and at no point during that process

01:39:45 ◼   ► am I stuck that I can't do development work.

01:39:48 ◼   ► So that's why I always go and download the thing myself,

01:39:51 ◼   ► uncompress the thing myself,

01:39:53 ◼   ► and swap it in for the other one myself.

01:39:56 ◼   ► Because the tools to do those individual tasks are easy.

01:39:58 ◼   ► It's easy to download something,

01:39:59 ◼   ► use the browser of your choice,

01:40:01 ◼   ► use whatever download thing, use Wget,

01:40:02 ◼   ► like whatever, you know, well,

01:40:04 ◼   ► Wget might be hard with the authentication,

01:40:05 ◼   ► but anyway, download it, unzip it,

01:40:08 ◼   ► there's one application on your Mac that's gonna do that,

01:40:10 ◼   ► It's gonna have a progress bar.

01:40:11 ◼   ► You can watch it, let it sit there,

01:40:13 ◼   ► and then swap it for the old one.

01:40:14 ◼   ► Tons of ways to do that.

01:40:15 ◼   ► You can do it in the finder if you wanted.

01:40:16 ◼   ► You can do it like me and recrystallably remove

01:40:18 ◼   ► very carefully the previous one,

01:40:20 ◼   ► and then put the new one in its place.

01:40:21 ◼   ► That's my preferred technique, but whatever you do,

01:40:23 ◼   ► don't do the Mac App Store because it takes

01:40:25 ◼   ► a really long time and you have no control over it,

01:40:26 ◼   ► and it's not fun.

01:40:28 ◼   ► - I would encourage you and the listeners to try Xcodes

01:40:31 ◼   ► because it doesn't-- - Yeah, I should.

01:40:32 ◼   ► I hadn't actually heard of it.

01:40:33 ◼   ► I gotta get that now.

01:40:34 ◼   ► - It's very, very good, and is that safe?

01:40:39 ◼   ► I don't like the idea of having anybody get between

01:40:42 ◼   ► me and Apple with Xcode.

01:40:44 ◼   ► Like that's a pretty high risk thing.

01:40:46 ◼   ► - Yeah. - I understand that.

01:40:48 ◼   ► - What about the, that's the, what is it,

01:40:50 ◼   ► the Richie paper, thoughts on trusting trust?

01:40:53 ◼   ► Someone in the chat room get me that

01:40:54 ◼   ► and we'll put it in the show notes.

01:40:55 ◼   ► - Yeah, no, I know what you're thinking of.

01:40:57 ◼   ► But no, I think it's safe.

01:40:58 ◼   ► I mean, it's all open source.

01:41:00 ◼   ► - I mean, like, it probably is safe,

01:41:01 ◼   ► but like, it's just like, how much am I willing to

01:41:04 ◼   ► outsource the the acquisition of Xcode to some third party, you know, I don't know it to me that that trade-off is not worth it

01:41:12 ◼   ► That's fair. I

01:41:14 ◼   ► Personally don't see it as a particular problem because this is such a popular tool and I presume somebody has gone through

01:41:22 ◼   ► Maybe not but I presume somebody hasn't certainly I mean the populated tool means that if someone has

01:41:26 ◼   ► Exploited it you're hoping that someone else is gonna be the sucker that finds out and you'll read about it and before that

01:41:32 ◼   ► And where would you read about it?

01:41:33 ◼   ► Probably on Twitter, because you see the updates in real time

01:41:35 ◼   ► and it's not federated.

01:41:37 ◼   ► Oh, man.

01:41:38 ◼   ► One of these days we're not going to talk about Twitter,

01:41:40 ◼   ► right?

01:41:41 ◼   ► Maybe one day?

01:41:42 ◼   ► Anyway, I would seriously recommend checking it out.

01:41:45 ◼   ► And I guess I'm going spelunking through the source code

01:41:47 ◼   ► if you really fancy it.

01:41:48 ◼   ► Claude Zines writes, what do you think

01:41:49 ◼   ► is the best designed Mac app that Apple currently makes?

01:41:52 ◼   ► And for probably Syracuse, what do you

01:41:54 ◼   ► think is the best designed Mac app that Apple has ever made?

01:41:57 ◼   ► For me, I honestly don't know.

01:42:00 ◼   ► I really don't.

01:42:02 ◼   ► I've been thinking about this on and off,

01:42:04 ◼   ► and I'm not actively bothered by many of Apple's apps,

01:42:09 ◼   ► except music, and home to some degree.

01:42:12 ◼   ► But I don't think that I can think of any shining example

01:42:16 ◼   ► of something really, really good.

01:42:17 ◼   ► I think Notes is close.

01:42:19 ◼   ► I mean, it's not crazy powerful,

01:42:21 ◼   ► and it has some things I wish I could change,

01:42:23 ◼   ► but it's pretty darn good.

01:42:25 ◼   ► So maybe I would say Notes,

01:42:27 ◼   ► but I'm hoping one of you is gonna come up with something,

01:42:29 ◼   ► and I'm gonna say, oh no no no, that's my answer.

01:42:31 ◼   ► So I think we started with Marco first last time,

01:42:33 ◼   ► so John, what's a good one?

01:42:34 ◼   ► - No, start with me, 'cause I'm gonna,

01:42:35 ◼   ► John's gonna have the right answer,

01:42:36 ◼   ► I'm only gonna have wrong answers.

01:42:37 ◼   ► - Ah, that's fair, okay, no, that's fair.

01:42:39 ◼   ► - I think we're both gonna have, well, go ahead.

01:42:41 ◼   ► I think we're gonna have at least,

01:42:42 ◼   ► there's at least one mediocre answer that Casey will like.

01:42:45 ◼   ► - Yeah, so my, I mean, really,

01:42:47 ◼   ► I think Home is the best designed app.

01:42:49 ◼   ► (laughing)

01:42:51 ◼   ► - I hope you're kidding, I hope you're kidding so badly.

01:42:53 ◼   ► - Yeah, of course.

01:42:54 ◼   ► No, I don't know, I also, I thought of Notes,

01:42:58 ◼   ► I feel like if you're looking at,

01:43:00 ◼   ► Apple has many styles they've used over time.

01:43:03 ◼   ► Notes, I think, is the best example of Apple's current style

01:43:07 ◼   ► where they're very iOS-y, Notes is very iOS-styled,

01:43:12 ◼   ► but it's still very functional as a Mac app.

01:43:15 ◼   ► But I would say, I think I like better than Notes.

01:43:18 ◼   ► I think I like Mail.

01:43:20 ◼   ► For being a kind of more Mac-like experience,

01:43:25 ◼   ► I think Mail is that.

01:43:26 ◼   ► That being said, I'm not in Ventura yet,

01:43:28 ◼   ► so I don't know if Ventura Mail is maybe worse in some way.

01:43:31 ◼   ► - It's better and worse, I'd say.

01:43:33 ◼   ► - Oh, great, okay, well, anyway.

01:43:35 ◼   ► And I even, I thought, I almost thought

01:43:37 ◼   ► of maybe saying Safari, but I don't know.

01:43:39 ◼   ► It's really hard because what Apple design means

01:43:44 ◼   ► changes over time, and I think on the Mac especially,

01:43:48 ◼   ► they're not currently in a very good place, so I don't know.

01:43:52 ◼   ► John, what's the right answer?

01:43:53 ◼   ► - I'm surprised that there was so much waffling about this.

01:43:56 ◼   ► I think there's probably a better answer than the one I'm going to give, but the one that

01:43:59 ◼   ► immediately sprung to my mind is Safari.

01:44:02 ◼   ► Like Safari is a Mac-y Mac app.

01:44:05 ◼   ► I don't think it makes any unforced errors.

01:44:08 ◼   ► Like there's no like super obvious annoyance that's been there for years that we all hate.

01:44:12 ◼   ► And most of the things it does, it does really well and in a Mac-like way.

01:44:17 ◼   ► Just think about things like, oh, can I drag an image off of the thing?

01:44:20 ◼   ► What can I do with the address bar?

01:44:22 ◼   ► How do the preferences work?

01:44:23 ◼   ► How do the tabs work?

01:44:24 ◼   ► It's just it's a really good Mac. It always has kind of always has been a really good Mac app

01:44:28 ◼   ► Even as the times have changed

01:44:30 ◼   ► And yeah, it's just a web browser and we kind of take it for granted

01:44:34 ◼   ► But I think that's part of its strength. Like you don't spend a lot of your time just grinding it

01:44:38 ◼   ► Maybe the people who wanted the the color favicon tabs were grinding their teeth, but that's solved now too. Like it's

01:44:44 ◼   ► That's the easy answer. I think there's probably a better one. I'm scrolling through my applications folder to try to like jog my memory

01:44:50 ◼   ► There's probably something that it is better, but I wouldn't pick notes because I feel like notes

01:44:54 ◼   ► For all its great features and everything. It's like, you know what I would consider like an okay third-party

01:45:00 ◼   ► Application like but Safari there is like when I think of well if there was a third-party browser that use WebKit or whatever

01:45:07 ◼   ► You know setting aside the engine

01:45:09 ◼   ► They could make a much better thing that's much more full-featured more interesting more whimsical more surprising to light more

01:45:15 ◼   ► You know, well more better done and I don't think that's possible. I think Safari

01:45:20 ◼   ► Really just does not make any doesn't doesn't put a foot wrong for the most part

01:45:24 ◼   ► It does what it does and it does what it does really well. So that's my easy answer

01:45:27 ◼   ► I think that's mostly a good answer

01:45:29 ◼   ► I'd mostly and mail like the reason I think that's not true is mail is

01:45:33 ◼   ► Kind of like notes and that it's a good bundled application to have a basic mail client

01:45:37 ◼   ► But geez any good third-party mail client from from the past you would say is better than it even how mainstream today is probably better

01:45:44 ◼   ► Than it and certainly something like the entourage or like in those days like I don't know

01:45:48 ◼   ► it's not comparable because it's an ancient era or whatever,

01:45:51 ◼   ► but like, you know, Entourage or, you know,

01:45:55 ◼   ► Claris email, it stops all over current Apple mail

01:45:57 ◼   ► in a million different ways in terms of kind of like

01:46:00 ◼   ► comparing like, you know, athletes from their eras, right?

01:46:04 ◼   ► Claris email and Entourage in their era were,

01:46:07 ◼   ► so stood so much taller above their contemporary apps

01:46:12 ◼   ► than does Apple mail today.

01:46:14 ◼   ► Not that Apple mail is a bad application,

01:46:15 ◼   ► but geez, it is not the best one Apple makes.

01:46:18 ◼   ► And then in terms of what's the best Mac app that Apple has ever made, that's tough.

01:46:26 ◼   ► I mean my easy answer for that is the classic macOS Finder probably peeking around about

01:46:31 ◼   ► the time that pop-up tab folders came into being and most of the annoying problems were

01:46:37 ◼   ► out because I think that was again an example of an app that had just been polished within

01:46:41 ◼   ► an inch of its life and had just recently gotten some really new features and most of

01:46:46 ◼   ► The bad things about it, like not being able to copy more than one thing to a floppy disk

01:46:49 ◼   ► at a time had been solved, right?

01:46:51 ◼   ► Obviously different error, no memory protection, blah blah blah, but that's my sentimental

01:46:56 ◼   ► favorite.

01:46:57 ◼   ► There's probably again some other things that I'm not thinking of in the past, but you know,

01:47:01 ◼   ► classic Mac finder, circa Mac OS 8 or 9-ish is probably my answer for best-assigned Mac

01:47:08 ◼   ► I've ever made.

01:47:09 ◼   ► And kind of like Safari, you take it for granted.

01:47:10 ◼   ► People don't even think of it in an app.

01:47:12 ◼   ► It's like the reason you take it for granted is it just did what it needed to do in a way

01:47:15 ◼   ► that everybody understood, and as long as it didn't crash, you're like, "Oh, fine,

01:47:19 ◼   ► dude, that's not even an app, that's just the way my computer works." And that, I

01:47:22 ◼   ► feel like, is an achievement in itself.

01:47:25 ◼   ► Finally, Andrew Larson writes, "I was listening to the episode of Rectifs where John was explaining

01:47:29 ◼   ► to Merlin the reasons for leaving his job, and I picked up on a line about how a good

01:47:33 ◼   ► boss will work with you on family issues you might be having. Ahem, Elon, it was my understanding

01:47:38 ◼   ► that you have all once had the privilege of leading people, or at a minimum, you've

01:47:42 ◼   ► been on teams of people lead led by someone personally I'm new to leading

01:47:45 ◼   ► people what advice would you give to someone who is new to leadership from

01:47:48 ◼   ► the perspective of some pretty talented people who have led or been led by

01:47:51 ◼   ► someone tech or non tech related I've never led anyone I never had any sort of

01:47:58 ◼   ► like subordinate when I was working and I think Marco leads himself and his

01:48:03 ◼   ► employees a jerk the worst employee you have to deal with I you know I know

01:48:09 ◼   ► I know that's not the question, but being your own boss

01:48:11 ◼   ► is actually kind of a form of leadership.

01:48:13 ◼   ► And you have to lead yourself, which is actually

01:48:16 ◼   ► a fairly difficult thing to do.

01:48:17 ◼   ► Not to sidetrack this, but even if you think you,

01:48:20 ◼   ► Casey, or you, Marco, have never led a team of other developers

01:48:24 ◼   ► to do a thing, the leadership experience

01:48:28 ◼   ► is relevant for being self-employed as well.

01:48:30 ◼   ► Yeah, I think it's a very different skill, though.

01:48:32 ◼   ► They're both hard problems, but these are both very different

01:48:35 ◼   ► problems.

01:48:36 ◼   ► Also, I think there's two different versions of lead,

01:48:38 ◼   ► right?

01:48:39 ◼   ► I read this as like being a HR leader,

01:48:42 ◼   ► like a boss, basically.

01:48:44 ◼   ► - A people manager.

01:48:45 ◼   ► - Right, thank you.

01:48:46 ◼   ► - Having reports.

01:48:48 ◼   ► - Exactly, I've never been in that position,

01:48:50 ◼   ► but I was what the companies I was in

01:48:53 ◼   ► typically called a tech lead

01:48:54 ◼   ► for many, many, many different times.

01:48:56 ◼   ► And I certainly have thoughts on that,

01:48:58 ◼   ► if that's where Andrew was going with this,

01:49:00 ◼   ► but again, I read that more as people manager,

01:49:02 ◼   ► not technical leader.

01:49:04 ◼   ► - Yeah, so I've been both of those things.

01:49:07 ◼   ► I've done tech leads, I've been a people manager,

01:49:09 ◼   ► and I've been both at the same time for the same people.

01:49:12 ◼   ► Sometimes I've been those same things at the same time

01:49:14 ◼   ► for different people, which I think is the most difficult,

01:49:17 ◼   ► where you have a team of people reporting to you,

01:49:19 ◼   ► and also you're a tech lead for a larger,

01:49:21 ◼   ► only slightly overlapping thing.

01:49:24 ◼   ► But yeah, I think this is mostly a people management thing.

01:49:27 ◼   ► There's a reason I have not been a people manager

01:49:30 ◼   ► most of the time, it's because I don't think

01:49:31 ◼   ► that's where my skills lie.

01:49:33 ◼   ► At various times, based on the promotional ladder

01:49:36 ◼   ► various companies sometimes you can't avoid being a people manager if you want to get promoted or

01:49:40 ◼   ► you get you know not forced into the situation but you know offered a quote-unquote promotion

01:49:44 ◼   ► that makes you a people manager as part of your responsibilities and you feel like you have to

01:49:48 ◼   ► take it to advance your career and that will show you whether you think you have any kind of

01:49:52 ◼   ► aptitude for it but you know the it's a very difficult job and the skills required for it are

01:49:58 ◼   ► different than the skills required for being a developer but there is a lot of overlap because

01:50:04 ◼   ► as a developer, as we've talked about in past shows, you have to learn how to communicate

01:50:08 ◼   ► and work with people. No, they're not your reports, but you have to communicate and work

01:50:13 ◼   ► with your peers. You have to communicate upward in the org chart, downwards and sideways.

01:50:17 ◼   ► That's part of your job as a developer, and it's an increasing part of your job as a developer,

01:50:21 ◼   ► as you become more experienced and sort of climb the corporate ladder in game or responsibility.

01:50:26 ◼   ► And at no point are you a people manager in there, but you still have to have those people

01:50:30 ◼   ► skills. Being a people manager requires those same people skills and then much more on top

01:50:35 ◼   ► of that because now you're responsible for people. You're responsible for their well-being.

01:50:40 ◼   ► You're responsible for their performance. You're responsible for getting them promoted

01:50:43 ◼   ► when they do a good job and dealing with it when they don't do a bad job. And it is a

01:50:47 ◼   ► huge amount of responsibility and a very difficult job and some people thrive in that environment

01:50:52 ◼   ► and love it and become better at it and other people run screaming from it. So the first

01:50:56 ◼   ► thing I would say is figure out whether this is a thing you want to do because I know it

01:51:02 ◼   ► might seem like you have no choice because to get promoted you have to become a People

01:51:05 ◼   ► Manager, but I can tell you that you can find companies where there is an individual contributor

01:51:11 ◼   ► track that you can still get promoted on and not have to have people report to you.

01:51:15 ◼   ► But if you do find that you like it, even if you're very bad at it in the beginning

01:51:18 ◼   ► and you absolutely will be, just like everyone is a crappy programmer in the beginning, everybody

01:51:22 ◼   ► is a crappy manager in the beginning, what you want to do is learn how to not be a crappy

01:51:26 ◼   ► manager and that is a long road and it is very much learning, you know, it's kind of

01:51:30 ◼   ► like being a parent.

01:51:31 ◼   ► You're not a good parent in the beginning, nobody is, you have no idea what you're doing,

01:51:35 ◼   ► but hopefully you learn over time and hopefully you don't screw up your kids too much along

01:51:38 ◼   ► the way.

01:51:39 ◼   ► It's exactly the same way with reports.

01:51:42 ◼   ► Your first reports you're probably going to make tons and tons of mistakes.

01:51:46 ◼   ► Learn from them, be empathetic, be a human being, don't be, you know, don't be as cold

01:51:51 ◼   ► and calluses Elon Musk don't buy into the toxic things you may think about productivity

01:51:56 ◼   ► and you know workaholism and avoid any authoritarian impulse you have.

01:52:01 ◼   ► These are also this is also advice for parenting.

01:52:04 ◼   ► Avoid any authoritarian impulse you may have.

01:52:07 ◼   ► Avoid trying to take lessons from your own upbringing and your own bad bosses in the

01:52:10 ◼   ► past and you know replaying those things out and replaying those traumas out to your current

01:52:15 ◼   ► reports and that's that's a lot of work that is a lot of as they say emotional labor where

01:52:20 ◼   ► where you have to moderate yourself and your feelings

01:52:24 ◼   ► to achieve a goal within the company

01:52:27 ◼   ► because you can't, your job is not to throw a tantrum

01:52:30 ◼   ► or start screaming at people,

01:52:31 ◼   ► even though you might feel very frustrated

01:52:33 ◼   ► because that's why you're the manager.

01:52:34 ◼   ► And if your employee starts screaming and everything,

01:52:37 ◼   ► you as a manager have to learn how to deal with that.

01:52:39 ◼   ► So if I was better at being a people manager,

01:52:42 ◼   ► I would have more actionable advice,

01:52:44 ◼   ► but all I can tell you is here's the shape of the territory

01:52:47 ◼   ► and it is a very difficult skill

01:52:49 ◼   ► you're going to be bad at it. But if you think it's something that you might enjoy, it is

01:52:52 ◼   ► possible to get good at it, probably by asking somebody other than me how to do so.

01:52:57 ◼   ► Thanks to our sponsors this week, Squarespace, Trade Coffee, and Linode. Thanks to our members

01:53:03 ◼   ► who support us directly. You can join atb.fm/join. We will talk to you next week.

01:53:09 ◼   ► [Music]

01:53:10 ◼   ► Now the show is over, they didn't even mean to begin, 'cause it was accidental.

01:53:18 ◼   ► John didn't do any research, Marco and Casey wouldn't let him

01:53:27 ◼   ► Cause it was accidental, it was accidental

01:53:33 ◼   ► And you can find the show notes at ATP.fm

01:53:37 ◼   ► And if you're into Twitter, you can follow them

01:53:42 ◼   ► C-A-S-E-Y-L-I-S-S, so that's Casey Liss M-A-R-C-O-A-R-M

01:53:51 ◼   ► Auntie Marco Arment S-I-R-A-C-U-S-A, Syracuse

01:53:58 ◼   ► It's accidental (it's accidental) They didn't mean to accidental (accidental)

01:54:06 ◼   ► ♪ Tech podcast so long ♪

01:54:10 ◼   ► - What do we got for an after show?

01:54:14 ◼   ► Who did something exciting this week?

01:54:15 ◼   ► - I don't know, I got nothing.

01:54:17 ◼   ► - I don't know either.

01:54:19 ◼   ► I'm working on a database, like it's just not--

01:54:24 ◼   ► - Working on a database, what are you doing?

01:54:25 ◼   ► - Well, I'm working on two databases actually.

01:54:27 ◼   ► So I'm working on the overcast, on the server side.

01:54:30 ◼   ► I've actually reached a fairly stable point

01:54:33 ◼   ► in the overcast server story.

01:54:35 ◼   ► So since we last talked about this,

01:54:38 ◼   ► I've been doing a lot of optimization on the server side.

01:54:40 ◼   ► Like I mentioned, I had that one giant table

01:54:43 ◼   ► that matched users to episodes.

01:54:46 ◼   ► And it was by far my biggest table.

01:54:49 ◼   ► And it was hundreds of gigs, including

01:54:50 ◼   ► hundreds of gigs of indexes.

01:54:52 ◼   ► Over the last month or so, I've gotten database loads way down,

01:54:57 ◼   ► mostly from index consolidation on that table.

01:55:01 ◼   ► So it used to have, I think, three or four different indexes

01:55:04 ◼   ► that different things would query.

01:55:06 ◼   ► Now it has one index.

01:55:08 ◼   ► I rewrote all the server-side code to just use one index.

01:55:11 ◼   ► And to always query for these three columns,

01:55:13 ◼   ► like user ID, podcast ID, episode ID.

01:55:16 ◼   ► Every query can use that index now,

01:55:19 ◼   ► so I don't have to have a separate one for like,

01:55:21 ◼   ► all right, if I only have a podcast ID, use this index.

01:55:25 ◼   ► There's nothing like that anymore.

01:55:27 ◼   ► I took recommendation indexing out of that,

01:55:29 ◼   ► so I don't have to have a recommended index on that.

01:55:32 ◼   ► Anyway, all that has dramatically reduced

01:55:34 ◼   ► the load on that server.

01:55:36 ◼   ► And so I've bought myself some time.

01:55:39 ◼   ► I've also gotten away from the situation where I had,

01:55:43 ◼   ► I discussed months ago, I was using S3

01:55:48 ◼   ► and S3 compatible things like linear object storage

01:55:50 ◼   ► and Cloudflare in front of all that,

01:55:52 ◼   ► trying to shift like the list of episodes in a podcast,

01:55:57 ◼   ► trying to shift that onto a CDN in some way,

01:55:59 ◼   ► or S3 fronted by a CDN.

01:56:01 ◼   ► And that's largely what I was doing all summer

01:56:05 ◼   ► as like my various efforts to try to lighten the server load

01:56:09 ◼   ► and that plan just hasn't gone very well.

01:56:13 ◼   ► I ran into a number of problems.

01:56:15 ◼   ► So using actual S3, having Cloudflare in front of it

01:56:20 ◼   ► helps a lot, but even just like the write traffic to it,

01:56:25 ◼   ► it was so excessive.

01:56:28 ◼   ► I ended up paying a lot just for writes to S3.

01:56:32 ◼   ► So I switched over to Linode Object Storage

01:56:34 ◼   ► about halfway through the summer,

01:56:35 ◼   ► and it was much better there because it was way cheaper.

01:56:40 ◼   ► Still having Cloudflare in front of it and everything.

01:56:42 ◼   ► But then I was hitting bugs of like,

01:56:45 ◼   ► when you have a level of caching

01:56:48 ◼   ► in front of your database in some way,

01:56:50 ◼   ► it's all right, so in my code I would like,

01:56:51 ◼   ► all right, every time some episode data

01:56:54 ◼   ► about a podcast changed,

01:56:56 ◼   ► I would rewrite that record to the CDN.

01:57:01 ◼   ► Or at first I'd rewrite it to like linear object storage

01:57:04 ◼   ► and I would increment a version number

01:57:05 ◼   ► so that way the next time the app fetched it,

01:57:08 ◼   ► it would get a different URL

01:57:09 ◼   ► 'cause it had like the version number at the end,

01:57:11 ◼   ► which would invalidate the CDN so it would bypass it.

01:57:14 ◼   ► Anyway, but then what happens if the write fails

01:57:17 ◼   ► to the object storage?

01:57:18 ◼   ► Now I have out of date data

01:57:19 ◼   ► and I can either like blow up the crawl process

01:57:21 ◼   ► and throw an exception so it doesn't write anything,

01:57:24 ◼   ► Or what if there's like a small race

01:57:28 ◼   ► where like right after the object storage is updated,

01:57:32 ◼   ► what if the CDN goes to read it and gets stale data?

01:57:35 ◼   ► Then it has cached stale data.

01:57:38 ◼   ► And so I had all these like weird edge case bugs

01:57:41 ◼   ► that were causing occasional problems

01:57:43 ◼   ► and dealing with this system ended up being

01:57:45 ◼   ► so much more complex and so much more involved

01:57:48 ◼   ► than not having it in the first place.

01:57:52 ◼   ► So what I did now is I eliminated the object storage

01:57:56 ◼   ► layer of this stack.

01:57:58 ◼   ► Now I just have a server process,

01:58:01 ◼   ► like a server method that reads data out of the database

01:58:04 ◼   ► and serves it, and I have Cloudflare in front of that

01:58:07 ◼   ► providing a short-lived cache.

01:58:09 ◼   ► Again, server load is not meaningfully higher with that,

01:58:13 ◼   ► but I've gotten rid of a whole bunch of bugs.

01:58:15 ◼   ► So I'm at a point now where I think I'm stable,

01:58:19 ◼   ► much more stable than before,

01:58:21 ◼   ► And I bought myself some time so I can finally stop

01:58:26 ◼   ► working on my servers every single day

01:58:29 ◼   ► and focus on something else.

01:58:31 ◼   ► - I have some bad news for you about that.

01:58:33 ◼   ► I mean, you already know the news

01:58:34 ◼   ► 'cause you've done this before,

01:58:35 ◼   ► but this reminds me of one of my past jobs

01:58:37 ◼   ► where basically the entire history of the company

01:58:39 ◼   ► was doing what you just described every year or two.

01:58:43 ◼   ► - Just forever, like literally forever.

01:58:45 ◼   ► Because you would think now I've done this thing

01:58:49 ◼   ► where I've rearranged stuff in the database

01:58:51 ◼   ► and did all the type of things you described,

01:58:53 ◼   ► like move this from over there

01:58:54 ◼   ► and we thought this would help,

01:58:55 ◼   ► but it didn't put this back here

01:58:56 ◼   ► and now I feel like I'm in a stable place

01:58:57 ◼   ► and it just start a timer.

01:58:58 ◼   ► Because it's like,

01:58:59 ◼   ► I mean, only if your growth continues, obviously.

01:59:01 ◼   ► This company was growing constantly,

01:59:02 ◼   ► like 30% year over year.

01:59:04 ◼   ► It's like, you're gonna be doing all that again.

01:59:05 ◼   ► And every time you think now there's no more,

01:59:08 ◼   ► I can't get any more blood from this stone,

01:59:09 ◼   ► I've rung out all the efficiency.

01:59:11 ◼   ► It's like, guess what?

01:59:12 ◼   ► In a year and a half,

01:59:14 ◼   ► you're gonna be back at the same place

01:59:15 ◼   ► and you're gonna surprise yourself

01:59:16 ◼   ► by finding even more stuff you can wring out

01:59:18 ◼   ► and then keep going and keep going.

01:59:19 ◼   ► It's like it literally never ends.

01:59:21 ◼   ► It's like, just the growth continues,

01:59:23 ◼   ► and you find new ways to make your relational database

01:59:26 ◼   ► survive the load that you thought

01:59:28 ◼   ► it could never survive by doing increasingly clever things.

01:59:30 ◼   ► And just, yeah, that's the treadmill.

01:59:35 ◼   ► Although I suppose you want to get off that treadmill by going

01:59:37 ◼   ► to Cloud Kit eventually, but we'll see.

01:59:39 ◼   ► Yeah.

01:59:39 ◼   ► Well, and one thing that I think is worth context here

01:59:42 ◼   ► is that Overcast is not growing very much.

01:59:45 ◼   ► Like, I'm not losing people, but I'm also not

01:59:48 ◼   ► growing very aggressively.

01:59:49 ◼   ► It's a very, very slow growth.

01:59:51 ◼   ► - Well, you're not growing in customers,

01:59:52 ◼   ► but as you noted when you were messing with this,

01:59:54 ◼   ► and maybe one of the private things,

01:59:57 ◼   ► the activity pattern of the existing users can change

02:00:00 ◼   ► in response to things you don't control,

02:00:01 ◼   ► like Patreon and podcasts.

02:00:03 ◼   ► - Yes, so one thing I learned is that

02:00:06 ◼   ► as I was instrumenting various things

02:00:08 ◼   ► and collecting stats in various ways,

02:00:10 ◼   ► I noticed, and I kind of knew this already,

02:00:12 ◼   ► but I didn't know quite to what degree,

02:00:14 ◼   ► that Patreon feed updates are,

02:00:20 ◼   ► I think like three quarters of my feed updates or half.

02:00:23 ◼   ► Like it's some absurd amount of my feed updates

02:00:26 ◼   ► are just Patreon feeds.

02:00:26 ◼   ► And so that's something that has changed

02:00:29 ◼   ► over the last few years that between Patreon

02:00:31 ◼   ► and Substack and Ben Thompson stuff.

02:00:34 ◼   ► - And why we're Patreon?

02:00:36 ◼   ► Is it because you have tons of people

02:00:37 ◼   ► subscribing to Patreon things?

02:00:38 ◼   ► It's because the URLs are all unique per person, right?

02:00:41 ◼   ► - Not only are they all unique per person,

02:00:43 ◼   ► but Patreon has time bombed URLs

02:00:45 ◼   ► as their enclosure URLs,

02:00:47 ◼   ► so that every time you fetch the feed,

02:00:51 ◼   ► every item has changes in it.

02:00:53 ◼   ► - That's miserable.

02:00:54 ◼   ► - Yes, it sure is.

02:00:57 ◼   ► So one of the observations, a while ago I did a thing

02:00:59 ◼   ► where I have, I used to, for a brief period,

02:01:04 ◼   ► to try to solve that problem, I sent all download URLs

02:01:08 ◼   ► for the enclosure through a redirect

02:01:11 ◼   ► that was fixed on Overcast.

02:01:12 ◼   ► We'd be like, overcast.fm/download/bighash,

02:01:15 ◼   ► and that would never change.

02:01:17 ◼   ► And so all the sync updates that would happen that, hey,

02:01:20 ◼   ► something about this feed has changed,

02:01:22 ◼   ► and so your copy of the app has to download

02:01:24 ◼   ► a whole new copy of the feed.

02:01:26 ◼   ► All those updates were saved if all that changed

02:01:29 ◼   ► was the enclosure URL on all these Patreon feeds.

02:01:31 ◼   ► Well, that ended up causing some problems occasionally

02:01:34 ◼   ► with certain things.

02:01:35 ◼   ► And so I turned it off a few months ago,

02:01:38 ◼   ► but I turned it back on now only for feeds

02:01:41 ◼   ► where I think it's necessary.

02:01:43 ◼   ► So there's heuristics that run where

02:01:45 ◼   ► it's like, you know, under certain conditions,

02:01:47 ◼   ► it will now redirect downloads through that kind of URL,

02:01:51 ◼   ► and Patreon is one of those things where it's like,

02:01:52 ◼   ► you know, if you have like a private feed,

02:01:54 ◼   ► or it has under a certain number of subscribers,

02:01:57 ◼   ► I will redirect it through these URLs.

02:01:59 ◼   ► That way, again, they stay fixed,

02:02:00 ◼   ► and we stop having to send all these duplicate updates.

02:02:03 ◼   ► And so, I basically spent, you know,

02:02:05 ◼   ► a few weeks doing stuff like that,

02:02:06 ◼   ► of like simplifying, getting rid of some of the tricks

02:02:09 ◼   ► that didn't work with the object storage,

02:02:12 ◼   ► reintroducing an old trick that worked

02:02:14 ◼   ► with this download URL thing,

02:02:16 ◼   ► tweaking some of the Patreon refresh times

02:02:18 ◼   ► and things like that,

02:02:19 ◼   ► and optimizing various parts of my crawling process.

02:02:24 ◼   ► Like it used to hit the database

02:02:25 ◼   ► for getting all the list of items,

02:02:27 ◼   ► it used to hit it twice.

02:02:28 ◼   ► Now it hits it once.

02:02:29 ◼   ► That made crawling faster,

02:02:30 ◼   ► and lightened the load on a major database.

02:02:32 ◼   ► Like there's stuff like that,

02:02:33 ◼   ► I was doing stuff like that,

02:02:34 ◼   ► optimizing the different things,

02:02:36 ◼   ► index consolidation on that one big database table.

02:02:39 ◼   ► So now, that's I think stable.

02:02:43 ◼   ► And so I've been actually spending the last few days

02:02:48 ◼   ► working on a replacement for FC model.

02:02:51 ◼   ► FC model is my old Objective-C SQLite kind of model layer

02:02:58 ◼   ► that Overcast uses and a couple other things.

02:03:03 ◼   ► I think including Castor,

02:03:04 ◼   ► I think they ended up using it too.

02:03:05 ◼   ► But anyway, it's just this little open source library.

02:03:08 ◼   ► Nobody should use it now, it's outdated now.

02:03:10 ◼   ► And it's very Objective-C-E.

02:03:15 ◼   ► And so I've wanted for a while to remake it

02:03:19 ◼   ► using modern Swift stuff, modern Swift concurrency.

02:03:22 ◼   ► And the reason I hadn't remade it yet

02:03:24 ◼   ► is frankly I just didn't think I knew Swift well enough

02:03:27 ◼   ► to really do a good job of it.

02:03:28 ◼   ► Now I think I finally do.

02:03:30 ◼   ► And so I've been remaking a new model layer

02:03:34 ◼   ► using Swift and Swift concurrency

02:03:36 ◼   ► that will be the foundation for hopefully

02:03:38 ◼   ► the next version of Overcast.

02:03:40 ◼   ► - Is it too much to hope that you're writing unit tests

02:03:42 ◼   ► for this thing?

02:03:43 ◼   ► (laughing)

02:03:45 ◼   ► 'Cause it's a library, come on,

02:03:46 ◼   ► it's a super important library,

02:03:47 ◼   ► now is the time to whip out those tests.

02:03:50 ◼   ► - In all fairness, FC model is the only other time

02:03:53 ◼   ► I've written tests.

02:03:53 ◼   ► - That's what I'm saying, this is the time,

02:03:55 ◼   ► it's time for testing to shine.

02:03:57 ◼   ► - Yeah, so, this, I will--

02:04:01 ◼   ► - That's not an answer.

02:04:03 ◼   ► - I plan to maybe someday write tests for this.

02:04:05 ◼   ► - That's a no.

02:04:06 ◼   ► - I want tests to exist,

02:04:07 ◼   ► I just don't wanna be the one to write them.

02:04:08 ◼   ► - Exactly. - There you go.

02:04:10 ◼   ► But yeah, so, and this one, so I'm going,

02:04:12 ◼   ► I'm writing directly against SQLite this time.

02:04:15 ◼   ► Like before I used Gus Mueller's excellent FMDB library,

02:04:18 ◼   ► which was a great, it's a great SQLite bridge to FFC,

02:04:22 ◼   ► and FC model is based on that.

02:04:24 ◼   ► Now I'm eliminating the middle layer

02:04:26 ◼   ► and just writing Swift directly to SQLite API.

02:04:30 ◼   ► - Isn't there one, I was just thinking

02:04:32 ◼   ► of something you were talking about.

02:04:33 ◼   ► Isn't there like a existing popular shim layer

02:04:36 ◼   ► that basically puts a Swift front end

02:04:37 ◼   ► on the SQLite C API?

02:04:39 ◼   ► - Yeah, there's a couple of them,

02:04:40 ◼   ► and I'm using one of them because that's me.

02:04:41 ◼   ► - But I thought there was like one popular one

02:04:43 ◼   ► that's actually really thin,

02:04:44 ◼   ► so you wouldn't have to rewrite that, but oh well.

02:04:46 ◼   ► Have you met Marco?

02:04:48 ◼   ► - I know.

02:04:48 ◼   ► - The API is not, the SQLite API is not that,

02:04:52 ◼   ► and especially 'cause like,

02:04:54 ◼   ► I'm not using all of the features of SQLite.

02:04:56 ◼   ► I'm using a very small subset of them,

02:05:00 ◼   ► so it really is not that bad.

02:05:02 ◼   ► Like it's not, I'm not,

02:05:03 ◼   ► I don't really need a whole big library

02:05:06 ◼   ► that shims the entire API SQLite for what I'm doing.

02:05:10 ◼   ► I really need something very, very basic and limited.

02:05:13 ◼   ► And so anyway, so just writing directly into the API

02:05:16 ◼   ► I thought was better for my needs

02:05:18 ◼   ► and my preferences and my style,

02:05:19 ◼   ► and it allows me to only have what I actually need

02:05:22 ◼   ► and to know how every bit of it works.

02:05:24 ◼   ► And I can make decisions like my concurrency story here

02:05:27 ◼   ► is using the new Swift actor concept,

02:05:31 ◼   ► which is a bit of a pain in the butt in certain ways,

02:05:33 ◼   ► but I'm really happy with some of the ways it performs

02:05:36 ◼   ► and some of the guarantees that it makes and everything.

02:05:38 ◼   ► And I'm using all modern conventions everywhere

02:05:41 ◼   ► of like using async stuff to fetch everything,

02:05:44 ◼   ► using exception throwing instead of random assertions

02:05:48 ◼   ► that could fail in weird ways,

02:05:50 ◼   ► like doing everything kind of the newest, most modern way.

02:05:53 ◼   ► - How are you finding calling

02:05:55 ◼   ► into the SQLite C APIs from Swift?

02:05:58 ◼   ► Do you have a lot of unsafe this and unsafe that

02:06:00 ◼   ► everywhere in your code?

02:06:02 ◼   ► - Shockingly, no.

02:06:04 ◼   ► I have almost none.

02:06:05 ◼   ► It's really weird like how little of that I needed.

02:06:09 ◼   ► Swift is really good now at kind of marshaling stuff

02:06:13 ◼   ► in and out of C libraries.

02:06:15 ◼   ► And I don't know if this is, you know,

02:06:17 ◼   ► if the SQLite API just has a bunch of good annotations

02:06:20 ◼   ► or whatever, I think it's just,

02:06:21 ◼   ► I think it's just Swift has matured to the point

02:06:24 ◼   ► where it does a lot of this stuff automatically for you,

02:06:26 ◼   ► or at least with very little drama.

02:06:28 ◼   ► and there's very little of that ugly,

02:06:30 ◼   ► unsafe pointer stuff necessary.

02:06:32 ◼   ► - Oh, I'll be interested.

02:06:33 ◼   ► Is this gonna be open sourced like FC model was?

02:06:35 ◼   ► - I don't know yet.

02:06:36 ◼   ► Open sourcing FC model,

02:06:39 ◼   ► I'm not sure that was really worth it.

02:06:43 ◼   ► In the sense that I did occasionally,

02:06:46 ◼   ► I got one or two bug fixes from people over time from that

02:06:49 ◼   ► and that was worth it to make it better,

02:06:51 ◼   ► but I'm not sure I want the liability of my stuff

02:06:55 ◼   ► being used as such a foundational layer

02:06:58 ◼   ► on other people's apps, and if I don't open source it,

02:07:01 ◼   ► not only does that reduce my feel bad burden

02:07:05 ◼   ► about what if I break your app,

02:07:06 ◼   ► but it also gives me more flexibility

02:07:07 ◼   ► to change it more dramatically over time.

02:07:09 ◼   ► If I decide, hey, you know what,

02:07:11 ◼   ► this API is actually kind of clunky,

02:07:13 ◼   ► I wanna rework the way this thing is called

02:07:15 ◼   ► or deprecate this other thing,

02:07:17 ◼   ► I can just make sure my one app is okay with that

02:07:20 ◼   ► or modify my one app to use the new calling convention,

02:07:25 ◼   ► and then that's it, I don't have to worry about that.

02:07:26 ◼   ► So I might open source it eventually,

02:07:29 ◼   ► but I want to, I'm not gonna open source it yet

02:07:33 ◼   ► and possibly never, but I don't know yet.

02:07:36 ◼   ► - Yeah, I mean, for something of this obscure

02:07:38 ◼   ► within the smallish community of developers

02:07:41 ◼   ► who might be interested in this,

02:07:42 ◼   ► you can just throw it out there

02:07:43 ◼   ► and just like never, like basically have a read me

02:07:46 ◼   ► that says I don't support this, I don't maintain it.

02:07:49 ◼   ► If you wanna do something with it, feel free,

02:07:51 ◼   ► but don't send me bugs, don't, you know,

02:07:53 ◼   ► I'm gonna break it and it's gonna break your crap.

02:07:55 ◼   ► Tough, like, you know, just like a big disclaimer.

02:07:57 ◼   ► And we've talked in past shows about how you can't actually

02:07:59 ◼   ► do that because people expect you to maintain it

02:08:01 ◼   ► no matter what.

02:08:01 ◼   ► But I think the audience for this is small enough

02:08:03 ◼   ► that you might be able to get away with basically

02:08:05 ◼   ► the chuck it over the wall and then just continue

02:08:09 ◼   ► to do exactly what you said.

02:08:10 ◼   ► Oh, guess what?

02:08:11 ◼   ► I've decided this API needs to change.

02:08:12 ◼   ► And I don't care how many other people's apps it breaks

02:08:14 ◼   ► 'cause they should know that I'm not supporting this.

02:08:16 ◼   ► And if that leads people to take your code and fork it,

02:08:18 ◼   ► then it's also not your problem.

02:08:19 ◼   ► Like you can make it not your problem

02:08:21 ◼   ► while still having it, you know, out there for the internet

02:08:24 ◼   ► as sort of a public good.

02:08:25 ◼   ► - I mean, the other thing though is like,

02:08:27 ◼   ► you know, if someone's out there looking for

02:08:29 ◼   ► a Swift SQLite or database library,

02:08:32 ◼   ► they should probably use one of the bigger ones.

02:08:34 ◼   ► - That's what I was gonna say is what you should do

02:08:37 ◼   ► while you're writing your library

02:08:38 ◼   ► is look at the other ones at least.

02:08:39 ◼   ► Look at the one function that you're going to write

02:08:41 ◼   ► your version of and see if there's any edge case

02:08:43 ◼   ► that they know about that you don't know about.

02:08:45 ◼   ► That's the benefit to the world of the having it open source

02:08:49 ◼   ► is just like hey, if someone cares, they can go look at it

02:08:51 ◼   ► and learn something about the ins and outs

02:08:55 ◼   ► of interfacing SQLite from Swift, right?

02:08:59 ◼   ► And that's the benefit you'd be providing.

02:09:00 ◼   ► And what you're basically saying is,

02:09:01 ◼   ► I take no responsibility.

02:09:03 ◼   ► If you use this in your app and I break it,

02:09:05 ◼   ► don't come crying to me.

02:09:06 ◼   ► I don't even need your bug reports,

02:09:07 ◼   ► but I do want it to just be out there

02:09:09 ◼   ► as yet another Google hit for someone looking

02:09:11 ◼   ► for how might one do a Swift front end to SQLite.

02:09:15 ◼   ► - That's interesting.

02:09:16 ◼   ► Yeah, maybe, I don't know.

02:09:17 ◼   ► - Plus, do you or do you not want unit tests?

02:09:20 ◼   ► because if you open source it, there's at least a prayer.

02:09:22 ◼   ► - Make other people write your tests for you.

02:09:24 ◼   ► - Yeah, there's at least a chance that you'll get a unit test.

02:09:26 ◼   ► - Casey will write them for you.

02:09:29 ◼   ► - Will he?

02:09:30 ◼   ► If that's a deal, then maybe I'll open source it.

02:09:33 ◼   ► - Writing unit tests for a database interface layer

02:09:35 ◼   ► is like how I spent half my career.

02:09:36 ◼   ► I do not want to do that again voluntarily.

02:09:39 ◼   ► - It sounds fun, doesn't it?

02:09:41 ◼   ► - Oh, so fun.

02:09:42 ◼   ► So much fun.

02:09:44 ◼   ► - Well, that's the thing,

02:09:45 ◼   ► is that then you start getting into the fine line

02:09:46 ◼   ► of like is it a unit test or an integration test?

02:09:49 ◼   ► What is this?

02:09:49 ◼   ► - Yeah, exactly.

02:09:50 ◼   ► Well, at least with SQLite,

02:09:51 ◼   ► you don't have to start a database server.

02:09:53 ◼   ► - Yeah, that's true.

02:09:54 ◼   ► - The difference between mocking a database

02:09:56 ◼   ► and having an actual SQLite,

02:09:57 ◼   ► especially if it's an in-memory database

02:09:58 ◼   ► with no file on disk, it's real blurry.

02:10:01 ◼   ► - Yeah, no, I agree.

02:10:02 ◼   ► I mean, it's interesting nonetheless.

02:10:05 ◼   ► And honestly, as I was sitting here listening to you,

02:10:07 ◼   ► like I've never had the occasion,

02:10:08 ◼   ► not once in my career of using SQLite,

02:10:12 ◼   ► and I don't know a whole lot about it,

02:10:15 ◼   ► But I am very, very interested in Swift concurrency and async/await and stuff like that.

02:10:22 ◼   ► And I don't think, like, I understand it and I'm okay at it, but I wouldn't say I'm particularly

02:10:27 ◼   ► strong at it. So I would be interested in looking at this, not necessarily for the database stuff,

02:10:32 ◼   ► not necessarily to use it, but more to kind of crib and understand, well, how does Marco approach

02:10:37 ◼   ► async/await and concurrency and actors and things like that, and to help my understanding of these

02:10:41 ◼   ► these things, which I think is passable, but not super strong.

02:10:46 ◼   ► And if you are in the position that you feel like you are at least reasonably strong at

02:10:51 ◼   ► those things, then that's something that people like me or anyone else could learn from.

02:10:56 ◼   ► You really kind of also have to see the use of it because with async and with actors and

02:11:02 ◼   ► things like sendable and all that, there is the possibility that it starts to, I'm not

02:11:07 ◼   ► I'm not going to say infect, but you know, well, okay, fine.

02:11:10 ◼   ► That it starts to affect, affect with the letter A,

02:11:14 ◼   ► the code that uses it.

02:11:16 ◼   ► - No, you're right, you're absolutely right.

02:11:17 ◼   ► - Right, and like making an API such that that,

02:11:22 ◼   ► the tendrils of that are confined

02:11:26 ◼   ► to where you want them to be.

02:11:27 ◼   ► Like it is appropriate for this to make the calling code

02:11:31 ◼   ► be shaped like this, but it is not appropriate

02:11:33 ◼   ► for it to just like thread through your entire application

02:11:35 ◼   ► because something has to be sendable

02:11:37 ◼   ► all the way up to the top, you know what I mean?

02:11:38 ◼   ► That's, adjusting the library doesn't let you know that.

02:11:41 ◼   ► Like, Mark will find that out when he tries

02:11:42 ◼   ► to go use his library in his app and finds out

02:11:44 ◼   ► that he has to like go up 17 levels in the call stack

02:11:47 ◼   ► to thread something through and make everything all async.

02:11:49 ◼   ► But you know, that's the thing you only learn

02:11:52 ◼   ► from using the library in an application.

02:11:54 ◼   ► - Yeah, and that's one thing, by the way,

02:11:55 ◼   ► like, you know, it was a pretty,

02:11:58 ◼   ► it's a pretty strong choice to make

02:12:00 ◼   ► all of your database calls go on an actor

02:12:02 ◼   ► because, on a custom actor, because that means

02:12:06 ◼   ► that anything that calls into it to make a database query

02:12:09 ◼   ► has to be from an async context.

02:12:11 ◼   ► So that, there's no good way to block

02:12:16 ◼   ► and just wait 'til you get this.

02:12:18 ◼   ► Like, there's a few crappy ways,

02:12:20 ◼   ► but basically all of the calling code to use this

02:12:23 ◼   ► is gonna have to be async.

02:12:25 ◼   ► And that is going to be a big pain in the butt

02:12:27 ◼   ► at certain times, but where I arrive at the end of all that

02:12:32 ◼   ► is gonna be really great.

02:12:34 ◼   ► And so that's why this is,

02:12:36 ◼   ► like I'm kinda starting this out small.

02:12:38 ◼   ► I'm gonna try to start writing

02:12:39 ◼   ► like a couple of subsystems of the app using this

02:12:41 ◼   ► before I really replace all of my old model code with it.

02:12:45 ◼   ► And that's gonna be a months long project

02:12:48 ◼   ► that's gonna involve probably lots of rewriting of the app.

02:12:50 ◼   ► And that's no small job. (laughs)

02:12:54 ◼   ► So that's why this is kinda like a side project right now.

02:12:58 ◼   ► It's kind of in like the Skunk Works area

02:13:00 ◼   ► of Overcast right now.

02:13:02 ◼   ► And I'll probably ship some little thing behind the scenes

02:13:05 ◼   ► using it soon, but it's gonna be a while before

02:13:08 ◼   ► it's like the main database of the app.

02:13:10 ◼   ► But gotta start sometime.

02:13:12 ◼   ► - Yeah, that's where you need those unit tests

02:13:14 ◼   ► that stress test the, stress test the concurrency

02:13:18 ◼   ► in ridiculous ways because you don't wanna find that out

02:13:21 ◼   ► when you're in your application.

02:13:22 ◼   ► Like finally I've got everything all async

02:13:23 ◼   ► but now it's a weird bug and I don't understand it.

02:13:25 ◼   ► It's like put the torture test into your unit test

02:13:27 ◼   ► that have people adding and removing things simultaneously

02:13:31 ◼   ► as fast as they can while something else tries to do a regular operation and make sure that

02:13:35 ◼   ► it ends up in a sensible state afterwards.

02:13:37 ◼   ► Find those bugs in your unit test because trying to find them in your actual application

02:13:40 ◼   ► is going to be bad.

02:13:42 ◼   ► Obviously, Actors and all that is much better than Threads and is probably even better than

02:13:48 ◼   ► Grand Central Dispatch.

02:13:51 ◼   ► The technology for Async on Apple platforms has gotten better and better over time.

02:13:55 ◼   ► So hopefully you'll be mostly protected by that by doing best practices, but Actors are

02:14:00 ◼   ► still relatively new to Apple's platform, so it's a good idea to actually have some

02:14:04 ◼   ► kind of stress test that is not "I'll just run my application and see if it works."

02:14:08 ◼   ► [beeping]

02:14:10 ◼   ► (beep)