Tiny Tyrants

Episode 509 • Released November 17, 2022 • Speakers detected

Episode 509 artwork
00:00:00 John: Does anyone have Taylor Swift tickets they want to sell me?
00:00:02 John: Massachusetts shows?
00:00:04 John: Not for $12,000, which is the current going rate.
00:00:07 Casey: So back up.
00:00:07 Casey: So I was watching this happen through Christina Warren, former and one of the only guests ever on the show, former guest Christina Warren and dear friend of the show.
00:00:16 Casey: Anyways, I was watching her try to do her whole rigmarole in order to get herself Taylor Swift tickets.
00:00:22 Casey: So my limited understanding is...
00:00:24 Casey: You got in sort of in some sort of queue and it said there's 2000 or more people in front of you.
00:00:30 Casey: And then she had retweeted out.
00:00:32 Casey: I doubt I'll be able to find it.
00:00:33 Casey: But she had retweeted somebody saying in the time I've spent in the queue, I wrote a Chrome extension to figure out exactly where you are in the queue.
00:00:40 John: The queue that she was in, I didn't even get a chance to enter that queue because I lost that lottery.
00:00:47 John: But today there was another queue that I could get in.
00:00:50 John: And rather than download that Chrome extension, I just opened the Chrome DevTools and looked at the JSON flying by.
00:00:55 John: I was telling Marco this before.
00:00:56 John: And yeah, you can see where you actually are on the queue.
00:00:58 John: Now that that helps you, it's like, oh, great.
00:00:59 John: Now I know, you know, I started at 15,000 and I'm around 10,000, even though the UI says 2,000 plus.
00:01:04 John: But that doesn't tell you anything.
00:01:06 John: Like the rate at which that number went down varied wildly.
00:01:10 John: Like it went down like thousands in like, you know, 15 minutes and then didn't budge for like an hour and then went down three in the next 15.
00:01:18 John: It's just, I don't know what it's based on.
00:01:22 John: You know, we had multiple windows going here with the same thing, different accounts.
00:01:26 John: Anyway, the queue closed and they said, sorry, all the things that we had reserved for the people who are supposed to buy tickets today was like Capital One credit card holders.
00:01:37 John: Sorry, we sold all of those out.
00:01:39 John: So even though you're still in line, tough luck.
00:01:41 John: See you later.
00:01:42 John: So Friday is my next chance and my next and final chance.
00:01:45 John: And Friday is the day that everybody gets a chance to be in the queue.
00:01:48 John: So if I couldn't get in the queue and just competing against Capital One credit card holders, I don't know what I'm going to do on Friday.
00:01:54 Casey: So you would say, John, that John is a Swifty.
00:01:57 Casey: I think that's what we're learning today.
00:01:58 John: The tickets are not for me, although I do like Taylor Swift music.
00:02:02 Marco: I mean, I think the answer here is, like, the price of seeing Taylor Swift is just whatever it takes to buy these, like, on StubHub or whatever.
00:02:09 Marco: Like, that's the reality here.
00:02:10 Marco: It's like, it's not whatever the list price is.
00:02:12 Marco: I mean, it doesn't really matter.
00:02:13 Marco: Like, it's like, you know, a handful of lucky people will get the list price.
00:02:17 Marco: For the most part, you're competing with a whole bunch of bots and scammers, probably, and resellers and scalpers.
00:02:21 Marco: And so, you know, you're going to have to be
00:02:23 Marco: either very lucky or play that game well yeah but like the actual going rate for tickets for these shows is i'm not kidding like 11 or 12 000 right now oh my word i'm not paying that well but that's like that's right now wait wait until the shows are like you know two weeks away and it'll be different yeah we'll see
00:02:39 Marco: like you know because right now no one has the tickets yet so so everyone's like oh my god i need to buy one you know but like give it give time for all of the actual tickets to be acquired by people and then you know a week or two before the show you can probably pick them up for you know maybe a few hundred bucks i don't know this is what i get for not being well a few hundred bucks is lower than the actual price by the way mark oh my god what's the actual price
00:03:01 John: Uh, so I believe it's, uh, if you want floor seats, uh, I, I had this info before.
00:03:07 John: Let me look it up for you so you can be suitably shocked.
00:03:10 John: This is, this is not the scalper price.
00:03:12 John: This is the, the list price.
00:03:13 John: If you, if you, for the price, if you buy it from ticket master, uh,
00:03:17 John: is floor more desirable or less yes the floor seats are start at 350 and go up to 900 that's that's not the scalpel price that's the just you know straight up price right and then the other sections are in the other ranges as you would imagine they have a 200 to 300 range and if you're in the you know the bleachers at the top of the football stadium it's 50 to 100 bucks so it varies from basically a thousand for your best seat to 50 for your worst and they cover every price range in between
00:03:42 John: And that is, again, not the scalper price.
00:03:44 John: That is the price that you pay if you're lucky enough to get a ticket at the actual retail price.
00:03:48 John: I am so happy to be a Fish fan right now.
00:03:50 John: That is utterly bananas.
00:03:52 John: Yeah, Fish has a few more shows and is slightly less popular than Taylor Swift.
00:03:57 John: A little, maybe.
00:04:00 Casey: Let's do some follow up.
00:04:01 Casey: Tell me about what you you made many mistakes with your with your phone transition.
00:04:08 Casey: We got some feedback about it.
00:04:10 Casey: I am a little annoyed at myself that I didn't yell one password repeatedly while you were telling the story because we had.
00:04:16 John: Don't worry.
00:04:16 John: Plenty of other people did.
00:04:17 Casey: OK, good, good, good.
00:04:18 Casey: But there are other approaches you could have taken with regard to moving your 2FA stuff from one phone to the other.
00:04:24 Casey: Can you tell me about this?
00:04:25 John: Well, speaking of one password, though, I did mention on the show, I thought every time I get a little feedback, I'm like, did Marco edit this out?
00:04:29 John: This is the thought I always have when the feedback starts coming in.
00:04:32 John: I'm like, did Marco edit this out?
00:04:33 John: And the answer is almost always, no, he didn't edit out.
00:04:35 John: People just haven't gotten to that part in the show yet.
00:04:38 John: But that almost is how I keep you on your toes.
00:04:41 John: Yeah.
00:04:41 John: Or they just didn't hear me when I said it.
00:04:42 John: But, you know, I do have the two factor stuff on more than one device.
00:04:47 John: The reason I didn't want to just like, why didn't you just take the phone, bring it home and, you know, blah, blah, blah.
00:04:51 John: Well, then there's two things to that.
00:04:53 John: One is I did want to do the device-to-device transfer because based on my last experience, I have learned that that is the best way to do it and I don't want to have to sign into everything.
00:05:00 John: So restoring from an iCloud backup is not as good, it seems like, as device-to-device transfer.
00:05:05 John: So I still have to do the device-to-device transfer.
00:05:06 John: But secondly, yeah, I've got it on another device, but like the whole point of redundancy is not to, you know, two is one, one is none.
00:05:13 John: If I only have it on one other device, I don't want to also have that device be...
00:05:18 John: screwed up like i don't you know i don't want to risk it like say i hit the wrong button when i'm trying to do the export or whatever and i delete it instead of exporting it now i've just destroyed my one and only backup of that stuff so that's why you know and yes lots of things sync iCloud keychain syncs one password syncs all these things you know there's tons and tons of two-factor apps i probably will eventually get everything into iCloud keychain because that's kind of where i'm going with this
00:05:40 John: Now that it syncs and now that it supports two-factor stuff, I just haven't gotten around to it.
00:05:44 John: So anyway, setting that aside, you know, what if you just don't want to do this whole thing like sitting in the Apple Store for hours?
00:05:50 John: There are other options, and I could have pursued these, which involved not going to an Apple Store and just doing it on the telephone, right?
00:05:56 John: I mostly went to the Apple Store because I wanted to talk to a human, and I needed to see another iPhone 14 Pro to say...
00:06:02 John: to convince myself, is there something wrong with my camera or is it just me being weird and picky?
00:06:07 John: And that's why I needed to get hands-on a ostensibly working 14 Pro to compare and also to talk to the person in the Apple store who sees these phones all day and say, does this look like it's broken to you or does it just look like that's what they're all like?
00:06:19 John: And that's not the type of thing I can do over the phone with somebody.
00:06:23 John: I could have convinced the person over the phone to say, look, I just think the camera's bad.
00:06:26 John: You need to send me a replacement.
00:06:27 John: But anyway, the reason the phone comes up is if you do it over the phone,
00:06:30 John: You can get them to overnight you a device and then you can do the data transfer at your leisure in your house and then send it back.
00:06:37 John: And I believe they just charge your credit card or authorize your credit card for the purchase.
00:06:40 John: So if you don't send it back, you're out the money.
00:06:43 John: Particles on Twitter said that if you get AppleCare Plus with theft and loss protection, you get the express replacement.
00:06:49 John: I think they probably still authorize your credit card.
00:06:52 John: I'm not sure if express replacement is only for if you have theft and loss.
00:06:56 John: I'm pretty sure you can get them to cross ship you something if you are convincing enough over the telephone.
00:07:01 John: What I am kind of disappointed in is when I was complaining about that I had to spend three hours in the Apple store.
00:07:05 John: The Apple store employee never said, oh, well, if you don't want to do that, now that we've gone through all the whole rigmarole and I've tested your phone and brought it into the back and we tried now that we did all that, you don't have to get it replaced here.
00:07:15 John: You can just go home and call them on the phone.
00:07:17 John: And that's probably what I should have done.
00:07:19 John: They didn't say that to me.
00:07:20 John: I don't have theft and loss protection, so maybe that's why they didn't say that to me.
00:07:25 John: But either way, next time I do it, I have many other options.
00:07:27 John: I can, by that point, have moved all my two-factor stuff to something that syncs.
00:07:33 John: It depends on what the problem is.
00:07:35 John: If I don't have a camera issue that I need to see in person, I can just do it all over the phone and have them cross-ship me something.
00:07:40 John: Anyway, so just FYI, if you don't want to spend three hours in the Apple Store listening to people tell Apple Store employees about their computer problems,
00:07:49 John: consider uh doing it over the phone and then we could even set up a special apple watch face for you when you're in the apple store do you want to tell me about that i don't have an apple i do have an apple watch i wonder if it's so dead they don't boot anymore i should take it out and try it my series zero my awesome looking series zero still lurking in my drawer anyway uh alex siri wrote in to tell us i enjoyed the episode with the psa about customizing applications on apple watch faces and i wanted to share one more cool thing with watch faces you can change them with personal automations in the shortcuts app
00:08:18 John: Every Friday at 5 p.m.
00:08:19 John: I watch automatically switches to the weekend face.
00:08:22 John: And every Sunday at 9 p.m.
00:08:23 John: it switches to the weekday face.
00:08:24 John: These both run without intervention and without any extraneous notifications.
00:08:28 John: And what's especially cool is that any automation that you can trigger in shortcuts can be used.
00:08:32 John: So an event like arriving at a location or connecting to a specific Bluetooth device can cause a change to your watch face.
00:08:39 John: It might be something Marco used to switch over to sand driving watch face when he gets in the car or just when he arrives at the beach.
00:08:44 John: that is cool like shortcuts one of the great powerful features of it is that shortcuts can do things you don't have to trigger them like they can do things based on environmental factors that they are aware of and having your watch face kind of automatically change based on your location or time of day or day of the week is kind of a cool thing if you do have multiple watch faces and you don't want to bother like swiping between them manually
00:09:06 Casey: Excellent.
00:09:07 Casey: Matt Friedman writes, with regard to why bother with the new Apple TV, if anybody still has a first gen Apple TV 4K, a second or third gen model will allow them to watch HDR on YouTube without having to swap back to the TV's native YouTube app, which may or may not support it depending on the age of your TV, which is pretty cool.
00:09:23 John: I didn't even realize that I had totally forgotten that there was a second or third gen Apple TV 4K.
00:09:28 John: We were talking on Twitter about this and I was like,
00:09:31 John: uh i'm pretty sure i get hdr in youtube app like that's what i was using to demo like when i got my new tv or whatever you know like i didn't need the brand new apple tv 4k like the smaller one that we were just talking about last show i didn't need that to watch hdr so yeah it's like but you didn't have the uh the second gen model did you you had the second gen the first gen i'm like i don't know yeah there was apparently a first gen apple tv 4k and for whatever reason it didn't get hdr in youtube uh
00:09:56 John: That's the problem with these product lines.
00:09:57 John: I mean, not that I endorse the idea of having something in parentheses to differentiate them, but the generation names are kind of worse than the year number because I had totally forgotten about that one.
00:10:06 John: So if you're wondering, hey, I already have an Apple TV 4K.
00:10:09 John: Why the heck would I want this new one that's slightly smaller?
00:10:11 John: If you have a first-gen Apple TV 4K and you care at all about HDR on the YouTube app, get one of the new ones.
00:10:17 Casey: Good talk.
00:10:18 Casey: Jacob writes, with regard to using multiple smart albums to work around the lack of nested Boolean logic in macOS's photo smart albums, unfortunately, photos doesn't allow you to reference another smart album into smart album's conditions.
00:10:31 Casey: Whoopsie-dupsies.
00:10:32 John: I couldn't believe that.
00:10:32 John: I would have to go double-check it and see if it was true.
00:10:34 John: It was like...
00:10:35 John: how why like things are so weird and limited like that has to be possible like that's the awkward workaround we talked about but no he's right it's not possible it'll let you reference i think it lets you rest of an album but not a smart album smart albums are so weird like ios has no idea that they exist and they're just so powerful and cool i wish they would like get first class treatment across all of apple's platforms
00:10:55 Casey: If only.
00:10:56 Casey: This is a U2 topic.
00:10:59 Casey: Would you like to cover this actually?
00:11:01 John: Sure.
00:11:01 John: Aaron wrote in to say maybe the U2 album removal page fell away because Apple added the ability to hide purchases.
00:11:07 John: We'll put a link in the show notes to a support article that lets you like just basically pick anything in your library or your iTunes library and just hide it.
00:11:15 John: uh removing from an account requires contact to support but this is a non-destructive solution that is enough for almost everybody so if you listen to the last show and you're like oh no i've got the youtube album and the delete page is gone what do i do it i want to call support you can just hide it and then forget that it exists
00:11:29 Marco: Thank you.
00:11:49 Marco: Value, I can't say enough how great of a value they are.
00:11:52 Marco: We'll start there.
00:11:53 Marco: It is incredible.
00:11:55 Marco: What you get at Linode, what you're paying for the resource levels you have is unmatched in the industry.
00:11:59 Marco: And I've been with them for a very long time, many years now.
00:12:02 Marco: And they've always been the best value in the business.
00:12:04 Marco: I've never found anybody better than them.
00:12:06 Marco: And then capability-wise, they have pretty much everything you might want to run servers these days.
00:12:11 Marco: So, of course, they have cloud instances, what used to be called VPSs or server instances.
00:12:16 Marco: They have any kind of resource level you might need from very small and inexpensive to very big or very specialized needs.
00:12:23 Marco: So high memory plans, dedicated CPU plans, GPU compute plans, and more.
00:12:28 Marco: And they also have now managed services too.
00:12:30 Marco: So
00:12:31 Marco: They recently launched their managed database service that supports MySQL, Postgres, Mongo, and so much more coming in the future.
00:12:39 Marco: And they have things like managed backups, managed load balancers, all sorts of block storage, object storage, which is S3 compatible, and so much more, all of this at Linode.
00:12:50 Marco: And it's just an amazing value to price per compute and
00:12:54 Marco: um and they have all this backed by great support a great api a great interface for managing stuff so it's i have nothing bad to say about linode i've used them for a very long time i pay for them out of my own pocket like they don't comp my servers or anything i pay for it all myself and it is an incredible value i'm there very happily
00:13:10 Marco: So visit Linode.com slash ATP, create a free account there, and you get $100 in credit.
00:13:17 Marco: Once again, Linode.com slash ATP.
00:13:20 Marco: New accounts there get $100 in credit.
00:13:22 Marco: Thank you so much to Linode for being a great place to run my servers and for sponsoring our show.
00:13:31 Casey: Elon Musk has decided to fire basically any Twitter employee that criticizes him because he is the thinnest-skinned human that has ever lived.
00:13:40 John: It was kind of another day.
00:13:41 John: I forget which day it was.
00:13:42 John: Another day on Twitter watching the Elon Musk drama.
00:13:47 John: He was saying stupid things, spouting off the way you would expect a teenager who has just learned to program would spout off about some big company.
00:13:59 John: He owns the company, but he's like,
00:14:00 John: these dummies they're doing this the thing reason this is close 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 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 who knows here's the actual situation uh and then elon musk said later that he fired that guy and he did
00:14:20 John: Because he didn't like being... And then all the Elon fanboys were like, that's what happens if you publicly contradict the boss.
00:14:27 John: You should say that stuff in private.
00:14:29 John: Don't contradict the CEO of your company on Twitter and just publicly embarrass him.
00:14:34 John: Well, A, if he's doing an embarrassing thing, he's really just embarrassing himself.
00:14:37 John: And B, I would hope that...
00:14:39 John: Publicly correcting the CEO of your company is not an immediately fireable offense, but apparently in Twitter it is.
00:14:44 John: Right.
00:14:45 John: And so then the obvious follow up to that is people who are saying mean things about Elon Musk on Twitter's internal slack also fired.
00:14:54 Right.
00:14:54 John: because he asked a bunch of people to go through all the messages on the internal slack and find all the people who said mean things about them and fire them and so they got an email at 1 30 a.m telling them that they were no they were no longer employed by twitter uh so yeah he's a big jerk uh and a dummy head and he does hilariously like sort of comic book uh comic book villain comic book petulant villain like dr evil like i don't even know just
00:15:21 John: It really boggles my mind that people can still find something to not admire in just a petulant, thin-skinned billionaire bully.
00:15:32 John: But here he is doing what he does.
00:15:34 Marco: I'm starting to try to figure out what has made his other companies successful.
00:15:41 Casey: Delegation, baby.
00:15:42 Casey: That's what.
00:15:43 Marco: Does he, though?
00:15:44 Marco: It seems like he has made a lot of good bets in what to invest in and what direction to go in.
00:15:54 Marco: He wasn't the original founder of Tesla, but he got in super early, kind of took it over, probably...
00:16:00 John: Kicked out the actual founders, yeah.
00:16:02 Marco: Yeah, I don't know the details, but basically... So he got in there early.
00:16:06 Marco: And I think Tesla... I think he really benefited that company.
00:16:12 Marco: His direction and his boldness in a lot of ways, I think, really helped Tesla...
00:16:19 John: product wise and his his ability to get them enough money so they didn't go out of business i think that is the key thing that he brought to the table because without him scrambling for money or you know again another person who was equally good at scrambling for money because that is a skill that a lot of people have finding a way to keep the company afloat by any means necessary including lying which he's under in trouble for with the sec but whatever he did what it took to make sure tesla did not go out of business
00:16:44 Marco: Yeah, but it seems it just seems like the things that succeed are in spite of him, not because of him.
00:16:52 Marco: And that for people in these companies to produce good work, they're almost just kind of using him as like the bank and like, you know, the guy who gets the money from investors slash lying to the stock market.
00:17:04 John: And they also have to learn how to navigate him.
00:17:07 John: They also have to like the people, the companies that are able to succeed with him running them have are filled with people who have learned how to get the job done within the parameters laid out by him.
00:17:19 John: What those parameters might be.
00:17:21 John: And I'm sure they change from company to company.
00:17:23 John: Right now, the parameters are if you say anything mean about me, I fire you.
00:17:25 John: So if you if you are inside Twitter and you're like, I really want Twitter to succeed.
00:17:29 John: How do I make that happen?
00:17:30 John: You would have to learn to navigate the environment in which if you ever say anything mean or contradictory to your boss, even when your boss is totally wrong, you're going to get fired.
00:17:37 John: So figure out how to navigate that and then figure out, you know, how to succeed despite that.
00:17:43 John: I don't think he's necessarily always been like that.
00:17:46 John: But right now at Twitter, that's what he's like.
00:17:48 John: So that's those are the parameters and those parameters suck.
00:17:52 Marco: What gave me hope initially is when you look at the list of his other companies, as I said a few episodes ago, he tries to solve hard problems.
00:18:01 Marco: And running a giant social network, especially one that doesn't print money and needs a lot of help in that department, but just running a giant social network is a hugely hard problem.
00:18:12 Marco: And I think the difference here is that the really hard problems in his other companies were mostly engineering problems.
00:18:23 John: Or financial problems.
00:18:24 Marco: Yeah, like problems getting difficult things to market, things that are difficult to make, getting them to market and keeping the lights on and keeping the money coming in.
00:18:34 Marco: Those are hard problems.
00:18:36 Marco: Running a social network that's already established
00:18:40 Marco: is not mostly an engineering problem.
00:18:42 Marco: It's mostly a people problem.
00:18:45 Marco: And he is just the worst with people.
00:18:48 Marco: He is horrendously bad.
00:18:49 Marco: And every week, every day, every hour, he finds new ways to be horrendously bad with dealing with people, both his own people and the public.
00:18:57 Marco: And I'm having a really hard time seeing how this ends well.
00:19:02 Marco: Because there is no engineering product to make here that is the final product.
00:19:08 Marco: There is no like, all right, we succeeded in building the rocket hover car or whatever.
00:19:12 Marco: There is no end here like that, the way there is with these other companies.
00:19:17 Marco: This is just something very difficult.
00:19:19 Marco: This is like running a messy, political, human set of human problems of humans.
00:19:25 Marco: And he's even worse than Google at dealing with human problems.
00:19:30 Marco: He is so...
00:19:32 Marco: like disgustingly bad at dealing with people and you know this latest thing you know with the uh the email of like you know better be prepared to work 24 7 or get fired like god i'm so mad about that yep well so we'll put links in the show notes of both these first is a new york times article about the firing people who criticize them the next is a washington post article
00:19:51 John: The headline is, Musk issues ultimatum to staff.
00:19:54 John: Commit to, quote unquote, hardcore Twitter or take severance.
00:19:57 John: Here's the summary.
00:19:58 John: Employees were told that they had to sign a pledge to stay on with the company.
00:20:01 John: Quote, this is from the email.
00:20:03 John: If you're sure that you want to be part of the new Twitter, please click yes on the link below.
00:20:07 John: Anyone who did not sign the pledge by 5 p.m.
00:20:10 John: Eastern Time Thursday will receive three months severance pay.
00:20:12 John: The message said in the midnight email, which is obtained by Washington Post, Musk said we will need to be extremely hardcore going forward.
00:20:18 John: This will mean working.
00:20:19 John: This is a quote.
00:20:19 John: This will mean working long hours at high intensity.
00:20:22 John: He said only exceptional performance will constitute a passing grade.
00:20:25 John: The pledge email paired with a new policy mandating a return to the office is expected to leave even more attrition at the company whose staff Musk had already reduced by half.
00:20:33 John: Right.
00:20:33 John: So he's basically saying he's he's sort of getting the company ready to say, look, it's going to be hard.
00:20:38 John: You're going to have to work long hours and sign this pledge saying if you're up for that and if you're not up for that, that's great.
00:20:43 John: You get three months severance.
00:20:45 John: See you later.
00:20:46 John: Because to your point earlier, Margo, this not being a technical problem, he wants it to be a technical problem.
00:20:52 John: And he has created, not created, but he has identified a technical challenge.
00:20:57 John: In his mind, I think the technical challenge is this company is inefficient.
00:21:01 John: Their infrastructure, though it may work fine and there's no more fail whales, it could be done better.
00:21:06 John: Smarter people could make this better.
00:21:07 John: We can cut our infrastructure costs, save a lot of money.
00:21:10 John: It's bloated and overrun.
00:21:12 John: There's a lot of stuff we probably don't need.
00:21:13 John: And the stuff we do need could be more efficient, right?
00:21:15 John: He's decided, because I think that's what appeals to him, that that is the technical challenge in front of them.
00:21:21 John: And what he wants is a crack team of people who are willing to sacrifice their own lives, family, mental and physical health.
00:21:30 John: who will never contradict him or say anything mean to him or about him, even when he's entirely wrong, to destroy themselves to help him achieve that goal.
00:21:39 John: And as you pointed out, all right, so you snap your fingers and you achieve that goal.
00:21:43 John: Have you solved any problem for Twitter?
00:21:46 John: Like, yeah, you probably saved a little bit of money in infrastructure.
00:21:49 John: Hey, let's say you can cut their infrastructure costs in half.
00:21:52 John: Do you have you found a way to make enough money to service your debt now that all the advertisers are gone because of the other stupid things that you did?
00:21:58 John: Probably not.
00:21:59 John: Right.
00:21:59 John: So I don't know why he's identified that as a problem that is super important to tackle.
00:22:03 John: And I think if you are going to tackle that, trying to tell the entire company that you have, you know, you have until tomorrow at 5 p.m.
00:22:11 John: to sign this pledge saying you will destroy yourself for me.
00:22:14 John: Otherwise, you're fired.
00:22:15 John: I mean, it seems like that's not the best way to staff up for, you know, tackling this problem.
00:22:21 John: And the only thing I can say is like, maybe if you had a startup and you're like, look, I'm going to be the worst startup CEO ever.
00:22:27 John: I'm going to destroy everybody who works for me.
00:22:29 John: They're all going to burn out.
00:22:30 John: But the few that don't will get a big payday from an IPO.
00:22:33 John: And by the way, we don't have a product yet, but this crack team is going to build it.
00:22:36 John: But that's not the situation of Trigger.
00:22:37 John: They already got the product.
00:22:39 John: They've already got a big company with a product.
00:22:40 John: They don't have to build it.
00:22:41 John: And it's almost like he wants to destroy it so it becomes nothing and then build it back up from zero with his crack team of burned out sycophants.
00:22:49 John: And I mean, that's one way to go about it.
00:22:52 John: But it's just totally like, you know, destructive to value, destructive to people's lives.
00:22:58 John: And this is the point that Twitter already exists.
00:23:01 John: You don't have to build it.
00:23:02 John: It's already there.
00:23:04 John: You just need to learn how to run it in such a way that it makes money and is better in whatever way you decide is better.
00:23:09 Marco: You're right.
00:23:10 Marco: He's so over-focused on the technical side and the overhead side.
00:23:16 Marco: Even if he's correct, they were overstaffed before.
00:23:20 Marco: Maybe not as much as he thinks they were, but they were overstaffed before.
00:23:25 Marco: We have heard stories that their technical stack was kind of a mess.
00:23:28 Marco: However,
00:23:29 Marco: That's not the hard part about running Twitter.
00:23:32 Marco: The hard part about running Twitter is all the people issues, all the politics issues, all the abuse issues.
00:23:39 John: Policies, incentives, and business models.
00:23:41 John: Those are the actual hard parts, but he's not interested in those.
00:23:43 John: He's interested in I want to write code because that seems more fun.
00:23:47 Marco: Or at least he's going in there.
00:23:50 Marco: Look, every 20-year-old, every smart 20-year-old programmer
00:23:55 Marco: has left college where they were the smart 20-year-old hotshot, and they go get a job, and they look at everything around them, and they're like, that's stupid.
00:24:04 Marco: Why is it done that way?
00:24:06 Marco: We should just X, right?
00:24:08 Marco: And it's the dumb 20-year-old thing to do.
00:24:10 Marco: We've all been there.
00:24:11 Marco: Most of us, myself included, have been that guy.
00:24:14 Marco: Like...
00:24:15 Marco: You look at something from an ignorant, inexperienced point of view, and you think this is a much simpler problem than these other idiots seem to make it out to be.
00:24:25 Marco: I'm going to waltz in there and make a simple fix.
00:24:28 Marco: And then you waltz in there and you realize, oh, God, this is way more complicated than I thought it was.
00:24:33 Marco: Or it was done this way for a reason.
00:24:34 Marco: And you get your butt kicked.
00:24:36 John: But what if you didn't have to ever realize that?
00:24:39 John: Because what you could do is simply fire everyone who contradicted you.
00:24:42 John: Like imagine if the 20-year-old comes into the company, says that, and instead of like learning a hard lesson by trying to rewrite something and, you know, messing up production and getting like a stern talking to and blah, blah, blah.
00:24:53 John: If instead they came in and said that, the people who knew better corrected him and then the 20-year-old fired them.
00:24:59 John: Right.
00:25:00 John: Like that's the situation we're in.
00:25:02 John: It's like that's not a path to success.
00:25:06 Marco: Again, I want Twitter to succeed.
00:25:10 Marco: I decreasingly want him to succeed.
00:25:13 Marco: I think he's such a horrible person right now.
00:25:18 John: He did say he's going to get someone else to be CEO, which I think maybe he's getting tired of people yelling at him so someone else can run the company and he can go back to whatever he normally does.
00:25:26 Marco: All I can say is...
00:25:28 Marco: keep the heat up, everyone.
00:25:30 Marco: Keep telling him how much of a piece of crap he is.
00:25:33 Marco: Unless you're a Twitter employee, in which case you're going to get fired.
00:25:36 Marco: And the downside, I mean, God, oh God, my opinion of him is dropping so quickly.
00:25:42 Marco: I've decided I'm selling my Tesla.
00:25:44 Marco: I don't want it anymore.
00:25:45 Marco: I don't want him anymore.
00:25:46 Marco: I'm still going to be on Twitter because I want Twitter to succeed, but God, I wish it wasn't his.
00:25:51 Marco: And I outlined last week why I want Twitter to succeed.
00:25:55 Marco: And we'll get to a little bit more of that later.
00:25:57 Marco: But
00:25:58 Marco: I want everything bad to happen to him.
00:26:02 Marco: I want him to be constantly trolled.
00:26:04 Marco: I want him to not have any peace in his life because people are constantly telling him how much of an ass and an idiot he is.
00:26:12 Marco: That's what I want for him, what he does to people.
00:26:15 Marco: Here's the thing.
00:26:16 Marco: This email he sent, this angers me on so many levels, this ultimatum that you have to work your butt off extra hours forever or leave.
00:26:26 Marco: That is such like Silicon Valley toxic workaholism culture.
00:26:33 Marco: And I take such deep offense to that in our industry.
00:26:37 Marco: It's a huge problem in our industry.
00:26:38 Marco: And I've talked about it before.
00:26:40 Marco: I am so strongly against that workaholism culture because it has so many negative effects.
00:26:46 Marco: Because the thing is like –
00:26:47 Marco: Not everyone is some 20-year-old hotshot who wants to sleep at the office and eat pizza like in Silicon Valley, like the TV show.
00:26:54 Marco: Not everyone is like that.
00:26:56 Marco: And not everyone can do that.
00:26:57 Marco: And when you create a workplace where that's the only acceptable culture...
00:27:03 Marco: Not only does it burn out those people who are willing to do that, but it excludes tons of people who can't or won't work that way.
00:27:12 Marco: And then it creates other things.
00:27:14 Marco: Like, for instance, one of the problems we now have is that as the tech industry is laying off tons of people, we have to deal with H-1B visa holders.
00:27:22 Marco: where this is the type of visa for anyone who doesn't know in the U.S.
00:27:26 Marco: We offer visas for people who are not U.S.
00:27:29 Marco: citizens to come here and work using this work visa.
00:27:33 Marco: And I don't know the details, forgive me, but the company who you're working for kind of sponsors it in some way.
00:27:39 Marco: So a lot of people who are going to stay, who are going to keep working for this jerk, are H-1B visa holders who, if they decide not to accept his terms, they have to leave the country.
00:27:51 Marco: And that's a serious thing.
00:27:53 Marco: And so there's all these little knock-on effects that when you first think about what he's doing, you might think, oh, well, he just wants really good workers and only the most dedicated people will stay.
00:28:06 Marco: Well, it's not that simple.
00:28:08 Marco: You're going to have all these people who really can't and don't want to work that way but are kind of forced to for reasons like this.
00:28:15 Marco: And it excludes tons of people who can't work that way.
00:28:18 Marco: What if you have a kid?
00:28:20 Marco: You shouldn't be at the office working long nights every night if you have a kid.
00:28:24 Marco: What if you have to take care of somebody at home?
00:28:26 Marco: There's so many groups of people or situations that you either exclude or abuse with these simplistic views of the world that, oh, you better work here because you want to be hardcore.
00:28:39 Marco: Things are not that simple.
00:28:40 Marco: Things have never been that simple.
00:28:42 Marco: And if he would just take his head out of his ass for two seconds and look around, he might have a small chance of seeing that.
00:28:47 Marco: But unfortunately, that's never going to happen.
00:28:49 Casey: That's the thing that bothers me.
00:28:50 Casey: I'm glad you brought that up.
00:28:53 Casey: All the Elon fans that I have heard shouting into the ether seem to say things like, oh, it's a meritocracy.
00:29:01 Casey: The best people will be there and they won't mind and blah, blah, blah.
00:29:04 Casey: What if the best person is the person who can only give eight hours a day to their job?
00:29:12 Casey: Why is that bad?
00:29:14 Casey: Or what if the best person doesn't live in San Francisco?
00:29:18 Casey: Why is that bad?
00:29:21 Casey: It's so backwards.
00:29:25 Casey: When he makes these proclamations, it's like, okay, Boomer, sure.
00:29:28 Casey: He's like 10 years older than me and five years older than John, I think.
00:29:32 Casey: But it's such a Boomer mentality of...
00:29:35 John: no the boomers only work nine to five like that's true actually no that's fair that's fair the premise that people accept you can even see it in the chat room somebody said that this this workaholism culture is the reason why silicon valley became successful right no it's not and why the employees make so much money um also not yeah so the the premise is that if you do live in the office and you know spend all your life there or whatever that you will somehow do better work than if you didn't do that and that's
00:30:02 John: Absolutely not true.
00:30:03 John: Every time they've ever studied this.
00:30:05 John: I mean, you should know this just as a programmer.
00:30:07 John: Should I pull an all-nighter or should I go to sleep and work on this problem again in the morning?
00:30:10 John: Oh, if I sleep, I'm losing eight hours of working time.
00:30:12 John: Therefore, I should pull an all-nighter.
00:30:14 John: Your efficiency and quality of programming at 3 a.m.
00:30:18 John: ?
00:30:19 John: are detrimental to your productivity.
00:30:22 John: You should go to sleep.
00:30:23 John: Like, making people burn themselves out does not produce better work than letting them be rested.
00:30:29 John: That's what the smart companies know.
00:30:31 John: And the companies that have been successful, like the 8088 was not made by people who were pulling all-nighters for years at a time, right?
00:30:38 John: Crunch in the game industry.
00:30:39 John: Like, does that make better games?
00:30:41 John: No, it makes everything worse and it destroys lives.
00:30:43 John: And even gaming companies are learning if we want to do better, we should try to avoid that, right?
00:30:48 John: It feels like you're doing – like I'm doing the hard work and you have to do this, especially if you're going to be in a startup.
00:30:57 John: Never mind that Twitter is not a startup.
00:30:58 John: Anyway, this is what you just have to do for that big payday.
00:31:02 John: You just got to give your all and it's like –
00:31:03 John: Your fundamental assumption that working harder and longer hours produces better work is what you need to reexamine.
00:31:10 John: And once you've reexamined that, it's much easier.
00:31:11 John: Setting aside the humanity of don't be cruel to people, especially dumb 20-year-olds who have no life experience.
00:31:18 John: Oh, they can do it because they don't have a family.
00:31:20 John: They have health and they should have lives.
00:31:22 John: It's cruel to essentially not trick them, but coerce them into working harder than they should in a way that they'll regret.
00:31:30 John: They'll say, I spent my 20s burning myself out at this company and I saw no benefit from it, right?
00:31:37 John: And I just wasted my life, right?
00:31:38 John: And they don't know that now, but because they don't have kids and can do it and they think they will convince themselves that they're doing better work by lurking longer hours, no.
00:31:46 John: And really the bad thing about it, I don't know a lot about Twitter culture, but it seems like from all the people bailing on Twitter, that their culture,
00:31:52 John: was let's say i mean certainly better than this and possibly better than average in terms of work-life balance and the culture of being able to say things on internal slacks that are critical of leadership i mean people are bragging about that like it's a big deal but can you i can't even imagine working at a company where you're where if you say something against leadership and in an internal channel or in an
00:32:14 John: an internal meeting or to the face of like a VP in a meeting like that shouldn't be a fireable offense like you can offend people and be rude and you know get you know politically get in trouble inside a company but a company that will not allow dissent from within the company and the privacy of that company is not a healthy company and so
00:32:32 John: These Twitter employees were accustomed to the environment where they weren't told that you need to work 20 hours a day, where there was an acknowledgement that you have a life, where there was an acknowledgement that you will do better work for the company if you are well rested and have stability in the rest of your life.
00:32:48 John: And there was an acknowledgement within the company that it's OK to criticize the company because that's a healthy thing.
00:32:53 John: And that's how we get better.
00:32:54 John: And then overnight, overnight, all that changes and people quit on their own.
00:32:59 John: People get fired.
00:33:00 John: People get laid off.
00:33:01 John: I'm wondering how many people will be left.
00:33:03 John: And it's the people who are left are going to be the people who are foolishly willing enough to destroy their lives for the amusement, essentially not benefit because I need anything for the amusement of this billionaire.
00:33:13 John: And the people who are trapped, who have H-1B visas or can't get another job quickly or really need this job right now because they're in financial straits or they need the health care.
00:33:21 John: Like there are so many reasons in our, you know, stupid system, health care being tied to your job.
00:33:25 John: One of the big ones, something that people who are saying another country might not think about when you leave your job, you lose your health care unless you're willing to pay a lot of money to continue.
00:33:35 John: Yeah.
00:33:35 John: Getting it for some amount of time.
00:33:37 John: It's messed up.
00:33:37 John: Anyway, so I feel like the only people left will be the true believers who are going to destroy themselves for him and the people who are trapped.
00:33:44 John: And those are not the best people.
00:33:45 John: And then if you drive all those people to work ridiculous hours, you're going to get poor work out of those remaining people.
00:33:51 John: And it's just...
00:33:53 John: Not a good situation.
00:33:54 John: Like I said last week, if you got enough money, you can just play that game out, burn the thing to the ground and start building up from the bottom purely with, you know, Elon fans who are willing to destroy themselves for him.
00:34:05 John: I don't think that's a healthy company culture either, but it is a path that he can take as long as he's willing to continue to put billions and billions of dollars into this to pay off the debt and continue to hopefully keep the service running.
00:34:15 John: He's got enough runway to, you know, continue this farce for as long as he wants.
00:34:20 Marco: And it isn't just about he's going to ruin these people.
00:34:25 Marco: In these kind of working conditions, the best people won't even work for you.
00:34:31 Marco: The best people usually are not the 20-year-olds.
00:34:35 Marco: It's good to have those 20-year-olds in the company because they do provide a lot of energy, a lot of grunt work.
00:34:42 Marco: They do have good ideas that the older people might not think of and a little bit of gumption in certain ways that older people tend to fade off on.
00:34:49 Marco: But the older people in the company, and I mean, this is still Silicon Valley, the term older means people much younger than me.
00:34:58 Marco: I'm talking people who are like 30.
00:35:01 Marco: It's really terrible.
00:35:02 Marco: We have an awful ageism problem in our industry.
00:35:04 Marco: But people who are older who might have a family and they are refusing to work 16-hour days for this jerk, they are better usually.
00:35:15 Marco: The experience they have usually makes them more efficient workers.
00:35:20 Marco: And they know their value.
00:35:22 Marco: And they know that they can do great work benefiting the company massively even if they're only there eight hours a day.
00:35:30 Marco: And if your company culture or explicit rules makes it so that those kind of people either can't or won't work for you –
00:35:39 Marco: Then you're only ever going to get those either, you know, the 20 year old hot shots or the people who are too stuck and aren't able to leave.
00:35:48 Marco: And you're going to be missing out on so much of the best talent.
00:35:53 Marco: So it isn't just like it isn't it isn't just that that you're going to be, you know, being mean to the people you have.
00:35:59 Marco: It's that you literally won't even be able to get the best people.
00:36:03 Marco: And even if he's done everything right up to this point, which of course he so much hasn't, but the best people won't even work for you.
00:36:10 Marco: And so you have to then hire more of those hotshot 20-year-olds, and you still won't get the quality and efficiency of work that you get from more experienced people being present in the ranks.
00:36:22 Marco: And so it ends up being even less efficient, and you have to work people even harder because you're working less efficiently or doing things that are less wise.
00:36:30 Marco: And it's such a huge mess.
00:36:33 Marco: It all comes down to, wow, for a guy who's run so many companies, he really seems terrible at running companies.
00:36:40 Casey: Right.
00:36:40 Casey: That's the thing.
00:36:41 Casey: We got to move on.
00:36:42 Casey: Semi-real-time follow-up from HeyUDVD in the chat.
00:36:45 Casey: With regard to the Apple TV 4K, first gen, A10X old Siri remote that everyone hated.
00:36:51 Casey: Second gen, A12 new remote.
00:36:54 Casey: Third gen, A15 USB-C remote.
00:36:57 Casey: That's your three generations.
00:36:58 Marco: However, if you bought a new remote for an older Apple TV, which I did, which I did too, then it's all out the window.
00:37:07 Marco: We are brought to you this week by Trade Coffee.
00:37:10 Marco: You know, the holidays are approaching.
00:37:11 Marco: It's kind of shopping season, and we all have the people in our life who are more difficult to shop for, let's say.
00:37:17 Marco: And if you're looking for something to get even the most difficult person to shop for, consider a personalized coffee subscription from trade coffee.
00:37:26 Marco: This is a coffee subscription service that makes it super simple to discover new coffees and make your best cup of coffee at home every day.
00:37:34 Marco: Trade partners with the nation's top rated independent roasters to send you coffee that they know you'll love fresh to your home and on whatever schedule you want it.
00:37:43 Marco: So whether you already know what you like or you're new to specialty coffee, you need some help.
00:37:47 Marco: Trade makes it easy and convenient to discover new coffees.
00:37:51 Marco: I personally have used trade for I think over a year now.
00:37:54 Marco: What I love about it is that they have such a variety.
00:37:57 Marco: It's incredible.
00:37:58 Marco: And fresh roasted coffee, which is what you get from trade, is by far the best way to make coffee at home.
00:38:03 Marco: Like you don't need like a fancy brewer or some fancy brand name or whatever.
00:38:07 Marco: You need fresh roasted coffee.
00:38:09 Marco: that's what comes in the mail every week for me with trade and it is glorious because i know i told them what i like you know certain roast levels certain flavor profiles even certain origins i tell them how i'm brewing it and they send me new stuff i don't have to think about it it's great i can like thumb it up if i want to like you know have more like this or something but honestly i don't really give them much input i just keep drinking it because it's just good i don't even think about it it's wonderful
00:38:31 Marco: It's not only great for you, it's great as a gift.
00:38:34 Marco: So see for yourself, it is great.
00:38:36 Marco: So treat yourself or the coffee lover in your life with Trade Coffee.
00:38:40 Marco: Right now, Trade is offering our listeners a total of $30 off a subscription and access to limited time holiday specials at drinktrade.com slash ATP.
00:38:50 Marco: That's drinktrade.com slash ATP for $30 off.
00:38:54 Marco: drinktrade.com slash ATP.
00:38:57 Marco: Thank you so much to Trade Coffee.
00:38:59 Marco: for keeping me caffeinated and sponsoring our show.
00:39:02 Casey: All right.
00:39:06 Casey: With regard to the utility of HomeKit, this is from Todd.
00:39:09 Casey: Todd writes, I'm a high level quadriplegic, which means I have no use of my arms or legs.
00:39:15 Casey: I have been doing home automation for 30 years.
00:39:17 Casey: HomeKit has been a blessing.
00:39:19 Casey: It's fairly simple to set up and it is very reliable.
00:39:22 Casey: I'm not so sure if that's true, but hey, if Todd thinks it's reliable, I'm good with that.
00:39:25 Casey: Not so much for consumer-level home automation that came before it.
00:39:29 Casey: I have iDevice switches all over the place.
00:39:30 Casey: It's so enabling to be able to tell Siri to turn lights on and off.
00:39:33 Casey: I have outside lights automated to come on and turn off.
00:39:36 Casey: It's great.
00:39:36 Casey: For me, there's a lot of return on investment with HomeKit Automation.
00:39:39 Casey: I think that's a really good call.
00:39:40 Casey: And it's not just people without use of their arms and legs.
00:39:43 Casey: I can think of many, many, many, many different kinds of people that being able to shout into the ether and have a response could be really powerful.
00:39:52 Casey: So I thought that was a good point from Todd.
00:39:53 John: Yeah.
00:39:54 John: Another advantage of when big consumer electronic companies enter an area that was previously specialized, like what he described as consumer-level home automation that came before it.
00:40:02 John: When it was a smaller industry and the only people, it's like, well, most people just have light switches.
00:40:06 John: But if you really need something, there's these three companies that try to make things for people who...
00:40:09 John: can't reach right switches or whatever right um but having a big company like apple come in has got to be just you know so much more money and effort put into making it better so we may all complain about a home kit but it's probably because that's only the only home automation thing we've ever dealt with if we had to deal with like cruddy home automation you know from the 80s or 90s or something that came before this i'm sure that was much worse
00:40:30 Casey: Indeed.
00:40:31 Casey: I remember when I was growing up, my dad had, what was it, X10, something like that?
00:40:36 Casey: I forget what it was now.
00:40:37 John: Yeah, the banner ads in the web, yeah.
00:40:39 Casey: Yep, he had X10 all over the place.
00:40:41 Casey: Then I put in a very, very small X10 installation in my dorm room because I was that kind of a dork.
00:40:45 Casey: I think I told this story at one point in the show.
00:40:47 Casey: But anyways, his X10 setup was...
00:40:51 Casey: really robust and and worked reasonably well uh much to my surprise i think it was x10 i might have that wrong didn't they invent the pop under or the pop up was it was that them i have no idea yeah great legacy guys yeah well there's that i don't know it was it was cool stuff and and that he had to like have a dedicated windows machine to be like the server for it was a it was a mess but it was cool that he was doing this in the mid 90s
00:41:14 Casey: Hey, the Mac is entering its third year of the, quote, two-year transition, quote, to Apple Silicon.
00:41:21 Casey: This was pointed out by Cult of Mac, where we are in the beginning of the third year, and we were supposed to have it all done in two years.
00:41:28 John: And that's counting generously because, like, they announced in June, like, the first ARM Macs, and they basically said, you know, like...
00:41:34 John: We'll begin our two year transition when like the first one comes out at the end of the year.
00:41:39 John: So here we are at the end of 2022, which is generously two years after not the announcement of our Macs, but when the first one came out.
00:41:47 John: So yeah, entering year three of the two year transition, still waiting for that Mac Pro.
00:41:50 Casey: Yeah, so with regard to that, I got, wait, well, we got, but I got one of the best feedback emails that I've received in a while.
00:41:58 Casey: And this is from Jonathan Clayton, who writes, because the quote unquote new Mac Pro was a topic of discussion yet again, and to validate Casey's anger about discussing the topic, I did some back of the envelope math.
00:42:09 Casey: ATP went live, as Jonathan wrote this, 3,564 days ago as of November 11, 2022.
00:42:16 Casey: For 2,641 days, or 74% of its existence, there's been anticipation about whatever has come to define the new Mac Pro.
00:42:23 Casey: For 257 days was the ATP launch until the 2013 Mac Pro shipped.
00:42:28 Casey: For 1,512 days, which is two years after the 2013 Mac Pro was released,
00:42:32 Casey: about the time when people started asking questions until the Mac Pro 2019 shipped and then 872 days and counting since Apple announced Apple Silicon transition at WWDC 2020 and the 2019 Mac Pro was doomed.
00:42:47 Casey: Sorry, John.
00:42:48 Casey: So there have only been, according to Jonathan, 923 days in ATP's existence of 3,564 days where everyone was okay with the current state of the Mac Pro.
00:42:58 Casey: So,
00:42:58 Casey: 25% of ATPs nearly 10 years that the two of you have been – well, really me too, but all three of us have been satisfied.
00:43:06 Casey: And I just thought that was wonderful, delightful, back-the-envelope math to share with everyone.
00:43:10 John: So it's interesting math, but I don't agree with the part where it says – where these numbers indicate times when we were or weren't satisfied with the existence of the macro.
00:43:18 John: Yeah.
00:43:19 John: Right now, I'm perfectly satisfied with my Mac Pro.
00:43:22 John: I don't think like, oh, Apple needs to do something with the Mac Pro.
00:43:26 John: The current Mac Pro is great.
00:43:27 John: It's just what I wanted.
00:43:28 John: So you can't like basically start counting as soon as they release one and say, well, now you're immediately dissatisfied and waiting for the next one.
00:43:34 John: Sometimes we were waiting for the next one, like almost the entire reign of the trash can.
00:43:38 John: It was kind of like, yeah, yeah, we're kind of dissatisfied, right?
00:43:41 John: But for the entire reign of the 2019 Mac Pro, I certainly haven't been dissatisfied.
00:43:45 John: I'm not here saying, oh, I'm interested in the new Mac Pro, but I'm not dissatisfied with the state of it.
00:43:50 John: I'm not saying, when is Apple going to make a real Mac Pro?
00:43:52 John: They made one.
00:43:52 John: I bought it.
00:43:53 John: I've got it.
00:43:53 John: I'm happy.
00:43:55 John: Thanks for all the math, but I think...
00:43:59 John: I think if you're going to do sentiment analysis of when we're upset about the Mac Pro, I think you would find much longer spans when we are upset, for instance, about the laptops.
00:44:08 Casey: That is fair.
00:44:09 Casey: That is fair.
00:44:10 Casey: Yeah, that's true.
00:44:11 Casey: But the difference is that was completely justified, whereas I don't know if all that Mac Pro whining was, but that's okay.
00:44:16 Casey: Oh, it was.
00:44:17 John: Just wait.
00:44:17 John: When they come out with the new Mac Pro and if it's like another trash can type thing where it's not satisfactory, then we'll enter another dark period.
00:44:23 Casey: We'll see.
00:44:24 Casey: I'm sorry.
00:44:24 Casey: I'm so very excited.
00:44:26 Casey: All right, so something that I'm actually genuinely excited about is the iPhone 14 satellite emergency SOS is live if you live in the U.S., and I think only the U.S.
00:44:37 Casey: This debuted, I think, Monday or maybe yesterday.
00:44:40 Casey: It was sometime in the last 48 hours.
00:44:42 Casey: And we'll put a link to the Apple Newsroom article where they mentioned that France, Germany, Ireland and the UK are coming next month in December.
00:44:50 Casey: And I also thought it was interesting.
00:44:52 Casey: They kind of made passing mention of this, but I don't think they ever really discussed how or the mechanism for it.
00:44:58 Casey: But in the Newsroom article, they said, additionally, if users want to reassure friends or family of their whereabouts while traveling off the grid.
00:45:04 Casey: They can now open the Find My app and share their location via satellite.
00:45:07 Casey: And we're going to talk a little bit more about that in a moment.
00:45:09 Casey: Another thing that I thought was super cool, no sarcasm, is that you can actually do a demo on your iPhone 14.
00:45:16 Casey: So if you have an iPhone 14, you can go into settings and then emergency SOS is one of the top level settings.
00:45:21 Casey: And then go down to try demo.
00:45:23 Casey: And you can actually try out a faked, you know, oh my gosh, I'm having an emergency situation.
00:45:29 Casey: And it's completely faked.
00:45:30 John: Is it completely fake?
00:45:31 John: So here's two things.
00:45:32 John: One, I found out about this thing and my very first thought was, oh, it's kind of a shame I don't have an emergency because it would be cool to try that.
00:45:40 Casey: Yeah, exactly.
00:45:41 John: Two seconds later, I found out, hey, Apple thought of that and they made a way because they know people want to try it.
00:45:46 John: So they made a way for you to try it without actually having emergency, which I think is great.
00:45:50 John: Second, how much of it is faked?
00:45:52 Casey: Because I tried it.
00:45:53 Casey: Well, that's true.
00:45:54 John: and it makes you do like oh you know point towards the satellite and line up the thing or whatever and then obviously it doesn't send the message right that part is surely fake but is the part where you're trying to find the satellite also fake because you could fool me like just pick an arbitrary point direction and then make me move my phone because because it's not sending anything there's no way for me to tell is it actually is the part where you're turning around to find the satellite real because it does tell you to go outside and i went outside i should have tried it from like inside underneath a piece of tinfoil to see if like
00:46:22 John: It still says, oh, you found the satellite, you know.
00:46:25 John: But either way, it's fun to do the demo.
00:46:27 John: You should try it.
00:46:28 John: It brings you through a bunch of things.
00:46:29 John: But like, so, you know, almost all of it is fake.
00:46:31 John: But what I really hope is the part where you point it at the satellite and at the very least receives whatever the satellite is spraying down.
00:46:39 John: I hope that part's real.
00:46:40 John: I want to believe it's real.
00:46:41 Casey: Oh, same.
00:46:42 Casey: And I assumed that part was real.
00:46:44 Casey: Then as I was talking about it during the show, I was thinking, well, maybe that wasn't real at all.
00:46:48 Casey: But I assumed the satellite connectivity part was real.
00:46:52 Casey: It's just the emergency part.
00:46:53 Casey: Just like you said a moment ago, the emergency part was not.
00:46:55 Casey: But you make a good point, and it occurred to me, like I said while I was talking about it, that maybe everything was fake.
00:47:01 Casey: I don't know.
00:47:01 Casey: We'll have to maybe follow up.
00:47:02 John: And also when you're doing this demo, like they put this is this is right.
00:47:06 John: So the fact this feature exists, I think is great.
00:47:08 John: This is like Apple at its best anticipating what people want to do.
00:47:11 John: And then they just like they did a good job of making this fake UI because it's not an easy task to.
00:47:18 John: Make it clear that you're doing something that's fake to make sure you can't accidentally do the non-fake thing.
00:47:25 John: And on every single screen, making it so that there's no confusion about the fact, don't worry, you're not actually telling ambulances to come to your house.
00:47:34 John: difficult problem they did not have to tackle just for this purely like hey people want to try this because it's fun and it's not just fun it's also rehearsal for if you ever have an emergency because the last thing you want to be doing an emergency is like i know my phone's supposed to do this thing but i've literally never done it and i have no idea where it is which is why one of the cool features of this is like you don't have to remember where it is just in america dial 9-1-1 and if it can't dial that's all you have to remember that's what people know anyway oh you know something terrible has happened down 9-1-1
00:48:02 John: If you're in the mountains and have no signal, right on the screen where you dial 911, it will throw up a button that says, you know, satellite, do this, SOS, whatever, because it will, you know, it will try 911, but if there's no phone available, so you don't have to learn like, oh, I have to go into settings or what app is this under or whatever.
00:48:17 John: If you just do the first thing that comes to your mind, which is to dial the emergency number, you will be presented with an option to do this if necessary.
00:48:24 John: Yeah, that's really cool.
00:48:26 Marco: When I first saw there was a demo, I was like, what?
00:48:30 Marco: That's so unlike Apple to offer that kind of thing.
00:48:33 Marco: So it's noteworthy, first of all, that it's there.
00:48:36 Marco: And then I started thinking, why is it there?
00:48:37 Marco: And at first I thought, well, it's probably there just for the PR of this new software release of now everyone can try it out and see.
00:48:43 Marco: But then I thought really, oh, that kind of rehearsal angle of like, oh, they want people to know where this is for when you need it.
00:48:51 Marco: That's really cool.
00:48:52 Marco: Yeah.
00:48:52 Marco: And, you know, again, all this is very un-Apple-like, but I think in a very good way.
00:48:57 John: I think it is Apple-like.
00:48:59 John: Maybe it's because I'm old, but this is exactly what I think of when I think of Apple is someone being really thoughtful about a feature and then spending way too much time and effort to make a really good UI for the fake satellite interface.
00:49:11 John: So because, again, the challenge is there is to...
00:49:14 John: Teach people how it's going to work.
00:49:15 John: If you were an emergency, here's what we would be asking you to do.
00:49:17 John: We'd be asking you to find satellites.
00:49:19 John: We'd be like, this is what you're going to do.
00:49:20 John: So it's a rehearsal.
00:49:21 John: But also the whole time, make sure that you know you're not doing anything destructive and it's clear to you that it's a demo.
00:49:27 John: And that's a lot of work.
00:49:28 John: And that's that's the best of the Apple that I think of.
00:49:30 John: Maybe it's the 80s or 90s Apple with the Apple that was all about user experience and user interface and surprise and delight.
00:49:36 John: And, you know, not ads.
00:49:38 John: Yeah.
00:49:39 Casey: If only.
00:49:41 John: You have to click through this ad before you can send the satellite message.
00:49:45 John: Hey, it looks like you're trying to dial 911.
00:49:47 John: Can I interest you in a casino app?
00:49:49 John: Right.
00:49:49 John: You might want to sign up for Apple Arcade before you send that message.
00:49:51 John: Are you sure?
00:49:52 Marco: It's going to take you a really long time before the helicopter gets there.
00:49:54 Marco: You might want to kill some time with this new gambling slots app.
00:49:58 Casey: All right, focus, gentlemen.
00:49:59 Casey: So I did this demo just like the two of you did, and I did a screen recording while I was doing it, and I tweeted it, because as we sit here now, Twitter's still here, miraculously.
00:50:09 Casey: And so we'll put a link to that video in the show notes.
00:50:12 Casey: I'm sure the quality is garbage, but nevertheless, it'll give you the gist of it if you don't have an iPhone 14.
00:50:17 Casey: But yeah, I thought it was really, really cool.
00:50:18 Casey: I love that this is something you can try.
00:50:21 Casey: And just like the two of you said, it is a great rehearsal for when the time comes.
00:50:25 Casey: So all good things.
00:50:26 Casey: Then the same day, iJustine on YouTube was given a special privilege to discuss all this with Kai Andrantz and Arun and Tim something or other.
00:50:37 Casey: I'm sorry, I forgot to write the rest of the names down.
00:50:38 Casey: But anyways, they talked about a bunch of things.
00:50:41 Casey: They mentioned on this, and perhaps in the newsroom as well, that it is free for two years, quote, starting with the activation of your iPhone 14, quote,
00:50:51 Casey: And they made some other interesting kind of one-off comments.
00:50:53 Casey: They said that the satellites are traveling at 15,000 miles an hour, 800 miles above the Earth.
00:51:00 Casey: Leaving aside the 15,000 miles an hour thing, I still think to this day that it is pretty freaking cool that this little brick in my hand can talk to a cell tower that's, you know, maybe a mile, two mile, five miles away.
00:51:15 Casey: We're talking about a satellite 800 miles above the earth.
00:51:21 Casey: That is extremely cool.
00:51:23 Casey: I mean, I hope to never need this feature, but I just think that's super duper cool that this is something that we have in like a run-of-the-mill everyday phone.
00:51:31 Casey: I think that's awesome.
00:51:33 Casey: It was also interesting that Arun said that if you're in a car accident, the phone will try to dial 911, but if it can't, it will, and these are direct quotes now, if it's unable to call 911, it will then use this capability to try to get the message out via satellite.
00:51:49 Casey: In that situation, the phone probably does not have a clear view of the sky and might be between the seats or in the trunk.
00:51:55 Casey: So we keep the data extremely small in that situation, and we have a really good confidence that we'll still be able to get that message out and get you home.
00:52:03 Casey: How freaking cool is that?
00:52:05 Casey: That it knows if you're in a car accident, like God forbid, that, oh, we've got to keep this, whatever the transmission is, crazy small because we may not have a long time to transmit it.
00:52:16 Casey: So I thought that was super neat.
00:52:17 John: If you're in a car accident or you're on a roller coaster.
00:52:20 John: Remember, we didn't cover that.
00:52:20 John: We didn't cover that story where people were getting activations on like, you know, amusement park rides.
00:52:25 John: And I feel for Apple there because I don't think that's malfunctioning.
00:52:28 John: I think a lot of the motions that happen to you when you're an amusement park ride are exactly the same as happen when you're in a car accident, especially when you're considering its motion happening to the phone, not necessarily to you.
00:52:39 John: So I'm not saying amusement park rides injure you, but it could be that in an actual car accident that injures you, your phone may experience exactly the same accelerations of exactly the same kind as it would in an amusement park ride if it was in your pocket.
00:52:52 John: So I don't know how you solve that problem, really.
00:52:54 John: And then, you know, the worst case scenario, you're in an accident in an amusement park ride.
00:53:00 John: So it's not like they're, you know, maybe they could help with their ML model or whatever, but I feel like it's not...
00:53:06 John: It's not doing anything wrong.
00:53:07 John: Like, in many cases, there is no difference.
00:53:09 John: And so I'm not quite sure how they solve that problem, but it seems like it might be an actual problem.
00:53:14 John: Maybe they'll have signs at amusement parks that say, you know, put your phone into airplane mode or don't bring your phone on this ride with you or something like that.
00:53:22 John: And in general, I would say don't bring your phone on a roller coaster.
00:53:25 John: You don't need to text anybody while you're on it.
00:53:27 John: And, you know, I remember last time I was at – was it Great American?
00:53:31 John: No, I think it was –
00:53:32 John: universal maybe in florida uh waiting for my family to get off a ride uh and it was like some looping roller coaster that went over the water and i'm standing by the railing looking at the water and down at the bottom of the water you could just see the lit up screens of a bunch of phones because we're going over the loops and they're like falling out of their purse falling out of their pocket uh yeah don't bring your your phone on the ride well what else are you supposed to do with it
00:53:55 John: it's in your pocket they have lockers they have lockers that you can put your stuff they cost like a thousand dollars a minute it's an amusement park i know but like would you rather your phone be rather your phone be lit up at the bottom it must have been since they were unlocked it must have been people like trying to take a video while they're on the roller coaster or something like that and there they are in the water good job
00:54:13 Casey: Anyway, real-time follow-up, I have no idea if this is 100% true or not, but according to 100 ghosts in the chat, 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:26 Casey: This is in the context of doing the demo.
00:54:27 Casey: So that makes me think it's what you and I expected, John, that the satellite portion was real.
00:54:31 Casey: You can fake that part, too.
00:54:32 John: Have you ever played a video game?
00:54:33 Casey: Oh, well, but why would they do that?
00:54:35 Casey: It makes the service look worse.
00:54:36 John: They want to give you an authentic experience of what it's really going to be like.
00:54:39 John: I just don't actually know if any actual communication with the satellite is involved.
00:54:44 John: Not that it really matters.
00:54:44 John: The whole point of the rehearsal is this is what you're going to be asked to do.
00:54:47 John: Maybe it'll say it passed.
00:54:48 John: You're going to have to point in a direction.
00:54:49 John: You're going to have to hold it there.
00:54:51 John: They can make the rehearsal be authentic.
00:54:53 Casey: Well, anyway, moving along, it is worth noting that in order to do this via or in order to send your location, you can do that manually.
00:55:06 Casey: It doesn't happen automatically, but you can manually go into the Find My app.
00:55:10 Casey: You can do this right now, but I won't let you send it.
00:55:12 Casey: Find my me.
00:55:14 Casey: and then my location via satellite.
00:55:16 Casey: And presumably, I didn't try this, but presumably this is where you would say, okay, who do you want to send it to?
00:55:20 Casey: But it says, generally speaking, not available, and then there's a learn more and a Chevron, and in the learn more, it says something along the lines of, hey, you're connected to cell and or Wi-Fi, so we're not going to bother with the satellite right now, which I thought was reasonable.
00:55:34 Casey: A couple other things from the Idrastine interview.
00:55:36 Casey: The medical ID is sent along with the SOS message, so what you're allergic to, how tall you are, how much you weigh, et cetera, et cetera.
00:55:43 Casey: which I thought was interesting.
00:55:45 Casey: Again, going back to Arun, this is a quote.
00:55:48 Casey: It was really important to use a satellite constellation that was fully mature and built out.
00:55:52 Casey: 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 Casey: So we had to make the necessary hardware modifications to allow us to optimize that communication back and forth and then build an entirely new communication stack that included a whole new waveform and all the layers above, a custom link layer, a custom networking layer, et cetera.
00:56:11 Casey: And they eventually came out and stated that Globalstar is the partner company.
00:56:16 Casey: And they said that that was in no small part because apparently it is unusual for satellite radio operators to have a single global frequency, but Globalstar does.
00:56:26 Casey: So whatever it is, you know, 1, 2, 3.5 megahertz or whatever, that is the case across the planet.
00:56:32 Casey: And Mike had said that they have Apple proprietary radio systems in each of Globalstar's ground stations to support this.
00:56:40 Casey: He also said, in summary, we have a general idea of the dead zones from cellular networks.
00:56:47 Casey: I'm sorry, I'm paraphrasing what he said.
00:56:49 Casey: They have a general idea of where the dead zones are from cellular networks.
00:56:54 Casey: And when they were building this all out and figuring out how to make it work, they were prioritizing, you know, how do we make these areas work?
00:57:00 Casey: So like, I don't know, the Shenandoah National Park here on the East Coast or one of the eight gazillion parks in California, they know these are the places that people are going to use this sort of thing.
00:57:07 Casey: How do we make it work the best there?
00:57:09 Casey: So I found all of this extremely fascinating.
00:57:12 Casey: I think the Justine video, which is about 20 minutes long, is worth your time.
00:57:16 Casey: I just think it's super cool.
00:57:18 Casey: All right.
00:57:19 Casey: Moving right along.
00:57:20 Casey: Mastodon.
00:57:23 Casey: Is that a thing?
00:57:24 Casey: Are we doing this?
00:57:25 John: It seems to maybe possibly be becoming a thing.
00:57:28 John: I had to look this up because... All right.
00:57:30 John: So we'll talk about Mastodon in a second, but it'll explain why I have lots of accounts in them.
00:57:35 John: But my accounts, I signed up for them for...
00:57:38 John: five years ago probably during the last twitter is doomed cycle right i mean we all went to app.net at one point and you know not went to but got signed up for app.net and at some point apparently in 2017 i signed up for tons of mastodon stuff so when the mastodon stuff came around i'm like i'm pretty sure i have a mastodon account turns out i have like six mastodon accounts which is part of the problem anyway continue what is mastodon
00:58:01 Casey: Right.
00:58:02 Casey: So I don't know if I'm the best person to give a great summary of Masked On, but the idea of Masked On is, you know, what if you had Twitter, but it wasn't as centralized?
00:58:11 Casey: It was kind of quasi-centralized.
00:58:14 Casey: And so you could join an instance.
00:58:17 Casey: What is there?
00:58:18 Casey: Is instance the term they use for it?
00:58:19 Casey: What do they call it?
00:58:20 Casey: Yeah, instance.
00:58:21 Casey: Okay.
00:58:21 Casey: You can join an instance, which is basically a server, where there are like-minded individuals.
00:58:27 Casey: Wow.
00:58:28 Casey: In theory.
00:58:29 Casey: You can join an instance.
00:58:30 Casey: Yeah.
00:58:30 John: It's federated.
00:58:32 John: You can join an instance.
00:58:34 Casey: No, hear me out for a second.
00:58:35 Casey: I think the theory, in my understanding anyway of the theory, is that you join a server or an instance that has like-minded individuals and then the administrators of that instance can block other instances from talking to you.
00:58:49 Casey: They can do all sorts of content moderation and so on and so forth.
00:58:53 Casey: So if you want to be in an instance where free speech is a thing, you can do that.
00:59:00 Casey: If you want to be in an instance where you mostly chat about programming stuff, you can do that.
00:59:04 Casey: But what's fascinating and interesting about Mastodon is that, like you said, it's federated.
00:59:08 Casey: So what that basically means is...
00:59:09 Casey: you can link up and follow other accounts from other instances.
00:59:15 Casey: So even though I might be on mastodon.social, which I have an account there, but I haven't posted anything, I might be on mastodon.social, but John might be in italianamericans.family or something like that.
00:59:27 John: John might be in seven other.
00:59:29 Casey: And seven other ones too.
00:59:31 Casey: So in theory, I think that's a kind of neat idea.
00:59:34 Casey: Yeah.
00:59:35 Casey: But in practice, I think it's kind of aesthetically icky.
00:59:40 Casey: And I just don't know how well it really works out, especially since you can, as the instance owner slash runner slash whatever, you can just up and decide, eh, I don't want to deal with this anymore.
00:59:52 Casey: And that has happened.
00:59:54 Casey: And I think the code of conduct or whatever amongst Mastodon administrators is you have to give like six months notice or something like that.
01:00:01 Casey: But really,
01:00:02 John: really you don't i don't think like what are they gonna do well let me describe some more of the cool features about this because last and get to the kicker which is like last week or maybe the week before marco was like like we're not gonna go to mass zombie and even if we did it doesn't matter because all they're gonna have all the same problems as twitter a lot of people said wait but
01:00:17 John: have you heard about maston's features like they're not going to have all the same problems as twitter because it has all these features you already talked about one case oh if you're on a server that server can decide which ones it wants to federate with it can just block an entire server filled with trolls right and so you don't have to deal with them and blah blah blah um and there's even more to it than that uh if an instance shuts down you can transfer basically your followers or your identity like redirect to a different
01:00:40 John: uh thing so it's not like oh i'm beholden to the owner of this thing so if they shut it down then i'm screwed and i lose everything uh no there's actually a feature where you can transfer your followers and your your account and your identity to another instance right and so it's made to be sort of resilient decentralized uh giving each instance owner the ability to form a community that works you know the way they want it to work
01:01:03 John: But I think having said all of that, and I'm sure there's other features that I'm even missing about this, having said all of that, like what is it, ActivityPub, the public API for this type of thing and everything, you do still have all the same problems as Twitter.
01:01:18 John: You just have them in miniature form repeated many different times.
01:01:22 John: What are the problems of Twitter?
01:01:24 John: The problems of Twitter are, how do we set the rules for this community?
01:01:28 John: How do we decide what behavior is and isn't allowed?
01:01:30 John: How do we decide which other federated instance to block and to not block?
01:01:34 John: How do we decide when to kick somebody off?
01:01:36 John: How do we make money to keep this service running?
01:01:39 John: Does making that money make it an unpleasant place for people to be, right?
01:01:42 John: It's all exactly the same problems as Twitter.
01:01:45 John: The good thing about it is that you get many, many chances to solve those.
01:01:48 John: So instead of just having one chance with one stupid Elon Musk running the thing or whatever...
01:01:52 John: you get 50 chances but that's also the bad thing it's why i have so many accounts i want to sign up for mastathon hmm which instance should i choose uh the instance where other people i know are oh but that doesn't matter but yeah well it it kind of matters because you can have a local feed but like if an instance is like oh it's the place there's a community with a set of rules i want to go with my friends are because i bet that set of rules is good
01:02:18 John: Well, but it also could just be that all your friends went to the most popular instance.
01:02:23 John: And it turns out the most popular instance is run by a megalomaniac who reads all your DMs.
01:02:27 John: Because by the way, the owner of the instance can read all your stuff, right?
01:02:31 John: It's like, you don't know that, right?
01:02:33 John: So maybe that's the wrong instance.
01:02:34 John: Maybe I should go to this instance.
01:02:35 John: Oh, that instance was run by somebody as a hobby and they shut it down two years ago, right?
01:02:40 John: When I went in to re-sign into my Mastodon things, one of them was totally gone because the thing was shut down.
01:02:47 John: One of them had a big red banner at the top said, warning, this thing is shutting down imminently.
01:02:51 John: One of them I forgot my password to forever, so that one's gone, right?
01:02:55 John: You know, I don't know why it wasn't in any of my key chains or something, or maybe I just never knew the password and didn't save it.
01:03:00 John: And the quote-unquote popular one, mastodon.social, I couldn't get my username on, which frustrates me to no end, right?
01:03:07 John: And then I have like three other ones, right?
01:03:10 John: And so I'm shuffling the people out.
01:03:11 John: But anyway...
01:03:13 John: It is better than Twitter because it is less centralized.
01:03:17 John: But all that means is that all these instances now have this trial by fire of, hey, you think it's so easy to run Twitter?
01:03:24 John: You figure out how to do it and figure out how to do it.
01:03:27 John: Figure out how to keep the lights on, figure out how to make enough money to run the instance.
01:03:30 John: If your thing becomes popular and you're not making any money, how much do you think it's going to cost you to run Mastodon for all these people?
01:03:35 John: And do all the federated activity.
01:03:37 John: And then, by the way, if a bunch of Nazis come into your server, you're going to spend your whole day fighting them off and then spam bots come and then blah, blah, blah.
01:03:43 John: It's like if you become like the most successful big instance, oh, Mastodon.social, it's super popular.
01:03:48 John: It's got millions of people.
01:03:49 John: Well, that's like, you know, days or weeks away from like facing the same problems that Twitter faced when it got, you know, a million or so people.
01:03:56 John: All right.
01:03:57 John: So I'm not poo-pooing these things.
01:03:58 John: I think it is better than having one publicly or privately held company that is the centralized version of all of this.
01:04:06 John: But I think I'm not going to say, oh, it's not going to help and it's not going to save us because if Twitter goes away, Mastodon is better than nothing, I feel like, and it is very much Twitter-like.
01:04:16 John: but boy, they have an uphill climb.
01:04:18 John: They're going to have to go through all the same thing.
01:04:19 John: Their instances are going to come and go.
01:04:21 John: Uh, they're going to have to work through all sorts of different rules.
01:04:24 John: Hopefully there'll be enough of them trying these experiments, but there'll be a lot of wreckage from that of like, Oh, this server screwed up and this was invaded by Nazis.
01:04:31 John: And these, this, they set these rules here and this one doesn't allow cursing.
01:04:35 John: And you know, like there's just going to be a lot of that churn going on and it's just exhausting to keep up with that.
01:04:40 John: So that's probably going to keep it from ever being popular with anybody except for
01:04:43 John: real nerdy people and then all the years of stuff that's happened on twitter the api all the clients that are built around i know everyone just uses the official client but like you can make third-party mess on clients probably but right now there's the official client in the web ui and they're better than twitter was in the beginning but they're not as good as the best of the best twitter interfaces that exist today how could they be they just haven't had time and money uh to mature so you know i'm
01:05:10 John: It's not that I'm pessimistic about Macedon, but I just don't, the only problem Macedon solves is Elon Musk.
01:05:15 John: And it's, granted, that's a big problem.
01:05:17 John: Or if, you know, previously the only problem it solves is Twitter's fairly inept management, right?
01:05:23 John: But all the other problems are there.
01:05:25 John: They're just now spread into little miniature instances of those problems.
01:05:29 John: And then people are sprinkled over those instances like, fend for yourselves, figure it out.
01:05:34 John: Hope you land on something with a good moderator.
01:05:35 John: Don't say anything in DMs that you don't want anybody to see.
01:05:40 John: I don't know.
01:05:41 John: I don't relish it.
01:05:42 John: Anyway, I'm on all sorts of Macedon things.
01:05:44 John: I still do want to get my last name and Macedon on social, but I'm working on it.
01:05:48 Casey: So on Mastodon.social, they have an about page, which I don't know if you can see it if you're not logged in, but it's Mastodon.social slash about.
01:05:55 Casey: There's a section, moderated servers, and there's a list of just eyeballing it, maybe a couple hundred, maybe 10 or 20 of which are limited.
01:06:03 Casey: And then there's a bunch that are considered suspended.
01:06:07 Casey: As I'm scrolling this list, one of the servers that are instances that is limited is, I kid you not, share.
01:06:14 Casey: And FYI, it's limited because of harassment, you don't say.
01:06:20 Casey: Also, is Elon the president of the shitposter club?
01:06:25 Casey: Because he certainly thinks he is.
01:06:28 John: Having instances, that is the one good thing I'm asking about is these tiny tyrants who run the instances.
01:06:32 John: Yeah.
01:06:32 John: are able they are able to do what big companies thus far have not been doing which is like hey if someone's being a jerk in your instance just boot them out you don't have to have this complicated policy there's not going to be any new york times story about how you booted out the jerks it's your it's like having an irc server back in the day like you know or whatever whatever like bbs like if you run the bbs and someone's a jerk you boot them off and there's no big story about it right because it's your thing and you get to run it and you
01:06:58 John: But what that means is that every instance is at the whim of the, you know, people who own that instance.
01:07:03 John: And how well do you know the people who own instances?
01:07:06 John: Right now, there isn't enough knowledge for, like, the general public of, like, is this a good instance to be on or a bad one?
01:07:13 John: It's like, well, you'll find out.
01:07:14 John: Again, just like BBSs or IRC servers, you'll find out if the admin is a jerk or not eventually.
01:07:19 John: You know, if this ball keeps rolling, there should eventually be public knowledge about which ones are...
01:07:26 John: which ones are reasonably you know safe nice places to be but like i said all that does is fast forward you to like twitter circa 2007 or eight or nine i guess uh where it's like okay now we found a nice pleasant place to be and now here come all the problems that twitter encountered how are you going to deal with them person who runs this thing in your spare time good luck
01:07:49 Casey: I don't know.
01:07:52 Casey: I really feel like I'm turning into old man who shouts at clouds because I don't want to be pessimistic about everything.
01:07:59 Casey: But I just don't love what I've seen so far on Mastodon.
01:08:03 Casey: I think it seems like Linux, right?
01:08:10 Casey: I'm sorry.
01:08:10 Casey: I'm sorry.
01:08:12 Casey: Linux is way better.
01:08:14 Casey: Well, fair.
01:08:15 Casey: It's like the crummy open source version of something that everyone likes.
01:08:19 Casey: Right.
01:08:19 Casey: Which is impressive.
01:08:21 John: It's not that crummy.
01:08:22 John: It's actually I mean, again, considering I signed up five years ago, it's pretty feature rich.
01:08:26 John: And the Web UI does not look like does not look like it was just thrown together in a weekend.
01:08:31 John: Right.
01:08:31 John: It's not great.
01:08:32 John: And it's overly confusing and overly complicated and, you know, could be improved or whatever.
01:08:36 John: But like.
01:08:37 John: I'm impressed with how many features it's gotten in the five years that I've been ignoring it.
01:08:42 John: And I get what you're getting at in that it's like, you know, again, it's a piece of open source software.
01:08:48 John: I mean, the worst thing you say about it is that they're all kind of running the same software.
01:08:51 John: So, you know, whoever modifies that software and updates it has the ability to make our lives better or worse.
01:08:56 John: And how does that work?
01:08:57 John: But, you know, for people thinking it's going to be like, you know, an IRC type thing, it is more pleasant than that.
01:09:04 Casey: It is.
01:09:04 Casey: It is for sure.
01:09:05 Marco: Yes.
01:09:06 Marco: I mean, to me, the problem with Mastodon is not anything about its features.
01:09:12 Marco: Suppose you get over all the hurdles.
01:09:15 Marco: Suppose you choose a server instance or whatever to host yourself, which will host you for some reason indefinitely into the future without problems.
01:09:25 Marco: Lol.
01:09:26 Marco: Okay.
01:09:27 Marco: So suppose you get past that.
01:09:28 Marco: And suppose that some of your friends get past it too and they somehow find you or create accounts or whatever.
01:09:36 Marco: It's just really hard to juggle two very similar social networks where you don't have the same friends on both.
01:09:44 Marco: You don't have any good way to get all of the friends on one onto the other.
01:09:48 Marco: And it's kind of hard to know, like, well, what do I post where?
01:09:52 Marco: Now...
01:09:53 Marco: If you have, say, topic-specific Mastodon instances, like I was on one for Overcast.
01:09:59 Marco: There was like a podcast kind of standardized discussion kind of thing.
01:10:03 Marco: But that was like, you know, topic-specific.
01:10:06 Marco: For just like general use...
01:10:08 Marco: What do I do with two Twitter-like services?
01:10:12 Marco: My entire usage pattern of Twitter is through these apps.
01:10:17 Marco: I have TweetBot on the Mac.
01:10:19 Marco: I have TweetBot on the phone.
01:10:20 Marco: There's other apps like Twitterific that are great.
01:10:22 Marco: Mastodon...
01:10:23 Marco: has an app and I used it briefly on my phone last night I'm not aware of a Mac app besides the web app and the web app and you know web apps for this kind of stuff just suck compared to native apps the native apps are way better and so like on my phone I tried the Macedon app and because it kind of looks like Twitter and kind of works like Twitter you expect it to work like Twitter and it's a bit uncanny valley-ish and then when you go to do something that works in your Twitter app of choice and it doesn't work at all or the same way Macedon it just kind of feels broken
01:10:53 Marco: And I can post stuff there, but do I post the same thing?
01:10:57 Marco: Do I cross-post?
01:10:59 Marco: Do I have to look at responses from both?
01:11:01 Marco: In the ideal case, what would get this off the ground is one app, say TweetBot or Twitterific, where you could attach your Twitter account and a Macedon account or two and view all the replies in one app and have everything work the same way.
01:11:21 Casey: Can you imagine if it had like this?
01:11:23 Casey: I don't know.
01:11:23 Casey: What if your timeline was like altogether?
01:11:25 Casey: If it was like, I don't know, you, you, you.
01:11:27 Casey: Oh, oh, what if it was unified?
01:11:29 John: I bet you're making a joke.
01:11:31 John: But like that, like the inability to browse Mastodon with a unified timeline is actually a barrier for adoption for me personally, because that's how I like what Marco saying.
01:11:41 John: Like if you're used to doing it a certain way in Twitter, since this is so similar.
01:11:44 John: there are habits that you're formed and you're like, well, I don't want to use Mastodon.
01:11:47 John: It doesn't let me view it the way I'm used to viewing it.
01:11:51 John: And obviously the solution is that, well, if Twitter implodes, Mastodon is starting to look a lot better and you don't have to have this question anymore because it is so Twitter-like and it is the most Twitter-like of the competing things that if Twitter literally does implode or actually goes down and they can't bring it back up or whatever, it turns into something terrible that everybody leaves, Mastodon is there waiting for it.
01:12:10 John: But I feel like...
01:12:12 John: the centralization of twitter the like people can sign up for it but they know where to go they go to twitter.com right the the single unified namespace and you can say well you know mess on a unified namespace too it just has an extra ad and an address in it just like an email address not a big deal i think i think it
01:12:27 John: is a big deal especially since when instances go down you might not necessarily be able to get the same username elsewhere stable urls tweets for all these years have had stable urls not so with mastodon things because if that instance goes down and disappears from the web that url that points that instance is not going to work anymore right it's it's kind of why like this uh this jack dorsey you know
01:12:48 John: Wankery project, whatever the project blue sky thing, which is like, let's build Twitter, but let's do it with open standards and decentralized and blah, blah, blah.
01:12:56 John: If you look at the technology and ideas behind project blue sky, we'll put a link in the show notes.
01:13:00 John: It's blue blue sky web that XYZ that the technology and the ideas I think are really good.
01:13:06 John: I don't think it will ever actually come to anything, which is the problem.
01:13:09 John: But like what you want is the best of both worlds.
01:13:11 John: You want the clarity and single unified namespace and stable URLs of Twitter, but without it being owned and controlled by a single private company.
01:13:20 John: And that is a tall order.
01:13:22 John: We kind of already have that with blogs and RSS.
01:13:25 John: It was straightforward.
01:13:27 John: URLs were stable as they wanted to be.
01:13:30 John: You presumably owned and controlled your own blog.
01:13:32 John: And if you're a hosting company went down, you can move your blog elsewhere or whatever.
01:13:35 John: But that was like a...
01:13:36 John: a ideal world for computer nerds who know how to make and run and want to make and run their own blog right uh and what that rapidly turned into is oh my blog is on blogger and then eventually blogger falls out of favor i'm on live journal i'm on tumblr and it's just like these big companies that were helping other people do this thing that only nerds could do before
01:13:57 John: And Twitter's just solved that problem every day.
01:14:00 John: We're one company, you go to one place, we're all talked together in one big giant thing.
01:14:04 John: And, you know, and that's why Marco said two shows ago, it would be ideal if I could just continue in terms of the simplicity of the user experience, but not ideal in terms of the consequences.
01:14:13 John: Because as we've seen, the person who controls Twitter can really screw things up for a lot of people.
01:14:17 John: And both pre-Elon and post-Elon, we saw that amply demonstrated, right?
01:14:22 John: So I'm not sure what the solution is, but the blue sky stuff,
01:14:25 John: looks really appealing to me if something like that could ever actually be created and gotten off the ground and if they worked out all the problems of like how do i make it simple for regular people to sign up while still not having it eventually be owned and controlled by a single company because kind of like blogging you're like a blogging it's free it's not owned and controlled by a single company but once you get the regular people in there who don't want to write their own servers or you know run their own servers their own cms's you get necessarily these companies that
01:14:50 John: You know, I don't know if Ben Thompson will call them aggregators, but like, hey, we're a big company.
01:14:56 John: You don't want to have to worry about running a blog.
01:14:59 John: We'll run it for you.
01:15:00 John: That's why I feel like, you know, I mean, arguably frequent sponsor Squarespace encouraging you to get your own domain name.
01:15:07 John: Kind of helps us hedge against that because in theory, if Squarespace goes away or becomes evil or starts charging you too much money, you can just pick up your website because it's at your own domain name and put it someplace else.
01:15:17 John: But now we're back to techie stuff again, right?
01:15:20 John: And what you'd be looking for is another company like Squarespace that solves this problem for you.
01:15:24 John: And that's why you get these big consolidations of a giant company where most people have their...
01:15:29 John: twitter replacement blue sky thing and then the nerds have their own individual twitter replacement same thing with mastodon you can run your mastodon since you can get a mastodon address that is a domain that you control but that is definitely a tech nerdy thing and most people won't do that so hard problems to solve uh arguably running twitter not like an idiot is an easier problem to solve than everything we've discussed here because twitter had improved over the years learned some hard lessons and was on a path that was
01:15:59 John: ever so slowly getting slightly better over time.
01:16:03 John: If someone could have just taken over Twitter and bent that line up to get better faster, boy, that would have been, you know, much better than where we are now, which is bending that line way, way downward real fast.
01:16:15 Marco: Yeah, I just, I don't see...
01:16:18 Marco: mastodon itself and maybe it's possible for something else to have a better story here i don't see mastodon having the user experience to really ever get mass traction and part of it is because you know of the weird federation stuff um and then the weird double at usernames and everything there's a whole bunch there that's just very you know normal person hostile um the instability the instability of addresses and urls it's a real problem
01:16:44 Marco: But I think ultimately, what's going to take off, if anything, to replace Twitter is going to be another centralized company that's going to have a really nice app and be accessible everywhere and be really easy for everyone to get into.
01:16:59 Marco: And that's what's going to work.
01:17:01 Marco: And Mastodon, while I respect what they're trying to do, and I like a lot of the ideals behind it, the implementation and the user experience so far is just so regular person hostile.
01:17:13 Marco: And I don't see that meaningfully changing.
01:17:17 Marco: What might happen is one Mastodon host might get really popular and then you just have a different centralized company.
01:17:26 Marco: That might happen.
01:17:27 Marco: But the whole thing with like, oh, well, you can follow me over here.
01:17:31 Marco: It's like, yeah, you can make your moonshine in your bathtub, but no one's going to really do that.
01:17:37 Marco: It's this whole nerd dream where everyone's going to have their own domains and their own URLs.
01:17:42 Marco: And
01:17:43 Marco: over and over again we just the industry just proves that's not what people ever want to do and and at least a lot of people like you know we can get nerds like us and business owners and stuff to do it but like to get most of the public in to something like this it has to be way simpler and way easier there can't be 16 different answers there can't be a question that poses 16 different options of like all right well first before you even use this thing what
01:18:06 Marco: Where do you want to make your account?
01:18:08 Marco: You can't even ask people that.
01:18:10 Marco: It shouldn't be a question.
01:18:12 Marco: You should instantly start up with like, we have an amazing app that works really well and that does everything you want it to do.
01:18:18 Marco: That's like table stakes for a social network.
01:18:20 Marco: You have to have apps on every major platform that have to be great and they have to be usable and they have to have features people want.
01:18:28 Marco: And here's the thing.
01:18:29 Marco: If you're going to mimic Twitter in what your product is,
01:18:33 Marco: you have to support a lot of things that Twitter supports and they have to work the same way.
01:18:39 Marco: If you're going to make something that looks like Twitter and kind of acts like Twitter, but then doesn't work like Twitter, you're going to anger everybody.
01:18:47 Marco: Like I was trying to read a thread, like somebody, I was poking on Mastodon in the app and somebody posted a thread with a little thread emoji to indicate this is a thread.
01:18:55 Marco: And for the life of me, I could not figure out how to see the replies to that thread.
01:19:00 Marco: I tried, like, you know, tapping into that one message or swiping right or whatever, and I got to show me other replies, but nowhere in the list was, like, the next post in that thread.
01:19:11 Marco: And again, it was just some little difference that this is a small behavioral paper cut that if I'm going to move from Twitter, I can't be hitting paper cuts like that because I am going to expect this thing to work like Twitter.
01:19:26 Marco: Now, if it's not going to work like Twitter, it should be even more different.
01:19:31 Marco: I don't get that feeling on Tumblr because Tumblr is way more different from Twitter than Mastodon is.
01:19:37 Marco: And so Tumblr is its own thing.
01:19:39 Marco: And so I can go to Tumblr and while it is very different from Twitter...
01:19:43 Marco: It doesn't frustrate me in the same way because it's its own thing.
01:19:48 Marco: It's not trying to be Twitter.
01:19:49 Marco: Whereas Mastodon is basically trying to be Twitter, and so it has to copy it really well and have all those features nailed down, all those little details nailed down.
01:19:59 Marco: And Twitter looks like a simple product, but it's not.
01:20:03 Marco: And that's a hard thing to totally match.
01:20:07 Marco: And I think at this point, anything that's different from Twitter, you know, Madison has been around long enough that it's probably a choice, not a just we haven't gotten to it yet kind of thing.
01:20:16 Marco: And so that's going to hurt them.
01:20:18 Marco: And that's going to hurt them with adoption for new people who are in there now kicking the tires because we're all super mad at Elon.
01:20:23 Marco: Like they have a big rush of people checking it out right now.
01:20:27 Marco: But I don't see how that sticks for so many reasons.
01:20:30 Marco: So I don't know.
01:20:31 Marco: I hope I'm wrong.
01:20:32 John: They had a big rush of people five years ago when I signed up too.
01:20:34 John: I mean, I think there's been multiple rushes on Mastodon over the course of time.
01:20:38 John: Like one way around that is you could be better, right?
01:20:40 John: You know, you could be different, but if you're different, you have to be better enough so that people are willing to learn your new thing and accept the betterness of it because there is advantage to learning the new thing.
01:20:49 John: And also like if Twitter goes away, people will eventually learn however Mastodon works.
01:20:52 John: And then you get into, okay, but how does Mastodon work?
01:20:54 John: Does it work in a good way?
01:20:55 John: One example that I saw, I don't even know if this is true because it seems so ridiculous that I have a hard time believing it and I haven't tested it myself, but I saw somebody say,
01:21:02 John: Uh, and people can correct me and follow up that if you are doing the equivalent of DMing direct messaging between you and another person on Mastodon and you at mention another person, they are added to the DM conversation.
01:21:14 John: Like they get sucked into the DM conversation.
01:21:16 John: So you say something nasty about somebody whole conversation.
01:21:19 Casey: Yeah.
01:21:19 Casey: Yeah.
01:21:20 Casey: It's yeah.
01:21:20 John: And they get to see everything you said before you mentioned them as well.
01:21:23 John: Right.
01:21:23 John: That is a terrible that's a terrible misfeature.
01:21:26 John: Like that's just, you know, bad product design.
01:21:27 John: Right.
01:21:27 John: And there's always going to be misfeatures in products.
01:21:30 John: But, you know, that's why the maturity of Twitter platform is valuable because they've, you know.
01:21:35 John: I'm going to say they learned hard lessons.
01:21:36 John: They did.
01:21:37 John: But also, a lot of the features that are in Twitter were sort of pioneered by its users.
01:21:41 John: The use of at mentions, retweets, pioneered by its users and the third-party developers, right?
01:21:47 John: And that process hasn't run long enough on Mastodon for it to work these things out.
01:21:52 John: It also helps that Twitter was a single company, that they could hire product designers and work on it, whereas Mastodon is more distributed.
01:21:58 John: and you know open source project or whatever like and i feel like mastodon is close like to solve the if you wanted to solve the problems that i was citing before of like unstable urls and uh you know not a single namespace or whatever i know i know people are going to say web3 and crypto but please try to keep those words out of your mind when you listen to me say this
01:22:16 John: What you basically need is a distributed database that keeps track of.
01:22:21 John: So, like, imagine setting up, you know, imagine downloading a client and you downloaded your whatever, Macedon 2 client or whatever.
01:22:29 John: And in the client is it comes with a set of configurable servers that are like, you know.
01:22:33 John: I don't know what the equivalent is, basically index servers that that run on the Internet and keep track of where all the Maston instances and runs essentially the central namespace.
01:22:43 John: Right.
01:22:44 John: And those will change over time, kind of like the root DNS things change.
01:22:48 John: People don't know that their web browsers and their operating systems come with an idea of what the root DNS servers are or come with the idea of the things that are trustable that, you know, the SSL root stuff.
01:22:57 John: That's built into all of our software.
01:22:59 John: No users ever need to configure it, but it is also resilient and decentralized.
01:23:03 John: Like how does DNS work?
01:23:04 John: How does the SSL signing certificates work?
01:23:07 John: That stuff changes over time and is maintained not by just Apple or just Microsoft or just Amazon,
01:23:14 John: But users also don't have to deal with it.
01:23:16 John: Now it's like, how do I configure the DNS roots?
01:23:20 John: How do I configure the trusted root certificates?
01:23:22 John: Like pretty much users don't have to deal with that.
01:23:25 John: Their phone just connects through SSL or TLS or whatever, right?
01:23:29 John: But that is a decentralized system.
01:23:31 John: And I would point out, none of that uses crypto.
01:23:33 John: You can have a shared database among people and like, but what if someone poisons it?
01:23:38 John: Like, yeah, you get a bunch of people who trust each other through like human relationships and legal contracts.
01:23:43 John: And you can get people to work on a distributed database without, you know, burning the planet down.
01:23:48 John: Anyway, I'm going off on a crypto rant.
01:23:50 John: The whole point is a distributed database.
01:23:53 John: Yeah.
01:23:53 John: Right.
01:23:54 John: Right.
01:24:00 John: Right.
01:24:10 John: that when you download the client, you don't have to know any of that's going on behind the scenes, but it is resilient against any one company failing.
01:24:17 John: And it can implement a global namespace.
01:24:19 John: Hey, DNS, a global namespace.
01:24:21 John: It can implement a global namespace to give you unstable URLs.
01:24:24 John: It's like, oh, it's stable URL.
01:24:26 John: How does this URL work?
01:24:27 John: Well, when you look up that, when you click on that URL, you know, we distribute the IP address that responds to that URL such that some server will answer on it in your locality and get you the answer to, you know, like...
01:24:39 John: there it's complicated i'm not saying it's easy there's a reason no one has done it and like how do you how do you incentivize people to do that like because they're not going to do it unless there's money to be made right and that's why the blue sky thing is kind of like i think it was jack dorsey like just feeling bad about making twitter a private company and starting this project to fix it or whatever and it's probably going to go nowhere but that's sort of my hope for like the
01:25:00 John: distant future again assuming we're not all dead from the water wars uh where we we come up with a a real better solution to this that gives us the value that we got out of twitter without any of the baggage long after you know twitter 2.0 or 3.0 or 4.0 have burned to the ground
01:25:16 Marco: See, I feel like even even that distributed ID thing, that is a pipe dream of ever becoming like a significant thing, because here's what would happen.
01:25:25 Marco: We've seen this pattern over and over again.
01:25:26 Marco: Here's what always happens.
01:25:27 Marco: I could go in there and get, you know, Marco.org as my ID.
01:25:30 Marco: And it's like, all right, this is me.
01:25:31 Marco: This is verified me.
01:25:33 Marco: And I have some crypto signature that says that no, no crypto, no crypto.
01:25:37 John: And you just get you just get at Marco or at Marco Armin.
01:25:39 John: Like, it doesn't have to be any more complicated than Twitter.
01:25:41 Marco: okay but but then like what's gonna happen that's gonna be too hard for most people to do and so someone's gonna come up with you know ids.lol slash marco and then they're gonna say hey you can come sign up at ids.lol and get whatever you want what's the what's the too hard part
01:25:57 Marco: The setting up your own DNS entry or whatever.
01:26:01 John: You would just download the app.
01:26:02 John: The user experience would be exactly like Twitter.
01:26:04 John: You download an app, and you sign up, and you enter a username and see if it's taken, and you make a password.
01:26:08 John: That's it.
01:26:09 John: That's the user experience.
01:26:10 Marco: I don't know.
01:26:11 Marco: See, but without something central, there are so many potential pitfalls of abuse, spam, fraud...
01:26:18 John: just like there is in dns and tls root certificates this is not i'm not saying this is easy to do but it has been done without crypto a shared database among parties that ostensibly don't trust each other building trust in ways that do not involve solving sudokus i don't know that to me like that's a very different problem space like having having you know how many root certificates are there and i don't know i've i don't know maybe like a hundred
01:26:43 John: no i'm not saying it's easy 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 just like the number of root certificates 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 and you know authoritarian authoritarian countries have their own weird dns things where they're screwing stuff up but but if dns didn't work nothing would work on the internet and
01:27:07 John: people what you're doing mass on us you're trying to piggyback on dns to some degree but that's like what i'm saying is a system that is like dns but is not dns for identity for a service like twitter uh and all the crypto people are screaming their bloody heads off right now it's like this is exactly what crypto should be used for again
01:27:23 Marco: No, they're all still crying because all their money got stolen slash burned to the ground or whatever.
01:27:27 John: It really couldn't have happened to better people.
01:27:32 John: Yeah, exactly.
01:27:34 John: There's just so many ridiculous downsides to that.
01:27:37 John: We did this whenever DNS was made in the 60s, 70s.
01:27:42 John: We have a proof of concept that is super important to the underpinnings of the internet.
01:27:45 John: Anything you can say that you're going to say, that's why we need crypto, I would just keep pointing at DNS and say, they didn't need crypto.
01:27:51 John: but but how do they well why don't you ask them why don't you ask them how it works but what about bad actors but what about dns poisoning but what about china it's like yeah those are all problems solvable without destroying the world oh god i'm sorry i'm sorry crypto people i'm not yeah i'm not
01:28:06 Casey: Before we move on, I think it's worth, and I don't mean to start a whole other tangent, but I think it's worth calling out our friend Matt and Reese and micro.blog, which has different trade-offs in Mastodon and is different in a lot of ways.
01:28:20 Casey: But one of the things that I think is very interesting about microblog is that it is really intended to be clear that it's your content and it's your stuff.
01:28:32 Casey: Now, granted, it's stored in
01:28:33 Casey: on the micro blog, you know, servers and so on.
01:28:36 Casey: But like my micro blog, I have a micro blog account and it's at lists.
01:28:42 Casey: But if you go to lists.micro.blog, you know, you can find me there.
01:28:47 Casey: And you can also, if I remember right, micro.caseylist.com,
01:28:50 Casey: I think yes.
01:28:51 Casey: So that is all my stuff.
01:28:54 Casey: And when you go to micro.casealist.com, it doesn't redirect.
01:28:56 Casey: It presents as micro.casealist.com.
01:29:00 Casey: And I think it's really important, Amanda, that it's clear that this is your stuff and it lives in kind of your world.
01:29:07 Casey: And you can tweak it very Tumblr-esque.
01:29:09 Casey: You can tweak it to your heart's content.
01:29:10 Casey: And actually, in a lot of ways, it's very similar to Tumblr, but oriented specifically around microblogging.
01:29:16 Casey: And again, a different set of trade-offs.
01:29:18 Casey: We need to go into the ins and outs of it right now.
01:29:20 Casey: And I'm still trying to figure out exactly how I would verbalize the trade-offs between the two.
01:29:23 Casey: But it is worth pointing out.
01:29:26 Casey: And, you know, microblog is, from what I can tell, a really, really chill place right now.
01:29:31 Casey: I think in part because it costs money to join it.
01:29:34 Casey: And there's something to be said for that.
01:29:35 Casey: So it might be worth taking a look there as well.
01:29:38 Casey: And they also...
01:29:39 Casey: My understanding of this is very fuzzy, but you can, I guess, present as a Mastodon-friendly account using ActivityPub.
01:29:48 Casey: You can set up a Mastodon username or something like that, and then that would allow Mastodon users to follow you, and I think...
01:29:54 Casey: think you can follow masked on users and microblog again i'm very fuzzy on all this but there's some amount of interoperability between the two and it's it's worth checking out again manton's a friend of ours uh gene mcdonald who i think is uh their community manager i think is her title uh a dear friend of ours so um i'm biased but it's worth looking at
01:30:14 Marco: yeah and this is like i i the idea of the activity pub being like the glue that can that can actually glue together all these services that's very promising i just i hope i hope that kind of thing really takes off like i hope that i'm totally wrong that you know this kind of stuff will be too hard for people and i hope that in a few years we're all talking on different services in a federated world using activity pub to communicate between them and
01:30:40 Marco: Most of them are Mastodon.
01:30:41 Marco: Some of them are microblogging.
01:30:43 Marco: I hope that world comes to be.
01:30:44 Marco: That would be way better than being all centralized under Twitter in most ways.
01:30:48 Marco: But I just don't think it's going to turn out that way.
01:30:53 Marco: The world has shown time and time again that people really value the conveniences and features of centralized massive services.
01:31:01 Marco: And I hope I'm wrong.
01:31:03 Marco: World proved me wrong here, but I wouldn't bet on it.
01:31:07 John: Yeah, that's what I was saying.
01:31:08 John: Like if you have to provide the same user experience as Twitter, I'm just saying there's a technical way to do that so that the experience is the same, but the underpinnings are not controlled by a single company.
01:31:16 John: That's the trick.
01:31:16 John: Because if you do anything that is actually federated, like just even email, you inevitably end up with big companies controlling most people on the service.
01:31:26 John: Most people's email addresses are like Hotmail, Gmail, Yahoo, Reddit, right?
01:31:30 John: and that's despite the fact that email is totally federated you could run your own email server whatever like the world changed in such a way that it's basically a it's basically impossible to successfully run your own email server which we talked about in the past right and b most people who aren't tech nerds end up at one of these big companies right that's inevitable with any kind of thing that is technically complicated so the only way to solve that problem to actually be decentralized but also have the user experience of centralized is with something like i was describing which is
01:31:57 John: Very difficult to pull off because, you know, we know it can be done, but can it be done in today's environment?
01:32:03 John: Can it be done in the face of, you know, where actual money gets spent?
01:32:07 John: VC companies are not going to fund that because how do you make money from it?
01:32:09 John: They want to.
01:32:10 John: They want the control.
01:32:11 John: They want the information.
01:32:12 John: Right.
01:32:12 John: And there are even even if you do that, there are more problems past that.
01:32:16 John: Twitter search, centralized search, is much more difficult to do in the federated world.
01:32:21 John: You end up having to fall all the way back to Google.
01:32:22 John: But you say, that's fine.
01:32:23 John: I'll just use Google.
01:32:24 John: But, you know, centralization of Google as a power on the web is itself a problem.
01:32:28 John: Right.
01:32:29 John: But trying to do like real time, the type of real time, like live searches and looking at like, you know.
01:32:37 John: Even just hashtags or anything else like stuff that Twitter is able to pull off because they are a centralized private company is so much harder to do in a federated world and is equally hard to do in a world that's trying to look centralized but isn't because looking centralized is half the battle.
01:32:52 John: Then you have to, you know.
01:32:54 John: The fact that you aren't means you have to now implement these features.
01:32:56 John: Try implementing real-time search such that when somebody tweets that anyone in the world can see that tweet in their search moments later in a world where things under the covers are distributed as DNS.
01:33:05 John: If you've played anything with DNS, you know its strength is not making changes visible to everybody very quickly.
01:33:11 John: Right.
01:33:12 John: That TTL is very often a lie and TTL exists for a reason.
01:33:16 John: Like, you know, DNS is not the solution to this.
01:33:18 John: It is just an example of that type of thing.
01:33:20 John: And that's, you know, and the fact that DNS is there, it's why people piggyback on DNS so much.
01:33:26 John: I mean, obviously email does, but even things like Java with the, you know, and that everyone else copied with a reverse DNS naming scheme or whatever.
01:33:33 John: It's like, I have a big problem.
01:33:35 John: I need namespaces for classes in my programming languages.
01:33:38 John: I need namespaces for bundle identifiers for my apps.
01:33:41 John: That problem is too big for me to solve.
01:33:42 John: Can I piggyback on DNS?
01:33:44 John: Done.
01:33:46 John: And we just make it the convention, again, not enforced by crypto, that it has to be com.mycompany.myappname, com.mycompany.mycooljavaclass, right?
01:33:56 John: And then we've just pushed off that problem onto DNS.
01:33:58 John: You cannot push off the Twitter problem onto DNS, but it shows how much value there is that we're able to take this
01:34:04 John: janky mostly unencrypted completely insecure scary designed in the 70s thing that underpins the entire internet because it is so essential to have something like that and i just hope someday in my life there is another thing that is like dns but better modernized but equally decentralized that can underpin a you know the pipe dream of every company you know in our lifetimes you know especially microsoft of centralized identity on the internet that is not tied to a single company
01:34:34 John: I forget what it was called, but Microsoft first took a run at that and everybody freaked out.
01:34:37 John: But now everybody takes a little run at it and then runs away screaming.
01:34:40 John: But someday it might happen.
01:34:43 Marco: We are brought to you this week by Squarespace, the all-in-one platform for building your brand and growing your business online.
01:34:50 Marco: Stand out with a beautiful website, engage with your audience, and sell anything.
01:34:53 Marco: Your products, content you create, even your time.
01:34:56 Marco: All of this and so much more is not only possible with a Squarespace website, but it's super easy.
01:35:02 Marco: And you don't have to be a programmer or a server admin or know anything about how to host storefronts or anything like that.
01:35:08 Marco: They take care of all of that for you.
01:35:10 Marco: It's just super easy to use.
01:35:11 Marco: So you focus on your site or your business, and they have so many business features these days.
01:35:17 Marco: So of course, the basics, you have storefronts.
01:35:19 Marco: You can sell products, digital or physical goods.
01:35:22 Marco: They have everything you need built in, you know, shipping calculation, tax calculation, inventory management, whatever you might need for selling stuff, they have it.
01:35:30 Marco: They also allow you to have selling things like your time.
01:35:33 Marco: If you're maybe a consultant or a trainer and you want to sell time slots, you can do that with Squarespace too.
01:35:39 Marco: Maybe you're a content creator and you want to have a member area and that's gated content for members.
01:35:45 Marco: They support that now.
01:35:47 Marco: You can have videos, online courses, newsletters with your new member areas with Squarespace.
01:35:53 Marco: All of this is backed by all the tools you might need to run a business like analytics.
01:35:57 Marco: You can see where your visits and your sales are coming from.
01:35:59 Marco: You can optimize which of your marketing channels are most effective.
01:36:03 Marco: They support email campaigns.
01:36:05 Marco: You can collect email subscribers, convert them into loyal customers.
01:36:08 Marco: You can customize the email template by applying your own brand ingredients and things like that.
01:36:13 Marco: All of this is backed by great SEO, so you don't have to worry if you're going to be findable in search engines.
01:36:18 Marco: They have you covered there as well.
01:36:20 Marco: It's a great place to build any kind of website, especially business websites.
01:36:24 Marco: So go to squarespace.com slash ATP for a free trial.
01:36:28 Marco: When you're ready to launch, use offer code ATP to save 10% off your first purchase of a website or domain.
01:36:34 Marco: Once again, squarespace.com slash ATP.
01:36:36 Marco: Start that free trial.
01:36:38 Marco: Use offer code ATP at purchase for 10% off your first purchase of a website or domain.
01:36:42 Marco: Thank you so much to Squarespace for sponsoring our show.
01:36:48 Casey: Let's do some Ask ATP.
01:36:50 Casey: Eshu Marniti writes, what's the best way of downloading Xcode?
01:36:53 Casey: I've heard a lot of mixed opinions slash statements about how the Mac App Store one sucks and some download it via an app called Xcodes.
01:37:01 Casey: I think it'd be interesting to hear about what y'all do and what the differences are.
01:37:04 Casey: Uh, I've done Mac app store.
01:37:06 Casey: I've done downloading it directly from the web.
01:37:09 Casey: And currently my preferred method is the X codes app.
01:37:13 Casey: Um, X codes basically does magic to look at what the available versions of X code are and makes it basically one click install or uninstall.
01:37:22 Casey: And I really dig that.
01:37:23 Casey: And that's what I've been using for the last few months.
01:37:26 Marco: I actually just use the developer website, like developer.apple.com, like where you download the betas.
01:37:31 Marco: I just download it from there.
01:37:33 Marco: Usually the latest version is available, at least for a little while after it comes out.
01:37:37 Marco: And so I just download it there.
01:37:39 Marco: I have previously had the Mac App Store version.
01:37:42 Marco: I have found that to be much slower to update.
01:37:46 Marco: And so if you really want to get, oh, I need the latest one right now, it ends up that usually takes a longer time both to see the update and then also then to actually install the update.
01:37:57 Marco: Xcode is a giant app with tons and tons of files.
01:38:01 Marco: And whatever the process is through the App Store to update apps, it seems to be significantly slower than just downloading the .zip thing from Apple and installing it directly.
01:38:12 Marco: So I just download the zip files now from the developer site.
01:38:15 John: I will second that.
01:38:16 John: Do not do the Mac App Store.
01:38:18 John: I think the Mac App Store is mostly doing the same thing that has to be done by any of the techniques, but the Mac App Store is so bad at giving you any progress indication and so bad about letting you pause and resume the thing.
01:38:31 John: I haven't actually used Xcodes.
01:38:34 John: I just go to developer.apple.com to go to the download section.
01:38:37 John: You will get a file that ends in .xip.
01:38:39 John: That's the zip file we're saying is an X instead of a Z. It's .xip.
01:38:44 John: And
01:38:44 John: downloading that file takes a long time depending on your internet connection because it's very large right decompressing slash verifying the signatures of that file on xip and unzipping it takes so long and i love that to be a step that i can take you know because downloading it just downloads into your download folder and it sits there you can let it sit there for an hour a day and come back tomorrow
01:39:04 John: So unzipping it, un-XIPing it also takes a long time.
01:39:08 John: While you're doing that, I can be in Xcode doing stuff while that is just running.
01:39:12 John: And then it unzips, and then maybe the next day I come and finally quit Xcode.
01:39:18 John: I was going to say drag the old one out of my applications folder and put it in the garbage, but don't do that.
01:39:22 John: Listen to me for a second.
01:39:24 John: Right.
01:39:24 John: recursively remove the existing xcode with the rm command from the command line because it is so much faster to do that than to empty the trash on your finder see press episodes where we talked about this right and then drag the new one from downloads right and so that process i may do in a leisurely pace that i'm not in a big hurry over the course of one or two days and at no point during that process am i stuck that i can't do development work
01:39:47 John: so that's why i always go and download the thing myself uncompress the thing myself and swap it in for the other one myself because the tools to do those individual tasks are easy it's easy to download something use the browser of your choice use whatever download thing use wget like whatever you know well wget might be hard with the authentication but anyway
01:40:06 John: download it, unzip it.
01:40:08 John: There's one application on your Mac that's going to do that.
01:40:10 John: It's going to have a progress bar.
01:40:11 John: You can watch it, let it sit there, and then swap it for the old one.
01:40:14 John: Tons of ways to do that.
01:40:15 John: You can do it in the Finder if you wanted.
01:40:16 John: You can do it like me and recursively remove very carefully the previous one and then put the new one in its place.
01:40:22 John: That's my preferred technique.
01:40:23 John: But whatever you do, don't do the Mac App Store because it takes a really long time and you have no control over it and it's not fun.
01:40:28 Casey: I would encourage you and the listeners to try Xcodes because it doesn't... Yeah, I should.
01:40:32 John: I hadn't actually heard of it.
01:40:34 John: I got that now.
01:40:34 Marco: it's very very good and um is that is that like safe like i i just i don't like the idea of having anybody get between me and apple with xcode like that's that's a pretty high risk thing yeah i understand that what about the that's the uh what is it the richie paper uh thoughts on trusting trust someone in the chat room get me that one we'll put it in the show notes
01:40:55 Casey: Yeah, no, I know what you're thinking of.
01:40:57 Casey: But no, I think it's safe.
01:40:58 Casey: I mean, it's all open source.
01:41:00 Marco: I mean, it probably is safe, but it's just like, how much am I willing to outsource the acquisition of Xcode to some third party?
01:41:09 Marco: I don't know.
01:41:11 Marco: To me, that tradeoff is not worth it.
01:41:13 Casey: That's fantastic.
01:41:13 Casey: I personally don't see it as a particular problem because this is such a popular tool and I presume somebody has gone through it.
01:41:22 Casey: Maybe not, but I presume somebody hasn't, certainly.
01:41:25 John: I mean, the populated tool means that if someone has exploited it, you're hoping that someone else is going to be the sucker that finds out and you'll read about it before that.
01:41:32 John: And wherever you read about it, probably on Twitter because you see the updates in real time and it's not federated.
01:41:37 Casey: Oh, man.
01:41:39 Casey: One of these days we're not going to talk about Twitter, right?
01:41:41 Casey: Maybe one day.
01:41:42 Casey: Anyway, I would seriously recommend checking it out.
01:41:45 Casey: And like I said, going spelunking through the source code if you really fancy it.
01:41:48 Casey: Claude Zines writes, what do you think is the best designed Mac app that Apple currently makes?
01:41:52 Casey: And for probably Syracuse, what do you think is the best designed Mac app that Apple has ever made?
01:41:57 Casey: For me...
01:41:58 Casey: I honestly don't know.
01:42:00 Casey: I really don't.
01:42:02 Casey: I've been thinking about this on and off, and I'm not actively bothered by many of Apple's apps, except music, and home to some degree.
01:42:12 Casey: But I don't think that I can think of any shining example of something really, really good.
01:42:17 Casey: I think Notes is close.
01:42:19 Casey: I mean, it's not...
01:42:20 Casey: crazy powerful and it has some things I wish I could change, but it's pretty darn good.
01:42:25 Casey: So maybe I would say notes, but I'm hoping one of you is going to come up with something and I'm going to say, oh, no, no, no, that's my answer.
01:42:31 Casey: So I think we started with Marco first last time.
01:42:33 Casey: So John, what's a good one?
01:42:34 Marco: No, start with me because I'm going to, John's going to have the right answer.
01:42:36 Marco: I'm only going to have wrong answers.
01:42:38 Casey: No, that's fair.
01:42:38 Casey: Okay.
01:42:38 Casey: No, that's fair.
01:42:39 John: I think we're both going to have, well, go ahead.
01:42:41 John: I think we're going to have at least, there's at least one mediocre answer that Casey will like.
01:42:45 Marco: Yeah.
01:42:45 Marco: So my, I mean, really, I think home is the best designed app.
01:42:50 Casey: I hope you're kidding.
01:42:52 Casey: I hope you're kidding so badly.
01:42:53 Marco: Yeah, of course.
01:42:54 Marco: I don't know.
01:42:57 Marco: I thought of Notes.
01:42:58 Marco: I feel like if you're looking at... Apple has many styles they've used over time.
01:43:03 Marco: Notes, I think, is the best example of Apple's current style, where they're very iOS-y.
01:43:10 Marco: Notes is very iOS-styled, but it's still very functional as a Mac app.
01:43:15 Marco: But I would say...
01:43:16 Marco: I think I like better than Notes.
01:43:18 Marco: I think I like Mail.
01:43:21 Marco: For being a kind of more Mac-like experience, I think Mail is that.
01:43:26 Marco: That being said, I'm not in Ventura yet, so I don't know if Ventura Mail is maybe worse in some way.
01:43:31 Casey: It's better and worse, I'd say.
01:43:33 Marco: Oh, great.
01:43:34 Marco: Okay, well, anyway.
01:43:35 Marco: I almost thought of maybe saying Safari, but I don't know.
01:43:39 Marco: It's really hard because what Apple design means...
01:43:44 Marco: changes over time and and i think on the mac especially they're not currently in a very good place uh so so i don't know john what's the right answer i'm surprised that there was so much waffling about this like i think there's probably a better answer than the one i'm going to give but the one that immediately sprung to my mind is safari
01:44:01 John: like safari is a macky mac app i don't think it makes any unforced errors like there's no like super obvious annoyance that's been there for years that we all hate uh and most of the things it does it does really well and in a mac like way just think about things like oh can i can i drag an image off of the thing what can i do with the address bar how do the preferences work how do the tabs work like it's just it's a really good mac it always has kind of always has been a really good mac app even as the times have changed um
01:44:31 John: And, yeah, it's just a web browser, and we kind of take it for granted.
01:44:34 John: But I think that's part of its strength.
01:44:36 John: Like, you don't spend a lot of your time just grinding it.
01:44:38 John: Maybe the people who wanted the color fav icons in the tabs were grinding their teeth.
01:44:42 John: But that's solved now, too.
01:44:43 John: Like, that's the easy answer.
01:44:46 John: I think there's probably a better one.
01:44:47 John: I'm scrolling through my applications folder to try to, like, jog my memory.
01:44:50 John: There's probably something that is better.
01:44:51 John: But I wouldn't pick notes because I feel like notes...
01:44:54 John: for all its great features and everything, it's like, you know, what I would consider like an okay third-party application.
01:45:02 John: Like, but Safari, there is, like, when I think of, well, if there was a third-party browser that used WebKit or whatever, you know, setting aside the engine, they could make a much better thing than that.
01:45:11 John: It's much more full-featured, more interesting, more whimsical, more surprise and delight, more, you know, well, more better done.
01:45:17 John: And I don't think that's possible.
01:45:18 John: I think Safari really just does not make any, doesn't put a foot wrong for the most part.
01:45:24 John: it does what it does and it does what it does really well so that's my easy answer and i think i mean that's mostly a good answer i'd mostly agree and mail like the reason i think that's not true is mail is kind of like notes and that it's a good bundled application to have a basic mail client but geez any good third-party mail client from from the past you would say is better than it even how mime stream today is probably better than it and certainly something like the entourage or like in those days like i don't know it's not comparable because it's a it's an ancient era or whatever but like
01:45:52 John: you know entourage or you know claris email it stomps all over current apple mail in a million different ways in terms of kind of like comparing like you know uh athletes from their eras right claris email and entourage in their era were so stood so much taller above their contemporary apps than does apple mail today not that apple mail is a bad application but geez it is not the best one apple makes
01:46:18 John: um and then in terms of what's the best design uh mac app that apple has ever made that's tough um i mean my easy answer for that is the uh the the classic mac os finder probably peeking around about the time the pop-up tab folders
01:46:33 John: came into being and most of the uh the annoying problems were out because i i think that was again an example of an app that had just been polished within an inch of its life and had just recently got it gotten some really new features and most of the the bad things about it like not being able to copy more than one thing to a floppy disk at a time had been solved right obviously a different error no memory protection blah blah blah but
01:46:54 John: That's my sentimental favorite.
01:46:57 John: There's probably, again, some other things that I'm not thinking of in the past.
01:47:01 John: But, you know, classic Mac Finder, circa Mac OS 8 or 9-ish is probably my answer for best designed Mac I've ever made.
01:47:08 John: And kind of like Safari, you take it for granted.
01:47:10 John: People don't even think of it an app.
01:47:12 John: It's like the reason you take it for granted is it just did what it needed to do in a way that everybody understood.
01:47:17 John: And as long as it didn't crash, you're like, oh, find it.
01:47:19 John: That's not even an app.
01:47:20 John: That's just the way my computer works.
01:47:22 John: And that, I feel like, is an achievement in itself.
01:47:24 Casey: Finally, Andrew Larson writes,
01:47:54 John: um i've never led anyone i i never had any sort of like subordinate when i was working and you could you'd be i think marco leads himself and his employee is a jerk the worst employee you have to deal with uh i you know i know that's not the question but like being your own boss is actually kind of a form of leadership and you have to lead yourself which is actually a fairly difficult thing to do not to sidetrack this but you know
01:48:19 John: Even if you think you, Casey, or you, Marco, have never led a team of other developers to do a thing, leadership experience is relevant for being self-employed as well.
01:48:30 Marco: Yeah, I think it's a very different skill, though.
01:48:32 Marco: They're both hard problems, but these are both very different problems.
01:48:36 Casey: Also, I think there's two different versions of lead, right?
01:48:39 Casey: I read this as like being a HR leader, like a boss, basically.
01:48:45 Casey: A people manager.
01:48:46 Casey: Right.
01:48:46 Casey: Thank you.
01:48:46 Casey: Having reports.
01:48:48 Casey: Exactly.
01:48:48 Casey: I've never been in that position, but I was what the companies I was in typically called a tech lead for many, many, many different times.
01:48:56 Casey: And I certainly have thoughts on that if that's where Andrew was going with this.
01:49:00 Casey: But again, I read that more as people manager, not technical leader.
01:49:04 John: So I've I've been most of those things.
01:49:07 John: I've done tech leads.
01:49:08 John: I've been a people manager and I've been both at the same time for the same people.
01:49:12 John: Sometimes I've been those same things at the same time for different people, which I think is the most difficult where you have a team of people reporting to you.
01:49:19 John: And also you're a tech lead for a larger, only slightly overlapping thing.
01:49:24 John: Um, but yeah, I think this is mostly a people management thing.
01:49:27 John: Uh, there's a reason I have not been a fuel manager most of the time is because I don't think that's where my skills lie at various times based on the promotional ladder at various companies.
01:49:37 John: Sometimes you can't avoid being a people manager if you want to get promoted or you get, you know, not forced into the situation, but you know,
01:49:43 John: offered a quote-unquote promotion that makes you a people manager as part of your responsibilities and you feel like you have to take it to advance your career and that will show you whether you think you have any kind of aptitude for it but you know the it's a very difficult job and the skills required for it are different than the skills required for being a developer but there is a lot of overlap because as a developer as we've talked about in past shows you have to learn how to communicate and work with people no they're not your reports but you have to
01:50:12 John: communicate and work with your peers you have to communicate upward in the org chart downwards and sideways that's part of your job as a developer and it's an increasing part of your job as a developer as you you know become more experienced and sort of climb the corporate ladder and gain more responsibility and at no point are you a people manager in there but you still have to have those people skills being a people manager requires those same people skills and then much more on top of that because now you're responsible for people you're responsible for their
01:50:39 John: their well-being you're responsible for their performance you're responsible for getting them promoted when they do a good job and dealing with it when they don't do a bad job and it is a huge amount of responsibility and a very difficult job and some people thrive in that environment and love it and become better at it and other people run screaming from it so the first thing i would say is
01:50:58 John: figure out whether this is a thing you want to do because i know it might seem like you have no choice because to get promoted you have to become a people manager but i can tell you that you can find companies where there is an you know individual contributor uh track that you can still get promoted on and i have to have people report to you but if you do find that you like it even if you're very bad at the beginning and you absolutely will be just like everyone's a crappy programmer in the beginning everybody's a crappy manager in the beginning what you what you want to do is learn how to not be a
01:51:27 John: and that is a long road and it is very much learning you know it's kind of like being a parent you're not a good parent in the beginning nobody is you have no idea what you're doing but hopefully you learn over time uh and hopefully you don't screw up against too much along the way it's exactly the same way with with reports your first reports you're probably going to make tons and tons of mistakes learn from them be empathetic be a human being don't be you know don't don't be as cold and callous as elon musk don't buy into the toxic things you may think about productivity
01:51:56 John: And, you know, workaholism and avoid any authoritarian impulse you have.
01:52:01 John: These are also this is also advice for parenting.
01:52:04 John: Avoid avoid any authoritarian impulse you may have.
01:52:07 John: Avoid trying to take lessons from your own upbringing and your own bad bosses in the past.
01:52:11 John: And, you know, replaying those things out and replaying those traumas out to your current reports.
01:52:16 John: And that's that's a lot of work.
01:52:17 John: That is a lot of, as they say, emotional labor where you have to moderate yourself and your feelings to achieve a goal within the company because your job is not to throw a tantrum or start screaming at people even though you might feel very frustrated because that's why you're the manager.
01:52:34 John: And if your employee starts screaming and everything, you as a manager have to learn how to deal with that.
01:52:39 John: So if I was better at being a people manager, I would have more actionable advice.
01:52:44 John: But all I can tell you is here's the shape of the territory.
01:52:47 John: And it is a very difficult skill and you're going to be bad at it.
01:52:50 John: But if you think it's something that you might enjoy, it is possible to get good at it, probably by asking somebody other than me how to do so.
01:52:57 Marco: Thanks to our sponsors this week, Squarespace, Trade Coffee, and Linode.
01:53:02 Marco: Thanks to our members who support us directly.
01:53:04 Marco: You can join atv.fm slash join.
01:53:07 Marco: We will talk to you next week.
01:53:09 John: Now the show is over, they didn't even mean to begin Cause it was accidental, oh it was accidental John didn't do any research, Marco and Casey wouldn't let him Cause it was accidental, oh it was accidental And you can find the show notes at atp.fm
01:53:38 John: It's accidental.
01:53:47 Marco: They didn't mean to.
01:54:04 Casey: What do we got for an after show?
01:54:14 John: Who did something exciting this week?
01:54:15 John: I don't know.
01:54:16 John: I got nothing.
01:54:17 Marco: I don't know either.
01:54:19 Marco: I'm working on a database.
01:54:24 John: Working on a database?
01:54:25 John: What do you know?
01:54:25 Marco: Well, I'm working on two databases, actually.
01:54:27 Marco: So I'm working on the server side.
01:54:30 Marco: I've actually reached a fairly stable point in the Overcast server story.
01:54:35 Marco: So since we last talked about this, I've been doing a lot of optimization on the server side.
01:54:41 Marco: Like, you know, I mentioned I had that one giant table that matched users to episodes.
01:54:47 Marco: And it was, like, by far my biggest table.
01:54:49 Marco: And it was, like, hundreds of gigs, including hundreds of gigs of indexes.
01:54:52 Marco: Over the last month or so, I've gotten database loads way down, mostly from index consolidation on that table.
01:55:01 Marco: So it used to have, I think, like three or four different indexes that different things would query.
01:55:05 Marco: Now it has one index.
01:55:08 Marco: I rewrote all the server-side code to just use one index.
01:55:11 Marco: to always query for these three columns, like user ID, podcast ID, episode ID.
01:55:16 Marco: Every query can use that index now, so I don't have to have a separate one for like, all right, if I only have a podcast ID, use this index.
01:55:25 Marco: There's nothing like that anymore.
01:55:27 Marco: I took recommendation indexing out of that, so I don't have to have a recommended index on that.
01:55:32 Marco: Anyway, all that has dramatically reduced the load on that server.
01:55:36 Marco: And so...
01:55:37 Marco: I've bought myself some time.
01:55:39 Marco: I've also gotten away from the situation where I had, I discussed months ago, I was using S3 and S3 compatible things like Leonard Object Storage and Cloudflare in front of all that, trying to shift the list of episodes in a podcast, trying to shift that onto a CDN in some way, or S3 fronted by a CDN.
01:56:02 Marco: And that's largely what I was doing all summer as my various efforts to try to lighten the server load.
01:56:09 Marco: And that plan just hasn't gone very well.
01:56:14 Marco: I ran into a number of problems.
01:56:15 Marco: So using actual S3...
01:56:18 Marco: Having Cloudflare in front of it helps a lot, but even just like the write traffic to it, it was so excessive.
01:56:28 Marco: I ended up paying a lot just for writes to S3.
01:56:32 Marco: So I switched over to Leonard Object Storage about halfway through the summer.
01:56:35 Marco: And it was much better there because it was way cheaper.
01:56:40 Marco: Still having Cloudflare in front of it and everything.
01:56:42 Marco: But then I was hitting bugs of like, you know, when you have a level of caching in front of your database in some way.
01:56:50 Marco: So in my code, I would like, all right, every time some episode data about a podcast changed,
01:56:56 Marco: I would rewrite that record to the CDN.
01:57:02 Marco: At first, I'd rewrite it to, like, Linux object storage, and I would increment a version number, so that way, the next time the app fetched it, it would get a different URL, because it had, like, the version number at the end, which would invalidate the CDN, so it would bypass it.
01:57:14 Marco: Anyway...
01:57:15 Marco: But then what happens if the write fails to the object storage?
01:57:18 Marco: Now I have out-of-date data, and I can either blow up the crawl process and throw an exception so it doesn't write anything, or what if there's a small race where right after the object storage is updated, what if the CDN goes to read it and gets stale data?
01:57:35 Marco: Then it has cached stale data.
01:57:38 Marco: And so I had all these weird edge case bugs that were causing occasional problems.
01:57:43 Marco: And dealing with this system ended up being so much more complex and so much more involved than not having it in the first place.
01:57:52 Marco: So what I did now is I eliminated the object storage problem.
01:57:56 Marco: layer of this stack now i just have a server process like a server method that reads the data out of the database and serves it and i have cloudflare in front of that providing a short-lived cache again server load is not meaningfully higher with that but i've gotten rid of a whole bunch of bugs
01:58:15 Marco: So I'm at a point now where I think I'm stable, much more stable than before.
01:58:20 Marco: And I bought myself some time so I can finally stop working on my servers every single day and focus on something else.
01:58:31 John: I have some bad news for you about that.
01:58:33 John: I mean, you already know the news because you've done this before, but, like, this reminds me of one of my past jobs where basically the entire history of the company was doing what you just described every year or two.
01:58:43 John: Just forever.
01:58:44 John: Like, literally forever.
01:58:45 John: Because, like, you'd think you're like, now...
01:58:47 John: I've, you know, I've done this thing where I've rearranged stuff in the database and did like all the types of things you described, like move this from over there.
01:58:54 John: And we thought this would help, but it didn't put this back here.
01:58:56 John: And now I feel like I'm in a stable place and it's just start a timer because then it's like, I mean, only if your growth continues, obviously this company was growing constantly, like 30% year over year.
01:59:04 John: It's like, you're going to be doing all that again.
01:59:05 John: And every time you think now there's no more, I can't get any more blood from this stone.
01:59:09 John: I've wrung out all the efficiency.
01:59:11 John: It's like, guess what?
01:59:12 John: In, you know, a year and a half, you're going to be back at the same place and you're going to surprise yourself by finding even more stuff you can wring out and then keep going and keep going.
01:59:19 John: It's like it literally never ends.
01:59:21 John: It's like just the growth continues and you find new ways to make your relational database survive the load that you thought it could never survive by doing increasingly clever things and just...
01:59:31 John: So yeah, that's the treadmill.
01:59:35 John: Oh, I suppose you want to get off that treadmill by going to CloudKit eventually, but we'll see.
01:59:39 Marco: Yeah.
01:59:39 Marco: Well, and one thing that I think is worth context here is that Overcast is not growing very much.
01:59:45 Marco: Like I'm not losing people, but I'm also not growing very aggressively.
01:59:49 Marco: It's a very, very slow growth.
01:59:51 John: Well, you're not growing in customers, but as you noted when you were messing with this, and maybe in one of the private things, the activity pattern of the existing users can change in response to things you don't control, like Patreon podcasts or whatever.
02:00:04 Marco: Yes.
02:00:04 Marco: So one thing I learned is that as I was instrumenting various things and collecting stats in various ways, I noticed, and I kind of knew this already, but I didn't know quite to what degree, that Patreon feed updates.
02:00:17 Marco: Right.
02:00:17 Marco: are like i think like three quarters of my feed updates or half like it's some absurd amount of my feed updates are just patreon feeds and so i like that that's something that has changed over the last few years that between patreon and sub stack and ben thompson stuff and and why why we're patreon is it because you have tons of people subscribing to patreon things it's it's because the urls are all unique per person right
02:00:41 Marco: Not only are they all unique per person, but Patreon has time-bombed URLs as their enclosure URLs so that every time you fetch the feed, every item has changes in it.
02:00:53 Casey: That's miserable.
02:00:54 Marco: Yes, it sure is.
02:00:56 Marco: Yeah.
02:00:57 Marco: So one of the optimizations... A while ago, I did a thing where I have... I used to, for a brief period, to try to solve that problem, I sent all download URLs for the enclosure through a redirect that was fixed on Overcast.
02:01:12 Marco: We'd be like, overcast.fm slash download slash big hash.
02:01:15 Marco: And that would never change.
02:01:17 Marco: And so all the sync updates that would happen that, hey, something about this feed has changed, and so your copy of the app has to download a whole new copy of the feed...
02:01:26 Marco: All those updates were saved if all that changed was the enclosure URL on all these Patreon feeds.
02:01:31 Marco: Well, that ended up causing some problems occasionally with certain things.
02:01:35 Marco: And so I turned it off a few months ago, but I turned it back on now only for feeds where I think it's necessary.
02:01:43 Marco: So like there's heuristics that run where it's like, you know, under certain conditions, it will now redirect downloads through that kind of URL.
02:01:51 Marco: And Patreon is one of those things where it's like, you know, if you have like a private feed where it has under a certain number of subscribers, I will redirect it through these URLs.
02:01:59 Marco: That way, again, they stay fixed and we stop having to send all these duplicate updates.
02:02:03 Marco: And so I basically spent, you know, a few weeks doing stuff like that of like simplifying, getting rid of some of the tricks that didn't work with the object storage.
02:02:12 Marco: So reintroducing an old trick that worked with this download URL thing, tweaking some of the Patreon refresh times and things like that, and optimizing various parts of my crawling process.
02:02:24 Marco: Like it used to hit the database for getting all the list of items.
02:02:27 Marco: It used to hit it twice.
02:02:28 Marco: Now it hits it once.
02:02:29 Marco: That made crawling faster and lighten the load on a major database.
02:02:32 Marco: Like there's stuff like that.
02:02:33 Marco: I was doing stuff like that, optimizing the different things, index consolidation on that one big database table.
02:02:39 Marco: So now that's, I think, stable.
02:02:43 Marco: And so I've been actually spending the last few days working on a replacement for FC Model.
02:02:53 Marco: FC Model is my...
02:02:55 Marco: old Objective-C SQLite kind of model layer that Overcast uses and a couple other things.
02:03:03 Marco: I think including Caster.
02:03:04 Marco: I think they ended up using it too.
02:03:05 Marco: But anyway, it's just this little open source library.
02:03:08 Marco: Nobody should use it now.
02:03:09 Marco: It's outdated now.
02:03:10 Marco: And it's very Objective-C-y.
02:03:15 Marco: And so...
02:03:16 Marco: uh i've wanted for a while to remake it using modern swift stuff modern swift concurrency um and the reason i hadn't remade it yet is frankly i just didn't think i knew swift well enough to really do a good job of it now i think i finally do and so i've been i've been remaking a new model layer using swift and swift concurrency that will be the foundation for hopefully the next version of overcast uh
02:03:40 John: Is it too much to hope that you're writing unit tests for this thing?
02:03:45 John: Because it's a library.
02:03:46 John: Come on.
02:03:46 John: It's a super important library.
02:03:47 John: Now is the time to whip out those tests.
02:03:50 Marco: In all fairness, FC model is the only other time I've written tests.
02:03:54 John: That's what I'm saying.
02:03:54 John: This is the time.
02:03:55 John: It's time for testing to shine.
02:03:57 Marco: That's not an answer.
02:04:02 Marco: I plan to maybe someday write tests for this.
02:04:05 Marco: That's a no.
02:04:06 John: I want tests to exist.
02:04:07 John: I just don't want to be the one to write them.
02:04:10 Marco: Exactly.
02:04:11 Marco: There you go.
02:04:13 Marco: I'm writing directly against SQLite this time.
02:04:15 Marco: Before, I used Gus Mueller's excellent FMDB library, which is a great SQLite bridge to Objective-C.
02:04:22 Marco: And FC model is based on that.
02:04:24 Marco: Now I'm eliminating the middle layer and just writing Swift directly to SQLite API.
02:04:33 John: Isn't there like a existing popular shim layer that basically puts a Swift front end on the SQLite C API?
02:04:39 Marco: Yeah, there's a couple of them.
02:04:40 Marco: And I'm using none of them because that's me.
02:04:42 John: But I thought there was like one popular one that's actually really thin.
02:04:45 John: So you wouldn't have to rewrite that.
02:04:46 John: But oh, well.
02:04:46 Casey: Have you met, Marco?
02:04:48 Marco: I know.
02:04:48 Marco: The API is not... The SQLite API is not that... And especially because I'm not using all of the features of SQLite.
02:04:57 Marco: I'm using a very small subset of them.
02:05:00 Marco: So it really is not that bad.
02:05:02 Marco: I don't really need a whole big library that shims the entire API of SQLite.
02:05:09 Marco: for what i'm doing like i i really need something very very basic and limited and so anyway so just writing directly against the api i thought was better for for my needs and my preferences and my style and it allows me to only have what i actually need and to know how every bit of it works and i can make decisions like you know my concurrency story here is using the new swift actor um concept and
02:05:31 Marco: which is a bit of a pain in the butt in certain ways.
02:05:33 Marco: But I'm really happy with some of the ways it performs and some of the guarantees that it makes and everything.
02:05:38 Marco: And I'm using all modern conventions everywhere of like, you know, using async stuff to fetch everything, using exception throwing instead of, you know, random assertions that could fail in weird ways, like doing everything kind of the newest, most modern way.
02:05:53 John: How are you finding calling into the SQLite C APIs from Swift?
02:05:58 John: Do you have a lot of unsafe this and unsafe that everywhere in your code?
02:06:02 Marco: Shockingly, no.
02:06:03 Marco: I have almost none.
02:06:06 Marco: It's really weird how little of that I needed.
02:06:10 Marco: Swift is really good now at marshalling stuff in and out of C libraries.
02:06:15 Marco: I don't know if the SQLite API just has a bunch of good annotations or whatever.
02:06:20 Marco: I think it's just the, I think it's just Swift has matured to the point where it does a lot of this stuff automatically for you, or at least with, with very little drama.
02:06:28 Marco: And there's very little of that, like ugly, you know, unsafe pointer stuff necessary.
02:06:33 John: Oh, I'll be interested.
02:06:33 John: Is this going to be open source like FC model was?
02:06:35 Marco: I don't know yet.
02:06:37 Marco: open sourcing FC model I'm not sure that was really worth it in the sense that like I did occasionally I got like one or two bug fixes from people over time from that and that was worth it to make it better but
02:06:52 Marco: I'm not sure I want the liability of like my stuff being used to, as such a foundational layer in other people's apps.
02:06:59 Marco: And if I don't open source it, not only does that reduce, you know, my, my feel bad burden about what if I break your app, but it also gives me more flexibility to change it more dramatically over time.
02:07:09 Marco: Like if I decide, Hey, you know what?
02:07:11 Marco: This API is actually kind of clunky.
02:07:13 Marco: I want to re I want to rework the way this thing is called or deprecate this other thing.
02:07:16 Marco: Like I can just make sure my one app,
02:07:19 Marco: is okay with that or modify my one app to use the new calling convention.
02:07:25 Marco: And then that's it.
02:07:26 Marco: I don't have to worry about that.
02:07:26 Marco: So I might open source it eventually, but I want to, I'm not going to open source it yet and possibly never, but I don't know yet.
02:07:36 John: uh yeah i mean for something of this obscure within the the smallish community of like developers who might be interested in this you just throw it out there and just like never like basically have a read me that says i don't support this i don't maintain it if you want to do something with it feel free but don't don't send me bugs don't you know i'm gonna i'm gonna break it and it's gonna break your crap tough like you know just like a big disclaimer and we've talked in past shows about how you can't actually do that because people expect you to maintain it no matter what but i think the audience for this is small enough
02:08:06 John: the chuck it over the wall and and then just continue to do exactly what you said oh guess what i've decided this api needs to change and i don't care how many other people's apps it breaks because they should know that i'm not supporting this and if that leads people to take your code and fork it then it's also not your problem like you can make it not your problem while still having it you know out there for the internet as sort of a public good
02:08:25 Marco: I mean, the other thing, though, is like, you know, if someone's out there looking for a Swift SQLite or database library, they should probably use one of the bigger ones.
02:08:35 John: That's what I was going to say is what you should do while you're writing your library is look at the other ones, at least look at the one function.
02:08:40 John: that you're going to write
02:09:02 John: No responsibility.
02:09:03 John: If you use this in your app and I break it, don't come crying to me.
02:09:06 John: I don't even need your bug reports.
02:09:07 John: But I do want it to just be out there as yet another Google hit for someone looking for how might one do a Swift front end to SQLite.
02:09:15 John: That's interesting.
02:09:16 John: Yeah, maybe.
02:09:17 Casey: I don't know.
02:09:17 Casey: Plus, do you or do you not want unit tests?
02:09:20 Casey: Because if you open source it, there's at least a prayer.
02:09:22 John: Make other people write your tests for you.
02:09:24 Casey: Yeah, there's at least a chance that you'll get a unit test.
02:09:27 John: Casey will write them for you.
02:09:29 John: Will he?
02:09:30 John: If that's a deal, then maybe I'll open source it.
02:09:33 John: Writing unit tests for a database interface layer is like how I spent half my career.
02:09:36 John: I do not want to do that again voluntarily.
02:09:38 John: It sounds fun, doesn't it?
02:09:41 John: Oh, so fun.
02:09:42 John: So much fun.
02:09:43 Casey: Well, that's the thing is that then you start getting into the fine line of like, is it a unit test or an integration test?
02:09:49 Casey: Like, what is this?
02:09:50 John: Exactly.
02:09:50 John: Well, at least with SQLite, you don't have to start a database server.
02:09:53 John: Yeah, that's true.
02:09:54 John: You know, the difference between mocking a database and having an actual SQLite, especially if it's an in-memory database with no file on disk, it's real blurry.
02:10:01 Casey: Yeah, no, I agree.
02:10:02 Casey: I mean, it's interesting nonetheless.
02:10:05 Casey: And honestly, you know, as I was sitting here listening to you, like I've never had the occasion, not once in my career of using SQLite.
02:10:12 Casey: And I don't know a whole lot about it, but I am very, very interested in Swift concurrency and async weight and stuff like that.
02:10:22 Casey: And I don't think like I understand it and I'm OK at it, but I wouldn't say I'm particularly strong at it.
02:10:28 Casey: So I would be interested in looking at this, not necessarily for the database stuff, not necessarily to use it, but more to kind of crib and understand, well, how does Marco approach async await and concurrency and actors and things like that?
02:10:40 Casey: And to help my understanding of these things, which I think is passable, but not, you know.
02:10:44 Casey: super strong.
02:10:45 Casey: And if you are in the position that you feel like you are at least reasonably strong at those things, then that's something that people like me or anyone else could learn from.
02:10:56 John: Oh, you really kind of also have to see the, uh, the use of it because with async and with, you know, uh, actors and things like sendable and all that, uh, there is the possibility that it starts to, I'm not going to say infect, but you know, well, okay, fine.
02:11:10 John: That it starts to, uh, affect, uh, affect with the letter a, uh, the code that uses it.
02:11:16 Casey: No, you're right.
02:11:16 Casey: You're absolutely right.
02:11:17 John: Right.
02:11:17 John: And, and like, uh,
02:11:19 John: making an api such that that the tendrils of that are confined to where you want them to be like it is appropriate for this to make the calling code be shaped like this but it is not appropriate for it to just like thread through your entire application because something has to be sendable all the way up to the top you know what i mean that's and adjusting the library doesn't let you know that like marco will find that out when he tries to go use his library in his app and finds out that he has to like
02:11:45 Marco: go up 17 levels in the call stack to thread something through and make everything all async but uh you know that's that's the thing you only learn from using the library in an application yeah and that's and that's one thing by the way like you know it was a pretty it's a pretty strong choice to make all of your database calls go on an actor because on it's on a custom actors because that means that anything that calls into it to make a database query has to be from an async context uh so
02:12:12 Marco: There's no good way to block and just wait until you get this.
02:12:18 Marco: There's a few crappy ways, but basically all of the calling code to use this is going to have to be async.
02:12:25 Marco: And that is going to be a big pain in the butt at certain times, but where I arrive at the end of all that is going to be really great.
02:12:34 Marco: And so...
02:12:35 Marco: That's why this is like I'm kind of starting this out small.
02:12:38 Marco: I'm going to try to start writing like a couple of subsystems of the app using this before I really replace all of my old model code with it.
02:12:45 Marco: And that's going to be a months long project that's going to involve probably lots of rewriting of the app.
02:12:51 Marco: And that's no small job.
02:12:54 Marco: So that's why this is kind of like a side project right now.
02:12:57 Marco: It's kind of in the Skunk Works area of Overcast right now.
02:13:02 Marco: And I'll probably ship some little thing behind the scenes using it soon.
02:13:06 Marco: But it's going to be a while before it's like the main database of the app.
02:13:10 Marco: But got to start sometime.
02:13:12 John: yeah that's where you need those unit tests that stress test the like the you know stress test the concurrency in ridiculous ways because you don't want to find that out when you're in your application like finally i've got everything all async but now there's a weird bug and i don't understand it it's like you know put the torture tests into your unit tests that have people you know adding and removing things simultaneously as fast as they can while something else tries to do a regular operation and make sure that it ends up in a sensible state afterwards and
02:13:37 John: like find those bugs in your unit test because trying to find them in your actual application is going to be bad and obviously actors and all that is much better than threads and is probably even better than uh you know grand central dispatch like as a reason you know the the technology for async in the on apple platforms has gotten better and better over time so hopefully you'll be mostly protected by that by doing best practices but uh actors are still relatively new to apple's platform so
02:14:02 John: It's a good idea to actually have some kind of stress test that is not, I'll just run my application and see if it works.

Tiny Tyrants

00:00:00 / --:--:--