PodSearch

ATP

296: Giant Buffers of Floats

 

00:00:00   Take two showers tomorrow. Shower is the ultimate idea place.

00:00:03   Yeah, Marco's a little grumbly tonight, but I can understand.

00:00:07   Oh gee, yeah. C is kicking my butt right now, and audio math is kicking my butt right now.

00:00:14   So what are you trying to accomplish? And use very small words, because I am not familiar with audio

00:00:20   stuff at all. Okay, so in audio terms, I'm trying to implement a look-ahead limiter. You know,

00:00:26   you probably know as a podcaster and as a video person that clipping is real bad. I've heard this.

00:00:32   When your audio level goes above the maximum input level of a digital input device,

00:00:38   it sounds really bad. It sounds like a scratchy, loud kind of like kind of thing, like it sounds

00:00:44   awful. So it's very important when you're dealing with audio amplification, when you're trying to

00:00:49   make, you know, make volume levels louder or whatever else, it's very important to have a

00:00:53   limiter in front of it. And the point of the limiter is to catch those like very loud signals

00:00:59   that would clip before they clip and to apply gain downwards on them. So hold on, so hold on. So

00:01:06   to use kind of a really crummy analogy, so this is like I have my finger on the volume dial. I know

00:01:14   it's not quite volume, but for the sake of the analogy, I have my finger or my hand on the volume

00:01:18   dial and I see the person in front of the microphone take a real deep breath and like get

00:01:23   ready to shout and I go, oh crap. And I turn the volume down because I know they're about to shout.

00:01:27   Well, that's the look ahead part, but I haven't gotten to that yet. So the main part is they start

00:01:31   shouting and as they get really close to the top, you very quickly go, oh crap, this is going to

00:01:37   clip and you turn the volume down. Okay. Now you might think like the naive way to try to implement

00:01:41   this is basically you just look at every sample and the ones that are above one in the floating

00:01:49   point domain. So like the ones that are above 1.0, which is like the ceiling, you just like

00:01:53   compress those down by a certain multiplier or you just make them 1.0. You might think to do it that

00:01:59   way, but that ends up sounding awful because of the way signals work that basically introduces

00:02:03   a bunch of frequencies and distortion that weren't there before. And so the right way to do it is

00:02:10   to catch it well in advance of it actually clipping like, you know, enough samples in

00:02:16   advance that you can actually do almost like a gradual volume ramp downwards. And if you,

00:02:22   if you've seen, you know, if you're ever like using an audio editing program and you're,

00:02:25   and you're playing with the controls of either a compressor, which is basically a limiter with

00:02:30   some extra stuff or a limiter, then you will see something called attack time and release time.

00:02:35   And these are literally like the amount of time usually measured in like tens of milliseconds or

00:02:40   maybe hundreds of milliseconds at worst, the amount of time that it will take to turn the

00:02:46   volume down to prevent clipping. And then that's the, that's the attack time. And the release time

00:02:50   is the amount of time it takes to go back to normal. It's basically turn the volume back to

00:02:53   normal after it thinks it had that the, that the clipping sound is over. What you want to do is

00:03:01   ideally to, to really prevent something from clipping, you need to have look ahead,

00:03:05   which means you need to be able to look to see what's coming in the stream before you apply the

00:03:11   volume dip to, to limit it from clipping. So what I've been doing and, and, you know, so, you know,

00:03:18   programmers, you know, you can figure out like when you're dealing with some kind of like rolling

00:03:21   buffer with like look ahead functionality, but you can't modify this stuff and look ahead, but for

00:03:25   yet, like it's kind of, it's kind of awkward. And, and so I basically spent yesterday building the

00:03:31   framework to do look ahead processing. And then I spent today trying and largely failing to write

00:03:40   the, the gain processing that will gradually in response to what's coming up ahead, will gradually

00:03:48   raise and lower the volume in a way that doesn't sound horrible. And that actually works to prevent

00:03:51   clipping. And I just, I've just been having a terrible time. My brain is melted right now. Like I,

00:03:57   it takes, it takes me a long time to understand complex math, like, you know, anything involving

00:04:01   signal processing filters. Like I barely understand that stuff. Cause I'm really not good at that kind

00:04:06   of advanced math. I have very little knowledge of it and very little background in it, but the

00:04:10   limiter I thought would be easy cause I thought like, Oh, it's just like, you know, you basically

00:04:13   like ramp up and down the, the gain and response to what you see ahead of you. And yeah, it's

00:04:18   kicking my butt. It's not easy at all. And of course, because I'm working in C, I am frequently

00:04:24   like having these comical errors where like, you know, I love working in C. I like C was kind of

00:04:29   like my, my programming youth and, and I really enjoyed it. And I, my first job was all in C.

00:04:36   So I do love C on, on a very like intellectual level, but it is awfully funny when like,

00:04:41   you know, you, you get a, you get an error where like, Oh, the thing I, the thing that

00:04:46   worked like last build in this build, it's making random noise all over the place. Well,

00:04:51   I screwed up on memory somewhere and you just got to find like, where is the somewhere like

00:04:56   somewhere I made a mistake and I'm writing all over garbage somewhere and yeah, it's,

00:04:59   Oh boy. So I've had a number of those times and I've had a lot of terrible luck trying to

00:05:05   implement my limiter. Uh, but, uh, getting there slowly. Now why C speed? Because the API you're

00:05:13   using to see all the above some of the above the API. I'm actually not dealing directly with core

00:05:18   audio at this level. I'm dealing just with like float arrays, like just like giant, giant buffers

00:05:24   of floats that are sample data. So I could be writing this pretty much anything that can,

00:05:29   that can operate on raw buffers. When I write code at this level, I make extensive use of the, uh,

00:05:35   the accelerate framework with all the VDSP functions. This is basically Apple's like

00:05:40   wrapper functions around highly vectorized optimizations for common math operations and

00:05:44   this kind of thing. So like if you want to like take an array of 500 numbers and multiply them

00:05:49   all by the same value or multiply two giant arrays of 500 numbers by each other and put the result

00:05:54   in a third array of 500 numbers using these functions in the accelerate framework are way,

00:05:59   way, way faster because they use vector operations on the processor. Uh, it's way faster than like

00:06:03   going through one by one and doing these operations. So basically I'm dealing with a

00:06:07   whole bunch of raw float arrays and a whole bunch of calls to these low level functions and everything.

00:06:13   And so you can do this in Swift, but Swift is such a Royal pain in the butt doing things like this.

00:06:21   Sure. And why not? Why not objective C then? Um, this library, I really just write and see for

00:06:28   speed like this is so in this audio pipeline is the only time I have ever had a measurable

00:06:34   improvement by removing an objective C message sent. Like I actually like back, back when I was

00:06:40   doing that battery testing, when I was like running at the batteries and all my devices

00:06:43   seeing like, Oh, does the speaker use all the battery? Does the Bluetooth use all the battery?

00:06:46   So that I discovered this optimization where like there was like there was this one call that

00:06:50   basically renders out a block of like 500 samples of audio in the audio pipeline. And so it's called,

00:06:57   you know, there's 44,100 samples per second. So the block that renders 500 at a time is called

00:07:03   many times per second. And by removing an obviously message send from that, I was able to

00:07:09   actually speed up the processing by some amount, like, you know, a couple percent, but it was like,

00:07:14   it was measurable and it was reliably measurable. Hmm. That's surprising. So what is the ultimate

00:07:20   driving motivation behind this? If you're willing to share. So I'm working on voice boost too.

00:07:26   I've been taught, I've talked about this a few times here and there, like just kind of mentioning

00:07:28   here and there. And basically I'm trying to do voice boost, but better. One of the reasons I'm

00:07:33   doing it now is because I really, if I want to support airplay too, in a way that isn't horrible,

00:07:39   I really need to write my own voice boost code instead of right now, voice boots is implemented

00:07:44   as a combination of a legacy, a you graph nodes like audio graph nodes from core audio.

00:07:49   And that API seems to like, it's very discouraged to use that now. And, uh, and it seems like Apple

00:07:57   is slowly showing at the door and using those to supply an airplay to stream is possible,

00:08:06   but it would be very clumsy. I basically have to like create a whole audio graph,

00:08:09   like off to the side that isn't connected to the hardware render with it into a voice or into a

00:08:16   airplay to style renderer. And like, so it's like, it's just a lot of overhead. It's a lot of extra

00:08:20   work and that would probably have a noticeable battery cost. So I don't want to do it that way

00:08:24   if I don't have to. So the way I want to do it is by not needing those old, a you graph processing

00:08:30   nodes anymore, which means that I have to write my own compressor. And the way you write a compressor

00:08:36   is you write a limiter first. And so I, uh, I need the, I need basically, I need the limiter for lots

00:08:42   of different things in audio processing things. Uh, but the very first thing I need it for is the

00:08:48   voice boost to compressor that I'm writing from scratch. And this is probably not wise, uh, but

00:08:53   I just spent like a month dealing with just like pain in the butt watch things, like not the fun

00:09:01   part of app development, but just like pain in the butt, like, Oh, this, this watch transfer just

00:09:06   failed for no reason. How do I fix that? How do I try to work around that? And, and going through

00:09:11   like, so overcast, um, five Oh three just came out a couple of days ago and, um, and this included

00:09:18   basically what I'm talking about, like the, the fix for watch transfers. This was a grueling process

00:09:23   where to figure out why standalone watch podcast transfers were so unreliable. I basically,

00:09:31   for the last few weeks, like shipping a beta build almost every day, uh, with different tweaks and

00:09:36   changes, I built a whole logging frameworks of people. So, so the watch would log what it's doing

00:09:41   and coordinate it with the phone app and log what it's doing. And then people in the beta could then

00:09:45   send me those logs so I could look at them and make tweaks and send that new builds the next day

00:09:49   or later that same day. And it was just a grueling long process of trying to finally figure out how

00:09:57   to make watch transfers even remotely reliable. And so I'm rewarding myself with that long slog

00:10:02   of doing something I really didn't want to do. That's very boring with a bunch of C. Well,

00:10:07   yeah, cause it's different, you know, it's like, I know it sounds crazy, but like, it does sound

00:10:11   crazy, but this is something I've been putting off for a year. Uh, and it, or, and parts of it have

00:10:17   taken me a year to figure out even how to do, uh, like, cause as I mentioned, like this involves a

00:10:22   lot of like DSP stuff that I do not have a background in that I, that I mostly don't know,

00:10:26   like whenever I see like whenever I like find a stumble upon like an academic paper online,

00:10:31   it tells me to do something and it's starts putting in like the big Greek, like Sigma symbol

00:10:35   and everything. I don't even, I don't know how to do even that stuff. Like I don't know how to even

00:10:38   read mathematic notation beyond like basic stuff. And when they start talking about things like,

00:10:44   like, you know, if I are filters and everything I had, I don't have any clue about that stuff. Like

00:10:48   I that's way above my head. And so it's taken me a very long time to figure out how to do this kind

00:10:53   of stuff. But I have figured out enough of it to get by on some low levels. And so I actually find

00:10:59   this really fascinating and interesting and it's a very good intellectual challenge and it's working

00:11:04   towards something I really, really want to get done. That will be very satisfying to me that most

00:11:09   people won't care about at all. All of this is going to go into a little check box that says

00:11:12   AirPlay 2. Like it's like a little bullet point feature on one release now supports AirPlay 2.

00:11:17   But if I can get this down, I can then also use this to build more interesting stuff.

00:11:22   So I, that's what, that's my main goal here. I couldn't care less about your home pod. I want

00:11:26   to build more interesting stuff. So I want to do AirPlay 2 first to get me to, to build the

00:11:30   building blocks and then I can do interesting stuff with that. So that's, that's where I am now. And I

00:11:35   actually find this to be a wonderful change of pace from fighting watch connectivity and transfers.

00:11:43   This actually feels, even though this is way like harder math wise and way lower level,

00:11:49   this feels more satisfying to me because I feel like I'm not cleaning up some mess. I feel like

00:11:55   I'm actually building something and that's something you don't get very often in programming and you

00:11:59   gotta really enjoy it when you do. Not to spoil your fun, but did you check to see if there are

00:12:04   any libraries that already do this? Like open source libraries? There might be some that are

00:12:08   like really part of something bigger like, like the, what's that audio program? Not Audacity.

00:12:13   Yeah. Audacity. Like Audacity is an open source audio editor that has things like limiters and

00:12:17   compressors in it. I could look at their code and like, I don't know, steal it. I don't want to do

00:12:22   that though. And, and it's probably hard to like, you know, port some of that stuff over. What I'm

00:12:26   really looking for is like descriptions of like algorithms to do these kinds of things. And those

00:12:31   are actually few and far between. Most online code that you would find would do this either as like a

00:12:40   matlab function, which I don't know what to do with or they're doing it. They're just like, you know,

00:12:49   going to call the core audio units that at least I know how to use audio units already. I'm trying

00:12:53   to do this without using audio units. So here we are. To go back a half step. Do you have any

00:13:01   findings that you're willing to share with regard to watch related things? Like, was there

00:13:06   some head slapping moment where you were doing something silly and that,

00:13:09   that's what caused the problems or is this considered a trade information?

00:13:13   The main problem I had with the watch. So the, the watch app can wake up the phone app in the

00:13:20   background whenever it wants. Like whenever the watch app is running or is updating itself.

00:13:24   If the, if the watch app is running, it can send a message to the phone app and the phone app will

00:13:28   wake up if it's in the background, but it doesn't work the other way around. The phone app cannot

00:13:33   wake up the watch app on demand. So the phone app, like if, if you get a new download into your

00:13:39   phone, the phone can't send that immediately to the watch. It has to wait for the next time the

00:13:44   watch app checks in and the watch app can check in really, really pretty rarely. Um, you know, it's,

00:13:51   if you have it configured as a complication, it gets maybe every 15 minutes worth of check-ins.

00:13:57   If it's not a complication and you just have it on the watch, it gets a lot less time than that.

00:14:01   Each one of those check-ins, it can only be alive for like two seconds before the system, uh, you

00:14:06   know, puts it back in the background. And if at any point you, uh, violate any of these limits

00:14:12   from the watch app side, your app gets killed and then it doesn't come back for awhile.

00:14:16   So I had many problems. Part of my problems were I was exhausting some of these resource limits

00:14:22   because some things in the watch were just taking too much computation that I was doing.

00:14:25   And so it was getting killed in the background a lot. So it was not refreshing very often.

00:14:29   Uh, more problems. There were so many problems. Like there were a couple of race conditions with

00:14:33   like the watch app would start up and send a sync message to the phone app and then receive some

00:14:39   files the phone app had sent in the background. Uh, cause watching activity does not guarantee

00:14:44   the order of things you send, uh, whether some of them are background or not. It's very, very weird.

00:14:48   Uh, and so like there was some weird race conditions. There were some concurrency bugs.

00:14:53   There were some crashes that were sometimes my fault, sometimes being related to resource

00:14:58   terminations. And I had a system before where the phone app would try to communicate with the watch

00:15:06   app proactively. So even if the watch app wasn't running, and I said it earlier, the phone app can't

00:15:11   wake it up. The phone app was trying to say, you know what, this episode just came in. Let me just

00:15:15   create a watch file transfer and just tell it to start. And then next time the watch comes around

00:15:21   or next time the systems feel like it, it can maybe get that transfer. And hopefully sometime

00:15:25   the watch app will be woken up and it can receive that. So I was, I was basically proactively

00:15:30   creating transfers on the phone. This, this meant the phone had to keep track of what the watch had.

00:15:37   So the phone would know what was new and what needed to be sent to the watch.

00:15:41   This worked somewhat, but created a bunch of weird edge case problems.

00:15:48   Problem number one was if you have more than one watch, this totally breaks because if you have

00:15:52   more than one watch, then every time the watch, every time a watch checks in with the phone,

00:15:56   first of all, if you have just changed watches, all background transfers get killed and invalidated

00:16:03   and you have to start them over. So if you, if you wear multiple watches, this is, this is,

00:16:08   this is one thing that suffers. And then also then like, you know, then you have two different sets

00:16:14   of what you might have. And so the phone can get confused about what the, what the watch has,

00:16:18   and it can send duplicate things. Some of those race conditions also resulted in duplicate sends

00:16:23   where like the phone would tell or the watch would tell the phone, all right, I have numbers one,

00:16:27   two, and three, and the phone would say, all right, I'll send you number four. And then

00:16:32   right after the watch said, I have numbers one, two, and three,

00:16:36   watch connectivity delivered in the background, number four, that was sitting there waiting for

00:16:40   it, but it just hadn't delivered it right on launch. So then it actually already had number four,

00:16:46   and then the phone is resending it because at the time the phone got the sync message,

00:16:49   it thought it didn't have it. So it like, there's all sorts of weird little like race conditions and

00:16:53   various concurrency issues that just took me a very long time to figure out and fix. And my,

00:16:58   my solution at the end was basically stop doing anything proactively on the phone.

