260: The Todoyist Problem


00:00:00   But eventually, the test writing becomes exactly as much coding as the coding does.

00:00:05   That doesn't sound right.

00:00:06   I know it sounds weird.

00:00:07   I'm not trying to convert you.

00:00:08   I'm just saying, like, this is the—

00:00:10   That sounds like it's not math.

00:00:11   Anyway, this is not the show where we convince you.

00:00:14   It's not the show where we convince Casey to drink coffee, and it's not the show where

00:00:16   we convince you to start testing.

00:00:19   When Marco starts writing tests, I'll start drinking coffee.

00:00:22   Let's make that agreement.

00:00:23   Oh, there you go.

00:00:24   Now you're going to make him do it.

00:00:26   We should start with some follow-up.

00:00:27   Ravi Saar writes in ATP 258, Casey said he'd rather have Apple throttle the iPhone by slowing

00:00:33   it down than have it shut down due to poor battery performance.

00:00:35   However, I assume that's being said by someone owning a relatively new iPhone.

00:00:39   That's true.

00:00:40   You should use an older model to really understand the issue.

00:00:42   I have an iPhone 6 and believe me, the slowdown is unbearable.

00:00:44   One should not be waiting 10 seconds to see an app come up.

00:00:47   Or imagine when you see something you want to capture in photo or film, but it takes

00:00:50   ages for the camera to launch and you've missed your shot.

00:00:52   The list goes on and on.

00:00:53   serious usability issue for people with older iPhones and and they suffer from it daily

00:00:58   During the whole day now. This is a completely fair point and

00:01:04   Ravi is right that I haven't really experienced this because in well lately because I've always been on the latest and greatest phone

00:01:12   That being said I believe was either my six or my success and we did talk about this on the show at some point or another

00:01:17   I want to say was my 6s

00:01:20   would occasionally just shut itself down and it whether or not it was the same problem because it was a relatively new phone at

00:01:27   The time and I think it was during a generation of phones where they did have battery problems if I'm not mistaken

00:01:32   And you know what the specifics of why it happened don't really matter

00:01:36   but the fact of the matter is I had a phone where this sort of shutdown was happening and I

00:01:41   Remember vividly that there were at least two or three times

00:01:46   that I was trying to capture something that Declan was doing with the with the phone's camera and

00:01:51   It decided to shut itself down

00:01:54   What Ravi seems to forget is that booting a phone even a brand new iPhone 10?

00:02:01   It's like 15 20 30 seconds or something like that

00:02:03   That is way worse than waiting five to ten seconds for the camera to come up, which is also terrible. Don't get me wrong

00:02:11   I am not arguing that that is garbage

00:02:13   And I can't imagine how tough it would be to have every app open after 10 seconds.

00:02:20   Unequivocally that is trash.

00:02:22   But I would still take that trash over having the phone completely shut down when I'm trying

00:02:29   to capture a picture of Declan or now Michaela.

00:02:32   Like no question I am still convinced that I would rather have throttling than not.

00:02:38   Well the slow app launch could happen every single time whereas the shut down only happens

00:02:41   once in a while.

00:02:42   reason I put this thing in follow-up is not to debate whether shutdowns are

00:02:46   worse than slow performance but to reiterate again what I think I said on a

00:02:49   past show which is if your phone is doing stuff like really really slow like

00:02:56   this kind of slow like I literally I mean I don't know maybe he's exaggerating

00:02:58   but it was literally like 10 seconds to launch an app and you notice that a

00:03:01   routine regular app like if it's doing things massively so that's not

00:03:05   throttling that is something else that is the mysterious ailment that no one

00:03:09   has been able to identify that is sometimes, but not always, cured by either wiping and

00:03:15   restoring from backup or wiping and starting as a new phone.

00:03:19   Why does that cure it?

00:03:20   What does it do?

00:03:21   I have no idea.

00:03:22   But the throttling is not – it's going to make it feel slower, you know, for sure,

00:03:28   but it's not going to make it do this type – like, even if you cut the clock speed

00:03:33   in a quarter, it wouldn't take 10 or 20 seconds to launch an app, right?

00:03:37   It's not – that's too much, right?

00:03:40   It would take a quarter of the time to launch the app or whatever.

00:03:43   So phones that have these massive slowdowns or freezes and stuff, I don't think those

00:03:47   are explicable by the throttling.

00:03:49   The throttling feels different.

00:03:51   The throttling feels like your whole phone is kind of going through molasses but not

00:03:54   these huge things.

00:03:55   So all I'm going to say is that if you're encountering one of these problems, don't

00:03:59   merely assume that you're being throttled.

00:04:01   You may have something much, much worse than throttling.

00:04:03   And what can you do about it?

00:04:04   The only thing I've heard is something like I said,

00:04:06   wipe and restore from backup or wipe and start as a new phone

00:04:09   and that may or may not fix it, which is terrible advice.

00:04:11   I don't have anything better.

00:04:12   I just want people to be aware

00:04:13   that every problem is not throttling.

00:04:16   - People often complain about how I bother Apple

00:04:20   about their software quality.

00:04:21   Well, it doesn't matter that they're very successful,

00:04:24   they're moving fast, they're competitive,

00:04:25   they don't need to make everything perfect.

00:04:28   But part of the reason why this battery thing

00:04:30   became such a big deal and part of the reason

00:04:33   why so many people jumped on,

00:04:35   sometimes even wrong information about it,

00:04:39   but definitely sensationalized the motivations

00:04:42   and what was actually happening,

00:04:44   is because Apple's had problems for years

00:04:48   where iOS has weird bugs,

00:04:50   is not tested well enough on old phones,

00:04:54   weird cruft accumulates with older phones,

00:04:57   older installations that get upgraded.

00:04:59   Sometimes you have things like this

00:05:01   where you just have to restore your phone

00:05:03   and that might fix it.

00:05:05   This is all just problems that arise

00:05:08   from having a massive amount of technical debt

00:05:10   and bad software quality

00:05:12   that never gets a chance to get fixed.

00:05:14   If Apple had better software quality

00:05:17   and better testing and better support on these old devices,

00:05:20   the battery gate thing would have been

00:05:22   a way less severe problem.

00:05:24   One of the biggest reasons why it blew up the way it did

00:05:28   is because there are so many quality problems

00:05:31   with software on old phones, and people,

00:05:34   Apple basically handed them on a platter

00:05:37   a very good explanation for why their phones are this slow,

00:05:40   that isn't their fault, that's Apple being evil.

00:05:42   It probably isn't the right explanation, as John said.

00:05:45   I think if most people's phones are this slow,

00:05:48   it's probably not because the CPU speed has been cut down

00:05:51   by 50 or 60% or whatever it is.

00:05:54   This seems like a more severe software issue,

00:05:57   But Apple, for years they've been ignoring

00:06:01   this kind of software quality,

00:06:03   and it bit them really hard.

00:06:06   And there's lots of areas, things like security,

00:06:08   where technical debt can really come back and bite you hard.

00:06:13   Maybe they need to really reconsider their priorities

00:06:16   and how much they value and devote resources

00:06:20   to quality of their software,

00:06:23   and running on old devices especially,

00:06:25   as opposed to just plowing ahead

00:06:27   and giving engineers no time to fix bugs.

00:06:30   - All right, Andras Puis writes,

00:06:32   does anyone other than tech bloggers

00:06:34   give a darn about smart speakers?

00:06:36   Isn't there a gigantic market of dumb Bluetooth speakers?

00:06:39   It seems that way all over Europe

00:06:40   where electronics shops seem to be taken over

00:06:42   by an unreasonably huge selection of these devices.

00:06:45   Blah, blah, blah, I'll get a HomePod as soon as I can.

00:06:48   I doubt I'll ever say a single word to it.

00:06:51   - You can't blah, blah, blah the middle part.

00:06:52   You're skipping over the important parts.

00:06:53   I didn't put the whole text there just for the hell of it.

00:06:55   For the love of all that's good and holy.

00:06:57   Okay.

00:06:58   From the middle part, "Don't normal people just want a fantastic sounding speaker even

00:07:01   if it's not at the cutting edge of solving their lazy old white men problems of switching

00:07:05   off the mood lights or turning on their smart kettles?

00:07:07   I know I want a great speaker that connects seamlessly to my Apple devices so I'll get

00:07:10   a HomePod as soon as I can but I doubt I'll ever say a single word to it."

00:07:14   The reason I put this in here is like, so if I had to summarize this in a slightly less

00:07:17   snarky way, it's like, Bluetooth speakers.

00:07:19   We all, I have a Bluetooth speaker, but a lot of people do.

00:07:23   everywhere it's kind of it becomes sort of the baseline for so you want a little

00:07:28   speaker that's better than your your phone speakers that you can play stuff

00:07:31   from your phone or whatever right and he's right there's lots of Bluetooth

00:07:36   speakers around so why do you even need all like what's the deal with the home

00:07:39   pilot if it was just a Bluetooth speaker wouldn't that be fine who cares about

00:07:42   things you can talk to except for as he you know puts it like turning on your

00:07:46   mood lighting or your smart tea kettles or whatever and and he even says I'll

00:07:51   I'll get one because he wants something connected to his Apple devices, but I doubt he'll ever

00:07:54   see a single word to it.

00:07:55   I think this falls into the same category, albeit much more angry, as Casey, where, and

00:08:01   I think we've talked about this before and I want to reiterate to it, if it seems silly

00:08:04   that you're talking to your speaker, you're like, "I don't know a speaker.

00:08:07   Who cares about the talking?"

00:08:08   If that seems silly, people who say that probably have not tried one of these things.

00:08:13   And I know if you haven't done it, it sounds like a froufry thing, but as the technology

00:08:18   required to make something that works like this goes down, and I argue it's pretty low

00:08:21   already considering you can get a little Amazon dot that does a pretty good job of understanding

00:08:24   what you're saying, the utility of it will be apparent.

00:08:27   These things are not popular for no reason.

00:08:30   So I would once again urge everybody, if you've never had a thing like this that you talk

00:08:35   to, don't immediately dismiss the idea of talking to it as something that like is a

00:08:40   passing fad or a thing that only rich lazy people do or whatever.

00:08:45   It is a technology that has utility. Talking to things is a useful interface in many situations.

00:08:53   And that's why I think, as time markers on, Bluetooth speakers that you can't talk to

00:08:59   will become less popular in the same way that smartphones that were not iPhones became less

00:09:04   popular.

00:09:05   Because you could do some of the same stuff, but once you've spoken to something to tell

00:09:09   you to play music, having to go to your device and flick around in an interface and send

00:09:15   the audio to the Bluetooth thing just seems, it doesn't just seem slower, it is slower,

00:09:19   it is less convenient, it's a different way of interacting with things. So I would once

00:09:22   again say do not dismiss talking to cylinders. They're good to talk to.

00:09:27   I understand why you brought me up earlier. I have mixed feelings about this, but I think

00:09:34   even despite having never had an echo or any, I stumbled because I couldn't remember if

00:09:39   that was going to trigger them or not, despite having never had an echo in my house, I think

00:09:44   to some degree I understand the draw.

00:09:48   It's not something I feel like I need, but I do think I understand it.

00:09:51   The reason I'm so grumpy about the HomePod is because I want to be able to shout at my

00:09:56   HomePod, "Hey, Cylinder, play such and such by such and such artist."

00:10:02   And the fact that I can't do that unless I have either that in my library or an Apple

00:10:08   Music subscription is what bums me out, because as I talked about for a very long time previously,

00:10:13   I would like to use Spotify to do that.

00:10:14   And yes, I'm aware that you can do basic controls

00:10:17   like, you know, "Hey, Cylinder, skip to the next track."

00:10:20   And it will work even if you're air playing Spotify.

00:10:23   Like I get that.

00:10:23   But the whole point is I wanna be able to say,

00:10:26   "Hey Cylinder, placed on hold by MuteMath."

00:10:28   And I want it to just work without having to pay Apple

00:10:31   for an Apple Music subscription.

00:10:33   And that's the thing that bugs me.

00:10:34   - Yeah, no, I understand the limitations

00:10:35   of the Homebot specifically.

00:10:36   This was a more general,

00:10:37   this person's more general anger is like,

00:10:39   Don't normal people just want a speaker, even if it's not on the cutting edge of solving

00:10:45   your—like it's not your lazy old men problems, right, and mood lighting and stuff like that.

00:10:49   It's not that you're lazy.

00:10:50   It's like saying don't normal people just want a command line, so solving your lazy

00:10:54   problems of oh no, you can just point to the thing on the screen with the mouse and click

00:10:57   on it.

00:10:58   Like it's just this sort of backwards macho thinking that you don't need any fancy thing

00:11:05   to do that.

00:11:06   It should be fine to do it the way it currently works.

00:11:08   just want a Bluetooth speaker that sounds good. You don't need to talk to

00:11:11   things." I was like, "No, people have tried it and it's convenient to talk

00:11:14   to things sometimes." Not all the time, it's not the best thing in the world, but

00:11:17   it is an interface that has proven its utility. And just because you don't find

00:11:22   utility in it or you have never tried it so you have no idea what it would be like,

00:11:24   doesn't mean it doesn't have utility. It doesn't mean everyone who's talking to

00:11:27   their cylinders or their phones or their watches or talking to their cars to tell

00:11:32   them to call so they don't take their hands off the wheel to call home

00:11:35   while they're driving. Those are good user interfaces. They do not reflect badly on the

00:11:39   people who use them, and people who think that way should reconsider.

00:11:44   Some brief follow-up on my Raspberry Pi music player that I discussed last week. Lots of

00:11:50   people wrote in to suggest that I try something that reads RFID or NFC tags, and there's been

00:11:58   a number of projects that do this. One of the best ones I've seen is called Plastic

00:12:03   player and there's a few of the projects that were similar

00:12:05   where basically you have Raspberry Pi with an NFC reading

00:12:08   board and you stick NFC stickers to the back of some kind

00:12:12   of like card or something.

00:12:14   There's also a really awesome original NES,

00:12:17   like kind of like an NES mini project that somebody made

00:12:21   that used RFID reading cartridges.

00:12:24   Like he made like little mini versions of old NES cartridges

00:12:27   intro them into an old mini NES, had like the power

00:12:31   and reset buttons all wired up to actually do correct

00:12:33   things, but in reality it wasn't playing the games off of the cartridges, it was playing

00:12:38   them off of internal memory, and the cartridges were simply telling it what to play. And that's

00:12:42   how all these RFID-based music players work too. Some of them play them off of Spotify

00:12:47   or something, some of them play them off of internal storage. So I started playing with

00:12:50   this. I actually got a NFC board. I was a little hesitant at first because there don't

00:12:57   seem to be any kind of quick little plug-and-play boards. Like the sound cards, you can get

00:13:02   some that fit the Raspberry Pi hat specification,

00:13:06   which is like, it's just like a board that like,

00:13:08   sticks on top of the Raspberry Pi,

00:13:10   with like a predefined connector on the main I/O connector,

00:13:15   and you just kinda stick it on,

00:13:16   and it stacks on top nicely, and it's like plug and play,

00:13:19   and it just works pretty easily.

00:13:21   There's none of those for NFC reading that I could find,

00:13:23   at least none that were maintained,

00:13:25   so I had to get like a different board

00:13:28   that required me to actually wire it,

00:13:31   And then later on I soldered some stuff

00:13:33   and it was kind of fun, but I'm terrible at soldering.

00:13:36   This is the first time I've done it in years

00:13:37   and still terrible at it, but slowly getting less terrible.

00:13:40   Anyway, so now I have one that plays via NFC

00:13:45   just using internal storage and the NFC cards

00:13:48   that I'm sticking on the reader just play the album

00:13:51   and it's really nice.

00:13:52   It's still a little bit in progress,

00:13:53   but I'm really enjoying it so far.

00:13:55   I'm really enjoying this crazy little world

00:13:57   of making fun crap as procrastination

00:14:01   when I'm waiting for Overcast to get through

00:14:03   Test Flight Beta Review or something like that.

00:14:05   And so it's nice and yeah, I'm really enjoying this world.

00:14:09   That's about all.

00:14:10   I don't have anything to show for it yet,

00:14:11   but it's coming along well and it's getting pretty cool.

00:14:14   And so once it's done, I'll take pictures

00:14:16   and make a blog post maybe, I don't know.

00:14:18   - You should.

00:14:18   - You should get Tiff to help you design the case for it.

00:14:20   She can do, she can make a nice case

00:14:23   or do something like painting on the outside.

00:14:25   You gotta involve her in this project.

00:14:26   she'll allow you to put this thing

00:14:28   in a prominent place in the home.

00:14:29   - So I actually already have version one of it in a case,

00:14:34   in a prominent place in the home that she has approved.

00:14:37   I'm not going to spoil what the case is yet.