00:17:02   The phone no longer keeps track of what's on the watch, except for a very basic display function of

00:17:07   like displaying how much free space you have in the setting screen. That's it. Now, every time the

00:17:12   watch syncs with the phone, it tells it, I have, you know, episodes number one, two, and three,

00:17:16   or whatever. And the phone in response to that will create any necessary transfers to send new

00:17:22   stuff to the watch. That way you can have 10 watches paired and it'll basically work. Like,

00:17:29   it'll be, it'll still suck for other reasons, but it'll basically work because then like each

00:17:35   watch is only getting what is sent in response to it. This ends up working way more reliably

00:17:43   and it eliminates duplicate transfers almost a hundred percent of the time,

00:17:46   which dramatically improves things. The only downside to it is that the delay between when

00:17:54   your phone downloads a new episode and when that episode shows up on the watch, maybe longer in

00:18:01   many cases because it has to wait, like so the phone can download it and then it has to wait

00:18:06   until next time the watch checks in before it even starts the transfer to the watch.

00:18:12   But every other way I tried doing things was very, very buggy and very, you know, it would destroy

00:18:17   people's batteries and everything and it was, and it would make a lot of duplicates and it would,

00:18:22   transfers would get all bogged down and watch connectivity, which is a very buggy framework.

00:18:25   And because I was just sending too many messages proactively in the background,

00:18:28   it would just take forever. Like it was just, it was so problematic to do it, to do the proactive

00:18:33   method. So this wave of basically doing everything in response to something is way more effective,

00:18:40   way faster at like at the actual transfers and then just has the downside of like,

00:18:44   there's that latency between when new stuff arrives and when the watch can get it.

00:18:48   - Sounds fun.

00:18:49   - Yeah, so that in response to all that, I needed to do something productive

00:18:53   and that's why I'm writing my own look ahead limiter, damn it.

00:18:56   - Whatever makes you happy.

00:18:57   - By the way, if anybody knows how to write a look ahead limiter, let me know.

00:18:59   - Yeah, that is intense.

00:19:00   - Oh, geez. I almost got it. Like I have the look ahead part, I have that done. It's just a question

00:19:07   of like responding to the changes in like attenuation in a smooth and also accurate way.

00:19:16   'Cause in theory, like if you have a look ahead of say, you know, 10 milliseconds and your attack

00:19:23   time is 10 milliseconds, in theory, it should be impossible to ever clip. Like the output should

00:19:29   never be clipped then, but I'm not having that kind of outcome yet. So here we are.

00:19:34   - Well, good luck. I'm sure that's just a boatload of fun.

00:19:40   - Honestly, much of it is. Yesterday was a lot of fun, like putting together all the look ahead stuff

00:19:45   and doing some more voice boost coding. Like that yesterday I had a lot of fun and I got a lot done.

00:19:49   It was very productive. Today has been one of those like bang in my head against the wall days.

00:19:53   - Do you have a separate little project where you're working on this part? Like are you,

00:19:58   you know, doing the audio processing, not in overcast, but in like a just a, you know,

00:20:02   a separate framework project or like just off to the side?

00:20:05   - I have a Mac command line utility that I develop all this in. So that way, like I can,

00:20:10   I just hit build and it's, I don't have to wait for the simulator. I don't have to wait for any

00:20:13   devices. Like I just hit build and I run it from the command line with command line arguments of

00:20:17   files I have on my Mac to test with. And it's like, here's an input file, here's an output file.

00:20:21   You know, so it not only is it way faster of like a build and run and debug cycle, but also then I

00:20:27   can, I can supply it whatever input file I want. And then I can open the result up in Adobe Audition,

00:20:33   which is like, you know, this very sophisticated wave editor. And I can look and see exactly what

00:20:38   I output like at the wave level and just see like, is this working right? I can listen to it. I can

00:20:42   like on my big headphones and everything. So it's all to make it a lot easier. And then,

00:20:46   but I'm working on a framework that is shared with Overcast. And so that way, like once I figure it

00:20:52   out in this Mac utility, I can just bring it over. Just have a way out of the faster code debug cycle

00:20:58   is another reason a lot of people like unit tests when developing an isolated piece of functionality.

00:21:02   I love you, John. Oh my word, I love you. In this case, I don't know that at this moment.

00:21:09   You can still do it. Testing could still be a part of it if you knew what the, for example,

00:21:13   if you knew what the numbers were supposed to look like, if you knew what the samples,

00:21:16   if you knew what you wanted the samples to look like in the stream, right? But you're doing it

00:21:19   sort of the more visual way of like make a file, chuck it into an editor and look at it, you know,

00:21:24   whatever. I also spend a lot of time in the debugger. Like that's like, basically the debugger is my test

00:21:29   suite. Like I just hit a break point right after, like, it's like, I know what this is supposed to

00:21:33   be. That's an under the radar title of under the radar titles. The debugger is my test suite.

00:21:38   Also, you can still run the debugger with unit tests. Like that's still a thing. Don't worry.

00:21:44   Tell you what though, like, like as an iOS developer, the vast majority of the time,

00:21:47   doing something like this where it's just a Mac binary is so refreshing in a few ways. Like,

00:21:52   it's so damn easy and fast and there's so much less to deal with. It's, it's really nice.

00:21:59   Uh, I hear you. No, I feel like, um, I don't want to pull on the unit testing thread anymore,

00:22:04   but, uh, I feel like unit testing is one of those things that you're going to come to in your own

00:22:10   time for some ridiculous reason. And then you're going to say to John and me, hopefully me, if not

00:22:16   both of us, you know, unit testing is actually really convenient. That's a pretty long, infinite

00:22:21   time. I'm arguing it given the current rate of change. Yeah. I would, I would not bet that I

00:22:29   would be arriving at that point. Anytime. Like I think I will be retired from programming before

00:22:34   I arrive at that point. You're going to work on it. Start working on Adam Casey. Yeah, there you

00:22:37   go. Maybe you have a chance with Adam will be heavily into test driven development. Oh,

00:22:41   I didn't say test driven development. I'm not a monster. I mean, come on.

00:22:45   We are sponsored this week by away for $20 off your suitcase. Visit away, travel.com/atp

00:22:52   and use promo code ATP during checkout away quite simply makes really nice suitcases at a really

00:23:00   great value. So they use high quality materials. This is made from premium German polycarbonate,

00:23:06   unrivaled and strength and impact resistance and very lightweight. And they're incredibly

00:23:11   well designed to they're practically designed and smartly designed. They have an interior with

00:23:15   a patent pending compression system so you can fit a bunch of stuff in there. Of course they have

00:23:20   four spinner wheels. They have a TSA approved combination lock. They have a removable washable

00:23:25   laundry bag so you can keep your dirty clothes separate from your clean clothes as you travel.

00:23:29   And then when you come home, you can just dump out that bag into your washing machine. It's really a

00:23:33   very well designed thing. And they have all these different sizes. Now they started out with the one

00:23:37   that you might've heard of the carry on. They've also now made the bigger carry on the medium and

00:23:42   the large, and these come in all sorts of different colors and the carry ons have a built in USB

00:23:48   battery. So you can even charge your phone as you're sitting around waiting, like at the gate,

00:23:52   at the airport, you can keep your phone charged with the built in USB battery. And when they tell

00:23:56   you to remove it, if they have to gate check it, it's really easy to just pop it right out to remove

00:23:59   it. All of this is backed by a lifetime warranty. If anything breaks, they will fix or replace it

00:24:04   for you for life. And you can see for yourself how good it is by taking advantage of their 100 day

00:24:09   trial and free shipping within the lower 48 states of the US. You can try it for up to 100 days. And

00:24:15   this of course means you can travel with it. If at any point you decide you don't want it, you can

00:24:19   return it for a full refund with no questions asked. So check it out today at awaytravel.com/atp

00:24:25   and use promo code ATP during checkout for $20 off a suitcase. Once again, awaytravel.com/atp,

00:24:32   code ATP for $20 off a suitcase. Thank you so much to Away for sponsoring our show.

00:24:36   All right, let's start with some follow up. You're welcome, world. I think we can comfortably say

00:24:47   that it was only the three of us that got Apple to update its bagel emoji. And now it mostly looks

00:24:55   okay. There's still room, but it's better than it was. Oh, it's way better. Let's say this. Yeah,

00:25:02   definitely. The main thing you can say about it is it is an improvement. I mean, how could it be

00:25:06   worse really? But it is an improvement for sure. There are things to be said about it. But put it

00:25:13   this way. If I squint or move away from these big images or whatever, one is immediately

00:25:18   identifiable as that's supposed to be a bagel and the other one still looks vaguely donut-like. So

00:25:22   success on if you look at this and tell me what it is, you can say it's a bagel. If you look at

00:25:26   the details, you can nitpick them. But as other people have pointed out, you look at the details

00:25:31   of almost any emoji and there's some ridiculous stuff in there. But like the key thing tested,

00:25:35   it has to pass is what is this? And if you if someone percentage of people say donut,

00:25:39   it's a failure. So thumbs up. It now looks like it is now identifiable as a bagel, albeit a very

00:25:46   strange pale bagel that's semi toasted with plastic cream cheese on it, whatever, whatever.

00:25:51   It's going to be small. It'll be fine. Well, and like, you know, the point of emoji

00:25:55   is not to look photorealistic. Like it's an art style that on some level and this varies

00:26:02   depending on the vendor, but like, you know, it always looks a little bit cartoony because they're

00:26:07   being displayed in text in very, very small sizes most of the time. And so like to have something

00:26:13   look totally photorealistic will just kind of look weird. So the style they're in is honestly,

00:26:20   I think Apple's current style is actually more photorealistic than it needs to be.

00:26:24   Yeah, for sure. I was going to say it's very close to, again, potentially uncanny valley.

00:26:29   They it's it's stylized for sure, but it is very much more photorealistic than most other emoji.

00:26:35   Ultimately, this is a much better bagel. It is more realistic than I expected it to be.

00:26:40   And it's like I don't I don't have any more complaints about it. Basically, like I,

00:26:44   I do think that I do know like so, OK, so like they they made like the little, you know,

00:26:49   buttcracks seem more prominent. And so it's easier. It's more easily identified as a bagel that way.

00:26:55   The the whole to circle ratio and shape are better. They're more they better reflect

00:27:02   actual like, you know, New York style bagels and the cream cheese. While I don't

00:27:08   love the like, you know, perfect way it was applied there, I do recognize this is like

00:27:13   this is a cartoon, right? And so like it is it is supposed to be that way. And also the cream cheese

00:27:19   hides the the texture of the of the horrible bread texture it had before, which appears to still be

00:27:24   under it. But but we don't really see it anymore. So ultimately. Oh, and the color of the dough has

00:27:31   has been tweaked to be, I think, a lot better, much closer to a real bagel. So ultimately,

00:27:37   my main complaint about it, which admittedly is a very minor complaint, is that a plain bagel with

00:27:43   plain cream cheese is such a waste. Like you have two opportunities there to have interesting

00:27:49   flavors in the bagel and in the cream cheese. And I understand if maybe you want to just take one of

00:27:55   those like an everything bagel with plain cream cheese is really good. Or a plain bagel with like

00:28:01   some kind of really outrageous cream cheese, like you know, like a really strong vegetable or

00:28:05   scallion or so like like that can be good too. But to have a plain bagel and plain cream cheese

00:28:11   is just it's a waste of carbs. It's not a waste. It's not it's like it's like plain cheese pizza.

00:28:17   Like, yep, it's not the thing you want all the time and other things can be more exciting.

00:28:22   Plain cheese pizza is way better than a plain bagel with plain cream cheese.

00:28:26   Oh, no, sir. Like none of it's done well. Like simple. It can be it can be done well.

00:28:31   A couple of you know, not that we're going to go through all this all again, but a couple of my

00:28:35   complaints about this bagel, the bottom half like they hid the texture of the you know,

00:28:41   the cut inside so they don't have to worry about that for the most part anymore.

00:28:44   But it looks it looks kind of like it's like toasted or stale, like it's the wrong

00:28:49   the parts that are sticking out of the wrong color. But the main thing you already touched on is the

00:28:52   cream cheese. First of all, I think it looks like plastic or wall spackle or something doesn't read

00:28:56   as good as the way the way it's. And again, this is all ridiculous stuff that you could only see if

00:29:01   it's giant size, small sizes, it's fine. But but even maybe it's small sizes, you can notice it's

00:29:05   like the there is there is no bagel ever made in the history of the universe that had the cream

00:29:10   cheese put on it so that there is a tiny thin rim of bagel visible uniformly around the outside.

00:29:16   Or like it's it's basically impossible to do that unless you custom made a machine. If I saw a bagel

00:29:21   like that, I'd know I was in like dreamscape with Dennis Quaid. Like this is not this is this is not

00:29:26   reality. Look at this cream cheese and this bagel. This would never exist in the real world. This

00:29:29   must be a dream. It's bad. Anyway, it's vastly improved. If you scroll down in this article on

00:29:37   Emojipedia about the bagel update and you can see the list of everyone else's bagel emoji like

00:29:41   Google, Microsoft, Samsung, Twitter. What the heck flavor is the Twitter bagel? It looks like a

00:29:48   hamburger. That's not even a bagel. Yeah, seriously. So the Twitter bagel, it has a sphere with a

00:29:54   hole down the center. Yeah, so like so shape wise, I can kind of forgive the shape if that's their

00:29:59   style. I mean, I can't. It looks like the Death Star. It does look like the Death Star. It actually

00:30:02   kind of does. But and so it's like it's it's clearly illustrating a bagel with cream cheese

00:30:07   and the bagel has five very large seeds on it and like they're like the size of like almonds.

00:30:15   And then the color of the bagel, it's almost red. It's like it's like a like a low saturation,

00:30:23   like dusty reddish brown. And I have never seen I used to work in a bagel shop and I've eaten a lot

00:30:30   of bagels since then. I have never seen a bagel that was anywhere near this color in any flavor

00:30:36   in any bagel shop anywhere. You don't have red velvet bagels mixed with blueberry all the time

00:30:40   or shape like it's not even bagel shaped. It is literally sphere shaped with with a

00:30:45   cylindrical hole cut down the center of it. It looks more like a weird cream filled donut.

00:30:51   Yeah, it really does. It's by far the worst one. I don't think Microsoft's or Google's are

00:30:55   particularly good. In fact, I think outside of Apple's, I think Samsung's is actually my

00:30:59   favorite of this batch. Yeah, Samsung's is the clear second place. Well, I don't know. Google's

00:31:03   Google's isn't bad. I mean, I identify it was a bagel like you wouldn't that they put the sesame

00:31:07   seeds on it. What else? What else? It's not a donut. Well, Google's has a couple of critical

00:31:11   errors. So number one is like the perspective between the seam between the cream cheese and the

00:31:17   top bagel half on the far left and right is weird. It has like the wrong perspective. Like it's

00:31:23   overflowing. That's what they're trying to get at. But the bagels like weirdly behind it. It's

00:31:27   not the right angle. And then second of all, the way the seeds are distributed, it's as if the side

00:31:32   of the bagel that is not facing you has no seeds on it. Yeah, it's nonsensical. Yeah. Like I feel

00:31:39   like, yeah, like Apple's looks pretty good now. Twitter's is good for comedy value. I don't know

00:31:44   what's going on in Microsoft land with those black outlines. It's probably just their style

00:31:47   and Samsung's looks like a legitimate lender's freezer bagel like that. Samsung did a really

00:31:52   good job of showing what a lender's bagel looks like. It just looks a little donut like to Apple's

00:31:57   is clearly the best in this bunch now. So it's not even a contest. All I know is you're welcome world.

00:32:01   John, tell me about screen time and how everyone's having problems with it.

00:32:05   Yep. I complained about a screen time as a feature I was using and then it just stopped working. I

00:32:10   could no longer see my kids screen time reports on my phone and a million people wrote in to say,

00:32:17   yep, I'm having exactly the same problem. I tried disabling screen time for the people and

00:32:24   remove like the big reset, which was a terrible mistake because Apple and their infinite wisdom

00:32:29   has decided if you turn it off for somebody and then turn it back on, it has no recollection of

00:32:34   what your settings were. It's like, so you're starting from scratch again. And there are a lot

00:32:38   of settings. So once I did that once, I'm like, well, even if this fixed the problem, I wouldn't

00:32:43   go through it again because it's ridiculous. So as a warning to anyone who's thinking of trying

00:32:47   that, A, it didn't fix the problem and B, it makes you redo all of the settings. I hope you

00:32:51   remembered what they all were. But yeah, everyone's like, yeah, it was working for me now. It's not.

00:32:55   One person did say that supposedly in the 12.1 beta it's fixed. I'm not on the beta, so I'll just

00:33:00   wait patiently for 12.1 to come out and hope it fixes my problem. But if it's happening to you,

00:33:05   you are not alone. All righty. Let's see what's next. Tell me about emergency bypass.

00:33:11   We talked about do not disturb. I was a big proponent of setting time do not disturb. And

00:33:15   I said, don't worry. You people can still get through if they need to because your VIPs and

00:33:19   repeated messages will get through. There's one other thing I forgot to mention. All that is true.

00:33:24   There are settings that allow people to get through when they need to, but you can also

00:33:28   within specific contacts, designate that that contact, that person, whoever it is,

00:33:34   is able to bypass do not disturb with either sounds, vibrations, or both. Just straight up,

00:33:39   like they will just go straight through it. So if you're worried that your spouse or children won't

00:33:45   be able to get in touch with you, go to their contacts and flip the switches for their ringtone

00:33:50   and their vibrate settings and say that they will pierce the wall of do not disturb. Of course,

00:33:55   maybe you want to either, I was going to say, maybe you want to tell the person that it's on

00:33:59   so they don't send you a message and expect do not disturb to protect you. Or maybe you don't want to

00:34:04   tell those people that it's on and they'll just assume that they shouldn't text you late at night.

00:34:07   Anyway, you figure that out yourself, but it's a good setting. You should know it exists.

00:34:10   So I actually wrote a blog post about this in 2016 when it was new. And at the time,

00:34:16   emergency bypass was one humongous switch for an entire contact. So what that meant was if I wanted

00:34:23   to turn emergency bypass on for Erin, not only did it turn it on for the phone, but it turned it on

00:34:29   for text messages, which is not advisable in my personal opinion, because sometimes she would be

00:34:33   up late or get up early either because she just happened to wake up or couldn't fall asleep,

00:34:38   whatever. Or maybe it was a baby related thing at the time. And so she tried to send me a text

00:34:43   with the expectation that I wouldn't see it until I woke up. It would pass through and actually make

00:34:48   noise even if I'm on do not disturb. Because like I said, it was just one or not. It was all or

00:34:53   nothing for emergency bypass. But I'm looking at this now in iOS 12. And you're right, John,

00:34:58   what you just said is accurate that in the ringtone section of a specific contact, there's

00:35:02   a switch for emergency bypass. And in the text tone section for the same contact, there is a

00:35:08   different switch for emergency bypass. So in my case, I have Erin's ringtone switch on,

00:35:14   because if she's calling me at like midnight, something's deeply broken. And the text tone,

00:35:19   I have emergency bypass off because like I said, it is not unreasonable for her to send me a

00:35:24   message either after I go to sleep or before I wake up or actually more often than not, it's me

00:35:28   sending them to her, not the other way around. But either way, you get the idea. So that's good to

00:35:32   know. I did not know that that was the case that there are now two switches. So if you've looked

00:35:35   at this early on when it first came out in like iOS 10, then maybe look again because it's gotten

00:35:40   better now. All right. We have some feedback with regard to your contact syncing, John,

00:35:46   have you fixed it? I haven't actually even looked into it, but I did get this one piece of feedback

00:35:52   that looked promising from Jordan McDonald. He said, I heard about my contact syncing issues,

00:35:56   and he had a similar problem. He said, my syncing issue was due to one or more of the limits Apple

00:36:00   places on syncing and linked me to one of these Apple support articles to help keep your, here's

00:36:06   a quote from it, to help iCloud keep your contacts, calendar reminders and bookmarks up to date,

00:36:10   keep your information within these limits. Now that text, I'm sure someone thinks is helpful,

00:36:15   but I read that text and it's like, I'm helping iCloud keep my stuff in sync by doing this. It's

00:36:22   like, is this a requirement or is it not? Or am I just like lightening the load? Like iCloud is

00:36:27   really tired. My complaint about the language is it doesn't make it clear that like, look,

00:36:31   if you don't stay within these limits, your stuff won't work. It's like, you can help it,

00:36:36   but you know, if you don't do it, it'll just be harder, but it'll still, anyway, the limit,

00:36:40   the limits is a whole bunch of limits listed, which some of them are, you know, it's like,

00:36:43   oh, you can only have 50,000 contacts. Fine. Like I'm okay with that, right? These, you know,

00:36:47   there's going to be limits. It's nice to list them. It seems like that's what this support

00:36:50   article is about. But then you get to the part about maximum size of a contact photo

00:36:56   and the maximum size of a contact photo is, you know, why is it this number? God knows.

00:37:01   224 kilobytes, which is really, really small. That's, I mean, even in JPEG, like,

00:37:08   cause I'm starting from, as I am starting from like photos, like, you know, whatever,

00:37:12   12 or 21 megapixels, 21 megapixels. I don't know what the hell my camera is. Anyway,

00:37:16   they're big photos, even as JPEGs, they are not 200 kilobytes. I'm starting from that. And maybe

00:37:20   even if I crop them. So here's the thing. I'm going to look into this next time I go on a

00:37:26   contact photo, you know, mission. First thing is I'm going to make sure whatever photos I'm trying

00:37:32   to get to sync are below the size. And the second thing is I'm going to see if I can interrogate

00:37:36   some of my existing photos and like re-add them, but at smaller sizes to see if that helps,

00:37:43   you know, things go, you know, because a couple of people have had the feedback like, oh, I found

00:37:46   one bad contact. And once I modified or deleted that contact, it stopped coming up the works and

00:37:51   everything synced. But the meta complaint is if these are the limits and your stuff just silently

00:37:59   doesn't sync because it's above limits, that is terrible. Like fine. You have these limits, fine.

00:38:04   The limits are weird. You have to tell me, Apple, you have to say, I'm never going to sync your

00:38:08   contacts because the photo you put on there is too big. Like, and I think I actually have seen

00:38:13   an error message that says, you know, sorry, that image is too big. If I accidentally, you know,

00:38:17   drag like a giant ping image on there or something, it's like multi-megabyte. Right. So I think there

00:38:21   is an error like that. So I'm hoping that this article is just old or I'm hoping this can't

00:38:27   possibly be true because if all my contacts have stopped syncing because I put some images in there

00:38:31   that are too big and it just decided to never tell me that and just hope that I have a podcast that

00:38:36   someone named Jordan McDonald listens to and they'll send me an email pointing me to this

00:38:40   obscure support article. Boy, I'm going to be really depressed if that's true. But anyway,

00:38:43   if you are having problems, you know, maybe do that. By the way, the published date on this

00:38:48   article is September 7th, 2018. So it's not looking good for my hope that this is not true.

00:38:54   All righty. What's next? Let's talk about the printer compatibility list, which came up

00:39:01   several episodes ago when I got a new printer and was unreasonably excited about it. And you

00:39:07   had pointed me to, I believe it was you, John, pointed me to the printer compatibility list.

00:39:11   It was me, actually. Oh, I'm sorry. My apologies, Mark.

00:39:14   I don't think John even knew about it. Oh, I know about it. Oh, of course he did.

00:39:18   I thought I had that one. But I hadn't checked it in years. Like I hadn't, like,

00:39:22   I didn't even know it was still maintained, which leads us to today's follow up.

00:39:25   So why don't you continue in that vein? So unfortunately, Apple is no longer

00:39:30   maintaining this list. For like, for, you know, because remember I said, oh, I'll just wait for

00:39:34   the, you know, the thing to be updated for. And the thing I did know about also is that they'd

00:39:39   start subdividing into printing versus scanning. You know, it's still just two checkmarks,

00:39:43   but it's better than it was, you know, back in the day. But yeah, so they're not going to maintain

00:39:49   it anymore. And it's mostly because of AirPrint. The text from the thing is many vendors of printer

00:39:53   scanners have adopted driverless technology such as AirPrint. Driverless is basically where they,

00:39:58   you know, they have an agreed upon interface and they push more logic onto the printer and they

00:40:01   just say, look, printers, you got to talk to us in this way. Otherwise we don't print. That's

00:40:04   part of the AirPrint thing. Anyway, and they are no longer providing drivers for new devices. If

00:40:08   your printer was made in the last several years, it probably doesn't require a driver. This list

00:40:12   is provided for reference purposes and it's no longer being updated. So basically they're saying

00:40:16   printer drivers, Apple would like them to no longer be a thing. It's like, look, if you want

00:40:21   to print on one of our things, do AirPrint. No drivers are required. And if you're not,

00:40:26   you're probably already on one of these lists. So in theory, it's reasonable to stop updating it

00:40:30   because people shouldn't be making printers that require drivers anymore. I'm not sure if that's

00:40:34   actually true enough and I kind of wish they would maintain that list, but I don't know. Like,

00:40:39   for example, the more recent version of one of the HP things, like the numbers were a little

00:40:44   bit bigger than the ones that are on the list. The last list that they have, this latest,

00:40:49   I couldn't find an HP printer with that number. I found one with like that number minus 10.

00:40:53   And maybe it's the same and maybe it would work fine, but then maybe it's totally different. Like

00:40:57   you don't really know. So if they never update that list again, I'm never going to see a list

00:41:02   like for Mojave to say, does this HP 12345 printer and scanner work with Mojave, with drivers or

00:41:11   without drivers? It's just like, I guess I have to check whether it does AirPrint. Does AirPrint

00:41:15   encompass scanning? Anyway, I'm still not doing anything with my printers, but Apple is out of the

00:41:21   business of keeping track of this big long list of printers that work and they just want everyone

00:41:24   to use AirPrint. So welcome to the future of printing. We are sponsored this week by

00:41:30   Fracture who prints your photos directly onto glass. Visit fractureme.com/ATP for a special

00:41:36   discount on your first order. Almost everyone takes and shares photos, obviously today, but

00:41:41   very few of those photos end up being printed and even fewer of them end up being ever displayed

00:41:47   anywhere. You know, you see it in like your social feeds maybe, and then it's gone after like a day

00:41:51   and you never see it again. Fracture wants you to focus on the moments that mean the most in your

00:41:55   life by turning your favorite digital memories into actual photo decor. So they make these

00:42:01   Fracture prints. These are beautiful glass photo prints. There's this thin, very thin, very

00:42:07   lightweight sheet of glass and kind of behind it, you see the picture shining through it. So it's

00:42:12   protected. It's not going to like scratch off and it's very lightweight. So it's not going to like

00:42:15   crash down off your wall. And there's like this kind of thin like foam core backing behind it

00:42:19   that you don't see once it's hung, but it helps hang it up. These are wonderful, wonderful prints.

00:42:23   It's a fantastic, both practical and beautiful way to have photos printed. We have them all over

00:42:29   our house. They are awesome. They get wonderful compliments from everybody who sees them. And they

00:42:33   make fantastic gifts. These are thoughtful, unique gifts for almost anyone, anybody who your photo

00:42:39   might be meaningful to. So like if it's a photo of your kid or your pet, maybe give one to your

00:42:43   parents or you know, their kids, grandparents, you know, whatever else. Or if it's just, you know,

00:42:46   some like nice time you have with friends, maybe get it, get a fracture printed and have it sent

00:42:50   to the friends you were with. There's all sorts of great gift possibilities with fracture for pretty

00:42:53   much any occasion, pretty much any person in your life. And people love them. They make wonderful

00:42:57   gifts and you can feel good about it too, because these are made handmade in Gainesville, Florida

00:43:02   from U S source materials in a carbon neutral factory. So you can really feel good about this

00:43:07   purchase. And they're just really, really nice photo prints. Check it out today at fracture

00:43:11   me.com/ATP. That's fracture me.com/ATP. That'll get you a special discount on your first order.

00:43:18   And they will ask you after checkout, what podcast you heard from, make sure you say ATP.

00:43:23   So once again, fracture me.com/ATP for a special discount on your first order. And don't forget to

00:43:28   mention ATP in the question afterwards about where you hear about them. Thank you so much to fracture

00:43:32   for sponsoring our show. - There's a new Palm Pilot sort of, except not at all.

00:43:41   (laughing)

00:43:43   So somebody has licensed the Palm name to make a little itty bitty bitty phone that is kind of

00:43:50   the Apple watch to Android phones ish. So this is a little tiny phone that is a mostly full featured

00:43:59   Android phone that you can only buy on Verizon and only as an accessory to a regular phone.

00:44:07   And I guess the idea is much like the cellular Apple watch where you can walk away from your

00:44:12   phone and even drive away from your phone. And you can still get phone calls on your watch and

00:44:17   you can still get text messages on your watch. While on this little baby phone, you can get text

00:44:21   messages and make phone calls and whatnot. But so it's designed to be with you when you don't want

00:44:26   to have your big, huge phone with you. What? Like I, what? - Yo dog. - Why?

00:44:33   (laughing)

00:44:37   - When we were talking about night and day phone, that was the joke of like several years ago. Now

00:44:41   it's like your phone needs a phone. - Yeah. I don't get this. - Neither do I. - I think it's cool

00:44:46   that people are trying new ideas, but not every new idea is a good one. Who wants to get away

00:44:53   from their phone, but bring another phone with them? I just don't get it. - I'm not sure whether

00:44:59   this will succeed. Obviously this, you know, it's $350. Like it's only from Verizon. It's a little

00:45:03   Android thing. Like it's a very limited scope for this. And the fact that they bought the Palm name

00:45:08   and shoved it on the back means nothing because it's just an Android phone. But when I look at

00:45:12   this, I think about like, and there's a kernel of a decent idea in there somewhere, which is

00:45:19   as phones get bigger, physically speaking, it is sometimes inconvenient to have your, you know,

00:45:28   iPhone XS Max or like, you know, your big phone with you, particularly in places like in the summer,

00:45:33   you just got shorts and a t-shirt on. Like it's a big thing. But people also don't want to be

00:45:40   without their phones. We know like the phone insecurity problem, like, you know, it's like

00:45:43   taking a pacifier away from a toddler. They need to have their phone with them at all times. And

00:45:47   there is a tension there. I like to have my phone with me at all times, so I'm in touch, but these

00:45:51   phones are so freaking huge. But I love my big phone. I love it to death. I want my phone to be

00:45:55   even bigger. It's just humongous, right? But I'm going to go and just try to stick that in my

00:46:00   shorts pocket or do I have to always bring like a bag or a backpack? It's just, it's kind of too

00:46:06   much. And you're right that like the cellular Apple Watch is perhaps a thing there, but it's

00:46:09   not like you're going to text people when you say they're Apple Watch and you can't really watch a

00:46:12   quick YouTube video or do an Instagram or like, right? So what this product points out to me

00:46:20   is the potential, and I think it's a real potential, for some, like a role that's not

00:46:27   being filled. Phones used to be much smaller than they are now. They've gotten so big that they sort

00:46:32   of have, you know, priced them out, priced themselves out, price is the wrong word. They've

00:46:36   removed themselves from a category of uses that they used to be able to fit into. Oh,

00:46:42   little thing you just chuck in your pocket and go, right? You don't do that anymore because it's so,

00:46:46   they're so freaking big, right? So to me, this argues for a potential market for

00:46:50   less humongous phones. Does it argue for people to buy a big phone and a tiny phone? Probably not,

00:46:56   because that's kind of silly and you know, you got to, who wants to deal with two phones, but

00:47:00   that's what they're trying to do here to say, sometimes you wish you had your phone with you

00:47:04   and you wish you could do all the phone things, including texting people and doing a Snapchat or

00:47:08   making a little video or like, you know, do all the phone things, but it's not so darn big, but

00:47:14   you still love your big phone. So I wish that what actually happened instead of this silliness is that

00:47:20   more phone makers, Android and Apple, decided to sell, go back to selling some phones that are not

00:47:26   so big that they are, that they limit the context in which they can be comfortably used.

00:47:32   Good luck. This would have been a lot more interesting if the phone number sharing thing

00:47:38   was optional. Yeah, you got to have, don't you have to have a second number with it or something?

00:47:43   Well, no, no, no. So it does the same. Yeah, it does the same thing that the watch does, which is

00:47:48   that it shares your number with your main phone, which also means though that like,

00:47:53   this can't be a device that like you buy for your kids to take to school with them. Like,

00:47:57   because it is your number, like they, you can't call from it to you. Yeah. I mean,

00:48:02   hardware wise, they could sell it individually, but how they're positioning now is as a phone for

00:48:06   your phone or as a little thing where, you know, so I think again, I think there's a lot wrong with

00:48:09   this product, but the idea of market for a smaller phone, I think is there. Right. Like, it's like,

00:48:15   there's two, there's two separate things about this. Like there's the, there's the idea of a

00:48:20   small limited phone, and then the idea of a satellite phone that shares the same number

00:48:26   as your main phone. So you could take it with you when you don't want to take your main phone for

00:48:28   some reason. And like, I think that latter idea about having them both share the same number is

00:48:33   very limited in who actually would want that. It's limited to people who have a day phone or

00:48:39   a night phone or two Apple watches. Like, I bet there is a market for that. It's probably not very

00:48:42   big. And also about this being limited. It's not really, it's not a limited phone. It does all the

00:48:46   phone things is limited because it's smaller and probably gets worse battery life. And you know,

00:48:51   it's not, it doesn't have a fastest processor, but there's nothing that you would, you know,

00:48:55   there's no category of thing that you want to do on a phone. This can't do like, this is bigger than