00:14:41   I will tell you that it was manufactured by Apple.

00:14:44   - Oh my goodness.

00:14:45   - Anyway, once it's done, I'll take pictures.

00:14:48   I actually ordered a Raspberry Pi Zero W,

00:14:52   which is much smaller than the Folsom Raspberry Pi,

00:14:55   to help it fit better into this case,

00:14:57   but we will see how that goes when it arrives.

00:14:59   - You should have saved your trash can

00:15:01   so you could chuck these little NFC cards

00:15:02   into the trash can.

00:15:03   (laughing)

00:15:04   Just chuck 'em in the hole,

00:15:05   and then they rattle down to the bottom

00:15:06   and it plays the song.

00:15:08   - That's awesome.

00:15:09   - And eventually you have to turn the thing upside down

00:15:10   and empty 'em all out.

00:15:10   (laughing)

00:15:12   Gotta empty the trash.

00:15:13   (upbeat music)

00:15:14   - We respond to this week by HelloFresh.

00:15:16   For $30 off your first week,

00:15:18   visit hellofresh.com and enter code ATP30 at checkout.

00:15:22   HelloFresh is a meal kit delivery service

00:15:24   that shops, plans, and delivers your favorite

00:15:26   step-by-step recipes and pre-measured ingredients.

00:15:29   So you can just cook, eat, and enjoy.

00:15:31   It's super easy to manage.

00:15:32   You can choose your delivery day

00:15:34   for when it works best for your schedule.

00:15:36   You can pause your account for weeks at a time

00:15:38   if you're gonna be out of town or anything like that.

00:15:40   All the ingredients come super simple

00:15:42   in pre-measured, handy, labeled meal kits.

00:15:45   You know which ingredients go with which recipe,

00:15:47   and they only give you as much as you need

00:15:49   so you're not wasting tons of food.

00:15:50   All this is delivered right to your door

00:15:52   in recyclable insulated packaging.

00:15:55   They have three plans to choose from,

00:15:56   the classic veggie and family.

00:15:57   Classic is a variety of meat, fish, and seasonal produce.

00:16:00   Veggie is a vegetarian recipe,

00:16:02   so plant-based proteins, grains, and seasonal produce.

00:16:05   I actually like plants like this because it lets me,

00:16:07   like normally I'm a meat eater,

00:16:08   but I like eating less meat over time.

00:16:11   And so things like this are a wonderful way,

00:16:13   with their veggie plan at HelloFresh,

00:16:14   to eat less meat if you want to do that,

00:16:17   or if you want to try it, try that out.

00:16:18   And of course, if you are a vegetarian,

00:16:19   this is very, very helpful.

00:16:21   There's also the family plan with quick and easy meals

00:16:23   with all of the wonderful flavor the whole family will love.

00:16:26   HelloFresh makes it so easy to go to delicious,

00:16:29   balanced dinners for your family or just for yourself

00:16:32   for less than $10 a meal.

00:16:34   No more time-consuming meal plan or grocery shopping.

00:16:37   And the best thing about this is you don't have to like plan

00:16:39   every single meal what to eat.

00:16:41   It's super simple, easy to do, easy to cook.

00:16:44   So for $30 off your first week of HelloFresh,

00:16:47   visit hellofresh.com and enter code ATP30 at checkout.

00:16:51   That's hellofresh.com code ATP30 at checkout for $30

00:16:55   off your first week of HelloFresh.

00:16:57   Thank you so much to HelloFresh for sponsoring our show.

00:16:59   (upbeat music)

00:17:03   Apparently in the last week or so,

00:17:05   there have been some rejections of iPhone apps

00:17:08   or iOS apps, I guess I should say,

00:17:10   that use emoji as part of the user interface.

00:17:14   The rejections have said something along the lines of,

00:17:16   "Listen, that's Apple copyrighted material,"

00:17:19   which really is true, you can't use that and it can't be in screenshots, you really gotta

00:17:24   change your app.

00:17:26   Let me start by saying that I am quite confident by the letter of the law, Apple is 100% right,

00:17:32   and there's nothing we can really do about it.

00:17:35   But it seems short-sighted and stupid that Apple provides all these beautiful emoji,

00:17:42   and as most of you probably know, I do love me some emoji, that Apple provides all these

00:17:47   beautiful emoji and then if you use them as part of your user interface they stomp on

00:17:53   you and say no that's not allowed. Now shortly before we went to record tonight I had seen

00:17:58   some rumblings about this maybe being walked back so instead of spending the entire rest

00:18:02   of this episode on it I guess we can just kind of talk about it and then move along

00:18:06   and hope that it's getting resolved. But man that just seems dumb. Like I understand that

00:18:11   yes, it is their right to do this, but it's just dumb. I don't get it. And I like using

00:18:20   emoji. I can't say that I've done this at work, but if I was writing my own iOS app,

00:18:24   I would absolutely use emoji in my user interface from time to time, because I just think it's

00:18:29   cute and fun. But gosh, I don't dig it. And I haven't had the chance to listen to the

00:18:36   most recent Connected, which we'll link in the show notes, where Jeremy Burge of Emojipedia

00:18:41   is on and I guess that interview is probably pretty good because Jeremy's pretty damn awesome.

00:18:45   It is, you're missing a lot. You really should have listened to it. It's really your loss.

00:18:49   I know, well I will listen to it, I just haven't yet. I'm sorry you guys, I'm sorry.

00:18:53   It came out like what, six hours ago? How can I have listened to it already?

00:18:57   I've been a little busy. But no, the connected guys of course are dear friends of ours and

00:19:02   Jeremy, even though we've never met, he's a dear friend of mine, he just doesn't know

00:19:05   it. And so...

00:19:06   I've been in a hot tub with him, does that count?

00:19:09   is super hot and in any case the point of joy it was a giant hot pool it wasn't

00:19:15   a hot tub oh well in that case not so hot no anyway you should listen to that

00:19:20   and just certainly one of you guys I guess Marco if you'd like to jump in

00:19:23   kind of fill in the gaps here but I just I don't care for it I understand it's

00:19:27   within Apple's right but I don't care for it and I think it's a it's just a

00:19:31   poor decision so Marco since you seem to be more read up on this than I anything

00:19:36   you can add or fill in or kind of clarify for me?

00:19:39   - I mean, once again, the specific day that we're recording

00:19:43   is kind of inconvenient for the story

00:19:44   'cause it does seem to be kind of in progress

00:19:46   and still in motion.

00:19:48   So this may be out of date by the time

00:19:50   that I'm able to release this tomorrow morning or whatever.

00:19:53   But I think Apple clearly needs to define a line

00:19:58   of what is okay and what is not.

00:20:00   'Cause certain things with their emoji are obvious.

00:20:04   The emoji is Apple's copyrighted work.

00:20:07   Not that different from, you know,

00:20:09   the San Francisco font is Apple's font.

00:20:11   They own it, they can dictate the terms of use.

00:20:14   One of the things that you can't do

00:20:15   with the San Francisco font is you can't embed

00:20:17   the San Francisco font in an Android app or on a website.

00:20:22   You can call for it in your CSS,

00:20:25   but you can't actually embed the files

00:20:27   that would then show the San Francisco font

00:20:28   to people on Windows or people on Android,

00:20:31   because that's ripping off their copyrighted stuff

00:20:34   and putting it on your server and redistributing it.

00:20:35   Like that's obviously over the line.

00:20:37   So similar things with emoji.

00:20:38   There are apps, sometimes really big apps,

00:20:40   like I think like, I'm not too familiar with the specifics

00:20:42   but I think people were saying like WhatsApp

00:20:44   just copied all of Apple's emoji

00:20:46   was putting it on all their platforms

00:20:48   like on Android and stuff.

00:20:49   Obviously taking Apple's emoji images

00:20:51   and embedding them in your app on Android

00:20:53   is obviously over the line and that should be

00:20:56   enforced by Apple's copyright department.

00:20:57   That makes total sense.

00:20:59   So obviously there is a line of what is too far.

00:21:03   The question is where is that line being drawn

00:21:05   and it seems like that might still be in flux

00:21:08   or maybe there was some interpretation by App Review

00:21:11   that is still in flux, I don't know.

00:21:14   Obviously, I think anything that involves you

00:21:16   taking the images off the system

00:21:20   and manipulating the images themselves

00:21:23   is probably not right and not cool with Apple,

00:21:26   but I don't think it's right for Apple to say

00:21:30   that a text label in your app

00:21:32   can't include characters in this range

00:21:35   being rendered by the system fonts.

00:21:36   That, I think, is too restrictive.

00:21:40   And, you know, so from a technical perspective,

00:21:43   I think it's easy to define that line.

00:21:46   You're allowed to use emoji in your app

00:21:48   if it's being rendered as text,

00:21:51   like by the text system being rendered as text.

00:21:53   That makes total sense.

00:21:55   That seems reasonable.

00:21:56   Because then, Apple can change the images

00:21:58   whenever they want.

00:21:59   It can only ever render that way on Apple's platforms

00:22:01   because you're not embedding the images,

00:22:03   you're just calling for the text characters.

00:22:04   So if you do the same thing on Android or somewhere else,

00:22:07   it's gonna render the Android emoji set,

00:22:08   which is what you should be doing.

00:22:10   That I think is a very good line to draw.

00:22:13   It's unclear whether they are drawing that line or not.

00:22:15   One of the, I think the big app

00:22:17   that kind of kicked all this off

00:22:18   is an app by Sam Eckert called BitTracker.

00:22:21   So BitTracker has basically emoji all over the UI.

00:22:25   Like in text labels, there's like a little emoji

00:22:27   at the end of the text label and everything.

00:22:28   But that looks okay to me.

00:22:30   And so he, this is mostly coming out

00:22:32   on his Twitter account over the last few days,

00:22:35   and originally he got rejected,

00:22:36   then he got a phone call from AppReview,

00:22:38   and in the phone call, it's like AppReview

00:22:40   apparently told him that you cannot use emoji

00:22:44   anywhere in your app UI except the user

00:22:47   being able to enter text.

00:22:49   So if there's a text field, and the user can type emoji

00:22:52   into that text field, that's okay.

00:22:53   And if you're doing things with that text,

00:22:55   like displaying a message that someone else sent

00:22:57   that person that happens to include emoji, that's okay.

00:22:59   But what he was told on the phone is apparently

00:23:02   that you cannot use emoji in the UI in other ways.

00:23:06   But then App Review decided to retroactively go back

00:23:10   and approve his app after all,

00:23:12   and to let him use the emoji that way.

00:23:14   But we haven't yet received clarification on the policy.

00:23:17   So whether the policy's actually different,

00:23:19   we have no idea.

00:23:20   And this is a little bit, you know,

00:23:22   I have a little bit of skin in this game

00:23:24   because Overcast has a couple of small uses of emoji

00:23:27   in the interface.

00:23:28   If you star an episode, a little emoji star will show up.

00:23:32   If you have not downloaded it,

00:23:33   but it's simply being streamed, a little cloud will show up.

00:23:35   Both these things appear in the detail label,

00:23:36   like where the date shows on the episode.

00:23:39   And oh, and I use the emoji heart,

00:23:41   also in tiny little form in the text label

00:23:46   for becoming a premium subscriber.

00:23:48   So obviously I have some skin in this game,

00:23:49   because if this policy is super restrictive

00:23:53   in the way that he was told on the phone

00:23:55   that you can't use emoji at all

00:23:57   unless the user is typing it in,

00:23:58   then everything I just said about overcast

00:24:01   would be prohibited, and that would be unfortunate.

00:24:04   But the unfortunate reality is that we don't know.

00:24:08   This is one of those vague App Store times

00:24:10   where either somebody made a big mistake

00:24:12   by telling Sam Eckerd this policy over the phone,

00:24:14   which I think is unlikely, or the policy is shifting,

00:24:18   which is probably the more likely answer,

00:24:19   that they're considering feedback

00:24:21   and maybe considering they went too far.

00:24:23   So again, some policing of their emoji is necessary.

00:24:27   There's a very clear line where if you're pulling

00:24:30   the images out and putting them onto the platforms

00:24:32   or playing with them as images, that's probably not cool.

00:24:35   But if you are just calling for emoji as characters

00:24:40   in text labels in your app being rendered

00:24:42   by the text system in the system,

00:24:44   I don't think that should be prohibited.

00:24:47   In case, what you said up front, they can legally,

00:24:50   it's totally within their rights to prohibit that.

00:24:53   I just, I don't think they should.

00:24:55   The language of emoji has become such a critical part

00:25:00   of what's currently in fashion in app design

00:25:04   and how people are communicating

00:25:07   and what people expect to see

00:25:08   and what they expect to be able to use

00:25:10   that I think restricting it from being used

00:25:14   in the kind of innocent way I was saying earlier

00:25:16   of like being used in text labels,

00:25:18   restricting that I think would be a big mistake

00:25:19   for just kind of the design landscape of iOS apps.

00:25:24   And I don't think Apple has to worry about

00:25:28   dilution of their brand or losing control

00:25:30   of their copyright with these images,

00:25:32   as long as it's being rendered by the text system

00:25:34   on their device and not in other places.

00:25:37   That actually, in my opinion, reinforces their brand,

00:25:40   because then all these apps that have these unique looks

00:25:43   that include Apple's emoji in their text fields

00:25:46   can't look the same way on other platforms.

00:25:49   That actually, I think, reinforces the design walls

00:25:53   around Apple.

00:25:53   It makes it look, if you want your app to look

00:25:54   like this cool, to have this kind of cool mood,

00:25:57   it has to be on iOS.

00:25:58   It can't be anywhere else.

00:25:59   I think any effort to restrict apps from using emoji

00:26:03   in the UI in this kind of relatively innocent way

00:26:07   with the tech system, I think is not a good decision

00:26:11   and is likely to do more harm than good.

00:26:13   Not to mention, it's gonna really annoy and anger

00:26:16   a lot of developers.

00:26:18   So that last point you brought up about emoji being a differentiating factor for Apple's

00:26:23   platform is I think starting to get at the angle that I'm taking on this.

00:26:29   As Jeremy pointed out in an Emoji Media article, Google has an emoji font too, but theirs has

00:26:34   different licensing terms.

00:26:37   He describes it as an open source license that allows other projects to use it within

00:26:40   the term set out, blah, blah, blah, but like, but it's a different license, right?

00:26:42   So it's still, Google still owns it, but it's easier to use elsewhere.

00:26:46   So Jason Snell had an article recently on six colors talking about, slack used to let

00:26:51   you pick which emoji you want.

00:26:52   Do you want to see Apple's emoji?

00:26:53   Do you want to see Google's emoji?

00:26:54   What are the other choices?

00:26:55   There was a bunch of other ones.

00:26:56   Twitter style emoji, emoji one style, like it had a bunch of emojis clearly like embedded

00:27:01   in the app somehow.

00:27:02   Because I think it was like this on all platforms, right?

00:27:05   Even if you were on Windows or whatever you could get the Apple emoji.

00:27:07   And then obviously Apple had the no no, because they were using, you know, using a different

00:27:12   platform.

00:27:13   So Apple must have gone to them because now you don't have that option anymore.

00:27:15   You can get the Apple emoji on Apple platforms, but not on Windows or whatever.

00:27:19   But if you're on Windows, you can get the Google emoji because Google's license is more

00:27:22   permissive.

00:27:23   When it comes to what Apple should or shouldn't do with its emoji rights, yes, there is the

00:27:29   angle that's saying, "Look, if you're on Apple platforms, you get a nice emoji.

00:27:32   We think our emoji are good.

00:27:34   They make our platform nicer to use because we think they're better than other people's

00:27:38   emoji and people can use them in their interface like Marker or whatever."

00:27:42   And that's a differentiating factor.

00:27:43   The other angle is if Apple decided to have a much more permissive license for its emoji,

00:27:50   what could happen and what I think is already kind of sort of happening with Apple's permission

00:27:54   is they could attain visual dominance, but like they could become the face of emoji to

00:28:03   the world.

00:28:04   Like what they decide the representation of each one of these fairly vaguely specified

00:28:09   emoji symbols is, the artwork they choose and their art style and all their artistic

00:28:15   choices could come to define emoji across the entire industry, including when they decide

00:28:20   to change an emoji or make a new emoji or whatever, that they could become the de facto

00:28:24   leaders of emoji merely by having the most widely used set.

00:28:31   And Google is very widely used as well.

00:28:33   I don't think Google is winning that battle judged based on how often Apple's emoji are

00:28:40   copied without permission rather than using Google's with permission.

00:28:43   It's like given the choice between Google lets me use it in my app and whatever platform

00:28:47   I'm talking about, Apple doesn't, but I kind of like the Apple ones better, right?

00:28:50   So that position, being the sort of visual leader of emoji for the entire world, also

00:28:55   has value.

00:28:57   And I'm not sure the value of saying if you want Apple's nice emoji, come to the Apple

00:29:01   platform is worth the sacrifice because this happens all the time for me like

00:29:05   when you're communicating with emoji if you're just communicating with all your

00:29:09   Apple using friends you're all on the same page about what the emoji looks

00:29:12   like right but if you're communicating across platforms it's harder to know what

00:29:17   they're if they're seeing the little face with the teary eyes or the whatever

00:29:21   like or the thing that looks like a grimace that's supposed to be a grin

00:29:24   like there can be miscommunication because of differences in art style and

00:29:30   people on Apple platforms experience that. Me as an Apple user I wish that

00:29:36   Apple would widely license its emoji to whoever the heck wanted it so I could be

00:29:40   sure that other people would see the same things I did because I have the

00:29:43   expectation that if given the choice they'll choose Apple's emoji over

00:29:47   Google's because Google's is weird and ugly or whatever like I don't know if

00:29:49   that's entirely true but I would prefer that world and I think being the

00:29:53   de facto visual leader emoji has more value to Apple as a company than

00:29:58   retaining its fancy stuff to only be on its platform.

00:30:02   - I think there's also the issue of app design quality.

00:30:07   Like, this is not quite the same,

00:30:09   but honestly it's not that different.

00:30:11   Imagine if we were not allowed to use

00:30:14   the San Francisco font in our apps.

00:30:16   That Apple had this wonderful system font

00:30:18   that all their apps used,

00:30:20   but the third party developers could not use

00:30:22   the San Francisco font in their apps, period.

00:30:24   What that would mean would be that every app

00:30:26   would have to figure out some font that it could use,

00:30:29   probably make its own or buy its own or license its own.

00:30:32   So what that would do is not only would all apps

00:30:35   look different, like way more than they do now,

00:30:37   and sometimes in bad ways, but that also would draw

00:30:40   some lines between apps that had money behind them

00:30:43   and apps that didn't so much.

00:30:45   It would make that more apparent and you would have

00:30:47   a bigger quality, a bigger visual quality difference,

00:30:50   making quality app design less accessible to people.

00:30:53   And also, there would be somebody out there,

00:30:56   like we would all just go use the Google open source fonts

00:30:59   or whatever, like there would be some small collection

00:31:02   of free or low cost fonts for developers

00:31:05   to just go get instead.

00:31:07   And so you would have iOS apps where the design,

00:31:11   as you were just saying, like the design would basically

00:31:12   be dictated by third parties like Google

00:31:15   who are offering some kind of permissive font

00:31:17   that we could use instead.

00:31:18   The emoji situation, if we can't use them

00:31:21   in text tables and stuff, isn't that different.

00:31:23   because the fact is app design is including emoji now.

00:31:27   That is happening.

00:31:28   It's been happening, it's going to happen more.

00:31:31   Emoji is becoming an increasing part

00:31:35   of how people use computers,

00:31:38   how people expect to be able to use apps,

00:31:41   how things should look, how people expect things to look.

00:31:44   So a lot of apps want or need to use emoji in their UI.

00:31:49   And if we can't use Apple's emoji there,

00:31:51   we're gonna have to go get our own made,

00:31:53   which almost no one can afford to do

00:31:54   except the biggest companies,

00:31:55   or go license some open source,

00:31:58   or just go use some open source,

00:32:00   one like Google's, if we,

00:32:01   I don't even know if we're allowed to with their license,

00:32:03   but I know it's pretty permissive, so maybe.

00:32:05   And in which case, what you said is right, Jon.

00:32:07   In which case, then all third-party apps on iOS

00:32:11   look like these weird other emoji,

00:32:13   and then Apple's look weird by comparison.

00:32:15   So that's not a good situation to be in,

00:32:18   which is why I think for the same reason

00:32:21   we are allowed to use the San Francisco font in our apps on iOS as long as we don't rip

00:32:27   out that font and bring it to Android, for that same reason, we should also be able to

00:32:31   use the Apple emoji set in our UIs as long as that emoji set does not leave iOS.

00:32:36   I want it to be used on Android too because I want the uniformity, but as for using it

00:32:40   just in iOS, Apple does have a point which I can imagine being made in some future WWDC

00:32:46   session if it hasn't already in that, they're not going to say this, but it would almost

00:32:51   be better if you, if you like ripped off the image as a ping and put it in your app than

00:32:57   if you did it as a character.

00:33:00   Because if you do it as a character, Apple changes its emoji font from time to time and

00:33:05   your UI, like if they change that star to be something totally different and it clashes

00:33:09   with your UI all of a sudden because it's not yellow anymore and you expected it to

00:33:12   be yellow or the cloud that used to look a certain way, looks a totally different way

00:33:15   way, or sometimes they change the emoji so much that semantically it doesn't even, you

00:33:21   know, convey the same message.

00:33:23   It's probably not a good idea to use a little graphic that you don't control as part of

00:33:28   your user interface unless you're willing to chase that around.

00:33:31   But of course, once you start ripping off the image of it, that's even worse in terms

00:33:34   of Apple getting all uppity about its copyright and everything.

00:33:38   So again, if they gave a permissive license and just considered these like, "These are

00:33:42   free glyphs that you can use in your thing.

00:33:44   If you want to, you know, that's the case where I would say if you want to use it as

00:33:47   your user interface you can only do it on an Apple platform so not on any other ones.

00:33:51   And then the license would say if you want to use it as, you know, as text, like if someone

00:33:55   types text and they want to see it like in the Slack application on Windows, that would

00:33:59   be the case where you say fine you can use our emoji.

00:34:01   Just don't use them in your user interface on Windows but you can use them for typing

00:34:04   on Windows.

00:34:05   Anyway, I think there's definitely a way for Apple to sort of have their cake and eat it

00:34:12   too and I don't think the way that is the most benefit to Apple, setting aside developers,

00:34:17   the most benefit to Apple is keeping it so tight that people can't use it even on Apple's

00:34:22   platform and I don't even think it's going to be just a confine to Apple's platform

00:34:25   because I don't think there's any advantage, or I don't think the advantage is worth

00:34:30   being that restrictive and saying, "Come to Apple for our cool emoji," because people

00:34:34   won't and some other uglier form of emoji will spread everywhere and then Apple people

00:34:38   will feel weird because they'll send you the grimacing face and other people will see

00:34:41   something different and not understand what you're saying and that will make Apple people

00:34:44   feel marginalized rather than the other way around.

00:34:48   I just want us to be able to use emoji on Apple platforms just like Marco said.

00:34:52   Is that so much to ask?

00:34:55   I mean I haven't been following the drama but I'm sure, I'm assuming that there will

00:34:58   be some nuances there because I think Apple's goal is to make sure emoji and stuff looks

00:35:03   nice on their own platform, right?

00:35:05   I don't think they're going to be so restrictive as the, you know, they did let the guys out

00:35:09   through, but that's just me thinking that the App Store has been more reasonable than

00:35:13   unusual in the past year or so.

00:35:17   We are sponsored this week by Casper.

00:35:19   For a limited time, visit casper.com/savings and receive up to $200 off your purchase of

00:35:24   $2,000 or more.

00:35:26   This special offer expires February 20th, 2018.

00:35:29   See casper.com/terms for more details.

00:35:32   Podcast listeners are invited to take advantage of Casper's competitive limited time President's

00:35:37   Day offer for the first time ever.

00:35:40   Casper has three wonderful mattress lines to choose from.

00:35:43   The original Casper, the innovative new Wave,

00:35:46   and the streamlined Essential.

00:35:47   And they also offer sheets, pillows, bed frames,

00:35:50   even dog beds, they aren't just a mattress company.

00:35:53   So everyone in the family can sleep comfier

00:35:55   than ever before.

00:35:56   Casper is the place to shop for

00:35:58   President's Day mattress savings this year.

00:36:00   They sell directly to you, eliminating added cost

00:36:04   and saving you money.

00:36:05   And you can be sure of every purchase from Casper

00:36:08   because they offer a 100 night risk free

00:36:11   sleep on it trial.

00:36:12   If it doesn't work out for you,

00:36:13   returns are hassle free if you aren't completely satisfied.

00:36:17   Sleep in superior comfort for the rest of 2018 and beyond

00:36:21   with the help of the internets

00:36:22   and my favorite mattress brand.

00:36:25   For a limited time, visit casper.com/savings

00:36:28   and receive up to $200 off your purchase of $2,000 or more.

00:36:32   This special offer expires February 20th, 2018.

00:36:35   See casper.com/terms for more details.

00:36:38   Once again, that's casper.com/savings.

00:36:41   And this offer expires February 20th, 2018.

00:36:44   Thank you so much to Casper for sponsoring our show.

00:36:47   (upbeat music)

00:36:50   I started using a to-do app this past winter.

00:36:54   I had always-- - Which one?

00:36:55   - Well, I'll get there.

00:36:56   - Okay.

00:36:57   - I had always kind of used reminders,

00:36:59   the built-in Apple Reminders app, very lightly.

00:37:02   Like I'd have it remind me of maybe one thing a week.

00:37:05   And you know, simple stuff like, take out the garbage,

00:37:07   you know, stuff like that.

00:37:09   I very lightly used it and it was never really a habit.

00:37:13   For Overcast planning, I kept a task paper document

00:37:17   since the beginning of Overcast and even before that

00:37:18   since, for a lot of Instapaper.

00:37:21   And I still find the task paper format really nice

00:37:24   for like planning a software release

00:37:25   for an indie developer like me.

00:37:28   But this past holiday season, I was just super busy

00:37:30   and like everything in my life was like half done projects

00:37:34   and things I had to worry about and check in on

00:37:36   and try to complete, all this crazy stuff.

00:37:38   And I finally started using reminders very heavily.

00:37:43   And what really got me into it was Siri Capture.

00:37:48   Siri frustrates me a lot,

00:37:50   but it's pretty good at reminders.

00:37:53   Like it's not perfect, but it's close enough

00:37:56   that it's useful.

00:37:58   And I found that to be a very nice way to capture,

00:38:01   like as I'm out, as I'm thinking about something,

00:38:03   oh, remind me to blah, blah, blah, you know, okay.

00:38:06   The problem with Apple Reminders is that

00:38:10   while the Siri capture on Apple Reminders is great,

00:38:13   pretty much everything else about it is terrible.

00:38:16   Like the only reason why I ever used Reminders

00:38:19   to enter tasks is because I'd never had to actually

00:38:22   use the Reminders app to enter a task.

00:38:25   Creating a task on the Reminders app is awful.

00:38:27   Like the UI is incredibly clunky, it's ugly, it's hideous,

00:38:33   It still has a lot of weird iOS,

00:38:36   pre-iOS 7 kind of behaviors and looks and everything.

00:38:39   And it's especially horrible on the Mac.

00:38:43   Like it's way worse on the Mac than it is on iOS.

00:38:46   The Apple Reminders app on the Mac is honestly embarrassing.

00:38:49   And maybe at some point they're going to do

00:38:53   what they did with Notes, where they totally

00:38:55   redid the Notes app a few years back and made it awesome.

00:38:57   Maybe that's coming to Reminders,

00:38:58   I hope it's coming to Reminders,

00:38:59   but we don't know whether that will happen yet.

00:39:01   So I started seeking out third party apps

00:39:03   to help me finally.

00:39:05   Do either of you use reminders or to-do apps?

00:39:08   - Because of hearing a friend of the show, Mike Hurley,

00:39:13   talk about it constantly, I think it was Mike,

00:39:16   I'm pretty sure it was Mike, now I'm having second thoughts,

00:39:18   but anyway, somebody in my life had talked

00:39:19   about the app D-U-E, Do, and because I decided

00:39:24   that I wanted to have occasional periodic reminders

00:39:28   that were repeating, and all I wanted was reminders,

00:39:30   I didn't want to go all the way into like OmniFocus or anything like that.

00:39:33   I just wanted to have reminders that repeated.

00:39:35   I've started using D U E do.

00:39:38   And if I'm honest, I kind of really love it because it does exactly what I want,

00:39:44   which is reminders oftentimes, but not always periodic and most importantly,

00:39:49   that will nag you to death, which is exactly what I need because I'm the

00:39:54   kind of person that'll be like, Oh yeah, take out the trash.

00:39:56   Yeah, sure.

00:39:56   I'll do that in 10 minutes.

00:39:57   You know, like clear, you know, clear the notification or whatever.

00:40:00   Oh no, you can't clear the notification until you did it. There's your mistake. You can never clear. Never complete unless it's complete.

00:40:07   I know. I'm not saying it's not a KC problem, but I know myself.

00:40:10   One has to know oneself, and I know myself, and myself is the kind of person that would say, "Oh, yeah, sure,

00:40:17   I'll get that in a minute." And so I have been using Dew for, I want to say,

00:40:23   three to six months, and I kind of love it.

00:40:27   I just use the default reminders one.

00:40:29   one, mostly because it was the one that had Siri support for so long when no other ones

00:40:33   did, right?

00:40:34   So remind me to whatever, like that's one of the few times I use Siri to do that.

00:40:38   Occasionally I will type them in and you can actually type like remind me to, you know,

00:40:43   do whatever at 7 p.m. tomorrow and that will save you from having to look at the UI that

00:40:47   lets you pick dates and times, which is not fun to use.

00:40:52   But that's it.

00:40:53   Just, I've never used any third party apps.

00:40:54   I use it very rarely.

00:40:55   It's usually like, like Mark said, usually for capture.

00:40:59   Like I'm in a situation where however I would normally make sure I remember to do this is

00:41:05   not available.

00:41:06   I can't put it on my calendar.

00:41:07   That would be too cumbersome.

00:41:08   But my phone is there.

00:41:09   So you just pick it up, blah, blah, blah, remind me to do the blah, blah, blah.

00:41:12   Like remind me to go pick up my daughter in 15 minutes.

00:41:15   Remind me to, I use it occasionally for, remind me to stir the sauce in 10 minutes or whatever.

00:41:21   That's where I get annoyed that it won't do a repeating reminder for 10 minutes because

00:41:24   I don't know why because it won't.

00:41:28   But yeah, not very frequently, but when I do use it, it's Siri and it's on my phone

00:41:32   and it's plain old Reminders.

00:41:33   Quick addendum, I should mention that for shopping lists, and only shopping lists, I

00:41:40   also use the app Anylist, which I love.

00:41:43   It's really, really great at doing shared shopping lists before everyone writes me email.

00:41:49   Yes, I am aware that Reminders can do shared Reminders lists.

00:41:54   I am aware that that's a thing.

00:41:56   I don't care for it.

00:41:58   I much prefer Anylist for reasons that are not interesting for right now.

00:42:02   But anyway, I use Anylist and I don't remember if I stumbled upon that myself or if that's

00:42:07   because Jason Snell, who is also an Anylist person, had told me about it.

00:42:12   It could have been either.

00:42:13   But one way or another, if you're the kind of person that wants to have a grocery list

00:42:17   that's shared between you and your partner, which is me, I wouldn't, sorry, your partner

00:42:21   isn't me, you know what I mean. Point I'm driving at is that if you want to have a shared

00:42:27   shopping list, I cannot recommend any list enough.

00:42:30   The notes will do that now too. The fancy version of notes has, I mean, you can make

00:42:34   a shared note and you can put those little radio buttons on. It's not as nice as any

00:42:37   list. But it's a good way to try out, like to see if this is a thing that you'll want

00:42:43   to use and you don't want to bother downloading another app. Just try it in Notes and if it

00:42:46   seems nice, get a better app like Anylist.

00:42:48   - Yeah, yeah, I keep meaning to try any list

00:42:49   because of your recommendations, Casey, mostly.

00:42:52   Like I've heard you mention it a few times,

00:42:54   and yeah, because I would like to,

00:42:56   like right now, I just have the shopping list,

00:42:57   and the way we share it is TIFF tells me,

00:42:59   hey, add this to your shopping list.

00:43:01   - Oh, that's barbaric, that's barbaric.

00:43:03   - That's a good system that I bet she likes.

00:43:05   So I have a worse problem.

00:43:06   Like I've been trying to get my wife

00:43:08   to use any kind of shared grocery list.

00:43:11   I've bought and subscribed to any list.

00:43:12   I've tried using Notes.

00:43:14   I've tried using other third-party apps

00:43:15   whose names I've forgotten.

00:43:16   I just go down to my purchases

00:43:17   And just the problem is she just wants to use paper.

00:43:20   She just wants to use paper that's like in her purse or in her wallet, and she wants

00:43:24   to use the whiteboard that's on the fridge and like three pieces of paper on the whiteboard.

00:43:29   I'm like, "But those aren't electronically shared."

00:43:32   And if I write it on the whiteboard, you're like, "Oh, I didn't see it on the whiteboard.

00:43:34   I had a separate list I wrote down on this piece of paper."