00:48:59   the original iPhone probably. Right. Like you can do all the things on it as a camera. It has video

00:49:03   and it's like just the stuff isn't that good, but it's not even that limited. Right. So that's,

00:49:08   that's why I feel like someone might get one of these and come to the realization that most of the

00:49:14   time, all they need is this little dinky underpowered thing. And it feels so much better in

00:49:18   their pocket than the giant thing. But very few people will ever come to that realization because

00:49:22   who the heck is going to buy two phones and deal with all that? Like it's a, you know, a tech nerd

00:49:26   thing or people with money to burn or whatever. So, but anyway, I hope other, you know, phone

00:49:31   makers look at this and the lesson they take from it is not, well, we'll never do that because look

00:49:35   what a disaster that product was. That's the lesson they take is that there's enough interest

00:49:39   in this that they should consider making one of their models not be the size of a dinner tray.

00:49:44   I do think though, like this is one of those like aspirational products, like even for the people

00:49:50   who buy it that they might think is very similar to the cellular Apple watch. They might think,

00:49:55   Oh, I'm going to leave my, my big phone behind during occasions or roles X, Y, and Z. And I'll

00:50:01   bring this little satellite phone with me. But then, and by the way, if you're an iPhone user,

00:50:07   this doesn't have iMessage because it's Android. So that kind of sucks. So this is, I think this

00:50:12   is mostly for Android people. If you're an iPhone user for the same money, you could just buy an

00:50:16   iPhone SE. Anyway, but like, I think it's one of those things where you might think you would use

00:50:22   this in a, in a few contexts, but in real life, the first few times you did it, you would miss

00:50:27   things about your big phone. Number one, frequently cited by Apple watch people, you miss the camera.

00:50:32   And you know, this phone does have a camera, but it's not going to be nearly as good as the ones

00:50:37   that are in the flagship phones that you probably have access to otherwise, if you're spending this

00:50:41   kind of money for a phone. So like you're going to, there's going to be, and there's going to be

00:50:46   a number of those things for everybody. Like there's, there's going to be things that like,

00:50:49   yeah, you know what you think you want to leave your big phone at home, but once you're without

00:50:54   it, like you, there's a lot of things that you're going to miss and you're going to regret leaving

00:50:58   it behind. And so this little phone is going to go then go sit in a drawer somewhere for the rest

00:51:02   of its life. Like I just see this as a problem that doesn't really, the issue of having a satellite

00:51:09   phone that you sometimes take with you is not a thing. That is not a thing anybody really wants,

00:51:14   or at least anybody wants in great numbers. And even if they, even if you give it to them,

00:51:19   they will realize they won't actually use it shortly afterwards. So I don't see that at all.

00:51:25   The idea of there being smaller phones as choices to buy for your main slash only phone,

00:51:32   that idea has merit. I'm not sure how much the market supports that, but that idea has merit.

00:51:37   But that's a very different thing than what they've shipped here.

00:51:40   - Yeah, this might be a little bit too down market, because 350, like the quality of the

00:51:44   camera on the CPU has got a, it's probably too much of a downgrade. That's why everyone's saying,

00:51:51   just take an Apple Watch, right? But no one wants to text people on an Apple Watch. And who wants

00:51:55   to text people on a screen this small? Just ask all the people who use the original iPhone and

00:51:59   all the iPhones before they got tall with the five and before they got big with the six.

00:52:02   Like we did it. It was a thing that happened. So it's viable, but the quality of this camera

00:52:07   cannot be good. I mean, you can read the review to see what it looks like. It's probably below

00:52:11   the threshold where it's just going to annoy people. But most people don't have the newest,

00:52:14   latest, greatest phone with an awesome camera. So I feel like you could make a cheaper,

00:52:18   smaller phone as a standalone that would find a market. And the Palm stuff, I just feel like

00:52:24   is insulting, because it's like, they're, the heritage of Palm, like you just buy the name

00:52:29   and you just stick it on the back of the thing in this weird thing where it's like P-A-L-M in like

00:52:33   a square shape. I don't like it. It's upsetting. - By the way, user Mike Yu in the chat points out

00:52:39   that actually the Palm phone is way smaller than the original iPhone, which to me is like,

00:52:44   that's a cool thing to have something that's small, but you then pretty much won't be able to

00:52:50   like text on it. Like it has an onscreen keyboard, like modern smartphones, but like you're not going

00:52:55   to be able to see that much of that tiny little screen. Typing is going to be really hard. What

00:53:00   we do on phones today barely even fits on the iPhone SE. To make something that's even

00:53:07   significantly smaller than that and to try to make it a useful thing. It's like,

00:53:12   if this phone was like 50 bucks, that'd be a different story. Or if it was like really good

00:53:18   and a little bit bigger, so it'd be a little more useful, that'd be a different story. But

00:53:22   right now it's like, it's too small to have general use. And it's not a standalone product,

00:53:28   so you can't like bring it, you can't like buy it for your kids or whatever. And also it's too

00:53:33   expensive to be like a kind of like disposable, like you know, keep it just in case you need it

00:53:37   kind of thing. Like $350 is half the price of a really good phone. So I just, I don't see what

00:53:46   this is going for. - It does have more RAM than an iPhone 7. - Well that's good. You won't be able

00:53:52   to fit, I mean you can fit as many apps as you want in them as long as they're crappy Android

00:53:55   apps that you'll never want to use because they're so tiny. - Yeah, I'm just saying like it's a,

00:53:59   well that leads us into our next topic. But the most of the specs of this thing,

00:54:03   you're ridiculous because it's a $350 phone, but it's actually got a surprising amount of RAM.

00:54:07   - I mean, I don't think it's that terrible a device for the constraints it has. I just don't

00:54:14   really understand what would make somebody purchase one. You know, like I understand the pitch, but

00:54:21   realistically nobody's going to do that. - Exactly. - A bunch of people are going to do it because

00:54:25   they'll be intrigued by the idea, but it's too much of a downgrade from their actual phone that

00:54:29   I don't think that will be a viable substitute. - I don't know. All right, so you said that that

00:54:33   was a segue into our next topic. Tell me more. - Yeah, so this is about Adobe's announcements

00:54:39   at their Adobe Max conference. There's a bunch of them, maybe we'll talk about some of the other

00:54:44   ones later, but today the main one, the highlight is Photoshop CC is coming to the iPad in 2019.

00:54:51   And this may not sound like much because like, hasn't there already been Photoshop for the iPad?

00:54:56   Like who cares or whatever, but the important part is that this is in Adobe's words and in all the

00:55:02   PR things, this is real Photoshop on the iPad. It's not a new application that's kind of like

00:55:07   Photoshop. It's not a brand new application that can also read PSD files. Sometimes this is

00:55:12   full fledged Photoshop on the iPad, no ifs, ands, or buts about it. And they emphasize, you know,

00:55:19   that it's the same code base and that it's fully compatible. And obviously, especially in the

00:55:24   beginning, there will be some features that are only on the desktop, but I'm sure they'll shore

00:55:27   up those gaps. But this is sort of Adobe finally, you know, I don't know, jumping in. Like Apple has

00:55:35   wanted pro applications on the iPad for a long time. And for the longest time, Adobe has been

00:55:40   like, "Oh, we'll make some apps for the iPad. We have some ideas of cool things we can do." But

00:55:44   Photoshop is a desktop app. Sorry, you can't have that on the iPad. And now you can. And, you know,

00:55:50   it's cross compatible. They have their, you know, cloud stuff where you can put the document in

00:55:55   their Creative Cloud Cloud. I don't know if they repeat cloud and work on it on your desktop and

00:56:00   work on the same thing. You know, and it also reads from iCloud drive and Dropbox, and it's just 100%

00:56:05   compatible. You make a document on desktop, you can open it up in your iPad. You make a document

00:56:09   on the iPad, you can open it on desktop. It's just, you know, real Photoshop. And that's obviously

00:56:14   the adapt with the interface. It's not the same as it is on the desktop. There's a bunch of things,

00:56:18   touch affordances and some interesting new tools in there. But I thought this was, you know, it's

00:56:24   about time. I'm sure all of Adobe's competitors are a little bit scared because Adobe, you know,

00:56:29   their application may or may not be as good as some of the existing stuff or may not be as,

00:56:34   you know, because most people who have had to do work on the iPad or like doing work on the iPad

00:56:37   have already chosen a non-Adobe application for the most part to do their stuff. And so they're

00:56:42   late to the game. But Adobe has an existing subscription system. Somehow they're going to

00:56:50   work out the financials with the Apple stuff of like, if you can subscribe through it, through

00:56:53   Apple thing or whatever, but the current work around is that if you buy Photoshop CC, you just

00:56:58   get the iPad app for free. I'm sure they've all worked all this out with Apple. Adobe has tons of

00:57:04   applications and lots of history and Photoshop is the 800 pound gorilla in the world of image

00:57:09   processing. So I bet the competitors aren't particularly happy about Adobe finally doing

00:57:14   this, but I think it's a good move for the iPad and hopefully it'll push Apple in the direction

00:57:19   of making the iPad even more pro. But the reason I said that the end of that weird palm phone thing

00:57:26   was a good transition to this is because there's a particular technical angle of this that I was

00:57:31   thinking about when the announcement was made and I have some musings based on it. And the

00:57:35   technical angle is how do you get Photoshop, a big fancy desktop application that historically has

00:57:41   been a thing that you use to show off the power of your computer, particularly your Mac, how do you

00:57:46   get that onto an iPad? And we've talked about how the iPad CPUs and GPUs are surprisingly powerful,

00:57:57   about the JavaScript benchmark being faster than the iMac Pro and just in general being,

00:58:01   you know, sometimes just being straight up faster than a lot of Apple's laptops. Like

00:58:04   that doesn't seem like a problem. CPU power seems like it's there. And, you know, storage for big

00:58:10   images, don't they make like a 512 gig iPad or something, a 512 gig phone, like whatever,

00:58:14   there's plenty of room to store giant files and especially if they're in the cloud, it's not a big

00:58:18   deal. But there is one aspect of iOS devices, even the big iPads, that doesn't seem like it's up to

00:58:25   snuff to deal with something like Photoshop and that's RAM. There hasn't been a Mac sold with four

00:58:32   gigs of RAM in it for many, many years. You sure? Doesn't the air still base itself at that? Oh,

00:58:38   please don't say that. I really hope that's not true. That can't possibly be true. That's

00:58:43   impossible. Anyway. I thought it was true, but we can look it up. Nope, it's eight. Four gigs of

00:58:48   RAM is not a lot for a Photoshop machine. Let's put it that way. Like, again, Photoshop always

00:58:55   wanted the most RAM you can put in it so you have really big images. And why does Photoshop use a lot

00:58:59   of RAM? I mean, the main answer is layers, right? So most of the time you could have one image,

00:59:04   it's probably not that high res, but you know, maybe it's like 600 DPI for like print publishing,

00:59:09   a magazine cover, whatever. But imagine that document has 50 layers in it. You know, that stuff

00:59:14   just eats memory. Also, like the way Photoshop deals with a lot of the images, it has to deal

00:59:19   with them in uncompressed format. Like you think of a JPEG as being like, you know, it's like, you

00:59:23   know, eight megs for this giant image. But like, no, actually, like if you deal with the raw pixels

00:59:28   in an uncompressed format, like multiply the width by the height by four and that's how many bytes it

00:59:35   needs, at least depending on what else. You could be doing more things. You could have more deep

00:59:39   color. Like, yeah, it's like, it's a lot of memory. Like a single, like, you know, one screen,

00:59:46   large image off the top of my head is like, you know, the 2030 megs. Like it's a lot, right? It's

00:59:52   way more data than like the JPEG version is. And to do a lot of operations efficiently, that has to

00:59:58   be in memory. Yeah. So you may be thinking, okay, well, that's the modern world where all the Macs

01:00:04   have tons of RAM, but Macs did ship with four gigs of RAM. We just talked about my Mac Pro that

01:00:08   shipped with two gigs of RAM and Photoshop ran on those machines. So it's obviously not a big deal.

01:00:12   Photoshop can run in much less memory than we run it in today. Maybe it's not great, but it can do

01:00:17   it. There's a second thing to think about though. Real time follow up. There is indeed one Mac that

01:00:22   is still sold new. The Mac mini updated 1,600 days ago. The Mac mini $500 configuration comes

01:00:31   stock with four gigs of RAM. For Mac mini, probably not a Photoshop power house, but

01:00:37   anyway, so the other thing to be concerned about with iOS devices is, and you often hear this,

01:00:42   and this is not actually true. People will say that iOS devices don't have virtual memory. That's

01:00:47   not true. iOS devices have always had a virtual memory in that they have your programs address

01:00:53   memory using virtual addresses that are then translated to physical addresses. So virtual

01:00:58   memory has been an iOS from day one. What people mean when they say iOS doesn't have virtual memory

01:01:04   is they mean that iOS doesn't use swap, will not page things to disk. So in a virtual memory system,

01:01:12   when a program wants more memory and there's no more memory to give, the system will take

01:01:17   something that is in memory, hopefully that hasn't been used recently or isn't being actively used,

01:01:21   and it will swap it out to disk. It will say, "I'm going to take this big chunk of RAM. I'm

01:01:25   going to write it to a swap file." And I'll say, "You stay there." And that'll give you this RAM

01:01:29   that they were using before. And if they ever want that thing back, I'll go back to the disk and pull

01:01:33   it out of the swap file and bring it back in. Obviously going to disk and swap is way slower

01:01:38   than RAM, and you really don't want it to be in a situation where it's constantly shuffling things

01:01:42   "Oh, I got to take this out of RAM, put it on disk, or take this thing off the disk and put it back

01:01:45   into RAM." That's called swapping, and then it'll make everything slow. That's called the '90s.

01:01:49   Yeah, iOS has never had swap because as you can imagine, it was at the ragged edge of what was

01:01:57   possible in the original iPhone. And if there's a possibility that by loading a big game or

01:02:01   something, stuff can swap and then you try to switch and swap it back in, flash wasn't always

01:02:06   as fast as it is today, especially on iOS devices. And even if it's fast, it's way slower than having

01:02:12   things in RAM. So iOS from day one continuing today has said, "No swap." So it has virtual

01:02:19   memory, but it doesn't have swap. And what that means for RAM limits is like your 2G Mac Pro,

01:02:23   the 2G Mac Pro that I'm next to, we could run Photoshop or whatever. Maybe you have something

01:02:29   that has too many layers, doesn't fit in 2G. Doesn't matter. You can always swap out portions

01:02:34   of it. And it'll make it slower, but at least you can do it. But in iOS, when RAM is exhausted,

01:02:39   and when the system has ejected every other application from the system and you ask for

01:02:43   more RAM, the OS kills your program. There is no more to give. There's nothing like, "Oh, well,

01:02:50   the OS never says, 'Well, there's no more RAM. I've killed all the other programs. I'll just

01:02:54   start swapping some stuff out to disk.'" It doesn't do that. It says, "The RAM is all used up and you

01:02:59   are the only program running. I'm going to kill you now." I think it gives you low memory warnings,

01:03:03   but eventually the OS kills your program. And so what happens in Photoshop, it's just like

01:03:08   the desktop. If I make this awesome image in the desktop that's some 600 DPI magazine cover with

01:03:12   50 layers, and then I try to open it on my iPad and I try to do some manipulation that requires

01:03:17   it to load a bunch of stuff into memory to run some filter across seven layers, and it keeps

01:03:21   asking for more and more memory to perform that operation, and then it runs out. The OS is going

01:03:26   to kill the program. How do they allow you to edit files that are too big to fit in RAM? And remember,

01:03:32   the biggest iOS devices I think have 4 gigs of RAM. Is that the max now?

01:03:36   >> I think so.

01:03:37   >> On the big iPad or on the iPhone XS Max and all that stuff. Anyway, it's not a lot of RAM.

01:03:42   There is very easy to find a real-world Photoshop image that will happily eat up 4 gigs of RAM while

01:03:48   you're working on it. And keep in mind that the OS has to take some portion of that, and so you

01:03:53   don't even get all the 4 gigs to yourself. So that's a little bit of a head-scratcher,

01:03:58   but obviously they did it. They demoed it, right? So how did they do it?

01:04:02   I don't know the details of how they actually did it, but there are a bunch of possibilities,

01:04:06   but one of them I find intriguing and delightful, which is rooted in the fact that Photoshop

01:04:12   has already run in the past on a platform that did not have swap. In fact, Photoshop has run on

01:04:19   a platform that did not have virtual memory. That platform is classic Mac OS. Classic Mac OS did not

01:04:25   have virtual memory and did not have swap. >> Wait, what?

01:04:28   >> And by the way, yeah. >> Like, wait.

01:04:31   >> In the early days. >> As in, like, not until Mac OS X?

01:04:33   >> The virtual memory part of it came into effect a little bit towards the end of classic Mac OS's

01:04:40   life. But the original Mac, no virtual memory, real addresses for everything, single shared

01:04:43   address space, no swap, no virtual memory, no nothing, right?

01:04:47   >> Yeah, the original one, yeah. But by the '90s, they had to have had at least some of that,

01:04:51   please, for the love of God. >> I think they might, well,

01:04:55   if you think about it, if you have programs that expect big shared memory space, I think they had

01:05:00   some, well, there were third-party programs that could give you some of this. And I think by Mac OS

01:05:05   9 or whatever, they had some kind of virtual stuff. I don't think they ever had a real swap file.

01:05:10   But anyway, Photoshop ran before all of that. It ran, like, I don't know, it didn't run on,

01:05:16   like, the Mac 128, but on the Mac Plus, I believe, which had one megabyte of RAM,

01:05:21   I think Photoshop 1.0 ran on the Mac Plus. Certainly, the Mac SE, Photoshop could run on

01:05:26   a machine with a monochrome display, which is always fun. So how did it do it? How did

01:05:31   Photoshop run on a machine with, like, a ridiculously small amount of RAM and no virtual

01:05:36   memory system and no swap? They did it the only way you could possibly do it, which is within

01:05:41   Photoshop, they wrote a system that said, when you're using memory to do something and the OS

01:05:48   says there's no more memory to give, you program, implement your own little virtual memory system,

01:05:54   where you'll make your own little swap files off to the side, and you will take portions of the

01:05:57   image data and write it out to your own little, you know, Photoshop swap files, like, a tiny

01:06:02   miniature virtual memory system just for that program within that program, so we can shuffle

01:06:06   things off of disk into memory, operate on them, put them back on disk, so on and so forth.

01:06:10   And so that's Photoshop's origins. It was originally a Mac program, and it was born on

01:06:15   a platform that didn't have this. It would be extremely delightful if the code to do that from

01:06:21   original Photoshop suddenly came in super handy. It once again finds itself on a system that has

01:06:28   no swap, so it's like, well, we have our own swapping system written already. We can use that

01:06:34   to take things out of memory and put them onto disk and pull them off of disk or whatever.

01:06:38   I would love for that to be true. It's obviously potentially a competitive advantage over other

01:06:44   image editors like, you know, Affinity and the other competitors to Photoshop, which must have

01:06:47   to do something similar, because again, if you want to work with images that are too big to fit

01:06:51   in memory and your operating system does not have swap, you need to do something like that yourself.

01:06:56   And Photoshop, Adobe, in theory, has experience doing that very same thing. So that to me is the

01:07:01   most interesting and exciting part of Photoshop on the iPad, the idea that potentially code from

01:07:07   classic Mac OS has risen from the grave, or perhaps it never even left Photoshop and is now

01:07:14   potentially a competitive advantage over other programs that did not have their origin on a

01:07:20   system with no swap. I mean, modern versions of Photoshop still have like the swap disk options,

01:07:26   swap folders, scratch disk. Yeah, it's like it probably has the same system because, you know,

01:07:31   lots of like high-end or high-performance apps will do things like write their own memory allocator

01:07:37   because they can tailor it to exactly their use and they can, you know, get faster performance

01:07:40   and more control than the system stuff. I don't know of a lot of programs that write their own

01:07:45   swap file system, but I'm sure somebody does and, you know, beyond just Photoshop. And so it

01:07:52   wouldn't surprise me if Adobe still uses that, even like on Macs with, you know, 64 gigs of RAM,

01:07:57   they might still use that kind of system just because they already had it and they can tweak

01:08:01   it, they can tune it, and we know it still uses scratch disk for something, so that could be what

01:08:06   they're for. And also, like this is just one of those things that when you ask like, you know,

01:08:11   "Oh, what do you need Photoshop and iPad for?" and somebody says, "Oh, you can use alternative X, Y,

01:08:15   or Z." One of the things that really separates like pro apps from more, you know, basic or like

01:08:24   consumer or prosumer ones is this ability to deal with extremes. And this is true even on the Mac

01:08:30   too, like this is true everywhere, but like what really separates pro apps from the rest is you can

01:08:36   do operations on a, you know, 300 by 300 clip art thing you found on the web, or you can do operations

01:08:42   on like an entire like 600 DPI, 11 by 17 page layout of something, and it might, it'll be slower

01:08:50   if it needs to be, but it won't crash, it'll still work like, you know, it'll let you do what you

01:08:56   have to do. And I've never used any competitors for Photoshop really, so I don't know how they

01:09:00   handle these extremes. They might handle them just fine as far as I know, but like as like a

01:09:05   customer of these things and a user of these things, like if I were looking to, you know,

01:09:09   change my workflow to a competitor like everyone has had to do on the iPad up until this comes out,

01:09:15   one of the things I'd be worried about is like, can it really handle extremes or not? Because

01:09:20   occasionally I need it to. And so to have like, to have something that is known to have extreme

01:09:26   capability like Photoshop, that is known to handle crazy things and at least, you know,

01:09:32   even if it isn't fast, it will at least work. That's a really good selling point for them. And

01:09:38   that, and you know, there's lots of reasons why I think they're going to do well with this on the

01:09:42   iPad, but one of the big ones to me is like, you're going to know that you can throw anything at this

01:09:52   and if you're patient enough, it will probably work. So what I can't help but wonder is if

01:09:59   at one point in the past or perhaps in the present, they needed to create their own like

01:10:05   virtual memory system, what else do you think that they abstracted away about the underlying

01:10:11   platform in order to make things easier? Like, since Photoshop runs on Windows, it runs on

01:10:17   Mac OS, and soon will be running on iOS, how much do you think they're running against actual APIs

01:10:25   or some sort of like adapter layer that, or facade maybe, that Adobe wrote themselves? And at what

01:10:33   point are they like creating like an entire virtual machine within Photoshop just to kind of,

01:10:38   you know, smooth all these rough edges out? You know, it just, it's, I don't argue with what

01:10:43   you're saying, Jon, it's just, I can't help but wonder like, how far does this really go?

01:10:46   It used to be that the Mac version of Photoshop and the Windows version of Photoshop

01:10:51   had separate UIs. Like the Mac version certainly just the first one to exist and it had native Mac

01:10:56   UI or as native as it could be. But at some point, due to someone's great idea about economies of

01:11:02   scale and not repeating yourself or whatever, they made a unified user interface that was

01:11:07   surely some underlying Adobe framework that rendered a Mac UI on the Mac and a Windows UI

01:11:12   on Windows. And the way you could tell that was that the Mac UI suddenly became a lot less Mac-like.

01:11:17   And like, you entered the era where Adobe apps had essentially Adobe interfaces. Like,

01:11:22   they weren't Mac interfaces, they weren't Windows interfaces, they were Adobe interfaces. And I think

01:11:27   a lot of Adobe apps are still like this, where it's like they're pulling from an Adobe suite

01:11:31   of controls and their idea of what a window and a button and the control should look like is the

01:11:34   Adobe idea. And it looks different on Windows and the Mac, but it's clear that there's been some

01:11:39   massive unification behind the scenes. That hasn't always been beneficial, but I'm sure that's the

01:11:44   case. And obviously their engines for dealing with images are mostly cross-platform for this part,

01:11:50   plus or minus the various use of the different acceleration frameworks on different platforms.

01:11:55   Right? So that's been a complaint about Adobe in the past from a Mac user perspective is that

01:12:01   they don't feel like Mac apps, they feel like Adobe apps. Obviously, if you like Adobe apps, or

01:12:05   if you move from platform to platform, that's an advantage. But sometimes I look at Adobe apps,

01:12:10   most Adobe apps, and I think this is like a weird, it's not an Electron app, but it's like a weird

01:12:15   kind of, I don't know, it doesn't feel like a Mac application. And sometimes it's kind of ugly,

01:12:22   and sometimes I kind of wish the controls were the regular controls. But at a certain point,

01:12:28   Adobe's probably like, "Look, Apple, you're lucky we still make motion." For a while, they were like,

01:12:32   "You're lucky you still make Photoshop for your platform at all, because Windows has taken over

01:12:35   the world." Obviously, that's less relevant today, and the iPad is certainly the more popular

01:12:41   tablet platform than Android, because they don't have that many great tablet apps. But

01:12:46   yeah, I'm sure there's a lot of that sharing going on behind the scenes. I'm not sure that if they

01:12:52   ever had to implement a virtual memory system for Windows, because I think the first version

01:12:56   of Windows they wrote it for had both virtual memory and swap, but I'm not sure.

01:12:59   - I believe Windows got that in 3.1-ish, somewhere around that range, because my Gateway 2000

01:13:05   computer had the ability to either enable or disable 386 enhanced mode, which I'm pretty sure

01:13:13   was virtual memory. - My word. So do we think this is gonna be good? And I don't say that to

01:13:20   snark, and I'm not trying to be funny. It's hard for me to imagine that this is going to be without

01:13:32   hiccups. Just look at file management on the iPad, which is something that's relatively new.

01:13:40   File management is not easy on the iPad. What happens when you want to suck in something from

01:13:45   an SD card? Do you still have to go through the Apple Photos app to suck in these photos from the

01:13:54   SD card, and then bring them into Photoshop, and then back to your photo library or your camera roll

01:14:00   or whatever? It just seems like this is still going to have a lot of hurdles. Now, those hurdles

01:14:05   are the sorts of hurdles that really make Mike and Federico happy, but to somebody like me,

01:14:10   I find that to be infuriating. So is this going to be good, great? I guess the fact that Adobe has

01:14:17   cloud, hence CC, because that's Creative Cloud. Once you get a file, you can store it in Creative

01:14:23   Cloud, I would assume, and then it just kind of appears everywhere, I would assume, kind of iCloud-like.

01:14:27   But I don't know, don't you think that this is still going to be fairly clunky?

01:14:31   - I mean, that's one of the potential upsides of Adobe running Photoshop on the iPad is hopefully

01:14:39   it will push Apple in the direction to make the iPad a better platform for pro applications.

01:14:45   The file stuff, I think actually we're probably mostly okay for the cloud options, because it

01:14:53   always got its thing, but it also works with iCloud Drive and Dropbox. And honestly, even if there was

01:14:58   full file system access from every application, there was SD card slot in the side of the iPad,

01:15:05   it's still probably more convenient to do the cloud stuff, you know what I mean? You're not

01:15:09   using SneakerNet to ship files around, even to another Mac. It's not like, yeah,

01:15:13   Macs have great file system access, but the way two Macs would look at the same file is they would

01:15:18   pull it up on a network share or something, right? So I think the cloud solution is probably mostly

01:15:24   okay. But the fact that some doors are closed to you, hopefully it will make Apple consider,

01:15:32   especially when it's not just one file, but it's a whole bunch of files, or you're working

01:15:35   on a project that's a folder full of files, and you can do all this with a cloud drive as well,

01:15:39   but there's some things that are a little bit easier locally, or there could be security

01:15:42   sensitive things where you don't want to go across the network, who knows? So I hope Apple pays

01:15:47   attention. There was an interesting video, we'll put a link in the show notes, this Verge review

01:15:50   of Photoshop on the iPad, and they had a bunch of their artists who worked for the Verge mess with

01:15:57   it and say what they think about using Photoshop on the iPad. They have some interesting things to

01:16:01   say that you might not think of if you don't draw on a computer all day. One of the ones was the

01:16:06   person talking about, I mean, this is true of any iPad app, not Photoshop, but if you're drawing

01:16:12   with the pencil on the iPad and you want to draw at a different angle, you can just rotate the iPad

01:16:17   like you would a piece of paper, which is not true of a computer screen, and is also not true,

01:16:22   interestingly, of something like the Surface Studio, where the screen is like a big iMac-like

01:16:28   screen and it kind of folds down. You can't take that and easily just twist it like you would twist

01:16:32   a piece of paper to scribble at a different angle, because it's just too big and it's not on a swivel

01:16:38   thing, you'd have to turn the whole computer and it would be awkward, it's more like a drafting table

01:16:42   than a piece of paper on the drafting table, which is an interesting angle for people considering

01:16:46   drawing on the iPad. But the other one that really stood out to me was the one artist who said she

01:16:51   was doing, they all tried to do some real non-trivial project on the thing, and she said

01:16:57   by the end of it, her hand was hurting a little bit from gripping the Apple Pencil, and she said her

01:17:02   Wacom tablet that she normally uses has a pencil with a big thick ergonomic grip with a smooshy

01:17:07   thing on the end, and if you look at the Apple Pencil, it's a beautiful, simple, elegant shape,

01:17:12   there's nothing as green as blah blah blah, but it's pretty darn skinny, right? It's pretty

01:17:16   skinny, it certainly doesn't have one of those ergonomic grip things, and you could add one or

01:17:19   whatever, but it goes to show how ill-suited, I don't want to get Marko on a ramp, but how ill-suited

01:17:28   so many aspects of modern Apple design are to demanding professional applications, because if

01:17:34   you are a professional using a stylus all day, just using the Apple Pencil the way it is, is

01:17:41   probably not great, like you don't see a lot of styluses or other things used by artists for a long

01:17:46   period of time, especially with a computer, that don't look and aren't actually more ergonomic than

01:17:52   a simple, unadorned, fairly slippery, skinny cylinder, and there's a reason for that, like there's

01:17:58   a reason, you know, things that look ergonomic tend to look ugly and be shaped so that they're easy to

01:18:04   comfortably grip and they reduce fatigue or whatever, and it's like, okay, well you don't have to use

01:18:10   the Apple Pencil, there is a wide variety of pressure sensitive styluses, oh wait, not really,

01:18:15   so again, I hope bringing more artists to seriously consider the iPad, because now quote unquote

01:18:22   "real Photoshop" is there, again, tons of artists have been using the iPad and Adobe has made

01:18:28   applications, and by the way, Adobe is also making non-Photoshop applications that are more of a

01:18:32   green field, let's reimagine what kind of illustration application we can make, I hope all of that, and

01:18:37   the influx of new creatives and all that stuff leads Apple down the same road that I got, I hope

01:18:43   that they're traveling for the Mac Pro, which is, what do professionals really need out of our

01:18:48   platforms, let's listen to them and make something for them, even if that thing is not well suited to

01:18:54   consumers, consumers don't want a weird Wacom tablet looking pencil thing, if they want a pencil

01:18:59   at all, the simple Apple one is probably the right thing, although they really wish they had a place

01:19:02   to stick it instead of it just being loose, so I hope, I hope all this is nudging Apple in the

01:19:10   right direction, and by the way, at Adobe Max, Phil Schiller came on stage and talked about

01:19:17   Photoshop and how happy it is it's coming to the iPad, and how great the iPad is, and so on and so

01:19:21   forth, so Apple is in on this and they're working together, so things are trending in the right

01:19:26   direction, and speaking of the Apple Pencil, I was thinking about this the other day, I don't know

01:19:31   how many people listen to this, I actually have an Apple Pencil, if you do have it, do you know where

01:19:34   it is, there's lots of ways that you travel with it, and little clip-on things, and places to stick

01:19:40   it and all sorts of stuff like that, it's so bad, and the cap, forget about the cap, right, I was

01:19:44   thinking about this and I was like, well, that's true, but in the idealized world of Apple, many

01:19:51   problems either don't exist in Apple's idealized world or they don't acknowledge them, but this is

01:19:56   a case where Apple itself definitely acknowledges this issue, and they acknowledge it with these

01:20:03   weird little white trays in all the Apple stores, why do they have these weird little white trays

01:20:10   where the pencils go, it's not like at the bank where it's connected with a cable, like there's

01:20:13   no anti-theft device attached to it, right, oh, the pencil's weighted, it will never roll off a table,

01:20:19   why are those little dugout canoes of plastic there, because if they weren't, the pencils will

01:20:25   be, no one would ever know where the freaking pencils are, where do I put this when I'm done

01:20:28   with it, how do I put it down, will it roll off the table, will someone step on it, you put it

01:20:32   back in the little plastic canoe, right, those little stupid little canoes are the greatest

01:20:38   Apple admission that there is something missing from the workflow, as they would say, of the Apple

01:20:44   pencil. - Yeah, like, it's very frustrating to me, like, I have an Apple pencil, I have an iPad Pro,

01:20:51   and I have a smart keyboard, there is no way to have all three of those things with me that

01:21:00   doesn't suck, like, why, it seems like these three products were never designed with the idea that

01:21:09   somebody would actually have any two of them, like, the smart keyboard and the iPad work together

01:21:16   okay, it isn't even great, it's just merely okay, the pencil and the iPad, it seems like they were

01:21:23   designed on different planets, and it's just a coincidence they happen to work together, but like,

01:21:28   no one ever thought you might want to carry an Apple pencil while you carry an iPad, like,

01:21:34   that seems to totally have been not considered at all, and the idea that here you can get a smart

01:21:41   keyboard, which is wonderful, I actually really enjoy having a smart keyboard, I mean, I've had

01:21:44   totally changed how frequently I use the iPad greatly for the better, but the smart keyboard