00:43:36   It's like, "Huh."

00:43:37   So I'm stuck outside the digital realm.

00:43:39   There's no real computer solution to that.

00:43:42   Just like I bet Tiff enjoys a system where she just yells things to you and you do it.

00:43:45   It's like paper doesn't work for me because,

00:43:48   so right now I use the app Clear,

00:43:49   and I know I've heard they have like a new beta going on

00:43:52   that's supposed to be a lot better,

00:43:53   but I'm not on that beta, I'm just using the old one,

00:43:54   which is like not even updated for the iPhone 10

00:43:56   and everything, but what I like about Clear

00:43:58   is that it's very simple and it lets me

00:44:00   manually reorder things really easily.

00:44:02   You just drag the row and it's,

00:44:04   because what I do with my shopping list,

00:44:05   the reason I don't use paper, is,

00:44:07   you know, I'll enter things, you know,

00:44:08   however they come to me, but then before I go shopping,

00:44:11   I'm the shopper and before I go shopping,

00:44:13   I reorder them to be in the order

00:44:15   but I know they're in the store.

00:44:17   Because I know the stores really well,

00:44:18   so I know where things are, and so I'll arrange them.

00:44:21   Okay, I'll be walking to the produce first,

00:44:23   put all the produce stuff on top.

00:44:24   And so as I'm going through the store,

00:44:25   I can very quickly check them off.

00:44:28   - Marco, why do you do this to yourself?

00:44:30   Any list will do this for you.

00:44:32   - Does it know my stores?

00:44:33   - Well, no, it doesn't know your stores,

00:44:34   but if you enter, I don't know, like banana,

00:44:37   it will be smart enough to put that in the produce section.

00:44:40   So a single list will be sectioned to,

00:44:43   and it defaults to groceries,

00:44:45   you can set up other things, but if you enter banana,

00:44:49   it is smart enough to put that in the produce section.

00:44:51   If you enter milk, it's smart enough

00:44:52   to put that in the dairy section.

00:44:54   You are begging for any list, you just don't know it.

00:44:57   - All right, I will definitely give it a shot.

00:44:59   All right, anyway, so going back to my to-do item,

00:45:02   which I've been trying to talk about for like two weeks.

00:45:03   - Sorry.

00:45:04   - I'm gonna make this happen, dammit.

00:45:06   All right, so what I really came to want,

00:45:09   like I wanted basically something that was fairly simple,

00:45:13   like Reminders that had great Siri integration.

00:45:16   I basically wanted like Reminders Pro.

00:45:18   Like what Reminders would be if Apple did it

00:45:21   from scratch today and actually put resources on it

00:45:23   instead of just whatever the heck is working on it now,

00:45:25   which is probably nobody.

00:45:26   What I want is Reminders Pro basically.

00:45:30   I don't want to practice getting things done

00:45:33   or any kind of GTD-like system.

00:45:35   I'm not that kind of person.

00:45:38   I respect people who do that.

00:45:40   That's great for you.

00:45:42   That's not for me at all.

00:45:43   I want basically a flat, simple, single screen home view

00:45:48   of what's going on.

00:45:51   When I complete an item, I want it to disappear.

00:45:53   I don't want to see future items at all

00:45:56   until their date comes up.

00:45:58   I have the concept of separate projects or lists,

00:46:01   but I only need one level of that.

00:46:03   I don't need things like contacts and tags to also be here.

00:46:07   I really just need a very simple hierarchy,

00:46:10   very simple flat structure.

00:46:12   And I really dislike the concept that most of these other

00:46:15   apps have where they have an inbox between capture

00:46:20   and when it's in like its home.

00:46:22   I don't want that extra step.

00:46:24   I don't wanna have to review my inbox.

00:46:26   I wanna just say in my Siri command when I'm recording

00:46:29   the to do item, I wanna just say where it goes right then

00:46:33   and not have anything in the inbox.

00:46:35   If I don't specify a project, I want like a default list

00:46:39   that just all the two items just arrive in that list.

00:46:42   This is basically how Reminders works.

00:46:45   Just, Reminders is terrible in all other ways.

00:46:47   (laughs)

00:46:48   I want something better.

00:46:49   So, the Mac is my primary platform for viewing,

00:46:54   editing, and completing tasks.

00:46:56   So it must have a good Mac app.

00:46:59   My primary capture platform is Siri on the phone.

00:47:03   So it must have an iOS app with Siri integration.

00:47:06   It should be able to handle recurring tasks pretty well,

00:47:09   because I have a lot of those.

00:47:10   And I want whatever app I use to be an active development

00:47:14   on all three major Apple platforms, Mac, iPhone, and iPad.

00:47:18   So some nice to haves.

00:47:20   I would like maybe to have shared lists or shared projects.

00:47:24   I think I might someday want a web service

00:47:28   for some kind of API integration,

00:47:29   but I haven't in practice actually needed that

00:47:32   for anything yet, so maybe I won't actually need that

00:47:34   after all, and just kind of a nice to have,

00:47:36   like the apps should be pretty,

00:47:38   because I'm an Apple person, dammit,

00:47:40   and I like things to be pretty.

00:47:42   So I want an attractive app that is simple

00:47:45   and has all this other stuff.

00:47:46   Okay, so Apple Reminders was not doing it for me.

00:47:49   In many ways I like it, I like the integration.

00:47:51   Apple Reminders is the only one

00:47:54   that works with Siri on the Mac

00:47:57   because there is no Siri kit on the Mac.

00:48:00   So any of the third party apps,

00:48:01   no matter how good their Mac apps are,

00:48:03   they cannot take a to-do item from Siri on the Mac.

00:48:07   That's annoying, but that's an Apple problem, really.

00:48:09   That's not the app's fault.

00:48:11   You know, the Apple Reminders app will always get

00:48:15   system integration abilities and stuff like that first,

00:48:18   before there's a third-party way to do it,

00:48:20   if it doesn't arrive at the same time.

00:48:21   So there's a big advantage to Apple Reminders there,

00:48:23   just keeping it simple, keeping it in the system

00:48:24   and everything.

00:48:25   But again, it's just, it's such a clunky app,

00:48:28   I really didn't like it very much.

00:48:30   I tried Todoist.

00:48:32   Todoist has tons of features.

00:48:34   It's very much web service-oriented,

00:48:37   so it has really good collaboration features,

00:48:39   shared projects, shared list,

00:48:40   API integrations, stuff like that.

00:48:43   They have apps on every platform.

00:48:45   But the Todoist Mac app is horrendous.

00:48:48   It is basically a very poorly wrapped web app.

00:48:53   - Like Slack.

00:48:54   - It makes Slack look native.

00:48:56   Like it's really--

00:48:57   - Oh, I cannot believe that.

00:48:58   - Oh, it's bad.

00:48:59   Every interaction with the Todoist Mac app

00:49:02   feels just wrong and limited

00:49:04   and nothing works the way you think.

00:49:06   Honestly, I think it's kind of embarrassing.

00:49:08   If iOS is your primary platform,

00:49:11   like I understand why Federico likes Todoist,

00:49:13   because iOS is the primary platform

00:49:15   and he needs collaboration features

00:49:16   with some of his employees and stuff,

00:49:18   so that makes total sense.

00:49:19   But for me, as somebody who works alone on a Mac,

00:49:22   I cannot recommend Todoist at all.

00:49:24   It's rough.

00:49:25   I also, I couldn't get over,

00:49:27   like hearing the way that people like Federico

00:49:30   and Mike talk about Todoist,

00:49:31   one of the problems is that Siri

00:49:33   doesn't really recognize the pronunciation todoist,

00:49:36   you have to pronounce it wrong, like to-doist or other,

00:49:39   and like, I couldn't get over that.

00:49:40   Like, I know that's kind of a stupid reason

00:49:43   to not pick an app, but like,

00:49:45   even if everything else was great about it,

00:49:46   the fact that every time I added a reminder,

00:49:48   I had to tell my phone to add something to to-doist,

00:49:50   I didn't know if I could, I couldn't get past that.

00:49:53   So, I also, I tried OmniFocus.

00:49:58   This OmniFocus seems to be kind of like the good default

00:50:01   for if you want a powerful task management system,

00:50:04   you should probably just use OmniFocus.

00:50:05   The Omni Group makes amazing software.

00:50:08   They have an amazing, long-standing reputation

00:50:11   for very high quality Mac and iOS software.

00:50:15   And OmniFocus has been around for a long time.

00:50:18   It's very mature, there's tons of guides

00:50:20   on how to use it and everything.

00:50:21   It has first-class Siri integration.

00:50:23   It's frequently updated, very well supported,

00:50:26   very powerful, very customizable,

00:50:29   but it's ultimately very complex.

00:50:33   It's far too complex for me.

00:50:35   Maybe someday I will graduate to OmniFocus,

00:50:39   but I'm not ready for that right now,

00:50:40   and I might never be.

00:50:42   You know, it has a lot of roots in getting things done,

00:50:44   and the kind of people who practice that kind of

00:50:47   more structured system than what I'm looking for,

00:50:49   maybe it would be possible to heavily customize it

00:50:52   to be what I want, but I honestly don't have

00:50:54   the time or will to do that.

00:50:56   And again, maybe someday I will,

00:50:57   but for now OmniFocus is just way too complex for me.

00:51:01   So then I tried Things.

00:51:04   Things has frankly the best Mac app I've seen.

00:51:08   Like not among all Mac apps, but among to-do apps.

00:51:11   It's a really good Mac app.

00:51:12   I think the Mac app is actually better than their iOS apps.

00:51:14   Again, first class Siri integration.

00:51:17   One thing I like about Things is that it's one syllable

00:51:21   and it's a regular word that Siri

00:51:22   can always recognize properly.

00:51:24   And it also doesn't sound too nerdy

00:51:26   If I'm saying it when other people are around,

00:51:29   like if I have to say "to doist," to Siri, that's rough.

00:51:32   OmniFocus sounds okay, but a little nerdy.

00:51:35   Things, you breeze right by, you don't even hear it, right?

00:51:39   - On this topic of the names of the app, by the way,

00:51:41   this is another place where I feel like

00:51:44   I've been waiting too long for what seems like

00:51:47   a pretty obvious advancement.

00:51:49   I understand why Siri works the way it does

00:51:51   with the name of the app as part of the sentence

00:51:53   that you say it, but that's not how people

00:51:54   wanna talk to their phones.

00:51:55   even if it's a nice one-syllable normal word,

00:51:57   that's not how people want to talk to things, right?

00:51:59   If someone decides that they're gonna use things

00:52:01   as their reminder app,

00:52:02   there should be a way in iOS to tell it.

00:52:05   When I say, "Remind me to blah, blah, blah,"

00:52:07   I mean to do it in things 'cause I use things.

00:52:09   Like, I don't think it's asking for the moon.

00:52:11   And it makes the experience so much better

00:52:13   because your interface is talking.

00:52:15   And once I feel like I have to talk in a particular syntax,

00:52:17   I'm playing a text adventure game with my phone.

00:52:19   I don't want to do that.

00:52:20   I want to speak in a natural way.

00:52:23   That's one of the beautiful things that I love about a lot of the cylinders and like

00:52:26   my Google Home.

00:52:27   For my Google Home, I just say things however the hell it occurs to me to say it and it

00:52:32   amazes me that it figures out what I meant in a very narrow problem domain like "remind

00:52:37   me to" or like "there's already a million ways to say set a reminder blah blah blah."

00:52:41   I shouldn't have to insert the name of the app I want to use, especially if it's the

00:52:44   same app every time.

00:52:45   That would avoid the toutes problem and it would just make it better.

00:52:50   This gets back to the, you know, default apps things or whatever.

00:52:52   Anyway, if Apple's looking for something for iOS 13, not iOS 12, make that experience

00:52:58   better because we do like talking to our phones, but we don't like to say to douse or things

00:53:03   or whatever.

00:53:04   - Yeah, and there was actually, Federico brought this up on Kineted this week, the episode

00:53:08   that you all should have already been listening to for the Jeremy Bird's emoji interview.

00:53:11   But anyway, that was also in this episode.

00:53:13   And Federico mentioned, people have for years wanted Apple to have default apps choice for

00:53:19   things like the browser and the mail client.

00:53:21   And I understand why they don't do that,

00:53:23   and that's been argued to death,

00:53:25   but this does seem like an area where

00:53:28   that's very easy to say yes to.

00:53:31   Like, SiriKit has a limited number of intents.

00:53:35   There doesn't seem to be any downside

00:53:38   to enabling a default option for somebody to say,

00:53:41   "Okay, Things is my reminders app.

00:53:43   "Always put reminders and things.

00:53:45   "X or Y is my notes app."

00:53:47   That should be supported.

00:53:49   there should be a system-wide preference

00:53:50   to just default that.

00:53:52   And if Apple really wants to make Siri awesome,

00:53:55   I hope they consider that.

00:53:56   But anyway, so, just finishing up with things.

00:54:01   There's no shared functionality,

00:54:04   no kind of shared groups or lists or projects

00:54:07   or anything like that.

00:54:08   There is no API or public web service,

00:54:11   but they did recently add an email in feature

00:54:13   so you can kind of simulate parts of it.

00:54:15   You can get the add this to things

00:54:18   working by basically using email as the gateway.

00:54:20   One of the annoying things about things is that

00:54:23   I can't figure out how to make a new task from Siri

00:54:28   go directly to no project anytime.

00:54:32   You can say like you're reminding me today

00:54:34   to do this thing and things, and then it gets no project,

00:54:37   but it gets today.

00:54:39   I can't figure out how to make it go no project,

00:54:41   if you say anytime, it goes to the inbox.

00:54:43   I don't want anything to ever go to the inbox ever.

00:54:46   On the Mac you can configure it to basically skip that

00:54:48   with quick entry, but you can't do that

00:54:50   with SiriKit on iOS yet, and it annoys me.

00:54:53   But for the most part, I have found things pretty good.

00:54:57   There's a couple of other small weirdnesses.

00:54:59   So for instance, the repeating UI is really weird.

00:55:04   Once you get it set up, it's fine,

00:55:07   but creating recurring events is very unintuitive.

00:55:11   I mentioned earlier that I don't want things

00:55:14   that are in the future to show up.

00:55:16   until it's their time to show up.

00:55:18   That is only done on the granularity of the day level.

00:55:22   So you can't say, don't show up until Wednesday at 9 p.m.

00:55:27   that I have to put out the cardboard recycling.

00:55:30   All day today, I've had put out the cardboard recycling

00:55:33   on my to-do list, even though I really shouldn't do it

00:55:35   till 9 p.m.

00:55:36   You can set a reminder to alert you of that at 9 p.m.,

00:55:39   but it's gonna show up on your list all day.

00:55:41   I don't love that.

00:55:42   And finally, whether it is an active development or not

00:55:47   is kind of a big question mark with things

00:55:50   because the developer of it, Culture Code,

00:55:53   went for a very long span between previous versions

00:55:58   and it seemed that many times

00:56:01   as though the app was abandoned,

00:56:02   and it turned out it wasn't,

00:56:03   but there were such long delays

00:56:06   that it's a little hard to shake the fear

00:56:08   that it might get abandoned again

00:56:10   or go for long spans without updates again.

00:56:12   And so finally, after trying all these apps,

00:56:15   I finally understand why so many of our podcaster friends

00:56:20   are always talking about their frustrations

00:56:22   with their to-do apps and why they're always

00:56:24   switching between them and saying,

00:56:25   oh now I'm switching to this 'cause this thing

00:56:27   annoyed me about this other app.

00:56:28   I finally get it because this is such,

00:56:32   it's a hard problem, like this is a very personal app.

00:56:35   You're trying to codify people's internal mental systems

00:56:39   in an app and that's really hard to do

00:56:41   in a way that pleases many people.

00:56:43   No, none of these apps are perfect for almost anybody.

00:56:47   Everyone is kind of 70% satisfied

00:56:50   with any given one at most.

00:56:53   One thing I thought of though is that

00:56:54   there's really nothing saying that you have to only use

00:56:57   one to-do app for everything.

00:56:59   Like Casey, you mentioned earlier that you use any list

00:57:02   for groceries and you use do for some other stuff.

00:57:05   That is totally a solution.

00:57:07   If you don't like the way things does recurring reminders,

00:57:11   Like I could just have some other app

00:57:13   remind me to take out the trash.

00:57:15   Like I don't need things to be the app

00:57:17   that does all that stuff.

00:57:18   There's nothing saying that you only have to use

00:57:21   one app for everything.

00:57:23   You can have different to-do apps for different needs

00:57:26   depending on what they're good at.

00:57:27   Your grocery store shopping list does not need

00:57:30   to necessarily be in the same app as like

00:57:33   your next version of your iOS app

00:57:35   and what you're doing for it.

00:57:36   It would be nice if one app could do multiple things