01:21:51   is a large cover that has lots of surface area and is willingly bulking it up, maybe they could

01:21:59   have put a spot there to store a pencil, but they didn't, they released a case that is like this big

01:22:05   leather flap that has a slot for the iPad and a slot for the pencil, but if you have a smart

01:22:10   keyboard it won't fit in the case, and it would be very awkward to get it out anyway, it's just like,

01:22:15   everything about, it's just like, one of the biggest things I want to see with the, you know,

01:22:22   anticipated iPad event that's probably happening sometime soon, I really want to see how and if

01:22:28   they have rethought how people actually use the Apple pencil, and if they can somehow make it

01:22:35   easy to have it with you more often, I would love that, because I literally have all these things,

01:22:42   and I never use the pencil because, as John alluded to, it's like, you know, off in a cup

01:22:47   or a drawer somewhere. - And the battery's dead in it now because you haven't charged it forever,

01:22:52   because that's awkward too. - Yeah, like the battery's definitely dead because I have not

01:22:55   charged it because I never have it with me, and so I never use it, and it's such a waste, like,

01:23:00   please, for the love of God, Apple, design these products together. - It charges in 30 seconds

01:23:06   though, and you can get two, anyway, there's all sorts of solutions to the charging thing

01:23:10   that are part of the pitch. - By the way, when it's totally dead, it doesn't charge in 30 seconds.

01:23:14   - Well, you get like a minute out of it, and you have five minutes out of it in 30 seconds,

01:23:18   so if we had some pitch of like a very short charge time gives you a surprising amount of

01:23:21   draw time, even if you're going from dead, I'm not sure how accurate this, but that was part of

01:23:25   the original pitch, which is not supposed to be an admission that you're probably going to lose it

01:23:29   and leave it uncharged, but anyway, there's one thing that Apple used to do better, probably not

01:23:34   for great reasons and maybe not as a conscious thing, but the 90s Apple, and Apple through the

01:23:41   90s, maybe into the 2000s, was very into making a whole bunch of stuff that works together,

01:23:48   even into the 2000s in the Mac OS X era, like to give an example, to a fault, all right, so Apple,

01:23:54   on my original, I don't know, my Power Mac G3 maybe, whatever, they had the ADC Apple

01:24:03   display connector, remember that thing? Yeah, it was like a single cable that drove a display

01:24:09   with power and USB and video, only worked with Mac stuff, it was a proprietary thing,

01:24:14   it was like piggyback and DVI and a bunch of other stuff over a bunch of bins and a custom connector,

01:24:18   so that you could have a display that worked with the monitor and then worked with the keyboard

01:24:24   that connected to the display and the power button on the old Macs was on the keyboard,

01:24:28   and that power button could turn on the Mac that was connected with it, like

01:24:32   systems that work together, the G4 Cube comes with little speakers that match the thing,

01:24:35   and then the thing connects with ADC to the display by a single cable, like match sets of stuff where

01:24:41   if you buy all the things, it's clear they work together, buy your laptop, the display has a little

01:24:46   pigtail on it, the pigtail has a magsafe connector and that goes into there, and like,

01:24:50   like if you kept buying stuff, the next piece of the app, the very expensive Apple stuff that you

01:24:55   bought, you'd be like, oh, this fits in here, oh, that fits in there, and if I buy these things,

01:24:59   they fit in there, and they match this thing, like things aesthetically matched, there was a,

01:25:03   there was a styling theme with them, the connectors on them all matched, they all work

01:25:08   together, if you bought just one of them, it worked fine, but as you bought more of them,

01:25:11   you saw where they plugged in, whereas with the iPad, the covers work with the iPad,

01:25:16   and the keyboard works with the iPad, and the pencil works with the iPad, but the keyboard,

01:25:20   pencil, covers, and iPad do not get along, as Marco pointed out, like there's, once you get more

01:25:25   than, that's like the chicken and the wolf, once you get more than two things in this boat,

01:25:29   bad things happen, right, so that is a, I don't know, again, I don't think it was a particularly

01:25:34   conscious thing, but the idea that you can, that it is attractive, making it attractive to buy all

01:25:41   the things, because every new thing you buy just fits in neatly, and it feels like you're building

01:25:46   like the whole package, the ultimate setup, like you gotta have the G4 Cube with the cinema display,

01:25:51   with the speakers, with the Apple keyboard that turns the thing on, I think that wasn't on the

01:25:55   Cube, but anyway, like the whole setup was attractive, even back to like the LaserWriter,

01:25:59   get a Mac, get a LaserWriter, get the extended keyboard, get the Apple optical drive, get the

01:26:04   Apple external hardware, get the Apple printer, now we're getting into Wi-Fi routers again, right,

01:26:07   but that whole motivation to buy all the things, in the history of this show, my recollection is a

01:26:13   lot of our complaints have been, have had an angle where if you are Apple's best customer and you buy

01:26:19   all the Apple things, you are punished for it in some subtle way, like, you know, if you buy all,

01:26:24   you know, lots of Apple stuff, things work not as well as if you just had one of them,

01:26:29   and that's not, you know, that's not the right cycle, Apple should make it attractive for people

01:26:33   to spend all the money. And I remember that was the case, you know, for the first several years

01:26:39   that I came to Apple platforms, this was roughly 2008, the more Apple stuff I had, the better

01:26:45   everything worked together, and everything, you know what, it did guys, it just worked,

01:26:50   and I don't know, I shouldn't be encouraging this, because we've made this speech every episode for

01:26:56   the last hundred, and so we can hopefully let it go, but I echo what you're saying, John, that

01:27:00   I admire Apple trailblazing in so many ways, in so many categories, but I also wish I could have it

01:27:10   both ways and have them not screw up what already exists in order to trailblaze, but you can't have

01:27:16   it both ways. I just don't think it's that much to ask that when you buy an iPhone or an Apple watch,

01:27:22   and you also have a MacBook, that you can plug one into the other to charge it.

01:27:25   Don't be ridiculous. Anything else about Photoshop? There's a lot more, maybe I'll watch that video,

01:27:32   and Gemini is their application that's like combines raster and vector stuff, and it's like,

01:27:36   you know, we talked about it at Domi XD a while back, like there's a bunch of interesting stuff

01:27:40   that Doby thinks, maybe I'll watch the video and bring in another time. There's that YouTube

01:27:44   Premiere edition, the Premiere Rush thing? Yeah, the Rush CC for doing portrait video,

01:27:50   which everyone was very excited about, because portrait video is definitely a thing, but editing

01:27:54   it in a "real video editing application" where no one conceived of the idea that people might want

01:27:59   portrait video is a little bit tricky. So yeah, there's a bunch of exciting things. They also had,

01:28:03   I think, a pretty good joke when Phil Schiller was there. I mean, maybe it's a Tech Dad joke or

01:28:08   whatever, but I give it a thumbs up. Phil Schiller came out and did his little spiel, and everyone

01:28:12   was happy to hear him say how great Adobe is and how great Apple is and so on and so forth,

01:28:15   and then when they whisked him off stage, they had a gift for him from the Adobe people to thank him

01:28:19   for coming there. They gave him a jacket from the team that was making Photoshop or whatever,

01:28:24   and it said "content-aware Phil" on the back of the jacket. That's pretty good. And they

01:28:30   used the hyphen correctly. Oh, even better. I thought that was a good joke, Adobe.

01:28:34   We are sponsored this week by Squarespace. Start building your website today at squarespace.com/atp.

01:28:42   Enter offer code ATP at checkout to get 10% off. Make your next move with a beautiful website and

01:28:48   unique domain from Squarespace. Squarespace sites are so incredibly easy to use, you will wonder

01:28:53   why you've ever made a website any other way. You can get everything you want at Squarespace,

01:28:58   whether it's something simple like a blog or a content site, or whether it's something more

01:29:02   complex like hosting a podcast or a storefront or maybe like a fancy image gallery or something like

01:29:07   that. These things have been pretty hard to do traditionally with most website builders or most

01:29:11   hosting plans, and Squarespace just does it all with all their plans. And it's super easy, no

01:29:16   matter what your skill level is. You can get great results out of Squarespace with very little time

01:29:21   and very little effort. And you can customize it all. It's very much like what you see is what you

01:29:26   get, live previewing interface. It's all like rich text. You don't have to see code ever.

01:29:31   It's wonderful. Check it out today at squarespace.com/atp. When you need to make a site,

01:29:37   just give it like an hour. Try it there first. I bet you will stick with it because it's so

01:29:42   wonderful to have all that functionality built in with very little time and effort from you. And if

01:29:47   you ever need any support, Squarespace is there to support it with friendly 24/7 support, of course.

01:29:51   But I bet you won't even need it because it's just really easy. So check it out today at

01:29:55   once again squarespace.com/atp. And use code ATP when you sign up to get 10% off your first

01:30:02   purchase. Once again squarespace.com/atp where you can start a free trial and then use code ATP when

01:30:07   you sign up to get 10% off. Thank you so much to Squarespace. Squarespace, make your next move.

01:30:12   All right, let's do some Ask ATP. Jake wants to know, "In the age we currently live in,

01:30:20   how do the three of us stay informed about non-tech news? Is it just Twitter? And if not,

01:30:25   are there specific sites or voices that you would recommend?" I don't have a terribly good answer

01:30:30   for this. I do watch the... I watch national news in the morning as I eat breakfast. I watch

01:30:36   headline news, which I personally find to be relatively center. If you disagree with me,

01:30:43   that's fine. Just keep it to yourself. It's good enough for me. I do that most days of the week.

01:30:48   And then when I remember, although I forgot this morning, on Wednesdays I turn on Fox & Friends

01:30:52   because I'm an idiot. But I also like to see how other idiots... I mean, wait, what? I like to see

01:30:57   how the other side lives. And so that's mostly it. Anything else that's national typically bubbles

01:31:04   up via Twitter or there. Marco, what do you do? Very little, because everything that's in the news

01:31:13   for the last, I don't know, about two years has been so horrible that for my own mental health...

01:31:20   I know this is not the responsible thing to do as a citizen of the universe, but for my own mental

01:31:27   health, I try to block out as much of it as I possibly can. So I mostly don't follow news

01:31:34   sources regularly except for those that bubble up from links from friends and stuff. Yep. Yep.

01:31:40   That's mostly the same with me, with the exception of TV in the morning for about 15 minutes. Also,

01:31:45   for God's sakes, turn off Fox & Friends. It is... All kidding aside, it is truly and utterly heinous.

01:31:55   And you are contributing to it by watching it. Yeah, but... You are patronizing it. You are

01:32:02   a rating. You're increasing its numbers. You are hearing what they are saying. He's not a Nielsen

01:32:07   family. I don't know how the ratings work these days. Maybe the cable boxes all report back. I

01:32:10   don't know. I understand that perspective, but to me, it's important for me to at least...

01:32:16   Understand is too strong a word because I don't understand these maniacs, but to hear the other

01:32:24   side... And again, understand isn't the right word. Appreciate isn't the right word. But I guess just

01:32:30   get exposed to the other side because it helps me to understand the victims of Fox News. And I use

01:32:38   that word deliberately. I'm not trying to be funny. But even... Because I am more worldly, I think,

01:32:45   than your average Fox & Friends viewer, I understand when they're just lying to me,

01:32:53   which is pretty much 99% of the time that they're talking. But it is interesting because I can

01:32:59   understand better how people that I care deeply for can get hoodwinked by these lies and this

01:33:06   propaganda. And so I personally think it's useful for me, but I am not trying to say that it's

01:33:13   useful for anyone else. And it is true utter filth. It is garbage and it is a danger to our

01:33:20   democracy. But it helps me to understand some of the people I care about to watch it.

01:33:26   **Matt Stauffer** I find that reason

01:33:27   unconvincing for the cost that is incurring.

01:33:30   **

01:33:46   **Matt Stauffer** Yeah. I find all TV news in all forms, in all venues, to just not... I find it...

01:34:11   My brain rejects it. I cannot stand it. It doesn't... It has to do with politics. It has to

01:34:17   do with just the form. Now, I grew up with the form. It's not like I'm unfamiliar with it. I

01:34:21   grew up with it, right? But from my modern sensibilities, I don't want what they're giving

01:34:27   me. And again, the TV is just a mechanism by which the news gets here. But there is a form that it has

01:34:33   evolved over time to be... Their selection of what they want to report does not match what I want to

01:34:41   hear ever. It's just too... Even local news, maybe especially local news. I don't need to know about...

01:34:50   I don't need the human interest story. I don't need to know about the kid who was hit by a car

01:34:55   a block down. I don't need to know about the surface level of some actors in a new movie.

01:35:02   I don't want TV news. And I'm surprised Casey's watching it, but my parents watch it,

01:35:07   and I encourage them heavily, stop watching television news. Because it might... Putting

01:35:12   aside Fox, right? Television news seems very much like the old SNL skit, where they're telling old

01:35:19   people that robots are gonna steal their medicine. It's all about what's gonna kill you, what terrible

01:35:23   thing is happening. It's like just so... It's clickbait before there was clickbait. It is so

01:35:28   incredibly hyped up and sensationalized, telling you about all the things that you should be

01:35:32   worried about. And it's not the things you should be worried about. It is a bunch of other crap.

01:35:38   And it's just like, don't subject yourself to that. You don't need to know that. Don't get all hyped

01:35:43   up about the killer bees that are coming into your neighborhood. I always wonder if there was

01:35:48   an actual story that people needed to know about. It would just be mixed in with all the other crap

01:35:51   on local news and given equal weight to the dog that was loose that the police shot that had

01:35:56   rabies. It's exactly the same. So anyway, I don't watch TV news.

01:36:01   **Ezra Klein laughs**

01:36:03   In conclusion.

01:36:03   **Matt Stauffer** And a little bit on the Fox News things. I get where you're coming from, Casey.

01:36:08   But my advice would be that even if you're watching it with that in mind, constant exposure

01:36:15   to extreme propaganda can't help but shift your thinking merely through repetition. It's the

01:36:21   Overton window. Yeah, you think it's all lies and it's all BS and you're not falling forward

01:36:25   and so on and so forth. But the constant repetition eventually gives the propaganda

01:36:31   more weight than it deserves in your mind when you balance it against the truth, right? It's

01:36:37   not much you can do to stop. It's just human nature. It's not much you can do to stop that.

01:36:40   You will come to think that the positions staked out there are slightly more reasonable than they

01:36:48   are just by hearing it all the time. And it's the same stuff that all sorts of, you know,

01:36:53   the personalities and the jokes and you become familiar with the people and so on and so forth.

01:36:57   Even if in your rational mind you're like, "Well, this is all BS and I'm learning about the enemy,"

01:37:01   it does have an effect on you in that manner. If you're aware of the effect,

01:37:04   you could probably counteract a little bit, but it is a thing. So I feel like by now you should

01:37:09   know all you need to know about how Fox works and be able to understand the people who are into it.

01:37:14   And I would encourage you to stop watching it as well. But I would also encourage you to stop

01:37:18   watching all the other TV news. Anyway, to answer this simple question, Twitter is still the main

01:37:23   place where I get all my news. I have a very carefully selected group of people that I follow.

01:37:29   And I'm 20 degrees separated from the actual thing, but I trim that list to the point where

01:37:36   the things that come through on my feed are the things that I actually want to hear about

01:37:41   personally. And if I'm getting information that I don't want to hear about, I will trim that off.

01:37:45   If I'm not getting information that I think is important or I'm getting it too late,

01:37:48   I will add a follow by looking at a follow of a follow of a follow to see how something got to me.

01:37:52   Twitter is how I do it. Before Twitter, I used RSS. Before RSS, I typed in the names of websites

01:37:59   or used bookmarks. And before that, I guess I was back in the bad old days of TV news. But I never

01:38:05   watched TV news as like, "Now it's time for me to watch the news." It was just that sometimes it was

01:38:09   on in the house that I was in. That's as close as I got. Yeah, I saw a lot of TV news grow. I

01:38:14   spent a lot of time at my grandparents' house, and they would always have news on every night.

01:38:19   And you'd frequently see multiple news because you'd see the first local one, then the national

01:38:25   one, whatever. So you'd see three or four news programs in a row sometimes. So I saw a lot of

01:38:30   TV news growing up, and I totally stopped watching it after I stopped going over there as a kid all

01:38:37   the time. And so now I only ever see it if it's on a TV somewhere that I have to wait. Like an

01:38:45   office somewhere, like a doctor's office, something like that. It was the airport. When they have news

01:38:49   on at the airport, I can't stand it because you can't escape it. I just want to put on noise

01:38:53   canceling headphones to not hear the news. My hatred for television news in all forms,

01:38:58   every station, everything. Maybe it's not rational, but I really hate TV news. I really hate it.

01:39:04   Yeah, because now the few times I see it now, because I've been away from it for so long,

01:39:09   but I had such a strong history of it before that, now when I see it, it's like hitting a raw nerve.

01:39:16   It's the same garbage now that it was 20 years ago. I feel like it's worse. In the days when I