00:57:38   like that in a way that didn't step on each other,

00:57:39   but it doesn't have to be.

00:57:41   I've settled on things for the time being,

00:57:44   and I think I'm gonna be here for a while

00:57:45   because the Mac app is just so much nicer

00:57:47   than the other Mac apps.

00:57:48   And so I like things a lot.

00:57:51   It does fit what I want in some ways.

00:57:54   There's some things about it that are just friction to me,

00:57:57   but for the most part, it's the closest I've found

00:58:00   to good for me, but I'm also probably gonna check out

00:58:03   any list for grocery stuff, and I'm really curious

00:58:06   to know whatever the heck Clear is working on

00:58:07   their next version for other really casual stuff

00:58:10   like groceries.

00:58:12   But ultimately, I'm now using a to-do app and its things,

00:58:15   and it's pretty nice, not perfect,

00:58:17   but definitely the nicest for me.

00:58:21   Once I kinda got a feel for it, it just felt really right

00:58:24   for the way I like to use things

00:58:26   and the way I like things to look and work and behave.

00:58:29   And yeah, there is some friction,

00:58:31   but ultimately I like it, so thanks, things.

00:58:34   - What do you use for your calendar?

00:58:36   - Calendar.

00:58:37   (laughing)

00:58:38   - And so how do you decide whether something goes

00:58:41   on your calendar or in one of those to-do app things?

00:58:46   - Oh, that's easy.

00:58:47   A to-do app is a list of things I need to get done.

00:58:49   A calendar is a list of time slots that are booked.

00:58:54   So, and this is, great apologies to people like Merlin

00:58:58   who have talked about this at great length forever.

00:59:00   But a calendar entry is a thing that I have to do

00:59:04   at that time. So like if I have to have a meeting with somebody or recording a podcast,

00:59:10   like that has to happen at a certain time. That is not a to-do entry. A to-do entry is

00:59:16   things like, you know, follow up about this thing I had this email about. Like, you know,

00:59:20   stuff like, it's or like, you know, take out the trash, you know, sometime today or

00:59:24   stuff like that. That's a kind of…

00:59:25   But you said you wanted to be told to take out the trash precisely at nine.

00:59:28   Yes, but I don't have to do it at nine. I have to do it sometime between nine and

00:59:32   tomorrow morning.

00:59:33   So where would you put the fact that a plumber is coming?

00:59:37   That's a calendar entry, because that is like a thing that is happening at a certain

00:59:41   time.

00:59:42   It's not a to-do item, it's an event.

00:59:43   Like that's a very different, you know, semantic thing.

00:59:46   I think that the line is fuzzier than you're making it sound, because anything that I feel

00:59:51   like has a date and a time associated with it is a potential candidate for a calendar,

00:59:56   but it's also a potential candidate for a reminder, but it's also a potential candidate

01:00:00   for a to-do item because you want to do it at a particular time, depending on how you

01:00:03   view things.

01:00:04   You just use one calendar.

01:00:05   Casey, what do you use?

01:00:06   >> Casey McLean I use a shared Google Calendar that is off

01:00:12   of my Gmail account that Aaron and I share, and that is the canonical family calendar.

01:00:21   That being said, anything that happens during the workday or anything that for some reason

01:00:24   I don't want Aaron to see, like maybe I've booked a time to go buy her a gift or something

01:00:29   like that.

01:00:30   thing I can think of that I wouldn't want her to see or maybe something that's irrelevant

01:00:33   to her.

01:00:35   That goes on my work calendar just because...

01:00:37   No, you're going to the Tesla dealership.

01:00:39   Exactly right.

01:00:40   How did you know?

01:00:43   But yeah, so basically the Google calendar that's associated with my Gmail account, well

01:00:47   strictly speaking my Google Apps for my domain account, that is a shared calendar that she

01:00:53   has on her phone, that she has on her computer, that's everywhere.

01:00:56   That is the canonical List Family calendar.

01:00:58   And then anything that is basically anything that happens during the workday or for some

01:01:03   reason I don't want her to be burdened with, that is on my work calendar.

01:01:06   >> What is your work calendar?

01:01:08   >> It's Google Apps for their domain.

01:01:10   >> Oh, is there?

01:01:11   But it's all Google.

01:01:12   >> Yeah, it's Google everywhere.

01:01:13   >> So I also have a separate work calendar.

01:01:15   It's not Google because my work doesn't use Google at work.

01:01:19   It's Outlook, whatever exchange.

01:01:21   And I think that's split.

01:01:23   I like that split.

01:01:24   I like not having my work calendar mess with my family calendar.

01:01:26   because my work calendar is totally bonkers.

01:01:29   Like it is just massively booked and oversubscribed

01:01:32   and I would never want that noise in my life, right?

01:01:35   And then the life calendar is less.

01:01:37   I mean, it's the split the markup,

01:01:39   but it's pretty much the same split that I use.

01:01:41   Like on the family calendar, it's, you know,

01:01:45   podcast recording.

01:01:47   I would put plumber on the calendar.

01:01:50   It would be an all day item.

01:01:51   And then reminders are,

01:01:54   if I'm doing something off the normal schedule.

01:01:57   I do put what time I have to leave work on my work calendar.

01:02:02   I do put what time I have to leave home on my home calendar

01:02:05   for days where that is different than normal, right?

01:02:08   So if I have to, if I have a very early meeting

01:02:11   and I wanna remind myself,

01:02:12   don't forget today you have an early meeting,

01:02:14   you actually have to be at work

01:02:15   earlier than you normally are.

01:02:16   I put that on my home calendar early in the morning.

01:02:20   And if I have to leave work early

01:02:21   to like a parent-teacher conference,

01:02:22   I put that in my work calendar,

01:02:24   Which is weird, like I was thinking of that for the to-do apps as well, and when I use

01:02:27   reminders, a lot of the time I'm choosing a system based on where I think I'll be when

01:02:32   I'll need this information and what I think I'll be doing.

01:02:34   If I think my phone will be with me, reminders is a candidate because that's where I'm going

01:02:37   to see it.

01:02:38   But if I think I won't have my phone, if I put in a reminder it's not going to do me

01:02:41   any good, you know, if I'm someplace where I don't have that.

01:02:46   And that's the homework calendar split, is I don't want to look at my work calendar at

01:02:49   home and I do look at my home calendar at work which requires some combining of stuff.

01:02:53   But for the to-do stuff, like Marko said with the multiple applications that are task-specific,

01:03:00   I just got done asking for the ability to say, "Oh, remind me of whatever," and have

01:03:04   it use a single app.

01:03:05   The next logical step in that is to have it understand you well enough to know when you

01:03:09   ask to add something to your shopping list that it means this app, but when you say something

01:03:14   about the trash, it means that app.

01:03:16   These are all within the realm of reason, because these are fairly narrow problem domains,

01:03:21   and also within the realm of, you know,

01:03:22   Apple's favorite thing, machine learning,

01:03:24   where if you keep talking about the trash,

01:03:26   it should eventually like learn or ask you

01:03:28   when your actual trash day is.

01:03:30   And you should be able to say increasingly offhand

01:03:34   and casual things, which result in the correct,

01:03:37   being reminded at the correct time,

01:03:39   because it has some context in history

01:03:41   about what you've done in the past.

01:03:42   We're not asking for how 9,000 here.

01:03:44   I think all this is within the grasp,

01:03:47   but it's the stuff that probably Google

01:03:48   probably already knows about us

01:03:49   from monitoring all our activities through its various applications and stuff.

01:03:54   I would love for those systems to get just a little tiny bit smarter.

01:03:58   So Marco, how long until you write your own is really what we all want to know.

01:04:03   That is not an unreasonable question.

01:04:05   It would be totally my style to get upset with all the options and just write my own.

01:04:10   But honestly, I don't think that's going to happen.

01:04:13   First of all, there's limited time in the day.

01:04:17   - It's a little bit of a crowded market perhaps.

01:04:19   - Honestly, well, it isn't,

01:04:22   because there's only so many that are actually decent.

01:04:25   But the problem is that for,

01:04:27   this is kind of a similar problem that John Gruber

01:04:30   and Brent Simmons and Dave Whiskas had with Vesper,

01:04:33   is that to enter this market in a competitive way

01:04:37   that's useful to a lot of people,

01:04:39   you really need to be on all of the Apple platforms

01:04:42   at once at launch.

01:04:44   That's really hard for any indie to do these days.

01:04:47   I'm not gonna use a to-do app that is not on my Mac

01:04:53   and my iPhone and my iPad.

01:04:55   And a lot of people are also gonna need a watch app.

01:04:57   That's getting really, the barrier is just so high

01:05:01   that it is certainly possible for people to do it.

01:05:04   And there's gonna be certainly some people

01:05:05   who are totally fine to have it say only on their phone.

01:05:09   That's not me.

01:05:10   And that's not many people, unfortunately.

01:05:11   And so, in order to make a good to-do app

01:05:14   that's actually competitive,

01:05:16   you really need to launch on all those platforms at once.

01:05:21   And that's just really a massive amount of work

01:05:25   that I don't think I'm ever gonna have,

01:05:27   not only the bandwidth to do, but also,

01:05:29   I don't have the passion for this market at all.

01:05:32   I'm happy to use these apps and talk about them

01:05:34   once on a podcast for 30 minutes,

01:05:36   but I really don't think I'm going to fall in love

01:05:39   with to-do app systems and suddenly want to make my own,

01:05:43   enough to actually be willing to devote

01:05:46   the massive amount of time it would take

01:05:48   to make apps for all these platforms

01:05:51   to make it actually useful.

01:05:52   - So another that actually reduces the amount of work,

01:05:55   but it is a novel approach to reducing the apparent footprint

01:05:59   on all the different platforms,

01:06:00   is the approach that I think,

01:06:01   I think Google's taken this approach,

01:06:02   I'm sure other apps have done it as well,

01:06:04   where you decide that the problem you're solving,

01:06:06   whatever it is, to-do apps or whatever, you could implement that entirely server-side

01:06:13   and with some smart somewhere, right?

01:06:15   And that the interface to those smarts will be something that is not directly connected

01:06:20   with a task.

01:06:21   So in Google's case, like I forget, what was it?

01:06:24   Was it Allo or something?

01:06:25   They basically had a chat app.

01:06:26   It's bubbles of text.

01:06:27   It's you versus the thing you're communicating with.

01:06:30   And that chat app can be used to chat with any person or thing.

01:06:34   There's nothing in the chat app that is specific to the problem.

01:06:36   So if you have the chat app on all the different platforms, the chat app is on your watch,

01:06:41   it's on your phone, it's on your Mac or whatever, you just write that chat app once.

01:06:44   And then what you're conversing with is a series of intelligent agents that know how

01:06:48   to do certain kinds of things.

01:06:50   And so then you implement your to-do app entirely server-side, and then when you want to do

01:06:54   your next app, which is like a shopping list, it's the same sort of interface with the chat

01:07:01   type thing, or speaking or whatever.

01:07:03   Like getting closer to the idea of not looking at pictures and screens and poking at them

01:07:07   but then having sort of an assistant who helps you with things.

01:07:10   Obviously writing the assistant is much harder, even harder than writing an application for

01:07:14   all the different platforms.

01:07:15   But that is, it's an interesting approach to these kinds of problems where you're never

01:07:21   going to make one user interface or one way of organizing that works best.

01:07:25   But if you can make one kind of reasonably fake intelligent agent that learns based on

01:07:30   your habits in some reasonable way, it could be a better experience to be able to go back

01:07:41   and forth with the thing over text and voice.

01:07:45   And eventually, it's sort of like having your own very primitive personal assistant who

01:07:51   in the beginning doesn't really know how you like things done but eventually learns.

01:07:55   And that could be better than any really nice interface that you make on all the different

01:07:59   platforms and potentially easier to maintain because once you've mastered that interface,

01:08:02   whether it's faceless talking or just like a chat type interface, you don't need to revisit

01:08:06   that that much.

01:08:08   Another angle I considered when I was thinking like, "Should I make my own one of these or

01:08:13   not?" is that the reminders, like we've seen a lot of apps over the last couple years that

01:08:19   are basically like better interfaces to the built-in Apple calendar.

01:08:27   is number one and I use Fantastic Cal for all of my event entry on the Mac. But I still

01:08:33   use Calendar for the browsing of it, but I use Fantastic Cal for entry, it's wonderful.

01:08:37   ICal, or rather, Calendar does have a somewhat Fantastic Cal-like natural language entry

01:08:44   field in recent versions of OS X, sorry, Mac OS, but it's not nearly as good, so I don't

01:08:49   use it. But the same API exists for the Reminders database. So one way someone could tackle

01:08:56   this market. I don't know if anybody has really in a serious way, but you could just make

01:09:02   a nicer interface to the built-in reminders database. I don't know what the limitations

01:09:08   of that would be. I'm sure it's not going to be nearly as full-featured as if you make

01:09:12   your own database and run your own service, but that is one way you could do this where

01:09:17   if you first just tackle just the Mac first or just iOS first with a really nice interface

01:09:22   to the Reminders database. Maybe that's a way you could do it more incrementally. But

01:09:26   again, this is not a market that I feel passionate enough about to spend my time on, unfortunately.

01:09:34   If you wanted to be differentiated in this market, which I still think is crowded, yes,

01:09:37   there are the good ones, but there is such a long tail of mediocre to bad ones that someone

01:09:42   somewhere loves, right? I'm sure because the tail is so long that someone has already done

01:09:47   this, but when you were talking about and when other people talk about these million

01:09:50   to-do apps and how they do one thing you like but not some other thing or whatever.

01:09:52   I'm always reminded of the calculator construction set.

01:09:55   Like the little story about Steve Jobs where the calculator app wasn't quite to his liking

01:09:59   and the developer was tired of hearing him say, "No, this should be like that."

01:10:04   And he just basically made a way, "Here, Steve, you can arrange the buttons and size them."

01:10:08   And like, "You build the calculator that you want."

01:10:10   So instead of a to-do app maker saying, "Well, this person says they want this, but that

01:10:14   person said they always want that, and they want this.

01:10:15   There's too many demands here.

01:10:17   You make the to-do app you want.

01:10:18   So if you can make a to-do app construction kit where it was an app that gave you the

01:10:22   tools to build the app that you wanted, I mean, maybe that's what OmniFocus is and that's

01:10:26   what Marco was recoiling from because it was just too darn complicated, but I think OmniFocus

01:10:30   does have at least some point of view about what you're supposed to be doing.

01:10:32   But if you really made a construction kit for to-do apps where—and again, I start

01:10:36   thinking of agents.

01:10:37   Like, I don't want to—you get into programming really quick and that just narrows your market

01:10:40   to nothing because no one wants to even do some kind of simple programming.

01:10:44   But if I could converse with the application and negotiate how things are going to work,

01:10:50   do you want me to remind you once or do you always want me to keep reminding you, like

01:10:54   the nagging thing that Casey was talking about?

01:10:58   Most of the time, what do you want?

01:10:59   Okay, do you want to see all the things that are coming up in today or just the things

01:11:03   that are due in the next time window or just sort of go through the process of building

01:11:09   the app that's view?

01:11:10   that would be astronomically hard to make, but I think it would be, I'm assuming it

01:11:15   would be relatively novel in the market because having heard many, many dozens of hours of

01:11:22   people talking about to-do apps on podcasts, I have yet to hear someone say, "I tried

01:11:25   this construction kit and it was terrible."

01:11:27   So if it does exist, maybe it's so far in the long tail that no one's even seen it.

01:11:32   We are sponsored this week by Betterment.

01:11:34   Listeners can get up to one year managed free.

01:11:36   For more information, visit betterment.com/ATP.

01:11:39   Betterment is the largest independent online financial advisor.

01:11:43   It's designed to help improve customers' long-term returns and lower your taxes for retirement

01:11:47   planning, building wealth, and other financial goals.

01:11:50   Betterment takes advanced investment strategies and uses technology to deliver them to more

01:11:54   than 300,000 customers.

01:11:56   Based on the information that you tell Betterment, they can make tailored recommendations for

01:12:00   how much to invest, how much risk to take on your portfolio, and the types of investment

01:12:05   portfolios you should have.

01:12:07   And they also have incredible features like their socially responsible investing portfolio,

01:12:11   which gives you the flexibility to reduce your investment in companies that don't meet

01:12:14   certain social, environmental, and governance benchmarks.

01:12:18   And all of this is brought to you with low, transparent fees compared to traditional services,

01:12:23   with only a 0.25% annual fee.

01:12:26   That includes unlimited messaging access to their team of licensed financial experts.

01:12:30   If you have a more complex situation, Betterment Premium gives you unlimited phone call access

01:12:33   to their team of certified financial planners

01:12:35   for only 0.4% annually.

01:12:38   Investing involves risk.

01:12:39   Listeners can get up to one year managed free at Betterment.

01:12:42   For more information, visit betterment.com/ATP.

01:12:45   That's betterment.com/ATP.

01:12:48   Thank you to Betterment for sponsoring our show.

01:12:50   (upbeat music)

01:12:53   - Time for some Ask ATP.

01:12:55   - Let's do it.

01:12:56   - All right.

01:12:57   Roar Locker, what a great name, Roar.

01:13:00   - That's amazing.

01:13:01   What parent decides to name their child Roar, and why didn't I think of that?

01:13:06   Anyway, he or she writes, "Casey, do you miss the C# and .NET development stack? I'm taking

01:13:12   my computer engineer bachelor degree, and I must say that I enjoy it very much. I also like C# much

01:13:17   better than Swift, although I've spent more time coding in Swift. Maybe I'm just feeling an Xcode

01:13:21   versus Visual Studio effect." So I miss C#, and that's about it. .NET is fine, whatever.

01:13:31   Like, it's good, I guess, but to me it's just a vehicle to give me C#.

01:13:38   I do miss C#.

01:13:39   I love Swift.

01:13:41   I really honestly do love Swift.

01:13:42   I like Swift quite a lot.

01:13:44   But C# does, and I've probably said this before on the show, C# does a stunningly good job

01:13:53   of being all things to all people.

01:13:55   If you want to write sort of kind of functional programming, and yes, I'm aware that there's

01:14:01   F#, but like, if you want to get halfway to functional programming, you can do that with

01:14:05   C#.

01:14:06   If you want to write kind of basic, boring procedural stuff, you can do that with C#.

01:14:11   If you want to write super object-oriented stuff, you can do that with C#.

01:14:15   And I know that C# is not the only language that all this applies to.

01:14:18   I'm waiting for Jon to jump in and talk about Perl.

01:14:21   But C# does a really good job of being just about anything to anyone.

01:14:25   And I do miss C# a lot.

01:14:30   I don't really mind Xcode, which means one of a couple things.

01:14:34   It means either I'm still a noob, which is possible.

01:14:37   It means either I just haven't been burned by it, which is semi-true.

01:14:42   Or it means I'm an idiot, which is possible as well.

01:14:45   But in the same way that everyone else seems to complain and moan about Xcode, like, I

01:14:50   don't really mind it.

01:14:52   And maybe it's because Visual Studio, while great in many ways, is aesthetically an assault

01:14:59   on my eyes.

01:15:01   And Xcode, for all of its faults, Xcode does one thing very well, and that's be very, very

01:15:07   pretty.

01:15:08   Marco, you said something earlier about, you know, "Hey, I'm a Mac user," or "I'm an Apple

01:15:11   person, so I like things to be pretty," or "well-designed."

01:15:14   I forget how you phrased it earlier.

01:15:15   But yeah, it's that, right?

01:15:17   Like Xcode is painful in some ways, but A, it is and forever will be better than Eclipse.

01:15:26   Don't email me.

01:15:27   And B, it is not that bad in my personal opinion.

01:15:33   Now, if you want to talk about Swift, like code completion, what is it?

01:15:36   Sourcekit?

01:15:37   Is that what I'm thinking of?

01:15:38   Like sourcekit is an utter disaster.

01:15:40   But Xcode itself, it's not bad and I like it.

01:15:44   And do I miss Visual Studio?

01:15:46   No.

01:15:47   Not really, and holy hell do I not miss anything related to Windows.

01:15:53   Nothing about Windows is something I miss or long for.

01:15:57   I am so unbelievably thankful to be off Windows.

01:16:01   I cannot even verbalize it.

01:16:04   I am so thankful to be away from that.

01:16:07   So I miss C#, .NET, whatever, it's something that gives me C#.

01:16:12   Visual Studio?

01:16:13   Meh.

01:16:14   Windows?

01:16:15   don't miss it.

01:16:17   David Steer asks, "The next time you discuss single versus multi-thread processing, would

01:16:20   it be possible to give a couple of real-world examples of tasks or applications that perform

01:16:25   better on each process?

01:16:27   I love the show, but I'm not that technical and sometimes struggle to give context to

01:16:31   your discussions."

01:16:32   I'm trying to figure out exactly what is being asked here, because one way to read it is

01:16:41   what types of things benefit from multiple threads, and that's getting into the Marko

01:16:44   zone of like, look if you're doing this type of task and you got a 10 core Mac Pro you'll

01:16:48   see a big benefit, or iMac Pro, but if you're doing this kind of task you're not gonna see

01:16:51   a benefit because it's not, you know, it doesn't use multiple cores.

01:16:55   And which tasks those are really depends on a lot of factors including just like what

01:17:00   the application is.

01:17:01   Like I think Final Cut Pro X wasn't particularly strong at multithreading until recently, but

01:17:06   that doesn't mean video processing does or doesn't benefit from multithreading.

01:17:09   The other way to think about this question is they're asking like what makes something

01:17:16   a problem to which you can apply some parallelism beyond like you know any kind of parallelism

01:17:25   or like degrees of parallelism and I think that's I think that's probably closer to the

01:17:29   answer so I'm gonna try to give a non-technical explanation as best I can to this.

01:17:36   So doing stuff in parallel requires a problem where you can break it up into pieces and

01:17:45   the pieces don't have dependencies between them or don't have a lot of dependencies between

01:17:49   them.

01:17:50   The obvious example that comes up a lot is almost anything having to do with graphics

01:17:56   processing where you've got a lot of dots on your screen and for the most part dots

01:18:01   may depend on their neighboring dots but they don't depend on the dots way over at the other

01:18:05   So if you're taking an entire image and blurring it, you can break that image up into a bunch

01:18:09   of smaller pieces, dole out those pieces to a bunch of things that are going to work on

01:18:15   them all at the same time and then put the pieces back together at the end.

01:18:18   Lots of graphics cards do exactly that for, you know, tiling processing, but in general

01:18:23   just the giant array of pixels, they are worked on as much as possible in parallel by your

01:18:29   graphics card.

01:18:30   There's probably a Wikipedia page on this expression, but there is a term of art in

01:18:33   computer science world called embarrassingly parallel problems where it is so easy to parallelize

01:18:39   because you can break it up into as many chunks as you want and there are a lot of chunks.

01:18:43   And so it's like, look, if you gave me a million processors, this problem is embarrassingly

01:18:48   parallel.

01:18:49   I could break it up into a million pieces and do them all at once.

01:18:52   And it would be a million times faster than doing them one at a time, right?

01:18:56   You know, assuming the thing is processed at the same time.

01:18:59   So whether something performs in parallel

01:19:03   is based on the nature of the problem.

01:19:05   There are problems that you can't do in parallel,

01:19:08   because to do step one--

01:19:11   to do step two, you need the answer from step one.

01:19:13   To do step three, you need the answer from step two.

01:19:15   So you can't break-- you can't do steps one, two, and three

01:19:18   all at the same time.

01:19:20   And so that's the high-level computer science explanation.

01:19:23   You can apply your basic reasoning about things

01:19:26   to try to discover whether a particular problem you're having is parallelizable in any way.

01:19:35   Is it embarrassingly parallelizable or is it generally serial by nature?

01:19:42   But that's when we get into the complexity of like, well, this problem is parallelizable,

01:19:45   say MP3 encoding.

01:19:46   But it turns out the MP3 encoder I have doesn't do anything in parallel.

01:19:50   It just does it from the beginning to the end.

01:19:52   And that's where Marco said, "Well, it's not embarrassingly parallelizable, but I can break

01:19:57   this audio track up into five pieces and encode all five at the same time and then put the

01:20:02   five pieces back together, and now I've done it five times faster."

01:20:06   You can't break it up into a billion pieces because at a certain point you're doing—I

01:20:09   don't know what the size is Marco would know, like a single frame or whatever.

01:20:12   It's about 1,200 samples.

01:20:14   Yeah.

01:20:15   There is some unit size beyond which you don't get any benefit, but that's an example where

01:20:21   The problem itself is parallelizable, but you can say, "If I buy a faster computer,

01:20:26   my MP3 encoding will be faster."

01:20:27   Not if you're using a non-parallelized MP3 encoder, it won't.

01:20:31   So it gets a little bit complicated.

01:20:32   Casey, you want to try a different angle?

01:20:34   Yeah, so what I've been working on lately is this thing where I have a folder full of

01:20:40   photographs, right, or maybe live photos.

01:20:42   So it's a photograph in a movie.

01:20:46   And I want to file them away in a particular way.

01:20:51   And what I've run into is some of this is paralyzable and some of it is not.

01:20:55   So if you think about it, any time that I have a, any photo that doesn't share a date,

01:21:03   so if for example on today, which is the 7th of February, I take only one photograph with

01:21:09   my iPhone, I can, without worrying about a conflict, I can just copy that to where I

01:21:18   I want it to go, right?

01:21:21   Without worrying about a conflict with any other photos taken from my iPhone.

01:21:24   I can copy it to where I want it to go.

01:21:26   But if I take 15, or if I took 15 photos yesterday, it's possible that maybe some of those were

01:21:32   taken at the same hour, minute, and second.

01:21:34   Maybe I did a burst or something like that.

01:21:36   And so some of this is parallelizable and some of it is not.

01:21:41   I meant to, when I was re-listening to last week's episode, I meant to talk to you more

01:21:45   about how you're going to resolve your race condition and how you said, "My thing is bug-free,

01:21:48   - Except for the massive race condition

01:21:49   that I didn't consider.

01:21:50   - Yeah.

01:21:51   - That's not bug free.

01:21:52   - I mean, you could parallelize by day.

01:21:55   - What I was trying to explain,

01:21:57   and I think I've done a poor job of it,

01:21:58   and that's why I want it to be cut,

01:21:59   is that if in the batch of photos that I have,

01:22:04   I have no conflicts in terms of date,

01:22:08   so the hour, minute, and second is unique,

01:22:12   all of the photos or movies or whatever,

01:22:14   all the media that has a unique hour, minute, and second

01:22:19   can be processed in parallel.

01:22:22   So that is to say, it may have a conflict

01:22:24   in the destination, but it doesn't have a conflict

01:22:29   amongst its peers that are being imported.

01:22:34   Does that make any sense at all?

01:22:36   - It does, yeah, but honestly, I'm kind of wondering,

01:22:40   does this problem benefit from parallelization?

01:22:42   Like it seems like it's pretty fast to just dump the files serially.

01:22:48   So here's the thing.

01:22:49   The problem with the, the reason I think it may benefit from parallelization is that there's

01:22:53   two different things at play.

01:22:55   Number one, let's say that I took a photo at exactly noon today, just for the sake of

01:23:01   discussion.

01:23:02   I took a photo at exactly noon today.

01:23:04   And it turns out that the destination, so my, my photo repository that has every photograph

01:23:10   I've ever taken.

01:23:12   Also already has, by some mechanism, don't worry about why, but let's just say it already

01:23:16   has a photo that was taken at exactly noon today, at 12 o'clock, at zero minutes and

01:23:22   zero seconds.

01:23:24   One of the things that my app is going to do is it's going to say, "Hey, let me take

01:23:29   an MD5 of the source that I'm trying to import and of the thing that's already at the target.

01:23:35   And if the MD5 is the same, then I need to take evasive action, so to speak.

01:23:41   So I need to increment the file, or I need to add a suffix to the imported file name.

01:23:45   So instead of being 2018-02-07 space 12-00-00, the imported file will be all of that with

01:23:55   an A at the end, the letter A at the end, because they're two different files.

01:23:59   Well, if you're doing that across a whole bunch of files at once, which presumably I

01:24:03   I am, that may be well served to be parallelized.

01:24:07   Because on an average modern processor you have at least two, if not four or six or eight

01:24:13   or ten or twelve or eighteen cores, which are all working simultaneously to solve problems.

01:24:19   And so it makes sense to split this same kind of operation across all, or at least some

01:24:26   of these cores.

01:24:28   Where it doesn't make sense to split it is if I have multiple pictures that were taken

01:24:33   at 12 o'clock and zero seconds, because then I can get into this race condition that I

01:24:38   found earlier, which is to say the first photo that I'm processing looks at the target and

01:24:46   says, "Oh, there's nothing there," and starts the copy.

01:24:50   The second photo that I'm processing looks at the target and says, "Oh, there's nothing

01:24:54   there and tries to start the copy, but then they collide with each other.

01:24:58   And that's the problem that I was running into before, and I'm solving it now by parallelizing

01:25:03   anything that doesn't have an internal conflict.

01:25:06   Because even if it has a conflict at the target, that's fine.

01:25:09   It doesn't matter.

01:25:10   I can still parallelize it.

01:25:12   But if it has an internal conflict, then I have a problem.

01:25:17   And so anything that doesn't have an internal conflict can be parallelized.

01:25:21   Anything that has an internal conflict will be serialized.

01:25:24   So what if you, in parallel, read the input files,

01:25:28   get whatever date and timestamp buckets they belong to,

01:25:32   and stuff all that into an array,

01:25:34   then serially just have a thing run through that array,

01:25:37   look for the conflicts, resolve them,

01:25:39   and do all the renaming serially?

01:25:40   'Cause that's gonna be so fast anyway.

01:25:43   You're really just relying on the file system speed

01:25:46   at that point?

01:25:47   - Yes, but no.

01:25:48   But the thing that I haven't mentioned,

01:25:49   and I alluded to this earlier,

01:25:52   and then never actually put a period on the sentence.

01:25:54   The thing that I haven't mentioned is that my target

01:25:57   for all of these image and also movie files,

01:26:00   my target is actually my Synology.

01:26:03   So it's not the local file system.

01:26:04   I have to crawl across the network

01:26:06   to do all of these checksums

01:26:10   and to figure out if these files are identical or not.

01:26:12   And some of these videos that I'm taking,

01:26:14   I mean like five or 10 minutes of 4K video off the iPhone

01:26:18   is multiple gigabytes, so.

01:26:21   - Yeah, but a rename should be quick, right?

01:26:23   Isn't that what, well, you could import it somewhere first,

01:26:26   then do a rename later really fast.

01:26:28   - Yes, but again, my process is that I'm saying,

01:26:33   hey, I found a identically named file at the destination,

01:26:38   which in my case happens to be a Synology.

01:26:40   So I need to MD5 both the local file

01:26:43   that is on my local file system,

01:26:44   or at worst on an SD card attached to my physical computer,

01:26:48   But I also need to do an MD5 on the remote file that's on the Synology, and that can

01:26:52   take forever.

01:26:53   And that's why I want to parallelize it.

01:26:55   So anything that has a conflict, I want to parallelize.

01:26:59   Anything that--I'm sorry--anything that doesn't have a conflict internally, anything that

01:27:05   I know will not collide with any of the other files I'm importing, that can be parallelized.

01:27:12   What I worry about is if I have 15 files on my SD card that were all taken at 12 o'clock

01:27:17   in zero seconds, that's when I need to do it serially,

01:27:20   because otherwise I run into a situation where I say,

01:27:22   "Oh, does the target--"

01:27:24   - That makes sense, but when something is slow in this case,

01:27:28   it's probably being limited by the transfer bandwidth

01:27:32   of the SD card or the network protocol for,

01:27:35   or like whatever, does parallelizing those

01:27:38   actually get you anything, or is it just clog it up

01:27:40   and make everything run, you know,

01:27:42   where you can run 10 things at one tenth the speed each?

01:27:44   - He's already spent more time writing this program

01:27:46   than he's gonna say about parallelizing,

01:27:47   That's fine.

01:27:48   I would just point out that your race condition is like the canonical race condition, which

01:27:53   is check if something's okay and then go do the thing, and while you're going to do the

01:27:56   thing, the something that you checked was okay is right.

01:27:58   So my suggestion for a strategy for dealing with this that doesn't involve serializing

01:28:03   any portion of it is to use what other past technologies have used, including Unix and

01:28:09   in this specific case, Ethernet.

01:28:12   You want carrier-sense multiple access with collision detection.

01:28:15   kind of getting what Marco was saying.

01:28:17   Do everything in parallel.

01:28:19   You just need some kind of remotely atomic operation, and even with a NAS, if you can

01:28:24   get stuff onto the NAS and do a rename local to the NAS, hopefully you can get atomic renames.

01:28:30   And then you just try to do your rename.

01:28:32   And if your name fails because the file exists, you increment it.

01:28:36   And then you try to do the rename again, and you do binary exponential backoff, and you

01:28:40   just let all the parallel things fight it out, because there is no inherent order to

01:28:44   things that are literally—you don't have any increased resolution. If you did, you'd put it in

01:28:47   the file name, right? There's no inherent order to the new in pictures, right? They're all just new

01:28:51   in pictures. So let them duke it out. There's no locks, no shared state, no waiting, no serialization.