01:39:23   grew up at least, the network news had a certain boring stadeness that does not exist in any

01:39:30   television news anymore. They could get away with it because there were networks and there

01:39:34   were monopolies and news was isolated from entertainment and there was all sorts of factors

01:39:37   allowing them to essentially not give in to market forces that inevitably lead them down to

01:39:42   the television equivalent of clickbait. So that did exist. It is much worse now than it was.

01:39:46   Yeah, that's true. But it's still though, it was never good. It was just merely okay before,

01:39:54   and now it's truly awful. And when you see it, when you're away from it for a while,

01:39:59   and then you see it, you realize quite how horrendously bad it really is.

01:40:04   And so yeah, I strongly suggest, Casey, regardless of what viewpoints you want to develop or

01:40:11   understand, TV news of any sort from any provider is horrible and is a bad way to get those viewpoints

01:40:17   or any information whatsoever. And just ultimately, I would recommend, and maybe you don't want to do

01:40:22   this, but I strongly encourage people who get a lot of anxiety or depression about everything

01:40:30   horrible that's going on in the world, step back from it. It feels like you're giving up or it

01:40:35   feels wrong in some way to take a break from it and ignore it or close yourself off from it.

01:40:41   But the reality is that there's always going to be, much of this applies to Twitter too.

01:40:49   There's always going to be more to read. There's always going to be more news. There's always going

01:40:53   to be various news publishers and various media trying to get your attention with new, breaking

01:41:01   developments of whatever, whatever, whatever. And most of it doesn't matter at all a day later.

01:41:07   It's like junk food for information. You're just throwing junk food into your brain,

01:41:13   and it feels like you're being useful or productive or a responsible citizen or informing yourself.

01:41:19   But a very low percentage of that is actually useful and necessary to know and has lasting value.

01:41:27   So number one thing is to cut out TV sources because they literally will just air constant

01:41:34   updates to nothing all day long because they don't want you to tune out. And there's always

01:41:38   something to watch. What you should do instead is more of like a, like get away from the push models,

01:41:44   go to a poll model where you don't just sit there receiving whatever one's sending you.

01:41:48   When you want to learn about something that you hear about through some other

01:41:52   way that isn't a news show, go try to learn about it. If you hear about some new crisis or natural

01:41:57   disaster that's happening, go look it up and try to find information about it then. But get yourself

01:42:03   off the feed, off the constant cycle, whether that's a Twitter feed or constantly refreshing

01:42:10   news websites if anybody still does that, or Facebook feed if anybody, God forbid, still does

01:42:14   that, or if it's watching cable news or even just quote "having it on." That's still on. It's still

01:42:22   pouring garbage into your brain constantly. Cut it off. Actually step away from it. And you will find,

01:42:30   much like people find when they take breaks from Twitter for a while, you'll find that you don't

01:42:36   miss as much as you think you will miss. Like major events that happen, you still hear about.

01:42:41   Major things that you need to know, you still learn about. And you just remove this massive

01:42:48   source of distraction and just constant anxiety and constant like, because they're trying to

01:42:55   rile you up. That's how they make more money from you. They rile you up so you keep watching and you

01:42:59   stay engaged and you spread it around. If you just take yourself out of that system, it's way happier

01:43:07   on the outside. And the world doesn't become perfect, but you can at least have a better

01:43:12   mental state about it. - Plus they have the ads, 'cause news tends to be less valuable if it's not

01:43:16   live, so you actually have to allow the ads to play, which is a little bit in this ad for your

01:43:22   world. Like today, you have so many choices for news, so much more than you did in the days when

01:43:25   it was just newspapers and television and radio. Like the entire internet is there. There's lots of

01:43:29   places where you can get news stories in the form that you want them or whatever. If you like TV

01:43:33   news, some people, and I understand it's not for me, some people like that type of thing and don't

01:43:35   get anxiety from it. But very often, especially if you're the type of person who grew up watching

01:43:40   television news or grew up having television news on, you just continue to do it out of habit.

01:43:44   And like, that's the thing to question. And to defend Casey's Fox News stuff for a second,

01:43:49   I think it actually is important to know what Fox News is and how it works, not just take other

01:43:53   people's words for it. I just don't think you need to, for the rest of your life, watch one Fox News

01:43:58   show a day or a week. I think you can get it after a fairly short period of time. And check in every

01:44:03   once in a while. But it is important to know the enemy, to know what the hell's going on over there.

01:44:08   It's not important to watch it every day for years and years and years. You'll get it pretty quickly.

01:44:13   It's a hell of a thing. Are we satisfied now? As much as we will be. Probably won't be satisfied

01:44:20   until television news is destroyed in all forms. Just wait. It's aging out.

01:44:25   All right. So Stephen Kim wants to say, or wants to know, "I'm in my final semester of college/university

01:44:30   and wanted to know if you guys had some sort of senior project. And if so, what was it?"

01:44:35   I did not. When I went to Virginia Tech, I did not have any sort of senior thesis project or

01:44:41   anything like that. I did do some fun things, but no, I did not have a senior project. John,

01:44:47   how about you? I did have a senior project. Everyone had to do one. It was in the engineering

01:44:53   school. I was majored in computer engineering, which is like a hybrid of electrical engineering

01:44:58   with a couple of CS courses thrown in, essentially. My particular project was—I don't even remember

01:45:04   how we came up with this—but it was a local area paging system. Yes, pagers were a thing. Yes,

01:45:08   I'm old. Local area paging system and software. There was a contest they had at the school where

01:45:14   you'd have to like—kind of one of those things where you get a bucket of parts and you have to

01:45:17   build a vehicle and the vehicles have to compete. You guys know about and talk about those engineering

01:45:23   contest stuff? Yes. It was a really cool NOVA episode about an MIT Hill Climb competition. It

01:45:28   was one of the favorite things I ever watched as a kid. I should find the link for next week.

01:45:32   Anyway, they have these contests, and the project—it's contrived, it's a senior project,

01:45:38   whatever—was to make a system of pagers, sort of like the restaurant pagers, where

01:45:42   each team would have a pager, and when it was their turn to come and compete, you would page them.

01:45:46   You'd do this through a piece of software, and then the software also kept track of the matches,

01:45:51   and then they would compete and you would start the timer for the match. The software ran the

01:45:56   officiating for the match and recorded the results. So you'd basically run the competition

01:46:01   sitting in front of a PC, and the PC was connected through a parallel port to a radio transmitter,

01:46:06   and the radio transmitter would talk to the pagers. So the project was, "We made the pagers,

01:46:10   we made the radio transmitter, and we made the software." And we had to price out all the

01:46:15   components and source them, and it was actually a pretty good product that spanned hardware and

01:46:19   software. In the end, the part I did was the entire Windows program written in MFC and C++.

01:46:25   Oh, God, I'm so sorry. It's no wonder you hate Windows so much.

01:46:29   And then I printed it at the end and handed it in.

01:46:31   Here's the software, here's a floppy disk, and here is a beautifully commented printout of the

01:46:38   world's most heinous MFC code. How could you even tell it's the most heinous? All MFC code

01:46:43   was heinous. It was the first and last time I ever did Windows development. I'm so sorry. Marco?

01:46:50   Well, this ties right mostly to the beginning of the show. I did have a senior project. It was

01:46:54   required by my colleagues for everybody. And it was, so I was in computer science, and what I

01:47:01   chose to do was attempt to develop my own audio compression algorithm, not dynamics compression.

01:47:08   You've spoken about this, that's right.

01:47:09   Yeah, but compressing the way MP3 compresses to make a file smaller. And the idea I had was,

01:47:15   you know, you have, you look at audio waveforms and you see basically a bunch of squiggly lines.

01:47:20   And my idea was, instead of storing every number on that line, maybe I can fit a least squares

01:47:32   best fit line to it and then simply store the coefficients of the least squares equation and

01:47:40   have that represent like, you know, 20 audio samples with like four coefficients. And I,

01:47:47   you know, I mentioned earlier, I don't really, I have a very limited understanding of things like

01:47:51   digital signal processing and signal theory. Well, I had way less of an understanding of it,

01:47:56   you know, 20 years ago or whatever that was. So, that's when I guess 15 years ago. And so I,

01:48:03   yeah, it was, I had very bad understanding of it then. And so my idea to make this, you know,

01:48:09   best curve fit algorithm as audio compression, not only was hilariously slow to run on my Pentium 3

01:48:19   of the day, but was, sorry, AMD Athlon of the day. So it was hilariously slow to run. And also,

01:48:27   made the files larger because it was so bad at compressing. And at first I tried lossy compression,

01:48:34   that sounded so horrible compared to MP3 and made bigger files much more slowly.

01:48:39   Then I tried lossless compression, figuring, well, if I can at least store the coefficients,

01:48:44   and then I can just store the difference values between, you know, what my crazy equations

01:48:48   predicted and the actual values, that's at least smaller numbers and they can take up less space.

01:48:53   So I tried lossless compression then. And that was also horribly slow and also made the files

01:49:00   larger than the input waves. And so what I ended up having to like pivot to, since I was already

01:49:06   deep into this project and couldn't really come up with a new thesis, was basically turn it into

01:49:11   like a survey of audio, of lossless audio compression algorithms. And it turned out all that

01:49:18   crazy work I had done to generate best fit curves and with least squares algorithms and everything.

01:49:24   It turns out if you just predict that one sample will be the same value as the one before it,

01:49:30   and then just store the difference as the smaller number, that is basically free to do on computers.

01:49:39   It takes no time and compresses almost as well as flack because flack is doing things like that.

01:49:47   And it turns out, lossless audio compression basically always maxes out at around 50%

01:49:54   compression for, you know, constant input types like music. And pretty much any predictor that

01:49:59   you use to generate sample to sample data works at about the same accuracy. Like it's pretty hard

01:50:05   to get it much worse than that. So that is what I did. I made a survey of audio compression

01:50:12   algorithms to show how efficient all these much simpler methods were than the one that I tried

01:50:18   first that took me months. You could have done your graduate thesis on run length encoding.

01:50:22   Yeah. It's too soon. He's still a little upset about his C code from earlier to this episode.

01:50:29   Tobogranit, I think, would like to know, "John, what Destiny videos and specific YouTubers perhaps

01:50:38   do you watch?" This is short. I'm always on the lookout for new things. But I have two favorite

01:50:46   YouTubers. My favorite YouTuber is named True Vanguard. I think his actual name is Ryan.

01:50:51   I like him because he talks a lot about PvP, which is a type of Destiny game that I like.

01:50:58   It's player versus player as opposed to player versus environment or player versus enemies,

01:51:03   PvE. He talks about PvP a lot. And he is... I don't know how to put this. He's a grownup. I mean,

01:51:11   they're all adults on YouTube for the most part. But he doesn't... I can maybe describe it by what

01:51:19   he's not. He doesn't yell all the time, which is the thing that kids like. They like it when people

01:51:23   react very dramatically to whatever is going on in the thing they're doing. So he's not a yeller.

01:51:30   I was gonna say that he doesn't curse, but that's like... I don't care about cursing. But

01:51:34   indicative of how sort of pleasant and mature and kind and not interested in sensationalism

01:51:45   or getting super angry about things. He just generally seems like a nice person. He's also a

01:51:53   dad. So I'm watching a dad video. He's really good at PvP. And he explains what he's thinking,

01:52:02   how he does things, stuff that he tried in a nice laid-back way that I find interesting. So

01:52:08   True Vanguard on YouTube, my number one YouTuber. My second favorite one is named Datto. I don't

01:52:14   actually know what his real name is. He is younger. He's a little bit more potentially

01:52:17   prone to anger. He struggles with the fame that he has gotten by being a fairly popular Destiny

01:52:23   YouTuber. But he does PvE a lot. And so I want to learn about all the PvE things and the intimate

01:52:31   details and all sorts of stats about what's the best thing to bring into this. I tried out all

01:52:35   these different techniques and hear all the numbers and the math and all that stuff. And I occasionally

01:52:40   enjoy watching him struggle with himself and with the game and with all sorts of other things. To

01:52:46   give an example, when they released the new raid recently, there's a race between all the players

01:52:52   to see who can be the first one to finish it. And Datto is right in there because he's a pretty big

01:52:57   YouTuber in the Destiny world. And he's got a lot of friends. And he's good at that part of the game.

01:53:01   And so are his friends. So it's a six-person thing of players versus computer enemies trying to

01:53:07   finish the raid, see who can be the world's first. You get a big accolade from the game maker. And

01:53:13   they all stream on Twitch. Datto and his crew were not the world's first. They came in third or fourth.

01:53:21   They started playing when the raid was launched. There was a bunch of stuff for everyone who

01:53:29   finishes the raid on the first day. You'll get this free jacket and all sorts of swag or whatever.

01:53:34   Even if you're not the world's first, just everyone who finishes the raid on the first day,

01:53:36   you get all this stuff. Datto and his crew played the raid for slightly over 24 hours straight.

01:53:44   Oh my word.

01:53:45   I go, it was like two minutes and 30 seconds over the 24-hour mark. So basically,

01:53:49   they sat down there. They started playing the raid. And they played it for 24 hours.

01:53:53   I watched them on and off. I went to sleep. I woke up. They were still playing. This was

01:53:59   like over the course of a weekend. I checked in an hour later. They were still playing.

01:54:03   After the world's first had already completed, many, many hours after, they were still going.

01:54:08   They knew they weren't going to be the world's first. They were still going. This is on Twitch,

01:54:12   not on YouTube. And you're watching them. And it's kind of like when you watch someone

01:54:18   doing something where you're like, just go to sleep. You're not going to get any better.

01:54:24   You're not going to get any sharper. I continue to think that if they had taken a six-hour break

01:54:29   in the middle, they would have finished the raid faster. Like if they had just gotten some sleep.

01:54:35   Because after 24 hours of intense concentration on a game, very difficult. It's not like they're

01:54:42   just casually doing this. This is like the most difficult top-level thing that you can do. They

01:54:47   were under-leveled for it. They're concentrating for 24 hours. You are fried. They were making

01:54:53   dumb mistakes and getting sloppy. They should have taken a six. Anyway, that drama, and just to see

01:54:58   that person that I've known since Destiny 1 days and struggle with that and be frustrated with

01:55:04   their failures but eventually to overcome was an amazing, dramatic moment in the world of Destiny

01:55:09   videos. And I was glad I was there intermittently to witness it. So those are my two ones.

01:55:14   True Vanguard, my number one. Datto, number two. There's a bunch of other ones. I look at

01:55:19   Planet Destiny sometimes. Erex, Kakus. They all have these crazy names. But those are my top two.

01:55:26   So I would highly recommend everyone check out True Vanguard and check out Datto if you're into

01:55:30   PvE and you can handle his occasional outbursts. So Casey, who are your favorite Destiny YouTubers?

01:55:36   Oh, I love all of them, Marco. I can't choose just one. All the great YouTubers.

01:55:41   Thanks to our sponsors this week, Away, Squarespace, and Fracture. And we'll see you next week.

01:55:45   [music]

01:55:46   Now the show is over. They didn't even mean to begin. 'Cause it was accidental.

01:55:55   Oh, it was accidental. John didn't do any research. Marco and Casey wouldn't let him.

01:56:04   'Cause it was accidental. Oh, it was accidental. And you can find the show notes at ATP.FM.

01:56:15   And if you're into Twitter, you can follow them. @caseyliss. So that's Casey Liss. M-A-R-C-O-A-R-M.

01:56:28   N-T-M-A-R-C-O-A-R-M-N-S-I-R-A-C-U-S-A-C-R-A-C-U-S-A. It's accidental. They didn't mean to. Accidental. Tech podcast so long.

01:56:47   Did we ever do the Dark Patterns in Destiny? We haven't, right?

01:56:53   Can you handle more Destiny?

01:56:55   Well, do I have a choice?

01:56:56   Do you guys know what a dark pattern is?

01:56:58   No.

01:56:59   Like in UI design?

01:57:01   That's the context it usually comes up in. Marco, why don't you explain what a dark pattern is?

01:57:05   So if we're talking about the same thing, a dark pattern like in UI design is basically,

01:57:09   it's almost like designing something intentionally to trick or mislead the user into doing something

01:57:19   that's kind of bad for them, but that benefits you as the designer or as the owner. So a good

01:57:24   example of this would be like on a website, like really hiding the way to delete your account or

01:57:30   really hiding the way to call them on the phone if you need help with something. Like trying to

01:57:34   make it really hard to do something that kind of costs you, the owner, money that might benefit

01:57:43   people or making it easy to accidentally trick people into giving up their email address to your

01:57:49   mailing list or stuff like that.

01:57:51   Yeah, and it's called a dark pattern because patterns in general is like a construct that

01:57:55   you use in an interface, like sort of standard constructs, an arrangement of controls where

01:58:01   you tend to see a text box with a checkbox underneath it. Those are patterns of just

01:58:07   familiar ways to present interfaces to people. A dark pattern is a pattern, as Marco said,