01:28:59   And you'd be surprised at how nicely things terminate, because this is how Ethernet works.

01:29:04   It tries, and if the line is busy, it waits a little bit and tries again. If it's still busy,

01:29:07   it waits a little bit longer and tries again, and everything works.

01:29:11   - Yeah, but there is a bit of an inherent order, right?

01:29:15   Because the source file name is like,

01:29:17   IMG_1111, IMG_11112.

01:29:21   - Oh, you didn't tell me about that.

01:29:22   So why aren't you using that as your tiebreaker?

01:29:24   - Yeah, wait, you have sequential names in the source?

01:29:27   (laughing)

01:29:27   Doesn't that totally solve your problem?

01:29:30   - Well, that's why I'm running the collision,

01:29:32   the potential collision stuff serially.

01:29:34   That's exactly why I'm running it serially.

01:29:36   So I'm guaranteed that it will--

01:29:37   - You've already got a uniqueifier

01:29:41   that you'll never have a collision

01:29:43   because you've got the date you're doing the import

01:29:44   and you've got a sequence number.

01:29:46   Yeah, what's the problem?

01:29:48   He doesn't wanna put two dates in the file

01:29:49   and that's his problem.

01:29:50   (laughing)

01:29:50   It's too much of an aesthetic

01:29:52   is happening in these file names there.

01:29:54   - No, you're right, because I want it to be 2018-02-07.

01:29:59   - I keep on using A and B, do you go to AA and then AB

01:30:03   and then AC, do you then go AAA, AAAB?

01:30:06   (laughing)

01:30:06   - No, I've never run into a situation when that's a problem,

01:30:09   but I understand your point and--

01:30:11   - This is another bug-free program that,

01:30:13   there'll never be more than 26 conflicts.

01:30:15   A through Z is fine.

01:30:15   - But this is, see, you, sir,

01:30:18   you are why I will never open source this.

01:30:20   - When the iPhone 15 shoots,

01:30:22   shoots like, you know, 30 frame per second burst photos,

01:30:26   you're gonna have a problem.

01:30:27   - I think the problem is that you're not

01:30:28   an old and crusty enough programmer.

01:30:30   If you're thinking, well, A through Z is always fine,

01:30:33   and I'm like, do we need to use

01:30:36   unsigned 256-bit integer for this number?

01:30:38   So it doesn't overflow.

01:30:40   That's what cracks me up, by the way. I was looking at something that briefly touched on like source code to like one of those Bitcoin or some other cryptocurrency.

01:30:47   And they were literally using like that. I'd never seen it in like see like the U256 type for like for one of their values because they're like 64 bits is not enough.

01:30:57   We need 256 bits of unsigned precision for this value.

01:31:01   Yeah, you are really future proofing this thing that will be gone in two years.

01:31:05   Not Bitcoin, just some other random ICO.

01:31:09   So moving on.

01:31:10   So where did we leave this?

01:31:12   Because John, you did exactly what you were supposed to do,

01:31:14   which is give it over to me.

01:31:15   And then I completely ruined it.

01:31:17   I tried.

01:31:17   But I think that that question has

01:31:19   been addressed to the best that we can do in an AskATP style

01:31:22   segment.

01:31:23   Really, you'll be able to talk about it with Mike

01:31:25   when you do your computer science-y learning stuff.

01:31:28   If that even keeps on.

01:31:30   And wait a second.

01:31:31   Since when did you ever listen to analog?

01:31:33   I know you do from time to time, but--

01:31:35   I am vaguely aware of many podcasts.

01:31:37   [laughter]

01:31:39   I feel like you're my dad.

01:31:41   This is not the best way to characterize my current podcast listening, which is

01:31:44   very spotty and diffuse.

01:31:47   [laughter]

01:31:49   It's like, "Dad, how did you know I was doing that?"

01:31:51   I know. I know.

01:31:53   Alright. So Thomas Nosowitz, or something like that, writes,

01:31:58   "Have any of you ever tried meditation? Please discuss."

01:32:01   No, I have never tried meditation.

01:32:03   John?

01:32:04   I'm pretty sure I've never tried meditation.

01:32:08   You don't know?

01:32:09   I might have done something that qualifies at some point, but I'm gonna say no.

01:32:14   Then no, you haven't.

01:32:15   I'm gonna say no.

01:32:16   Because lots of things qualify as meditation, and I'm sure as a teenager I probably did

01:32:23   one of those things.

01:32:25   That was called sleeping.

01:32:26   Maybe it was even a church thing.

01:32:28   They're always having you do stuff like that.

01:32:30   That was called zoning out.

01:32:32   No, no.

01:32:33   Anyway, I'm gonna say no, that no is the quick answer.

01:32:35   (laughing)

01:32:36   - I too have not tried anything.

01:32:38   I have a vague concept of the kinds of things

01:32:41   you're supposed to do.

01:32:42   I kinda wanna try it someday, but it's never been

01:32:46   more than like a passing notion like that for me.

01:32:48   - I was hoping one of us had done this,

01:32:50   that's why I put this question in there.

01:32:51   I was like, surely one of us has tried meditation,

01:32:52   but nope, we've just heard podcasts about it.

01:32:55   - You know what I really wanna do?

01:32:56   I really wanna get hypnotized sometime,

01:32:58   because I think that's bogus.

01:32:59   I think it's a bunch of malarkey,

01:33:01   and I don't think it's real.

01:33:02   - But I wanna-- - You should start smoking

01:33:03   so then you can try to get hypnotized to stop.

01:33:04   - Oh my God.

01:33:05   Now we're gonna hear from so many people

01:33:07   about everything that just happened.

01:33:08   All right, so thanks to our sponsors this week.

01:33:10   Casper, Betterment, and HelloFresh,

01:33:12   and we will see you next week.

01:33:13   - Now we're gonna hear from, listen,

01:33:15   we just haven't tried meditation.

01:33:16   We just tell the truth.

01:33:17   I didn't say anything bad about meditation.

01:33:19   Casey said bad things about hypnotism.

01:33:21   - Yeah, now we're gonna hear from the meditation people,

01:33:23   the smoking people, the hypnotists,

01:33:25   the people who have been hypnotized, allegedly.

01:33:28   Like, we're gonna hear from all of those people now.

01:33:30   I think you might hear from the hypnotized people, but you won't hear from smokers who's gonna object to the joke about smoking and hypnotism

01:33:36   You'd be surprised hypnotists. I don't know it helps some people quit smoking if that's the goal who cares does it work?

01:33:42   Did it help you quit smoking sure yeah, I suppose it doesn't really matter

01:33:46   Yeah, you just have to if you believe it works, and it actually helps you quit smoking great like stand on your head

01:33:51   Whatever works

01:33:53   Don't smoke kids. It's terrible

01:33:57   Now the show is over, they didn't even mean to begin

01:34:02   'Cause it was accidental, oh it was accidental

01:34:07   John didn't do any research, Marco and Casey wouldn't let him

01:34:12   'Cause it was accidental, oh it was accidental

01:34:18   And you can find the show notes at ATP.fm

01:34:23   And if you're into Twitter, you can follow them

01:34:28   @C-A-S-E-Y-L-I-S-S

01:34:32   So that's Kasey Liss M-A-R-C-O-A-R-M

01:34:36   Auntie Marco Arment S-I-R-A-C

01:34:42   USA, Syracuse

01:34:44   It's accidental (accidental)

01:34:47   They didn't mean to, accidental (accidental)

01:34:52   ♫ Tech podcast so long

01:34:56   - Baby update.

01:34:59   - Aye, aye, aye, aye.

01:35:00   So I love Mikayla to death.

01:35:02   She is adorable and she is my precious little angel,

01:35:05   yet if she doesn't learn how to sleep,

01:35:07   I'm going to go insane.

01:35:09   - I mean, she's brand new.

01:35:10   Like, this is, like, this takes a while usually.

01:35:14   - I am extremely lucky to have had one child,

01:35:16   let alone two.

01:35:17   I cannot believe my good fortune

01:35:20   that I have had two so far healthy children.

01:35:23   Either one of them could have been unhealthy

01:35:26   or had some sort of physical ailment.

01:35:27   That would have been really unfortunate.

01:35:29   Like in so many ways, I am extremely lucky.

01:35:32   But in the heat of the moment,

01:35:34   it's funny how you kind of forget that.

01:35:37   Oh my God, I'm so miserable.

01:35:40   - So how long are the usual sleep stretches?

01:35:42   - At night between two and a half and three and a half hours.

01:35:45   Now- - That's not bad.

01:35:46   which is not terrible, but is not great.

01:35:50   And to be fair, the funniest part of this

01:35:53   is that Aaron hasn't really woken me up deliberately

01:35:56   to help with the nighttime stuff in like a week.

01:36:00   So I am being this much of a baby,

01:36:03   and all I'm doing is getting woken up when I hear the cry,

01:36:06   and then going right back to sleep.

01:36:07   (laughing)

01:36:09   - He doesn't grumble and roll over.

01:36:11   - No, this is true.

01:36:12   This is how ridiculous men are.

01:36:14   - You're really not having a good showing right now.

01:36:16   No, I know. I'm fully aware of this. 100%. And maybe I should not all men myself.

01:36:22   But like, I cannot feed Michaela. I don't have the equipment to feed Michaela, right?

01:36:29   But the fact that I'm this much of a baby after being woken up, like John said, by a bunch of,

01:36:34   like, "Oh, she's awake." And you've got to wake up early to go to work in the morning, right?

01:36:38   Oh, wait. Right? No, you're right. Every part of this is me being... I'm the biggest baby in the

01:36:43   in the house if I'm really honest with myself.

01:36:45   - Yeah, all right, here, look.

01:36:46   I can help you with two liquids, vodka and coffee.

01:36:51   I will let you decide when to apply each one.

01:36:54   - Don't give them to the baby.

01:36:56   - Yeah, these both go into you.

01:36:57   - Oh, not for the baby, not for the baby, okay.

01:36:59   - These both go into you, but at different times,

01:37:02   don't do it at the same time, it's a bad idea.

01:37:04   - Erin may not appreciate you doing things that she can't.

01:37:07   - Yeah, that's also part of it.

01:37:09   But if you being a little bit happier

01:37:13   and a little bit more functional

01:37:15   turns into you being a little more helpful

01:37:17   and less of a baby, she might appreciate that.

01:37:19   Right, so, yeah.

01:37:22   Obviously, this is a hard time for anybody.

01:37:25   - It is, it is.

01:37:26   It could be so much worse.

01:37:29   I don't think that Michaela is to the point

01:37:31   of being, having colic.

01:37:33   I don't know what the right phrasing is.

01:37:35   But she is very fussy for a lot of the day,

01:37:39   But I would not go so far as to say that she is like, you know, Alex was or anything like that.

01:37:43   Like, she is manageable, but horrible.

01:37:48   Alex, by comparison, John's eldest, was, from everything I've been told, indescribably bad.

01:37:55   In a way that--

01:37:56   You'll know you reached Alex level when you find yourself bringing your baby to a chiropractor.

01:38:00   Oh, yeah, no, no, no, not even in the ballpark.

01:38:03   What's wrong with my baby? Is it in constant pain? Is it filled with spikes?

01:38:07   I'm willing to go to a quack non-doctor acupuncture anything scan my baby is it filled with bees?

01:38:16   I guess that's the level we were at.

01:38:23   The desperation is like we will try anything that has is there a spell on my baby?

01:38:28   Can we get an exorcist in there?

01:38:31   But yeah.

01:38:32   And that's what I like.

01:38:34   - Pollock is one of those words that means nothing too.

01:38:36   It's like, what does that mean?

01:38:38   It means you're basically cries all the time.

01:38:39   - Yeah, and that's the thing,

01:38:41   I recognize that I'm being the biggest baby in the world.

01:38:44   I fully understand that.

01:38:46   - You're doing something hard, right?

01:38:48   For anybody, even for the weak baby men,

01:38:52   having a new infant in the house that you're caring for

01:38:56   is a lot of work, and it's hard on everybody.

01:38:59   So you don't need to belittle yourself over that.

01:39:01   It's hard for everybody.

01:39:03   It's not constructive or useful to get into

01:39:07   like trying to outdo each other of like,

01:39:10   oh, well this is hard for me, well it's hard for me too.

01:39:12   Like don't worry about that, like that's not constructive.

01:39:15   It's hard for everybody.

01:39:17   It's hard for you, it's hard for Aaron,

01:39:19   it's hard for Mikaela, it's probably hard for Declan too.

01:39:21   Like it's hard for everybody.

01:39:22   - Declan's sleeping like a baby, so to speak.

01:39:24   - Oh, oh if only.

01:39:26   - Has she woken Declan up, 'cause that's the most fun.

01:39:28   - No, thankfully no. - The chain of misery.

01:39:30   (laughing)

01:39:33   - As it feels like unfair, it's like,

01:39:35   "Oh, come on, you can't wake the other one up.

01:39:36   "We'd probably work into the other one.

01:39:38   "He sleeps now.

01:39:39   "Can't wake him up."

01:39:40   - Oh, God, no.

01:39:41   - See, look, it's everyone, it's a hard time for everyone.

01:39:45   So the best thing you can do is just try to be

01:39:49   as functional and useful as you can

01:39:53   and try to add as little drama and problems as possible

01:39:58   to the situation that is already very hard on everybody.

01:40:01   So, whatever you need to do to do that, do that.

01:40:05   So, if that's coffee sometimes and vodka some other times,

01:40:09   fine, keep it under control, but otherwise fine.

01:40:11   'Cause that's the most helpful thing you can do right now

01:40:16   for everyone, including yourself,

01:40:19   is to try to make yourself useful

01:40:22   and to try to not get bogged down

01:40:23   by the hardships and drama of this.

01:40:26   - Although, you were trying to remind yourself

01:40:28   lucky you are, which is a place that parents often go to try and train themselves in.

01:40:32   But I found a perhaps more successful method is to remind yourself, and you should have

01:40:37   an easy time with this, to remind yourself this will pass.

01:40:41   Like they don't stay babies forever.

01:40:43   Like you can do it, you have done it, and this will pass.

01:40:46   And I find, I personally find it much more comforting than trying to remind myself how

01:40:50   lucky I am, because that's like, okay, another night off the chalkboard, like the kid is

01:40:55   getting older.

01:40:56   this he's he or she is not going to be three months old forever yeah so

01:41:01   literally earlier tonight as we were recording I sent the following text to

01:41:06   Erin but in the same way nobody goes to college in diapers she will eventually

01:41:10   learn to sleep that's a big one with potty training is the other time you

01:41:16   remind yourself most kids are not 30 and still going in the diaper it's gonna

01:41:21   - It's gonna happen.

01:41:22   I remember reminding Marco of that when he was going through

01:41:25   it.

01:41:26   - And it seemed like forever, but now it's done.

01:41:27   Like it's totally done.

01:41:29   It's kind of surprising, like, you know, it seems like

01:41:32   you're doing it forever and then one day it just,

01:41:35   kind of just, you're past it.

01:41:37   It just happens.

01:41:38   - He's probably not gonna go off to college with diapers.

01:41:40   - Yeah, exactly.

01:41:41   And it seems like, when you're in it, it seems like

01:41:44   it's never gonna end.

01:41:45   And you're like, oh my god, do I have a problem here?

01:41:48   - You're gonna take him to the chiropractor, yeah, I know.

01:41:49   - Right. (laughs)

01:41:51   But the reality is, yeah, it'll end.

01:41:54   So just get through it, keep yourself and your family

01:41:57   healthy and as happy as possible, given the challenge.

01:42:00   - I'm not saying you have to go to the extreme

01:42:03   of going to your local neighborhood,

01:42:06   like a psychic or exorcist, but--

01:42:08   (laughing)

01:42:09   Do bring up all the issues with the doctor,

01:42:13   because some babies have reflux,

01:42:14   and there's all sorts of legitimate reasons

01:42:16   that can actually be treated that can help.

01:42:18   And so you might, you should exhaust those, right?

01:42:22   Just maybe don't go the step further

01:42:24   and start being totally desperate.

01:42:27   - You know from having a kid before,

01:42:29   you know that things are hard for a while,

01:42:33   and then they end.

01:42:34   And there's new challenges that arise,

01:42:35   but whatever challenge you're in, it eventually ends,

01:42:39   and then, so you get to move on.

01:42:41   And that's just a thing that becomes automatic now.

01:42:43   It's nice.

01:42:44   So eventually, she will sleep,

01:42:47   and it won't be that big of a problem.

01:42:48   And it might happen next week, or it might take two years,

01:42:53   or more likely somewhere in between.

01:42:56   And you know it's coming, it's gonna be hard

01:43:00   until it gets here, but you did it once before,

01:43:03   you can do it again, you are a human, you are an adult,

01:43:06   you can do hard things.