01:58:12   that is of various purposes. A great example of this, setting aside computers entirely,

01:58:16   the concept of fine print. Fine print is a dark pattern,

01:58:20   predating computers. If you have something that you have to put like on a box or in a contract

01:58:24   or whatever, and you can make the text really, really small because you really don't want the

01:58:29   person, like you have to put it there, but you really don't want the person reading that.

01:58:32   So you make it really, really small to try to discourage them from, maybe they can't see it

01:58:36   that well, maybe it's so small they're squinting and it's annoying to read. That's a dark pattern.

01:58:40   And then the computer is another one that comes to mind as sort of the canonical dark pattern is

01:58:46   the please send me your newsletter checkbox that is checked by default. That was like one of the

01:58:51   early dark patterns on the web, right? Where you're going through some signup process and

01:58:55   there's a checkbox that says, yes, please send me marketing material. And it's checked by default,

01:58:59   100% a dark pattern. And by the way, if you make an error in the form and like, oh, your email,

01:59:05   you forgot to enter your phone number and you uncheck that checkbox, it's checked again when

01:59:10   the form comes back. That's also a dark pattern. So now that we've established what a dark pattern

01:59:14   is, this is about dark patterns in destiny. This was a very sad day for me and destiny.

01:59:18   This, I don't think it was intentional. So maybe I can't list it as dark. Well,

01:59:20   actually it was intentional, but yeah. All right. Anyway, destiny has vendors where you can buy

01:59:25   things. And the way the system has worked since destiny one, destiny two is it's a bunch of squares

01:59:30   on the screen. You put your cursor over them and you press a button and you buy it. It's not like

01:59:34   a cart. You don't put things into a cart and there's no quantity. Like you can't say, give

01:59:39   me five of these, 10 of these. Like there's no place where you get to enter a number or hit an

01:59:42   up and down arrow to put numbers. If you want to buy something, you hover over it and you hit the

01:59:46   button. And not only do you hit the button, occasionally you have to hold down the button

01:59:49   for a certain period of time because some things, some actions have big consequences. Like maybe

01:59:54   something is very expensive or like there's a button you hold down to dismantle items that you

01:59:58   have. And if it's a very valuable item, you want to, they put in a delay so that, oh, you're just,

02:00:04   you're, you're going to disassemble this thing that took you a year to get. You have to hold

02:00:09   down the button for like 60 seconds, like in this big progress bar feels to make sure you don't

02:00:12   accidentally delete it. Right? Because lots of stuff you're deleting all the time. You get junk

02:00:16   in the game and you're just like, oh, delete, delete, delete, delete. Right? So those are short,

02:00:19   but the more consequential the action, the more you hold it down. But anyway, for vendors,

02:00:23   for buying things, for the most part, it's, you know, they're fairly fast. You hold down the

02:00:29   button a little bit. Sometimes you just tap it, but it's just a single press because there is no

02:00:33   quantities anywhere. And sometimes you want to buy 50 of something because there are consumable items

02:00:37   and you want to buy a bunch of these things that you're going to trade for those things. This whole

02:00:40   whole economy, you know, economy of materials and made up money and everything in the game. And you,

02:00:46   you buy them in large quantity. So the habit over the course of since destiny one, you know,

02:00:51   four years now or whatever, is you go to a vendor and you're like, I'm going to buy five of these

02:00:56   things and 10 of those and eight of those. And I'm going to go to this vendor and sell five of

02:00:59   these and disassemble that and put these into the, you know, and so you get used to hitting the

02:01:03   button in sequences. So you look at the price, you look at how much you have and you're like, oh,

02:01:07   those are, those are, you know, 10, it's not, they don't use dollars. Well, those are $10 each.

02:01:11   I've got 500 bucks. I'm going to buy five of those. You have one, two, three, four, five.

02:01:15   And they're like, all right, I got this much left. I'm going to buy two of those. They're

02:01:17   20 each, one, two, three, you know, like that's what the game has trained us to do over the course

02:01:22   of four years. If you played from the beginning of destiny, that's how everything works.

02:01:26   In destiny two, in the latest expansion, there was a vendor who sold an item that is an incredibly

02:01:33   short supply in the new economy. And they're probably going to patch the game to fix this.

02:01:37   Particular item that, you know, a material, a resource that is very rare and there's no

02:01:44   reliable way to get more. You get a little bit more randomly, but not enough to feed what you

02:01:49   would want to use this item in. And a vendor would sell it and they sold it for 10 of a very,

02:01:54   fairly valuable other item. Like not currency, but like there's another resource that's pretty

02:02:00   rare and hard to get, but there is at least a reliable way to get it. They sold it for 10 of

02:02:04   those. And you're like, oh, you know, I'm not going to spend 10 of that very valuable resource

02:02:08   for one of these things. That's not a good deal. But eventually, as it became clear in the economy

02:02:13   that there was no other way to get them, you're like, well, I would love any opportunity to buy

02:02:18   these. So I'm just going to farm that other material, come back here and buy, you know,

02:02:23   I know they're 10 each, so fine, I'll get a hundred and then I can buy 10 of those things, right?

02:02:27   So you go out and you farm that material, or maybe like me, you have a massive surplus because that

02:02:31   material was in abundance before the expansion. I had a pretty big surplus.

02:02:34   Found it in the attic.

02:02:36   Yeah. Like I've got this cash and stuff, I'm going to spend it. Even though it's like 10 to one,

02:02:41   it's not a good deal. It's the only way I have to get this stuff. So I need to buy some of this

02:02:45   stuff. And so I go to the vendor and I buy a couple of them and I'm like, oh, that really hurt. That

02:02:51   sucked. And I wait for the next week for the reset to see if the price changed. It didn't. It's still

02:02:54   10 of those things. I'm like, let me just bite the bullet. Let me go farm a whole bunch of this stuff

02:02:59   and let me just go and just dump it all in. I'll just buy, I'll buy like, you know, 20 of those

02:03:04   things, right? I'm just going to do it. Like I've resigned myself to my fate. They're not going to

02:03:09   fix the economy for a while. So I go there and I buy like 20 of them and I go one, two, three,

02:03:14   four, five, six, seven, eight, and I'm hitting the button, right? And eventually the button stops

02:03:19   working and the icon grays out. I'm like, what the hell? I had like, I had literally a thousand of

02:03:24   this thing and they were 10 each, right? I could have, I could have bought a ton of them. Like they

02:03:27   were 10 each and I've got over a thousand. Why, why is the button disabled? Is there a limit that

02:03:31   a number I can buy per week or something? And I realized the reason the thing was disabled is

02:03:37   because every time I purchased one, the price doubled. And because the game had trained me,

02:03:46   when you want to buy 10 of something, go one, two, three, four, five, hit the button 10 times.

02:03:50   Like you're not looking down at the price to see if the price is changing. The price never changed

02:03:54   on any other item when you bought it until this thing. The reason I couldn't buy anymore is

02:03:58   because I no longer had enough to buy a single one. The next purchase was like 600 or something.

02:04:04   It was some huge amount, right? Like, I suppose it had to be a power of two, right? I didn't have

02:04:09   that much left anymore, but that's why it wasn't letting me purchase it. So essentially I bought

02:04:14   one of these consumables for like 512 of that other one before the thing stopped. So I burned

02:04:20   through like a year's worth of this very valuable consumable that I had built up in like 30 seconds.

02:04:25   No, there is no undo. There is no going back. There is no complaining to Bungie that you

02:04:31   accidentally did a bad thing. There was no delay. An example of a dark pattern would be a price

02:04:38   that doubles every time you buy one that is unprecedented in four years of the game and an

02:04:44   interface that does not let you buy things in quantities and let you preview the price.

02:04:47   The game had trained me, "Press the button a certain integer number of times and get your

02:04:53   thing." I was sad for like four days about this. I know it's all just pretend stuff, but I literally

02:05:00   spent a lot of my actual time building up the inventory of that other valuable item. Notice

02:05:05   how I'm not using all the crazy destiny words here to help you people? Yeah, I appreciate that.

02:05:09   It doesn't really help. It was killer. And the thing is, it is a dark pattern because

02:05:14   this vendor in the game is supposed to be like a gangster and like every time you do any kind of

02:05:18   deal with him, he always like, "Welches on his deal," or he doesn't, you know, like...

02:05:21   In the game world, it kind of makes sense, but it is. It was bad. It was brutal. I complained

02:05:26   about this on Twitter and I got a whole bunch of people commiserating saying, "Yep, I did the same

02:05:30   thing." So I wasn't the only one who got nailed by this. In some respects, it's like, "That's a

02:05:34   pretty good game. Like, you really felt like you were screwed by this criminal." It's like, "Yeah,

02:05:38   but I did spend like a year of Destiny 2 building up that." And it's nothing compared to the people

02:05:43   who play this game all day. Like, the YouTube people all have so much of every resource that

02:05:46   it's ridiculous. But I don't. I'm a casual player. I play every once in a while, like,

02:05:51   compared to the people who play like, you know, hours and hours a day. And this really hurt. And

02:05:56   I said it on Bungie on Twitter, like, "Bad show, Bungie. Like, don't make the people who play your

02:06:00   game feel bad. Like, I... And you see what you were going for? But I think you underestimated

02:06:04   exactly how dark this dark pattern was and exactly how trained people are to just hit the button five

02:06:09   times and not look at the price." To be fair, and just to show the listeners how annoyed you were

02:06:16   by this, this topic has been sitting in the after show section of our show notes for like, two months

02:06:22   or something like that. And typically, if something sits for that long, Jon will just say, "Oh, it

02:06:27   doesn't matter anymore," and move along. But not this, my friends. And I don't blame you, to be

02:06:31   honest. I would really chat my behind. So did the item or whatever that you bought not as many as

02:06:37   you expected of, was it worth it? Like, what is the...

02:06:40   **Matt Stauffer** No, no, it was not worth it. Like, at 10 for one of these, it's not worth it.

02:06:46   For like, hundreds of that consumable item for one of them, it's a terrible deal. It's like someone

02:06:54   said you can buy a candy bar for $10. You're like, "Eh, maybe it's for charity." But if we said,

02:06:59   "Oh, and by the way, go ahead and buy 20 candy bars and the price will double every time." By the time

02:07:04   you're buying a candy bar for $1,000 and someone says, "Well, was it worth it?" It was, you know,

02:07:07   you got that candy bar for a thousand. No, it's not worth it at all. It was terrible. I'm still

02:07:12   sad about it. I shouldn't have put this topic here and I'm sad all over again.

02:07:15   **Jared Stauffer** All right. And just because people will ask, and this is the brief spoiler

02:07:21   moment of the episode, what did you have to spend in order to purchase what using the actual Destiny

02:07:27   terminology? **Matt Stauffer**

02:07:29   They were selling, this is kind of sounds overdue, they were selling Masterwork Cores

02:07:33   for legendary shards. Legendary shards got it from disassembling legendary weapons and a bunch of

02:07:41   other things. Masterwork Cores used to randomly drop, used to be able to get them from disassembling

02:07:48   Masterwork weapons, which would randomly drop. Anyway, yeah, Masterwork Cores are incredibly rare

02:07:54   in Destiny 2 and the new, in the Forsaken expansion, they changed the infusion economy

02:08:01   to require all sorts of materials to do infusion. So basically, I mean, they have the charts in this,

02:08:04   this is why they're going to adjust it. They changed the infusion economy such that people

02:08:08   used to do infusion all the time. And as soon as Forsaken came out, I bet the rate of infusion

02:08:14   dropped off a cliff because it basically became nobody ever infused anything. It used to be a

02:08:18   thing that you would do all day long and was like, nobody infused anything because it uses so many

02:08:22   resources, including Masterwork Cores, and there's no way to get more Masterwork Cores. So even if

02:08:27   you had a cache built up, eventually you depleted it. I bet like infusion has dropped practically

02:08:32   zero. So they're going to fix this. They're going to adjust it. They posted a bunch of stuff about

02:08:36   it a couple weeks ago about how they're going to provide some reliable way to get Masterwork Cores.

02:08:40   I still think it's kind of crappy. I still think making infusion this expensive makes people run

02:08:46   around with a bunch of hobo suits to use incredible parlance. And really, I just want to use my good

02:08:51   items, but I can't afford to infuse them. Anyway, all that made sense to Destiny people. Rest assured.

02:08:55   Is this how our show sounds to like non-programmers or non-nerds? Like when I was going through all my

02:09:00   audio stuff earlier, I'm sure a lot of our audience like zoned out or skipped the chapter. Like,

02:09:04   consider myself like appropriately gotten back at for that now. Legendary Shards and Masterwork Cores

02:09:11   are probably a little bit more ridiculous than ring buffers, but not much. I was asking in the

02:09:15   chat room, would it have squared if you had bought it one at a time or one AA time? You could only

02:09:21   buy one at a time. That's my point. You can only buy one at a time. So if you would like left the

02:09:26   store or something and come back. Yeah, no, I think it reset per day. So if you cranked up the price,

02:09:33   if you went to sleep and came back the next day, it would be back down to 10. So you can buy one a

02:09:36   day for 10, but like it's ridiculous. You need like three of them to do a single simple infusion

02:09:43   and it cranks up from there. Yeah, I got lost again. It's a complicated game folks. I can't

02:09:50   believe we made it through that though. This is a new record for us, I think, of how much destiny

02:09:55   we can make it through at once. Well, anyway, if that was your question, yeah, it resets on a daily

02:09:59   basis, which is way too slow. Like, and I did, I have been going back and buying one for 10,

02:10:04   but at a certain point, like once they said they were going to change the economy, I'm not even

02:10:07   buying one for 10 anymore because one a day is ridiculous anyway. I got to travel all the way to

02:10:11   the vendor and I hate that guy now. Yeah, on principle. Yeah, he screwed me. I'm surprised

02:10:16   you didn't do more pre-purchase research. You know, you research every other purchase in your

02:10:20   life to such a degree. Like if you're making a large destiny purchase. That's why I tweeted it.

02:10:26   I didn't like, don't make the same mistake that I did. Right. I mean, cause it's just, it was just

02:10:31   so unprecedented. Like I just, when would you ever need to look back at the price? The price is the

02:10:37   price. And then you go buy, buy, buy, buy, buy. Like that's for four years. We've been doing that

02:10:41   never has something changed price when you bought one it's madness, let alone doubling. That's just

02:10:47   so cruel. I wonder if I could do a reverse ramp for the, so I know what you've been doing while

02:10:54   destiny chat was happening. I haven't been programming, but I've been thinking about it.

02:10:58   I've been like slowly like noodling on this throughout the entire show. Like whenever I

02:11:03   wasn't busy talking or anything, like I would like get an idea in my head. Like, Oh, what if I,

02:11:08   what if I do it this way? Take two showers tomorrow. Yeah. Shower is the ultimate idea place.

02:11:14   Nice. Yeah. I think I might do a reverse buffer for the multiplier. That might work better.

02:11:20   I continue to think that there are probably libraries in straight C that do this.

02:11:23   The thing is like to do it right. It's probably only like 50 lines of code. Like,

02:11:28   like doing like a very simple limiter without look ahead is like 10 lines of code. Like

02:11:33   this is not difficult stuff or it isn't, uh, it isn't complicated. It's just really tricky.

02:11:41   If that makes sense. Like there's a difference between like tricky and it's not complicated.

02:11:45   The solutions are very simple once you get them. But to figure out exactly what to do with these

02:11:50   crazy numbers and how to do it is very tricky. It's the kind of thing that like, like I start out

02:11:56   with a few lines of code doesn't work right. Then I like slowly blow it up with a whole bunch of

02:12:01   crazy crap. And then eventually I figure out something that works. And then I ended up

02:12:05   then pruning that back down, deleting all the stuff I didn't actually need.

02:12:08   It's crazy. And none of it would be helped by test suites. Oh, a lot of it would be. Nope.

02:12:15   You really would. Don't even try to talk about stuff. You don't understand the problem that

02:12:21   you'd break the problem down to, into a easily testable functions and you'd get each of those

02:12:25   working. So you didn't have to worry about them anymore. And then you'd build up, you know, like

02:12:29   that may not be your way of working, but rest assured it is a way of working that does work

02:12:33   for this specific case. What I am doing is one of those functions. Like that's all it is. Like,

02:12:38   it's a very, very small function. Right. But if you know what the output's supposed to look like,

02:12:43   like making tests to show what the output is and like your, your aspirational state as your

02:12:49   failing test, I'm not going to pitch you a new test. It would work okay for this.

02:12:54   It's just not how you're working. It's fine. The debugger works too.

02:12:57   Use the debugger in the test. Forget it. I can't do this. I need to, if we're going to have this

02:13:03   conversation, we're going to have this conversation. I'm going downstairs and pouring a drink. I cannot

02:13:07   have this conversation sober. We've covered these bases before. We're not, I'm not trying

02:13:14   to convert you. You set up break point and you can see what all the values are. Oh my God.

02:13:18   God.

02:13:19   (beeping)