01:43:08   Also, you don't have a choice, so you're gonna do it anyway.

01:43:11   (laughing)

01:43:15   I am very happy, and I'm sure Underscore will be too,

01:43:18   to teach you how to use coffee.

01:43:20   It's wonderful.

01:43:21   (laughing)

01:43:22   It fixes so many, or at least it improves so much of this.

01:43:26   There's a reason why coffee is so popular.

01:43:29   This is a thing.

01:43:30   I don't know if you've heard about it in the world,

01:43:32   but it really does help.

01:43:34   - Don't use drugs, kids.

01:43:35   (laughing)

01:43:36   No need to have coffee to raise children.

01:43:38   - But it's nice, it helps.

01:43:40   (laughing)

01:43:42   (beeping)

01:43:44   Syracuse, let me down. If his beloved Accord could be had with a stick with anything other

01:43:50   than cloth and basically no other options, I would have one.

01:43:54   Cloth seats are great. What are you talking about? People love to get really fancy expensive

01:43:58   luxury cars with cloth seats because they're so much better than leather.

01:44:00   You know what's awesome? Static in the winter when you rub against them and you get static

01:44:04   from your car.

01:44:05   There's no static in my cloth seats. I don't know how long ago you had cloth seats. There's

01:44:08   no static in my car. I live in the winter place. I don't have static in cloth seats.

01:44:11   It's fine.

01:44:12   Anyway, no, but that is a thing of people wanting cloth seats in their luxury sporty cars because they grip you better, right?

01:44:18   And also there you know

01:44:19   They grip you better that makes no sense leather is not literally sticky

01:44:22   But kind of sort of see you do kind of slide on leather when it's cold, but I'll get you better in the summer

01:44:27   cloth seats

01:44:29   No, it's funny because I've been talking to a couple other friends of mine

01:44:34   This is the one that had the r32

01:44:37   And previously before that the m3 the 96 m3 and he's the one that suggested both the legacy and the 335

01:44:43   So I really should never trust him about any car ever and he's also suggested the Gulf R by the way, but anyway

01:44:49   I was talking to him and another friend of ours about how you know

01:44:53   I really want to go far but I really want a sunroof

01:44:56   Like I really really really don't like not having a sunroof and though you don't you wouldn't even miss it

01:45:03   You wouldn't even know and I feel like that's sort of kind of the conversation we're having now

01:45:06   "You don't even know. You have no cloth seats in forever. Cloth seats are better."

01:45:10   Well, as it turns out...

01:45:11   I'm not saying you wouldn't miss cloth seats. I'm just saying the static is not as big a problem as he thinks it is, especially now.

01:45:15   I would take cloth seats before I'd lose my sunroof.

01:45:18   That's an interesting question, actually. I think I agree. I think I agree.

01:45:22   Because, like, leather is just making you, like, feel luxurious and having a nice smell, right?

01:45:26   But leather, in terms of just what it feels like to sit in it, is not...

01:45:31   Like, the holy grail is cloth seats with seat heaters, which almost nobody makes.

01:45:34   Because then you're like, "Well, if I want to get seed heaters, I have to get leather."

01:45:38   Right.

01:45:38   I had them in my accord.

01:45:39   In my own...

01:45:41   But like, nobody makes that these days.

01:45:43   Because basically, once you go to seed heaters, you also get like the leather package.

01:45:47   Right.

01:45:48   Because it seems luxurious.

01:45:49   Or fake leather.

01:45:50   You know.

01:45:51   Leather or fake leather.

01:45:53   Because they want you to feel like...

01:45:53   I don't really... Honestly, I don't draw like a line between those two.

01:45:56   I think like, there's...

01:45:57   Fake leather is so good these days that it doesn't really matter which one I have.

01:46:01   I don't even notice really.

01:46:02   All I know is, to go back a half step, my friends were saying, "Oh, you don't even know.

01:46:08   You wouldn't even miss the sunroof in the gold car.

01:46:10   It'd be fine.

01:46:11   It'd be fine."

01:46:12   Well, as it turns out, my Legacy GT that I had before the 335, it was something to the

01:46:18   order of $3,000 to get basically two options, and that was leather and a sunroof.

01:46:25   And I bought the Legacy because my then car, a 300ZX, wouldn't stay on the road.

01:46:30   sound familiar at all, and it couldn't stay on the road

01:46:33   because it was always in the shop.

01:46:34   And so I bought the Legacy GT after having been employed

01:46:39   as a real adult for like literally a month or two months

01:46:43   or something like that, which is to say,

01:46:44   I was friggin' broke, and $3,000 would have destroyed me

01:46:48   financially, like truly, even like over the course

01:46:51   of the four or five or, I might have even had

01:46:53   a six year car loan, I was so broke at the time.

01:46:56   But whatever it was, like that $3,000, yes I understand

01:46:58   It was only like 10 or 20 or $30 a month,

01:47:00   but that would have ruined me, truly.

01:47:02   It really would have ruined me.

01:47:03   So I didn't get it.

01:47:04   And I had that car for like eight years.

01:47:06   I had it from '04 to 2012.

01:47:08   Yeah, it was eight years.

01:47:09   And every single day in the spring, summer, and fall

01:47:14   where it wasn't actively precipitating,

01:47:17   I hated not having a sunroof.

01:47:20   I hated, to Marco's point, not having leather less,

01:47:24   but I hated that too.

01:47:25   And so I can tell both of you,

01:47:27   not that you're really arguing with me,

01:47:28   but I can tell both of you and my two other friends

01:47:31   with confidence that yes, I have lived the non-sunroof life

01:47:36   and I have lived the not leather life and it sucks.

01:47:40   And I don't wanna go back.

01:47:41   The question-- - What did you miss

01:47:42   about leather?

01:47:43   - I just, I don't know, I don't like cloth.

01:47:44   And that's like such a snooty thing to say.

01:47:47   It just, it feels so not nice.

01:47:50   I don't know, maybe I'm just--

01:47:51   - 'Cause there's a wide variability in cloth seats.

01:47:53   Cloth seats just basically means not leather

01:47:55   and not pretending to be leather.

01:47:56   very wide variability and whether it's fuzzy or like stitched or you know all sorts of different textures and

01:48:02   patterns and all that other stuff

01:48:04   I'm wondering what you missed other than the that it feels more luxurious because we've been trained to think leather is fancier

01:48:09   I think it was just that I mean even the Saturn that I had the infamous Saturn where the wheel fell off even that had

01:48:15   Leather I'm serious. You had leather in a Saturn? I swear to God. Why?

01:48:20   I'm surprised that you were like the only person who was like this guy's getting leather in a Saturn

01:48:24   Do you know what kind of car you're getting?

01:48:26   It's sadder.

01:48:27   [LAUGHTER]

01:48:28   [INAUDIBLE]

01:48:32   A lot of people have been saying-- in fact, even in the

01:48:33   chat room just moments ago, Tim underscore underscore was

01:48:36   saying the same thing.

01:48:37   A lot of people have been saying, why are you even

01:48:40   considering a Golf R?

01:48:42   Why not get a GTI?

01:48:44   You can get a GTI with a sunroof.

01:48:46   It is not that much slower.

01:48:49   What is wrong with you?

01:48:50   Why wouldn't you do that?

01:48:51   My answer has always been twofold.

01:48:54   One, I would want the best of what I was getting,

01:48:57   if at all possible, because that's kind of who I've become.

01:49:02   I'll blame that on Marco,

01:49:03   but it's kind of always been a bit of me anyway.

01:49:05   - Yeah, come on.

01:49:06   That's like saying like, oh, I drink and I become a jerk.

01:49:08   Like, no, you're just a jerk.

01:49:09   And it comes out more when you drink.

01:49:11   Like, this has always been inside of you.

01:49:15   - It's true, it's true.

01:49:16   But where was I going with this?

01:49:19   I don't know.

01:49:20   But anyway, so I would want,

01:49:20   well, I would want the fastest one

01:49:22   and I would want the quote unquote best one.

01:49:23   And that's why I think I would prefer the R. Plus, in my experience, which admittedly,

01:49:28   admittedly I have not driven a front-wheel drive car in, I don't know, 15 years or something

01:49:32   like that, but I, in the past, have never particularly enjoyed driving front-wheel drive

01:49:39   cars.

01:49:40   Well, actually, that's not true.

01:49:41   Aaron's Mazda was front-wheel drive, and although I didn't drive it regularly, I definitely

01:49:44   did not like the feeling when I drove it.

01:49:46   It just felt like the front wheels were doing too much, I didn't care for it.

01:49:50   And the GTI is front-wheel drive.

01:49:51   With that said my understanding of the GTI is that it actually has like a limited slip differential up front

01:49:56   Which is weird and kind of like the the Dodge SRT for from back in the day

01:50:00   But anyway, all of this is to ask the question

01:50:03   Do you think you guys would if you were if I told you you had to buy a golf R or a GTI?

01:50:09   Which I know John you're gonna blow this

01:50:11   Predicament out of the water some way somehow, but if you had to choose between one of those two cars

01:50:16   Do you think you would entertain entertain the front-wheel-drive GTI that has a sunroof?

01:50:21   Or do you think you would have to go all-in on the Golf R?

01:50:23   I would get to GTI because I keep saying like oh the R is the best quote unquote best

01:50:27   But it's clear that you really want a sunroof. So it's not the best for you. Yeah

01:50:30   Like the amount of time I would imagine you would enjoy a sunroof is greater than the amount of time

01:50:35   You would enjoy it being rear-wheel drive or whatever the all-wheel driver

01:50:39   Yes

01:50:39   I'm with you in principle that why do you got to use your logic on me because you just you just cruising down the road

01:50:43   At 1530 miles an hour you're enjoying the sunroof on a sunny day

01:50:46   and you're only enjoying the slightly different driving dynamics when you're driving hard, which is way less than that.

01:50:51   You haven't been in the car with me in a long time, have you? But anyway, I understand your point.

01:50:56   You should drive more safely.

01:50:58   Look, you're talking to people who have Volkswagen things and they're gonna want to sell you Volkswagen things because everybody always wants to convince other

01:51:05   people to buy what they bought.

01:51:07   So keep in mind though that

01:51:09   that is their perspective. Like, you know, I'm telling you, first

01:51:13   I told you you should buy a BMW because I bought one.

01:51:15   Now I'm telling you you should buy a Tesla

01:51:17   because I bought one.

01:51:18   John's telling you to buy an Accord because he bought one.

01:51:21   Part of this is to validate our own purchases,

01:51:22   part of it is because whatever thought process

01:51:24   led us to make the choices for ourselves,

01:51:26   it's natural to apply the same processes to you.

01:51:29   The reality is though, that when you,

01:51:31   like you're bending over backwards trying to get

01:51:33   some GTI-like vehicle to fit what you actually want,

01:51:38   but it sounds like they just don't make one

01:51:39   that is what you actually want.

01:51:41   And that's a totally fine answer.

01:51:42   Like the answer I think just is,

01:51:44   they don't make what you want,

01:51:46   so therefore this is not the right car family for you.

01:51:48   And you should look at other things that might be.

01:51:51   - So in conclusion I need to buy a Wrangler.

01:51:53   (laughing)

01:51:54   - That wasn't one of the two choices.

01:51:55   You were like, you gotta pick a GTI or R.

01:51:57   I picked one, Mark was like,

01:51:58   no you should get something totally different.

01:51:59   It wasn't a question, the question was GTI or R.

01:52:02   They have a specific point of that question,

01:52:03   was seeing if you should value all wheel drive

01:52:06   over the sunroof.

01:52:07   - I'm with John, I think you would probably enjoy

01:52:09   the sunroof more, but I think ultimately

01:52:12   none of these Volkswagen small hatchback things

01:52:16   are actually what you want.

01:52:17   So you shouldn't really,

01:52:18   it's like this is kind of a pointless exercise

01:52:20   because you shouldn't really be considering any of them

01:52:22   unless what you want completely doesn't exist by anybody.

01:52:26   But that's not true.

01:52:26   There's lots of cars that, well not lots,

01:52:29   but there are some cars that you would enjoy more

01:52:32   that are from other brands.

01:52:33   And that maybe you're not considering

01:52:35   because you don't think you should,

01:52:37   like in the case of your SUV Envy.

01:52:39   But you know, we're your friends,

01:52:40   will accept you for whoever you are.

01:52:42   But maybe it's because you don't wanna pay the price

01:52:45   or you're mad at BMW like with the M3

01:52:48   or Tesla with the price.

01:52:49   But the cars you're looking at are not for you

01:52:53   because every choice you have in that lineup

01:52:56   has some kind of severe downside that you really don't like.

01:53:00   - I know, it's Achilles Heels all the way down.

01:53:02   It's terrible. - Right.

01:53:03   So therefore, none of them are the right car for you

01:53:06   and that's okay.

01:53:07   - I know, I know.

01:53:08   - You should be test driving these cars though.

01:53:10   You always talk about them in Hammond and Houghton, "Just go test drive them.

01:53:12   Just like, you know, it doesn't cost you anything to test drive them."

01:53:15   And coincidentally, I might have a little bit of time outside the house just by myself

01:53:19   tomorrow maybe, and I've been debating—I probably won't because I'm going to want

01:53:23   to come back and save Aaron—but I've been debating going to the Volkswagen dealer and,

01:53:28   "Oh, that's right, that's why I wasn't going to do it because I've looked at their

01:53:30   inventory and it's garbage."

01:53:32   But I was kicking around the idea of going to the Volkswagen dealer and driving a GTI

01:53:35   just to try it.

01:53:37   And if there's any part of this segment that, Marco, you leave in the show, would you please

01:53:40   leave the following?

01:53:42   I am aware of the Kia Stinger.

01:53:44   It looks very nice.

01:53:46   Well, not aesthetically.

01:53:47   Aesthetically, whatever.

01:53:48   But it's--

01:53:49   It looks like garbage.

01:53:50   Go ahead.

01:53:51   You're really winning over the fans here.

01:53:52   Exactly.

01:53:53   Aesthetically, it's--

01:53:54   I'm aware of this car you keep telling me about.

01:53:55   It's ugly.

01:53:56   Yes.

01:53:57   And what--

01:53:58   It's not beautiful.

01:53:59   But I understand it ticks a lot of the checkboxes that I'm interested in, except everyone seems

01:54:04   to be forgetting that it's two-pedal only.

01:54:08   And if I'm going to go for a two-pedal car,

01:54:11   I'm going to go all in and do something like Tesla

01:54:14   or really make my life miserable

01:54:16   and get the Giulia Quadrifoglio or something

01:54:19   along those lines.

01:54:20   I'm not gonna get a Kia and get a two-pedal Kia.

01:54:22   It's not happening.

01:54:23   - You're giving up so much by dropping the clutch

01:54:27   that you better be getting something amazing in return.

01:54:29   - Exactly, no truly.

01:54:30   Like I completely and utterly agree with you.

01:54:32   I could not have said it better myself.

01:54:34   And that's that's the thing and the latest car and driver of the Kia Stinger tied with the BMW 430i

01:54:39   xDrive

01:54:41   Grand sport Gran Coupe. It's a giant long name. It was like fastback

01:54:45   Tied it tied with the Kia Stinger

01:54:48   for second place in a three car race

01:54:51   So they were so they were both massively behind the winner which was the Audi a5

01:54:55   But what?

01:54:57   - What I'm basically saying is how far BMW has fallen

01:54:59   because they used to routinely win these match-ups

01:55:01   by a wide margin and now it's way behind

01:55:03   by not just a couple of points, not just a couple of points.

01:55:06   And it got tied with the Kia.

01:55:08   So what I'm saying is BMW has lost their way.

01:55:10   - Yeah, any comparison to the F30 and beyond generation

01:55:15   of BMW 3 and 4 series has to have the disclaimer

01:55:19   that yeah, but these are way worse than BMW used to be.

01:55:21   So yeah, Kia has reached the level of BMW

01:55:25   in BMW's degraded state.

01:55:27   Or, I forget, oh man, so I started going

01:55:31   to an exercise thing with Tip,

01:55:32   and the trainer used some amazing euphemism

01:55:35   to describe my physical state.

01:55:37   - Oh god.

01:55:39   - You're like a Kia Stinger, Marco.

01:55:40   - I think it was, oh, it was my de-conditioned state.

01:55:44   (laughing)

01:55:46   - Like a battery you've been de-conditioned on?

01:55:48   - Yeah, which is hilarious, 'cause that implies

01:55:51   that I was at one time conditioned,

01:55:52   which was never the case.

01:55:55   Did you show them your mouse and trackpad hands?

01:55:57   Look at these hands.

01:55:59   The mouse and trackpad all day with these.

01:56:01   I've worked hard for these hands.

01:56:03   Look at how precisely I can double click.

01:56:05   I'm a computer athlete.

01:56:07   (door slams)