The Talk Show

297: ‘Subscribed to a Hamburger’, With David Smith


00:00:00   Oh, David Smith, how's your week been? Boring, probably.

00:00:03   Yeah, nothing going on. It's just the beginning of fall. Things are quiet.

00:00:07   You know, the leaves are turning.

00:00:08   Feet up on the ottoman.

00:00:10   Yeah, that's me. It's just finally cool enough that I can get a fire going in the

00:00:15   fireplace and I can sit on the—just sit by the fire and read a casual book or something like that.

00:00:20   Dig into a long novel that you've been saving up for a while.

00:00:23   Or the opposite of that. I think the scene we just described is the exact opposite of

00:00:29   how the last week has been in my life.

00:00:31   Yeah. Isn't that always the truth, though? I mean, I know it's like the human condition,

00:00:37   where if you had released new apps and it didn't seem to go anywhere, went over like a lead balloon,

00:00:43   you would think, "Wouldn't it be great if one of these apps had been a hit? Wouldn't it be great?"

00:00:47   And now that your app is a hit, wouldn't it be great to just have a week—

00:00:52   Sit by the fire.

00:00:52   Sit by the fire.

00:00:55   So as we record this episode on Tuesday the 29th, it'll be out tomorrow, probably the 30th,

00:01:01   the top downloaded free app, top app right now in the App Store is your app, WidgetSmith.

00:01:10   Yes.

00:01:12   And it has been the top app since—

00:01:14   Friday the 18th, so about a week and a half ago.

00:01:19   So it's been at the top of the list for a week and a half. I think there's a good chance it'll

00:01:24   still be at the top of the list tomorrow when this comes out. Congratulations. In all seriousness,

00:01:28   joking aside—

00:01:29   Wow. Yeah. I mean, it's been completely surreal. It's one of those weird places where—it's not

00:01:38   like this is one of those situations either where I just started doing this and then it took off in

00:01:42   a wild way. I've been making apps in the App Store since the beginning, since 12 years ago,

00:01:48   essentially. And I've seen this happen to other people, and it's always like, "Oh, that's nice.

00:01:53   I wonder what that's like." And you never really ever actually think that it's the kind of thing

00:01:57   that would actually happen to you. And to actually be in a position where I made something that's

00:02:03   sitting at the top of the charts and has remained there, it was certainly never the plan or the

00:02:08   expectation, but it's kind of surreal to be the situation I find myself in now.

00:02:12   So I made the joke—not even a joke, it's a humorous observation that it was my teenage son

00:02:20   who came to me shortly after the release of iOS 14. So you've been number one since the 18th,

00:02:27   that's a Friday, you said. And iOS 14 came out famous—

00:02:34   Wednesday, I believe.

00:02:35   Yeah, famously, because the event was a Tuesday and then—

00:02:38   I say "we," I don't have an app, so it's not even really me. I'm using the royal "we" here.

00:02:45   You, developers, had something like 21 hours or something like that.

00:02:50   And realistically, it was less than that even, because we had to submit,

00:02:55   get through App Review, and then be ready for the apps when iOS was actually released the following

00:03:01   afternoon. So it was like, I think I had my submissions made within maybe about four hours

00:03:08   of the event going up.

00:03:09   So you had your submission in the queue four hours after the announcement.

00:03:15   Yeah, luck favors the prepared.

00:03:17   I do think—so let's just say, my son came to me, and this is probably around the time

00:03:27   that it hit the number one on the charts, maybe by the weekend, where it was like,

00:03:31   "Hey, have you heard about these iOS 14 widgets?" And I was like, "Yeah." And he's like,

00:03:35   "Have you heard about this Apple WidgetSmith?"

00:03:39   And I had to sit at a footnote. I was like, "Yes, I have. And in fact—" And then he just

00:03:45   rolled his eyes. I was going to tell him how I knew you, and you're a swell guy.

00:03:49   And he doesn't care.

00:03:52   Yeah, he didn't really care. I thought maybe he had me. And somebody on Twitter was like,

00:03:57   "How often does your son think he can sneak something iOS-related by you?" And I said,

00:04:03   "Actually, more often than you'd think, because he thinks that I only follow the boring stuff,

00:04:08   and that he can alert me to when something actually interesting happens."

00:04:12   Or maybe he was sad that you hadn't told him already.

00:04:16   Why didn't you give him a heads up? This was coming. He could have been the cool kid on the

00:04:19   block who knew it before anyone else did.

00:04:21   It's, you know, I say it's—it is surprising, right? Like, you did not—maybe you thought

00:04:31   you had something, right? What were you thinking? So WidgetSmith is obviously an all-new thing,

00:04:36   because it's entirely predicated on a feature that only exists in iOS 14.

00:04:41   Yeah. And so, I mean, WidgetSmith is in many ways like the spiritual successor to another app that

00:04:48   I made and launched in the spring called WatchSmith, which was an app all about

00:04:52   making custom complications for the Apple Watch. And when I made that, that app launched,

00:05:00   and it did reasonably well, but nothing—it didn't set the world on fire or anything. It was just like,

00:05:05   it was a power—it was like a niche tool for power users, essentially. It was the way that I have it

00:05:09   in my mind and the way that it kind of manifested itself in the market as a result. And when widgets

00:05:16   were announced, and I was like, "Okay, I have a lot of the infrastructure in place for how you

00:05:22   would build an app that does this kind of thing," where a complication and a widget are functionally

00:05:28   and even programmatically very similar in sort of concept. And so I was like, "Well, let's just

00:05:33   take what I built there and put it into widgets and kind of see what happens." And if I'm being

00:05:39   completely honest, my expectation was that—my personal goal was that WidgetSmith's downloads

00:05:46   and subscriber base and everything would be about half of WatchSmith. And that was what I was going

00:05:53   into with, because I thought it was like, "Well, this is a power user feature. Who's going to want

00:05:58   these power user widgets on their phone?" On the watch, at least, it's a thing that the

00:06:04   complication system is really limited. But on your phone, everyone's going to use the widgets that

00:06:10   come with the apps that they use. Why would they use mine if they're my calendar widget versus

00:06:16   Apple's calendar widget, or my photo widget versus Apple's photo widget? And so I had no expectations

00:06:21   for it. And it was just something that I was like, "Well, I'm in the place that I can do this. I have

00:06:26   the infrastructure, I have the code. I know what I'm doing enough that it's not a crazy ask." And so

00:06:30   I launched it with no expectations. And the first few days before it really blew up was

00:06:38   fulfilling my expectations. It was like, "This is kind of finding its niche." I had some good

00:06:44   feedback, and it was amongst the people who are very power usury and care a lot about very

00:06:50   particular things. And that was what I was expecting, and that's where I was expecting

00:06:55   it would go, and it would just cruise along less than a lot of my other apps, but just part of the

00:06:59   portfolio, and that's great. I had absolutely no expectation that it would take off in the way that

00:07:04   it did. And it came as a complete surprise and is still something that I can only sort of—every

00:07:10   now and then, I just open the App Store and just scroll down to make sure that it's actually real.

00:07:14   This isn't some big con that is being played on me, because I had no expectation of it,

00:07:21   and yet it seems to be true. It seems to be actually what's happening in the world right now.

00:07:25   It is interesting. It's an interesting comparison, because famously—and I would like to talk about

00:07:34   the watch stuff separately, so we'll come back to this in a somewhat organized fashion that this

00:07:41   show usually proceeds—but there is a—so famously, six years in, seven years in, I guess, what are we

00:07:51   with the watch? I guess six years since it was announced, and we're at—

00:07:55   Yeah, six or seven years. It's the Series 7 watch, so presumably that's the—

00:08:00   No, Series 6. Series—I have to say it slowly, so as not to trigger our friend, the electronic widget.

00:08:07   Yes. Series 6 watch, watchOS 7, so it's the sixth year. Famously, this is where I'm going,

00:08:20   is we don't get custom watch faces. No.

00:08:24   There's a friend of mine named Marco Arment, who's—are you familiar with Marco?

00:08:30   I am familiar with his work. Okay, so Marco is a watch nerd and is also very

00:08:34   fussy about things, and he complains endlessly about Apple's built-in watch faces.

00:08:39   I think that's a long story. Why can't apps just make their own faces, period? Why, with—you know,

00:08:50   if we have—and we keep hearing these numbers with all the lawsuits with Epic and stuff like that,

00:08:56   that there's, I don't know, 100,000 apps going through the App Store a week,

00:08:59   and there's over a million in the store of—you know, let's just pick a category, calculators,

00:09:05   right? If you tried to use every single iOS calculator, there's got to be hundreds of them,

00:09:14   maybe thousands, I don't know, of varying degrees of design quality. Why aren't watch faces the same

00:09:22   way? Why aren't there thousands, tens of thousands of watch faces? Why can't the Dallas Cowboys have

00:09:29   an app where you can have a custom Dallas Cowboys watch face, et cetera? You can't. That's just not

00:09:36   the way watch faces work, and a couple of years ago, they've added—they began adding complications,

00:09:43   which is sort of the closest apps get to being able to be on watch faces, right? But even there,

00:09:51   it's sort of—you're playing within these very limited confines, right? It's not really like

00:09:57   you have a complete canvas to write on? No. No. I mean, it depends a lot on the watch face,

00:10:05   and that's where it gets really crazy-making on the watch, is some of the watch faces,

00:10:10   you have a reasonably big canvas, like on some of the modular faces where you have a big rectangular

00:10:15   block that you can pretty much take over the face with, but on most of them, you get a little

00:10:21   teeny little circle that you have to put your entire complication into. And so it's really not—

00:10:28   there's only so much that you can do within that amount of space. We're talking about,

00:10:32   I don't even know if it's like 50 pixels by 50 pixels, or points, I guess. It's a very small

00:10:39   space that you actually have to play with, and so you're definitely not creating a custom watch face.

00:10:44   At the most, you're just creating a custom way to display some kind of data there,

00:10:49   or some kind of information. And so in addition to the very limited set of rules that you have

00:10:54   to—confines you have to play within visually, you also—I don't know if you have to, I guess.

00:11:02   I don't know what the rules are. So there's also a wide variety of—and again, I'm laughing because

00:11:09   I don't have to make all the complications—but there are a very wide variety of complication

00:11:15   sizes, right? And then like upper left corner can be different than upper right corner because,

00:11:21   you know, on some of the watch faces, they curve to fit the corner. Different sizes. And

00:11:27   joy of joys, there's actually two entirely different sets of watch sizes. There's the old

00:11:37   Series 1 or 0 through 3 size with the square corners, and then starting with Series 4 a couple

00:11:44   years ago now, the 456. And it turns out, much to the consternation of developers such as yourself,

00:11:52   Series 3 remains in the lineup at 199, and so therefore you can look forward to years and years

00:11:58   of supporting those extra complication sizes. In addition to that, there are rules about how often—

00:12:05   not even rules, really, it's sort of all up in the air—how often does the complication update?

00:12:10   So a complication—the way the complication system works is you provide a timeline of information you

00:12:19   want to display on it. And you can update that—when you create the timeline, you can have

00:12:25   things as often as one per minute. So I can create—and you can create up to 100 of those.

00:12:32   So if I'm at one minute-by-minute accuracy, I can create 100 minutes of things that will be shown on

00:12:39   the display. And then I can update or change what my timeline is maybe every 15 to 20 minutes,

00:12:46   if the battery's full, and if the battery starts to run down, then who knows what. And it'll just

00:12:51   sort of—the watch will get to your update or your request for an update whenever it feels

00:12:56   like it's appropriate, which may or may not be anytime soon.

00:13:00   >> Right. And so this is just a microcosm, but this watch complication situation is sort of a

00:13:08   microcosm of the modern era of developing third-party software, where the rules aren't

00:13:16   exactly defined. Like, there might have been before, in the old days, something where,

00:13:22   you know, you could write software for X, some sort of component, and you can't just update

00:13:29   constantly. You only get a sliver of time, but that time would be determinate. You would know

00:13:35   once a second, or even if it's once a minute. Once a minute, you will get a slice of time.

00:13:40   You can update, and you can count on it. Every minute on the minute, you're going to do this.

00:13:47   Maybe you will know. Maybe you could say, "Hey, I don't need to do it on the minute." Everybody

00:13:51   might want to do it on the minute. You could just update me, say, 15 seconds after every minute.

00:13:57   Do me at the 15-second mark. But then every minute, at 15 seconds after the minute,

00:14:01   whatever it is, it would get up. Widgets or complications on the watch aren't like that.

00:14:07   They're sort of indeterminate, and the system manages it, and you just sort of

00:14:11   raise your hand and make a request, "I would like to update on this," period. And the watch is like,

00:14:18   "Okay, we'll deal with it." >> "We'll take that under advisement."

00:14:20   >> "We'll take it under advisement." And the intentions aren't hostile towards

00:14:28   users. I was going to say towards developers or users. I'll just say towards users.

00:14:35   And however hostile it is towards developers, it's in the mindset of doing what's best for the users,

00:14:43   which is to extend battery life and manage this sort of calculus of, "Well, let's let these things

00:14:51   update as often as possible while also maximizing battery life," which is a very complicated

00:14:59   calculus. And therefore, they don't reveal the formula.

00:15:02   >> Yeah. And they want to have... And I think it's different on different devices. I think

00:15:07   on a Series 3 Apple Watch, and part of why I'm so sad that it's still there,

00:15:11   a Series 3 Apple Watch with its CPU and its performance characteristics and its battery life,

00:15:17   I think it will have a different recipe than what a brand new sort of top-of-the-line Apple Watch is

00:15:23   going to be able to do. There's a wide variety there, and I just have to kind of code my thing

00:15:27   so that it's flexible as much as I can between those with kind of no expectation of when I'll

00:15:32   actually be able to do what I want to do. >> Right. And that's sort of where,

00:15:39   at a hardware level, Apple Watch is going, right? Because, yes, famously when the Watch first came

00:15:49   out, apps were very slow. And that was really, really more of a WatchKit problem where the

00:15:56   third-party APIs were really, really rubbish, to put it mildly. And in hindsight, why were they so

00:16:05   bad? And I think it basically, again, we're never going to get a real explanation from Apple because

00:16:11   Apple never explains itself. But I think it's pretty obvious that the basic idea was,

00:16:16   we can't open up the real APIs that Apple itself was using for the built-in apps,

00:16:23   because either they're not ready, they're not up to our standards, or we can't trust third parties

00:16:28   with these APIs to manage energy the way we are internally. So the APIs, the real ones, we can't

00:16:36   open. But apps, quote-unquote, "apps" are so super important to iPhone and iPad, we need apps

00:16:45   for Apple Watch. And so there was this push and pull where one side is saying,

00:16:51   "We can't open up the real APIs for battery life and whatever other reasons, but we have to have

00:16:57   apps on the, for lack of a better word, marketing side. Okay, we'll make this other set of APIs

00:17:04   that we can trust them with." And they were really slow. But even, let's just say, go up to series

00:17:13   three, just the basics and the APIs got better. People don't typically think of their watch as

00:17:21   fast or slow anymore, right? Like what you want to do on your watch is fast. So all of the

00:17:28   improvements to the chips aren't in the... It's always been an issue with battery-operated

00:17:34   devices, laptops to phones to tablets, to manage efficiency over time, both with increasing

00:17:43   performance, because you want to do some things faster and whatever, but also using the efficiency

00:17:49   to extend battery life. With the watch, it's really all about battery life. Yeah. I mean,

00:17:54   I think it's clear that that's the gating factor for any new thing that Apple is trying to do on

00:18:00   the Apple Watch, is defined by the battery. And because the batteries in the Apple Watch are just

00:18:04   so much smaller physically, there's only so much space you have if you're going to strap something

00:18:09   to your wrist to try and squeeze battery into. And all of the features and all of the things

00:18:15   that they're trying to do have to also work on a device where it's inconvenient for it to run out

00:18:22   of battery in a way that is... It feels more manifest than it is even with your laptop.

00:18:29   If I'm sitting at my laptop and I'm working and I'm running Xcode and it's churning through my

00:18:34   battery and I'm like, "Oh man, I need to plug in," I just plug in and it's fine. But if I have to

00:18:40   do that with my Apple Watch, I have to take my Apple Watch off and put it on a dock and I can't

00:18:44   wear it for 45 minutes and it completely eliminates the use of it. I mean, even a phone,

00:18:50   the number of times I've used my phone plugged in because it was low on battery, but I still wanted

00:18:54   to use it, that's fine. But a watch, it has to work. And ideally, it has to work for at least,

00:18:59   whatever, 18 hours a day.

00:19:01   If you recall, back in the old days when we had airports, it would often be a common sight to see

00:19:08   somebody camped by a wall outlet using their phone while it's plugged in. And the other...

00:19:17   I'm trying to avoid the puns with the word complicating, but I'm going to go ahead.

00:19:22   Complicating factor with the watch is the health tracking features of the watch.

00:19:29   Once you get hooked on them as a user, you feel like you're getting robbed. Like if you have to

00:19:36   take your watch off and put it on the charger for 45 minutes and while you're doing so, you are

00:19:42   standing and moving around, you feel like you're getting robbed of stand hours and exercise time.

00:19:50   Yeah. Or even worse is the situation where you go for a run or a workout or something and you run

00:19:56   three or four miles and it runs out of battery when you're a quarter mile from the house.

00:20:00   It'll save the data, sort of, but it feels like you're being robbed. These steps didn't count.

00:20:06   These calories aren't being counted towards my red ring. It's definitely like you feel

00:20:12   personally affronted if you aren't getting credit for the things that you're earning

00:20:17   or you feel like you're earning when you're wearing your Apple Watch, for sure.

00:20:19   Yeah. And I've had that happen. That's enough for a while because battery life has gotten better

00:20:25   in the last few years, but I've had that happen during a workout on a jog where that's when it's

00:20:30   run out and it feels like Tripoli angering, right? It's like, "I was running. I was actually out

00:20:38   jogging. I'm sweaty. I really deserve those credits." And it's not there. And I think to

00:20:45   their credit, certainly, they've done a great job of preserving that battery life, but it's come at

00:20:50   a very tricky balance that they have to try and balance and find how much power, how much

00:20:56   capability, how much utility can they put on the watch while still doing all these things.

00:21:02   And I think also the thing that's crazy with the Apple Watch and the battery life side is how it is

00:21:07   constantly doing things. It is always trying to make sure, "Did you just fall down? Did you just

00:21:12   fall down? Did you just fall down?" It's monitoring you as long as you're wearing the watch. It's

00:21:18   doing that. It's taking your heart rate once every six minutes. It's doing stuff persistently in a way

00:21:24   that it certainly doesn't come free. So it's not like a situation where I close my laptop lid and

00:21:32   it pretty much just goes to sleep and it's not doing anything. The Apple Watch, if anything,

00:21:36   other than the screen being lit up, is doing just as much most of the time than it would be

00:21:43   when you are actually actively interacting with it. Are you washing your hands?

00:21:48   Are you washing your hands? Now? Yeah. What about now?

00:21:50   Nope. Nope. Doesn't seem like it. Nope. What about now?

00:21:55   So anyway, that's a long digression to come back to what my main point is, which is that one way

00:22:02   to think about iOS 14 widgets is that they are very much like watch complications. Insofar as

00:22:12   there are limited sizes, there are some serious limitations on... Well, effectively, they're mostly

00:22:23   non-interactive. You can't make buttons that do things on widgets. They're sort of like information

00:22:31   panels, which again, is a lot like watch complications. They kind of update on the system's

00:22:39   schedule, right? Yep. They do.

00:22:42   I mean, pretty much everything we just said about watch complications applies to iOS 14 widgets.

00:22:50   I guess the sizes are easier to deal with, right? Where you just sort of have...

00:22:54   They're just set icon sizes, a one icon size versus a row of icons.

00:23:03   Yeah. I mean, sizing is a bit funny with widgets because there's three different types,

00:23:10   like a small, medium, and a large, but the actual size that each of those are

00:23:16   vary wildly between which phone you actually have or if you're on an iPad. If you have an iPhone SE,

00:23:22   the size of the widget is different than if you're looking at that widget on a XR or one of the

00:23:30   larger screen. I think there's like six different sizes, actual point sizes that they have. It's

00:23:37   easier because you have so much more of a margin. You're not trying to squeeze something into the

00:23:41   difference between 44 points and 50 points. You're talking about the difference between 170 points

00:23:47   and 179 points or something. That difference matters a lot less, but there's certainly still

00:23:54   that... There's certainly a variety you have to accommodate for.

00:23:58   I do not want to go too deep down this digression, and famous last words for me, but one of the

00:24:04   things I've been doing all summer is I've been running iOS 14 betas and still now with the

00:24:11   release version, I'm running it on an iPhone XR. My regular phone, my main phone that I've used for

00:24:19   the last year is an iPhone 11 Pro. The difference between the Pro and the other... The iPhone X

00:24:32   wasn't called the iPhone X Pro, but the OLED ones, which are now called Pro, run at Retina 3X.

00:24:40   The XR and the regular iPhone 11s, which aren't OLED, their regular LCD, run at 2X Retina.

00:24:50   But the difference when you really dig into the point size, like, "Oh, well, that means one point

00:24:56   is two pixels on the 2X one and one point is three pixels on the other one." But the actual difference

00:25:02   in sizes is really kind of wild. If you run both phones at their default sizes, like accessibility-wise

00:25:11   for text size, just don't bump up or bump down the text size at all, run everything at sort of

00:25:17   the default. And if you're running on one of the phones that has scaling available, don't set

00:25:22   scaling to anything. The difference in sizes of text between the two is quite different. It's not

00:25:30   like, "Oh, you have to sort of be a type nerd to notice that it's..." No, it's actually very

00:25:34   different. And for something like widgets, I can see exactly where you're going with that.

00:25:41   Yeah, it's a very... I think it speaks to just the difference of 2X and 3X, but it isn't that

00:25:48   the 3X screen has a resolution, has sort of a dots per inch on the screen that is commensurately

00:25:56   more detailed. It's higher, but it's not like if 1X was the thing and then we doubled the resolution

00:26:03   and then we tripled the resolution, it isn't actually doing those changes. And so controls

00:26:09   definitely look different and it feels very different. I actually was in the same circumstance.

00:26:15   My testing phone over the summer was a XR and going from that back to my 11 Pro feels really...

00:26:24   The keyboard is slightly different. It's not like things are totally out of whack, but it's like,

00:26:30   I feel different. Things are just a little bit weird in a way that when we went from the 1X to

00:26:37   2X originally, like with the iPhone 4, it really was... Everything stayed the same size, everything

00:26:43   just got sharper. Whereas now between 2X and 3X, it's definitely... That's not the case. Things are

00:26:50   physically different. The actual size of something that's 100 points tall is very different between

00:26:58   the different devices and the phones. And so, and all these things that I have to... When you're

00:27:02   designing something that has to work across all of them, it has to be reasonable at all the extremes

00:27:08   of that, even if at a point level you're exactly the same. Yeah, and it actually is counter

00:27:13   intuitive where the 3X ones, the point size is physically bigger. And so, 16 point type is the

00:27:21   default text size on iOS, it always has been. 16 point type is bigger on an iPhone 11 Pro than 16

00:27:30   point type on an iPhone 11, physically bigger. And you therefore get... It's not just that the iPhone

00:27:38   11 has a bigger screen than the non-Max 11, it actually packs the pixels or the points in more.

00:27:45   So you get significantly more lines or words on a line in an email or an Apple Note than when

00:27:53   you're viewing the exact same email or Apple Note on the other device. And you would think,

00:28:00   maybe it would be the other way because you think, "Well, it's 3X, so it must be... They

00:28:03   must have more pixels per inch too." But it's actually different. And it's all very strange

00:28:08   and so different from the old days where you could just count on an iPhone screen being an iPhone

00:28:14   screen. And like you said, even when they went Redna, you just kept everything the same physical

00:28:18   size and just doubled the resolution and made everything sharper. Yeah, it went from... It was

00:28:24   324 by 480, I think was the original iPhone. And then it's just like when they went to 2X,

00:28:29   they just doubled that and kept the screen exactly the same size. Right. And then even when they went

00:28:33   with the iPhone 5, when they went to a different aspect ratio, they just added pixels at the top.

00:28:39   They didn't change the size of anything. So the keyboard was actually the exact same width.

00:28:46   It just... They just added pixels at the top. Now we're in a new world. All right, let me take a

00:28:52   break before we continue and talk about our friends at Eero. Oh, man, these days your house isn't just

00:28:57   your home, it's everything. It's your office, it's your school, it's your podcast studio,

00:29:02   it's a movie theater, it's a restaurant. My house is all those things right now,

00:29:07   literally right at this moment today. Anyway, all of these activities, they put a strain on your

00:29:13   Wi-Fi. It's not good if your Wi-Fi doesn't reach every room in your house, or even worse, if it

00:29:17   only reaches a room or two. You need solid Wi-Fi in your whole house. Eero is an Amazon company,

00:29:24   and their whole product line is set up to solve this problem. They cover your whole home with

00:29:30   fast, reliable Wi-Fi inside and out, and it's super easy to set up. You got rooms with bad

00:29:35   Wi-Fi or no Wi-Fi dropouts in certain rooms. Eero can help make every square foot of your home

00:29:41   usable. It's really great. You're listening to me speak right now over a Eero Wi-Fi connection.

00:29:48   You just plug one into your modem. You plug other ones in around your house. Their app is how you

00:29:56   configure everything, and the app has always been great, but it's really gotten better in the last

00:30:00   year. It's a total rewrite. It's even better than ever, and it has all sorts of amazing features

00:30:05   where you can see what every single device in your home that's connected to your network is doing,

00:30:10   and you can manage the ones. You can take your kids' devices and put them on a certain plan so

00:30:15   that they can't get on the Wi-Fi after certain times. All this stuff that sounds like advanced

00:30:20   features, the app makes it super, super easy to manage, but the app also is the thing that makes

00:30:25   it easy to add other Eero base stations around your house. Their website can make it really,

00:30:32   really easy to figure out how many you should order based on the size of your house and how

00:30:36   many floors you have, etc. And it really is just a great service. They also just this week came out

00:30:42   with all new base stations that's, I think it's the version six or something like that. Just go

00:30:47   to their website. You'll find out all the details on the new hardware that they have.

00:30:51   Go to, here's the website to go to, Eero, E-E-R-O dot com slash the talk show,

00:30:57   Eero dot com slash the talk show, and use that same code, the talk show at checkout,

00:31:02   and you will get free next day shipping with your order. So as you, you could just pause this

00:31:08   podcast right now, spend 15 minutes, order up some Eero stuff, and it'll be at your house tomorrow.

00:31:14   That's amazing. With that code, Eero dot com slash the talk show, get free next day shipping,

00:31:21   go check them out. I recommend it. I would recommend them even if they were not a sponsor

00:31:24   of the show. It's a great product. All right. So you've had, do you think, here's another

00:31:32   angle I've been going with. Do you think you would have had the idea for Widget Smith if you

00:31:36   hadn't already done Watch Smith? That is an interesting question. I don't think it would

00:31:44   have ended up in the same way that I did, that it did, ultimately it did. Because the thing that

00:31:52   happened with Watch Smith that I, like my goal with that app was to try and make, essentially,

00:31:58   like let people make their watch faces like their own. Like I wanted you to be able to control the

00:32:03   typefaces, the colors, the data, how it was structured, how it was laid out. Like there's

00:32:08   tremendous amount of like, especially on the watch, it was something that I started to notice

00:32:13   is that like I got really picky about exactly how I wanted things to look in a way that I care about

00:32:20   more on my wrist because it's something that's, I mean, it's a bit of a cliche, it's a fashion

00:32:26   thing, but it's like something I wanted to look good. Like I actually care if I'm going to have

00:32:30   the date or the temperature shown on my watch face and I'm like going out to a nice dinner back when

00:32:36   that was the thing we did and I want it to look nice. Like I'm wearing my Apple watch rather than

00:32:42   my fancy watch because I want to close my rings, but I want it to look just the way I want it to

00:32:48   look. And I think the result of that, of that sort of that ultimate desire that in the watch I was so

00:32:55   persi—like I got so specific about it is that I went through probably like five or six different

00:33:02   editor screens of how can I make this something that isn't like totally intractable to a common

00:33:09   user that is a clear, straightforward way that I can create this complexity and give you so much

00:33:16   choice and let you choose the typeface and let you choose the colors and let you choose exactly what

00:33:22   is shown and what's shown here and what time it's appearing on your screen and all of the things

00:33:26   that ultimately like WatchSmith ended up being. It was that level of sophistication that I needed

00:33:34   to squeeze into something that was usable was something I don't know if I would have had the

00:33:40   time or the sort of idea about with widgets if I hadn't gone through that for the watch, because

00:33:46   the watch is so much more constrained and every little thing and every little tweak and that

00:33:50   adjustment that you make mattered so much more there. So that when I was doing it and applying

00:33:55   it to widgets, it made sense to just carry it over. Like I'd come up with a design that I feel

00:34:01   like made a lot of sense and was intuitive and gave you that balance between power and flexibility

00:34:06   that applied immediately and directly to widgets. But if I hadn't sort of

00:34:14   gone through all that process with WatchSmith and with complications in mind, it would have been

00:34:20   hard for me to come up with it for something like widgets where I feel like in my mind,

00:34:25   anyway, originally it's like I think that San Francisco Rounded is the best widgets font,

00:34:30   probably. I think it just looks gorgeous on the home screen, I think. And there's a very good

00:34:34   chance that I would have just asserted that and set that as the default, even if I'd had the idea

00:34:40   for an app like Widgetsmith and said, "I think that just looks gorgeous." And I would have missed

00:34:46   out on the fact that while that is gorgeous, and I think if I'm Alan Dye sitting in my white studio

00:34:52   designing widgets for Apple's built-in apps, that's probably what I'm going to use, the reality is

00:34:57   once I had my mind opened to the fact that it's like, "Well, what other fonts are there? What

00:35:03   other fonts would look interesting, and how can I add them into the application?" then you start to

00:35:07   be like, "Actually, this is where the real magic starts to happen," that you can make it look like

00:35:12   it isn't just an Apple widget, that there's a value and a utility in standing out from the system,

00:35:20   in potentially even being slightly conflicting with the way the system widgets look.

00:35:27   That is a benefit and not a drawback. And why the app originally seems like it really took off was

00:35:34   because that was the case. It had so much flexibility and it had so much choice in it,

00:35:41   that people felt like they could actually express themselves with it, that they could find a font

00:35:47   that suited them. And if you're a San Francisco rounded person, great, more power to you. But if

00:35:52   you're a New York person, or if you want some of the more silly and esoteric fonts that I have in

00:35:58   there, or whatever that might be, great. Do that. If that makes you happy that every time you pick

00:36:03   up your phone, you want it to look like that. But I really don't think I would have necessarily had

00:36:08   the expectation or the imagination to invent this if I hadn't had to do it for the watch,

00:36:15   if I hadn't had to do that for complications, because they felt like a fashion item. They

00:36:18   felt like something that had to have that level of customization anyway. And there, I wasn't competing

00:36:25   with other text most of the time. A lot of the watch faces, it's just clock hands. And so a lot

00:36:34   of fonts, I feel like, look good on the Apple Watch in a way that—or feel at home, anyway,

00:36:38   on the Apple Watch in a way that isn't quite the same on an iPhone, because there's so much other

00:36:42   system text that's always on the screen as well. Hmm. Yeah, that's an interesting answer. I could

00:36:49   see that. And there was definitely something where you were playing around with custom watch faces,

00:36:57   even though it's not something you can do. It's not like Apple lets apps do it, but you were

00:37:03   playing around with it anyway, knowing that it wasn't something that you could ship as a feature

00:37:11   in an app. But just what if we could? Let's just play with it. And Steven Troughton Smith,

00:37:16   famed hacker and troublemaker on Twitter, was messing around with the same ideas.

00:37:25   Yeah. Well, he was the one I think he came up with in his spelunking prowess, was able to work out a

00:37:32   way to hide the system time inside of a watch kit app, which is typically not something that's

00:37:38   possible. Typically, there's always the time shown in the top right corner of a watch app when it's

00:37:44   shown. And he and his like, "I have no idea what code…" He shared the code publicly for how to do

00:37:49   it, and it's some kind of weird, you just dive deep down into the view hierarchy and find this

00:37:54   one particular view that happens to be the clock and make it hidden or whatever it might be. And

00:37:59   as soon as he had done that, then it'd be like, "I spent a good part of three or four months just

00:38:04   making custom watch faces. That became my hobby to do." And you can't publish them, they don't exist,

00:38:10   they're just watch apps. And for a while, I actually used them as my main watch face,

00:38:17   because what I would do is if you start a workout inside of my little custom watch face app,

00:38:24   it would remain on the screen even when the app was… You lower your wrist and raise your wrist.

00:38:31   If you have a workout app running, the workout app is what shows on the screen rather than the clock.

00:38:35   And if you turn off the high heart rate workout mode, so typically during a workout,

00:38:44   it collects your heart rate multiple times per second, it's continuously monitoring. You can

00:38:48   turn that off for power-saving reasons. So I would just turn that off and essentially just have a

00:38:53   walking workout running on my wrist all day so I could have my own custom watch face. And I did

00:38:59   that for a few months and eventually I kind of lost interest because it felt like while I loved

00:39:04   making them, no one should be doing what I'm doing with this. It's completely absurd that I'm running

00:39:10   a workout the entire day just so that I can have a custom watch face on my Apple Watch.

00:39:14   Yeah, but don't you think that doing that exercised certain design muscles in your head?

00:39:25   Because it got you… I know people like to dunk on Malcolm Gladwell and he's got that thing with

00:39:35   the, you know, you need 10,000 hours of practice before you get good at anything. And it's, you

00:39:39   know, he tries this. I think my criticism of him is he tries to make… He tries to turn very correct

00:39:50   feel of a thing, ideas that are true, into think of it rules, right? Like there is no magic 10,000

00:39:58   hours thing, but there is truth that you get better at what you do. I mean, that's, you know,

00:40:03   and it's easy to forget that, right? But so you spent all of this time obsessing over making entire

00:40:11   watch faces and it surely gave you insight into, oh, I… All of a sudden you realize why Apple does

00:40:19   X, Y, and Z with theirs. It's like, oh, I was always bugged by that, but now I see why,

00:40:25   because when I don't do it, it stinks, you know? Yeah. And working out how to like… There was

00:40:31   definitely an element of you start… You don't really understand something until you've really

00:40:39   had to build it from the ground up and kind of really gone into it and made all the mistakes.

00:40:45   And yeah, like made watch faces that look terrible or work out how to… Even the simple things that

00:40:50   seem simple of like, how do you lay out the numbers on a clock is incredibly hard. And like,

00:40:56   how do you make that… Like 12 and 11 and 10 have multiple digits, but they need to look balanced

00:41:04   and reasonable next to the twos and the threes, which don't have that. And the Apple Watch is…

00:41:11   The modern Apple Watches are not square, they're oblong, and so you need it to look reasonable and

00:41:15   not like… Yeah. And I think to your point, it's that experience is what ultimately I think made

00:41:21   me want to get into complications in a big way and not just view complications. Like I think before I

00:41:27   made WatchSmith, complications for me were just kind of a… They were just pure, simple, basic

00:41:33   data display. And that's all I ever wanted, that I ever used them for. And the way Apple builds

00:41:38   complications is you can use one of Apple's pre-built templates, which are just typically just

00:41:45   text for the most part, for a lot of them. Or you have a stack of text, or you can have a gauge with

00:41:50   text inside of it, or those types of… There's a couple of pre-built things. And when I got into

00:41:56   WatchSmith, I realized I'd learned… I had enough of an insight from my experience with the custom

00:42:03   watches. I didn't want to just limit myself to that. And so all of the complications in WatchSmith

00:42:09   are actually under the hood rendered as images and just displayed as images. I'm just making bitmaps

00:42:14   and putting them into the screen, because that was the only way that I could give the flexibility and

00:42:20   control that I actually wanted. And it's because it's the control that I learned I wanted from

00:42:26   years of making, or from the experience of making custom watch faces and making those mistakes and

00:42:31   kind of having that sense of, "You can't actually do cool stuff with this." That was where I had the

00:42:36   first idea for… One of the features of WatchSmith is you can make it that the complication sort of

00:42:43   moves around the watch hands as they move. So the classic thing is if you have the date on your

00:42:49   complication and you have the hand of the watch sweep over it, ordinarily it's hidden, which seems

00:42:56   silly on a digital watch that I can't read the date right now because it's 3/15. That doesn't

00:43:02   make any sense. I want to know the date. It's being displayed, but it's being obscured by this

00:43:08   digital hands. In a real watch, fair enough. So in WatchSmith, I move it out of the way. I do the

00:43:13   math to work out where the hand is at any given time, and I just shift it down. In the system I

00:43:19   have, I'm limited because obviously I can't get outside of my circle, but I can do stuff like that

00:43:25   that I just don't think I would have thought of otherwise. There's definitely an element of…

00:43:30   It's not 10,000 hours because I think that rule loses track of how useful that time is,

00:43:37   how actually productive, what have you learned from that experience.

00:43:40   I could spend 10,000 hours doing bad work, and it doesn't make me amazing at work.

00:43:45   Hopefully you've learned something along the way. In this case, I did a lot of work on custom watch

00:43:52   faces that informed the work I did making custom complications, which then informed my work making

00:43:56   custom widgets. Right. It's like maybe you are a very good graphic designer, and you do things,

00:44:02   but you've never made a business card for somebody. And somebody says, "Hey, I need

00:44:12   business cards." You need to design some business cards for them. You don't need to do 10,000 hours

00:44:16   of business cards before you can become as good at designing business cards as you're ever going

00:44:23   to get. Whatever your skill is as a graphic designer and typographer, you can max it out

00:44:29   on business cards pretty quickly because it's a very limited… It's a very small complication

00:44:37   in graphic design terms. But your first couple of cards aren't going to be great. You're going

00:44:43   to realize that, "Oh, this text is way too big. Wow, the text on a business card needs to be tiny.

00:44:50   Oh, I would have never thought I need to set eight-point type. That eight-point type seems

00:44:56   like a footnote, but that's really what you need," et cetera. And then you can run into problems like,

00:45:01   "Oh, it turns out that business cards get scuffed up and the corners turn in." You kind of don't

00:45:08   want to put anything close to the edge because people put them in their pocket and then they get

00:45:14   all bent up and you kind of want everything in the center, et cetera. But you don't need 10,000

00:45:19   hours. But you do need to make some. And making entire watch faces can make you a lot better at

00:45:25   making complications. The other thing that I find interesting about it is that you essentially have

00:45:34   to suss out the—and I mean you in specific with the idea of apps like Widgetsmith and WatchSmith—you

00:45:41   kind of have to suss out the rules as they are. And there's no point—and this is where I think

00:45:48   your personal disposition really is just so perfect for these type of apps where, sure,

00:45:55   you have complaints about what Apple allows and doesn't allow, and you'll make them clear.

00:46:01   It's not like you're hiding them. But rather than just bemoan the fact that you can't make entirely

00:46:07   custom watch faces and just say, "This stinks. Apple is being obstinate. I'm going to go pout

00:46:14   for another year and hope that WatchOS 8 lets me make watch faces," you just say, "Well,

00:46:21   what are the rules? How does the whole thing work? And then once I understand the rules,

00:46:27   what can I do?" Yeah. And I think the reality is I've been making apps for Apple's platforms for

00:46:37   a long time, and I've seen the outcome of having that approach where you just get grumpy about what

00:46:43   you can't do rather than try and really see what you can do and how can you be creative with the

00:46:50   tools that we do have. And there's so much more of an opportunity in that than if it's so easy

00:46:56   to get stuck and say, "I really want to be able to show the time in a complication," but Apple

00:47:03   doesn't let you do that. They only let you update your complication once every 15 minutes. I can't

00:47:08   do that. And it's like, "Well, they have this timeline thing, which I don't think really is

00:47:10   intended to be updated every minute, but if I use that and push the limits a little bit, and

00:47:16   I've definitely run into issues in this, but conceptually, if you just say, "Well, what is

00:47:20   the best I can do?" It's like, "And I can't have seconds on my clock, but I can have minutes." And

00:47:24   if that's good enough, then that's great. And I think that's so often in this game, the reality is

00:47:32   Apple will change over time. I used to think that WatchKit was all we were ever going to get,

00:47:39   and to some degree, that I thought, "I'm just going to have to make the best of it." And I've

00:47:42   made all manner of kind of awful WatchKit apps because that was the best I could do.

00:47:46   And then when SwiftUI came along and suddenly I can make an actual Watch app, it's like, "Wow,

00:47:51   this is amazing." And I have all this head start because I didn't get just stuck in the mud about

00:47:57   the fact that I couldn't do animation before. I love the idea. All computer systems are sort of

00:48:09   like this, and maybe all real games are too, but I used to, back in the day, I used to play a lot of

00:48:19   simulated sports games on the old Sega Genesis. I love John Madden football and NHL hockey.

00:48:25   And the thing about both of those games, and I don't know to what degree it's still true,

00:48:30   because it's like when I see screenshots of Madden today, it just looks... The graphics are stunning,

00:48:37   but it looks like a televised football game. Whereas back in the mid to late 90s, they were,

00:48:43   you know, they look like Sega Genesis games. They were clearly designed to sort of,

00:48:49   as you'd first start playing it, they would kind of look like real games. And the way you would

00:48:56   play the football game was the way that teams in the real NFL would play football. But when you got

00:49:02   good at the game, you realized which plays worked and what they did, and you'd end up playing a game.

00:49:11   If two good players played each other, it was exciting, and it was a terrific sport. But what

00:49:19   you'd watch was nothing like real football and nothing like real hockey. The hockey game was

00:49:24   actually much more like basketball because scoring was way higher. And you'd play these, you know,

00:49:30   you'd play like two-minute periods or something. And just to try to help make it seem more

00:49:36   realistic, like seconds in the hockey game were like maybe half a second. You know, the clock

00:49:43   went way faster. Just to try to help keep it realistic, quote unquote realistic. But it looked

00:49:48   nothing like... But it was a terrific game. It's everything in computers and like sort of...

00:49:52   What you're doing to me is sort of figuring that out, right? It's like you're making things with,

00:49:58   certainly with WatchSmith in particular, that maybe they're not designed for, but they are...

00:50:04   It's all within the rules. You're not using undocumented APIs. It's not like the way that

00:50:11   you could sometimes just get in a groove in the hockey game and score. Then they'd drop the

00:50:19   Puckett Center ice. And if you had the timing just right, you could get it again, make a certain move,

00:50:25   and it was like unbeatable. And you could sort of get in a groove. And you weren't cheating. You

00:50:30   didn't hack your cartridge. You just sort of figured out this is within the rules of the game

00:50:36   and the system. Here's how it works. And now you could have a date complication that moves out of

00:50:41   the way when the hour hand or the minute hand reaches 15 minutes after the hour.

00:50:47   Yeah, exactly. It's very much... I mean, this is the part of my job that I enjoy the most.

00:50:53   It's finding those unexpected ways around that... You call them kind of like their hacks,

00:51:01   but they're not hacks in the way that I'm actually hacking the operating system.

00:51:05   That I'm finding these weird workarounds that work and are consistent and are performant and

00:51:11   all the things that you need them to be, but are definitely not what the feature was intended for.

00:51:16   That's a pattern that I've had to use many times, because that's the only way to actually

00:51:24   make things that are really interesting and new, that are different than what other people are

00:51:31   doing. Because otherwise, it's easy to do the obvious thing that's the common case that Apple

00:51:36   has designed the API for, but it's much more fun to make the thing that is not at all what they

00:51:41   intended for. And they're surprised when they always have that line at the end of a thing,

00:51:44   "We can't wait to see what you do with it." And you're like, "I don't think they meant this."

00:51:47   But I think in some ways, maybe they are. You know what I mean?

00:51:53   You know, like in the way that they definitely wouldn't be if what you shipped or somebody

00:52:01   shipped was, "Well, I found a jailbreak and I've used it to open up the latest version of iOS,

00:52:07   and now I have my own jailbreak app store." No, people at Apple probably overall are not excited

00:52:12   to see what you were able to do with it. But I think that by staying within the system, but

00:52:19   finding possibilities, it's not an exploit, right? It's unforeseen possibilities within the rules.

00:52:28   And again, if the rules were all designed with things like performance in mind, and you're not

00:52:35   doing anything that's unperformant or, "Well, he's doing this. He shouldn't be able to." If we didn't

00:52:41   envision this and it's sucking the battery down, they're going to change the rules, right?

00:52:47   I think they are kind of excited to see stuff like that.

00:52:49   I'm sure they are. There are certain people within Apple who I think probably think it's

00:52:54   really cool. And there are people who are like, "What? That was not within the design spec that

00:52:58   we had when we had the meeting six months ago about what people were going to be able to do.

00:53:02   This was not what they were supposed to be able to do." I think that's more what I mean.

00:53:07   And I think the feedback I've gotten over the years from doing this kind of stuff from Apple

00:53:12   is that they generally do like it because I think it also is an escape valve for features they don't

00:53:18   want to make mainstream, but they can point to things that are on these edges that take a lot

00:53:27   more work. It's not easy to do. This is the hard way to do it. They don't want to make custom watch

00:53:33   faces, but if you can find ways to make complications really capable, then you're

00:53:38   kind of releasing a little bit of that pressure. Because if they're pulling back a little bit on,

00:53:43   actually, maybe we don't need custom watch faces. Maybe we can just make complications

00:53:47   a little bit better. Yeah. It gets to a very old bit of advice, which is that when you're reporting

00:53:56   a bug or a feature request to a developer as a user, you can propose an idea.

00:54:06   And it's not that it's unwelcome, but that a lot of the times, even if you're going to propose

00:54:11   a solution, start by describing your problem in as much detail first. And it's that description

00:54:20   of the problem that's often more interesting to the developer than the proposed solution.

00:54:30   And again, that might be it. Where it's like, "Well, wait, I've got this, I don't know, what's

00:54:36   the bike riding app, Stadia?" Strava?

00:54:39   Strava. I don't even know if Strava has complications. I assume probably they do.

00:54:44   Probably.

00:54:45   Or whatever it is. But maybe your idea is, "I wish Strava could have their own watch face,

00:54:54   because I would like something when I'm riding my bike, I'd like this information from Strava there."

00:55:02   But say the problem first, and maybe there's a better answer where they could integrate it into

00:55:07   the workout app that is shown when you're on your bike doing a workout. Or maybe the answer is they

00:55:11   could do it with a complication and put it there. And that sort of description definitely, I think,

00:55:21   is right up the alley of the solutions you've had with Widgetsmith and WatchSmith. Where it's like,

00:55:27   "Oh, I would just like to have a custom thing in the corner."

00:55:30   And what I love in watchOS 7 is that now you can have multiple complications from the same app,

00:55:37   which is a huge boon for me and what I'm doing here. Now I can take over a huge proportion of

00:55:47   the watch face. And it's not a custom watch face, but other than the time, everything on the watch

00:55:53   face can be something I render. And that's a huge opportunity and a huge canvas for me. I just have

00:56:00   to let go of the fact that I have to use their hands for the time or their numerals. But other

00:56:05   than that, everything else I can do. Yeah, that was a weird limitation. And you can sort of see

00:56:12   it with some of Apple's complications, like Breathe, which to me, if you love the Breathe

00:56:22   thing, more power to you. But it's like, I don't know. I've been using the new S6. I'm just going

00:56:31   to say S6 review unit watch since I got it a couple of weeks ago. And I set it up as new,

00:56:38   and I've been running it as default. And it's like the Breathe things have once an hour,

00:56:44   I don't even know how often they come up. But by default, it's like all of a sudden I'm working,

00:56:48   and I get a tap, and I look at my wrist and go, "Oh, what's that?" And it's like, "Hey,

00:56:51   why don't you take a break and breathe for a minute?" And it's like, "F you." That is my,

00:56:57   I want like a big F you button every time that comes up until I broke down. And I was like,

00:57:03   "All right, enough of my running with all these defaults. I'm turning this off."

00:57:06   But the complication, you could see why you would, even if you want to have the Breathe complication

00:57:13   on your watch face, you'd only want one. There's no reason to put it in two corners. But even with

00:57:18   some of Apple's, I'm surprised they didn't foresee the need, like weather, right? How did they get

00:57:25   around that before? So Apple has, their apps have been able to export multiple complications

00:57:31   since the beginning. That's always been, so that when primarily it was shown through things like

00:57:35   weather, where you would be able to show the UV index and the temperature in two corners. And that

00:57:41   was always the way that only Apple's apps could do that. I see. They had the ability to export

00:57:48   multiple complications, but for a third-party app, it was always just one per type. And so we could

00:57:54   show multiple complications on a watch face if it happened to support multiple types. So if in the

00:57:59   modular one, you have the big rectangle and you have the small circle, and I could take one of

00:58:03   each, but I couldn't take two circles or anything like that before watchOS 6. Ah, that makes sense.

00:58:11   Yeah. And I guess that they weren't thinking, and again, literally, WatchSmith is, because it's as,

00:58:18   it's not about a specific type of complication. It's all sorts of complications, everything from

00:58:26   weather to exercise information, et cetera. Astronomy, tides, I have all manner of

00:58:33   anything I could think of. It's very much a kitchen sink. Right. So it's very natural that

00:58:39   somebody who's into that would want to have more than one of the same size on their watch face,

00:58:44   because it's not duplicating information at all, because it's sort of a, it's an inverse of

00:58:51   the typical relationship where, you know, I was going to say weather, but that's a bad example.

00:59:01   But, you know. Sure. But I think your example of something like Strava or something where

00:59:04   maybe you're going to show the number of miles you've biked this week or whatever that might be,

00:59:10   like, there's a limit to the number of places that you're going to want to devote to your biking

00:59:15   activities. But for the other things where you have, yeah, it's like when I have so many different

00:59:20   types of data, like I want to have the moon phase, because I think it looks pretty, and I want to have

00:59:26   the sunset time, and I want to have the temperature, and I want to have the date.

00:59:30   And I want to have all those on the screen at the same time, because sure, why not? And so it

00:59:36   definitely lends itself to having multiple instances of those things. And in theory,

00:59:42   before I could have made dozens of different apps for everything, but that just logistically would

00:59:49   not have been feasible. And I'm so glad I didn't ever have to go down that road.

00:59:55   With the fonts thing, I know that when I feel like the idea that you're going to customize the,

01:00:02   you have quite a bit of fonts you can choose from for the WidgetSmith widgets.

01:00:08   Yeah.

01:00:09   I'm reminded of and I know I asked you this before the show, is do your roots on the Apple platforms

01:00:16   go back to the classic Mac OS era? And they don't. And Michael Simmons and I were did enough

01:00:22   reminiscing about it on the last episode of this show. But one of the simplest things that you

01:00:27   could do on the old classic Mac OS is we had a there was a clock up in the upper right corner.

01:00:31   And I actually forget whether it was from Apple and it was in the system, or if it was a third

01:00:37   party thing or not, but it was or if it started as like a lot of things did started as a third

01:00:42   party thing, and then Apple put it there. But it was much like the Mac OS 10 clock where it was

01:00:49   upper right corner in the menu bar, and you'd have options for you know, do you want the,

01:00:54   you know, all the stuff you'd all the various options you want ampm? Do you want 24 hour time?

01:01:00   Do you want the colon to blink? You know, everybody, you know, it's the same sort of

01:01:06   things, right? You're very familiar with all of these options. And some people, some people

01:01:10   definitely want the colon to blink and other people if the colon blinks, they will go insane.

01:01:16   I just literally one of the smallest punctuation characters other than a single dot in the entire

01:01:23   keyboard. And if it's up there blinking, it'll drive them insane. I personally I'm not a blinking

01:01:29   colon person, but it doesn't drive me crazy. But I know that there are people who are irate. But one

01:01:35   of the other things so so far, so good. You think okay, clock in the upper right corner. What's new?

01:01:40   The other thing was that I think it was the third party thing, but it was very common. But you could

01:01:45   also pick what font the clock the digital clock in the corner was. Sure. And it always seemed crazy to

01:01:54   me. And this, you know, what did I pick? I picked the system font, right? If so, like in the Chicago

01:02:00   12 era, it was Chicago 12. And then when they changed it to charcoal, I changed it to charcoal,

01:02:06   and it just was the exact size and shape of the system font. And if it wasn't going to be the

01:02:11   system font, and sometimes when I'd play with it, it would be like a smaller version of the system

01:02:17   font, like the system font in that era, Chicago 12. That was the menu bar font. And that's the

01:02:25   famous, you know, the font that we all had on the iPods when the iPods first came out. Like the

01:02:30   Finder for file names would use Geneva, which was their sort of bitmap version of Helvetica. Well,

01:02:38   that was sort of a system font, too. It wasn't the same font. It was Geneva versus Chicago,

01:02:42   but it was what the system used for lists of things. So you might set your clock to be Geneva

01:02:48   nine point font. And that still looked like it was part of the system, right? It's like, instead of

01:02:54   and I thought, you know, I remember when I was playing around with it, like, Oh, that's kind of

01:02:57   clever, because it's not really a menu. It's just a clock. So maybe it should be Geneva nine. And it

01:03:01   just gets you as a as an avid user into that thinking of like junior level UI designer,

01:03:08   which is fun and really is like a great gateway into thinking like a software designer.

01:03:15   Which again, I think is where this tremendous enthusiasm from widgets is what that's tapping

01:03:24   into. But what always struck me and I saw a lot of people's clocks over the years, because I spent a

01:03:29   lot of time as like the resident, hey, my Mac isn't working right. Get Gruber over here to fix

01:03:35   it type. And then at some point, you know, in the late 90s was even doing like freelance consulting

01:03:40   where people would call me in and I would actually make money doing it and you get to see a lot of

01:03:45   people's what extent you know, a lot of desktops. And I was always interested in it. Like, what do

01:03:51   people have? People would pick the craziest fonts for the clock. It was all over the place. Again,

01:03:58   and it wasn't like, oh, it's like everybody likes like zap chancery, right? Like certain other fonts

01:04:05   over this. I forget if that was one of the fonts in the but you know, a font like that, like a

01:04:09   calligraphy font. Yeah, you couldn't you whatever, however many fonts people had the you no idea.

01:04:16   There was no accounting for the taste in clock font. People love to pick fonts like that. The

01:04:22   rest of the system was all the regular system font. It wasn't like they installed an extension

01:04:26   that would change their system font for everything, including the menu bar and dialogues and

01:04:32   everything. Nope, just the clock, but maybe they wanted it to be times italic. Yeah, you know,

01:04:39   and I was always fascinated by it. And so as I see people's enthusiasm for picking custom fonts

01:04:47   for their widgets that have, you know, not like, oh, I was I know, I think your software update

01:04:55   added that the first update to widgets may have added a few more fonts like Dan. What are the new

01:05:02   ones? Dan is one of the new ones I've done I have. Oh, gosh, I've been adding like, I mean, this is

01:05:08   where it gets a little like comedic in some ways for the number of different fonts. So like right

01:05:12   now you can have regular San Francisco, San Francisco rounded New York, San Francisco mono

01:05:17   Futura. And I have my silly ones noteworthy marker felt chalk duster typewriter. And then I have

01:05:22   palatino gill sands copper plate and din. Right. That's a good variety. And those are all built in

01:05:29   fonts, right? That's yes. And I say this as a question, but I happen to know that they're all

01:05:34   built into the system. Yeah. But let's just say din for example, though, din is a font that is

01:05:43   as San Francisco has evolved, it's gotten a little bit more of its own character.

01:05:51   But I know I happen to know that internal to Apple as Apple was working on the font,

01:05:56   we now know as San Francisco, before it officially had a name, it was sort of like a skunkworks

01:06:02   project for years, because when it first we first saw it when the original Apple Watch debuted,

01:06:07   and it was the it's always been the system font on Apple Watch. And it was the first time we saw it.

01:06:14   And I remember being in the audience at the event. And it's, you know, of course, that's the sort of

01:06:22   thing I think of is they announced is what it was the weird event that they only had, they only had

01:06:27   one event there at the college in Cupertino, the dance auditorium. And they start showing

01:06:34   screenshots of this new product Apple Watch. And I'm like looking at it. And I thought that my

01:06:40   first thought was, oh, wow, they're using din. Yeah. And that's what I thought the font was.

01:06:46   And I was like, oh, it looks din looks great on a watch. This is great. And then they'd show more

01:06:51   screenshots. And I saw at least a couple of characters that I knew weren't din. But I was

01:06:56   stymied. I was like, I have no idea what this font is. And it admits all of the wow, there's

01:07:04   10,000 questions about this product. It's not even shipping for six months. But there's a hands on

01:07:09   area across the street. And we can go and holy cow, I'm across the hands on table area from

01:07:14   Gwen Stefani. Wow, this is bizarre. That's true story. I'm like, they're trying on Apple Watch as

01:07:20   I look up at who's trying one on across the table from me. It's Gwen Stefani. I'm like,

01:07:25   this is bizarre. That's not normal. This is not normal for Apple events. It's gotten a little

01:07:32   more normal in the years since as it's been, they've gotten a little more celebrity late. And

01:07:35   one time, I was with the host with someone and we're outside. And you a sports fan?

01:07:42   I would say I'm a passing sport. Well, I enjoy watching sports, but I'm not like devoted to any

01:07:49   particular sports me and Clayton Morris, who used to be at Fox News, we were outside, just getting

01:07:55   fresh air outside the Bill James Civic Auditorium. You know, it wasn't like five minutes before

01:08:02   start. It was like, I don't know, 20-25 minutes before the event was supposed to start. But we had

01:08:06   seats already and we just went out to get fresh air. And Barry Bonds and Joe Montana come in

01:08:14   together right past us. What is quite a combination of characters? It's right. It's

01:08:22   unbelievable. It's like, what, what do we do? And nothing. We just, you know, just kind of give them

01:08:29   the look like, hey, we know who you guys are, maybe the greatest baseball player of our lifetimes

01:08:36   and the greatest football player of our lifetimes. Just walking by together like, you know, it's

01:08:42   cool. There they go. Right in there to find out about new iPhones. Anyway, all these questions

01:08:47   about Apple Watch, I have the biggest one, perhaps the biggest was what is this font? And I figured

01:08:52   out, you know, by looking at the actual hand on ones, it was like, God, this is something new.

01:08:58   But internally to Apple, it was some designers before they knew the name called it DINVetica,

01:09:04   because it was sort of at a basic level, not that it's a ripoff, it's a very original font that's

01:09:10   serving Apple very well and evolving in very good ways. But if you need to just a starting point to

01:09:17   understand San Francisco, it's sort of half DIN, half Healthetica. So offering DIN as an option

01:09:24   fits in. But offering fonts like New York, which is sort of a Times sort of serif font, you know,

01:09:32   and what are the handwritten ones, Markerfelt? It's like Markerfelt and Noteworthy.

01:09:39   Noteworthy. Right.

01:09:40   Yeah. Like, they are definitely not. They do, they have, they, while you could say that, like,

01:09:47   San Francisco is, you know, DIN and Healthetica send a mission together, like Markerfelt and

01:09:51   Noteworthy are, they have, they have, they share no common ancestors in the font tree.

01:09:57   But this is, so offering those as options. So those handwritten silly fonts, I don't know how

01:10:06   you would describe friendly, whatever adjectives, not my cup of tea personally, but I also totally

01:10:16   understand what it's like to have a strong personal preference for fonts. And if that's what

01:10:23   pleases you, more power to you, right? Like, so I've gotten tweets from people like, this must be

01:10:32   driving you nuts seeing people, you know, use crazy ugly fonts to make their widgets. And no, it

01:10:37   doesn't at all. Right? Like, what drove me nuts for years would be like, when the built-in notes app

01:10:44   only offered, I think it was noteworthy, maybe it was Markerfelt, maybe they changed it

01:10:50   over the years. I forget. I think it might've been Markerfelt at first, but yeah, I think it was

01:10:55   Markerfelt to start with. And then they offered an option, like not to use it. And you could use

01:10:59   Healthetica instead. And it was like a prototypical or hypothetical glass of ice water in hell.

01:11:07   But that was because everybody had to use it, right? If the notes app is you get Markerfelt,

01:11:13   whether you like it or not, then the fact that I don't like Markerfelt gives me strong feelings

01:11:18   and makes me write very angry posts on my website. But the fact that somebody is allowed to set it as

01:11:24   an option doesn't bother me at all. I say more power to you. I hope, you know, I could see why

01:11:30   maybe you enjoy that. Yeah. And I think it's what you were saying about the clock, right? It's that

01:11:34   sense of like, you can't even predict it. Like, it's not something that, oh, you see someone,

01:11:39   there's like button-down businessman, you know, oh, he's going to want like a very button-down

01:11:43   business font, or he's going to want New York because that reminds him of the New York Times.

01:11:47   I don't know. Like, you can't guess. It's just as likely he's running around with Markerfelt.

01:11:52   And that's what he thinks is fun. And it's like, he could be even like, sometimes you get the

01:11:57   impression, it's like, I'm using this font ironically. I think it's ugly. And I like that

01:12:01   it's ugly. I like that it's silly. It's like, I'm not trying to make this gorgeous. I'm trying to

01:12:06   make this funny. And it's like, it's a little joke that I'm playing on myself every time I pick up my

01:12:12   phone. And, you know, it would be like, if I made Ariel one of the options, and you set that as your

01:12:19   widget font, right? You'd be playing a little joke on yourself every time you picked up your phone.

01:12:24   And maybe it would make you laugh for a while, and eventually you'd go crazy and you'd change it. But

01:12:27   like, if that made you, if they put a smile on your face even once, like, sure, why not?

01:12:32   Ariel's maybe the exception. See, now maybe you've pushed my button.

01:12:37   Well, that was, though I will say that was one of the, so I don't like April Fools. Like,

01:12:43   I think they're completely silly and pointless. The only April Fool I've ever thought of that

01:12:47   I would ever actually do as a developer is that I would add Ariel as an option,

01:12:53   but only if you select it on April 1st. Right.

01:12:55   Like, that is the one, and it only works for that one day. But on one day a year,

01:13:00   you could use Ariel, and it would only be for, only be on April 1st.

01:13:04   Somebody, so here's my necessary digression on Ariel and why I would make an exception.

01:13:12   Ariel is a ripoff of Helvetica. And that's, this is a fact, not an opinion. And it was,

01:13:20   Helvetica has been a very famous typeface since before computers. It was a sensation from when

01:13:25   it debuted in 1968, I believe. And when true type fonts became a thing on computers, Apple licensed

01:13:38   the real Helvetica, and it became the default document font. It's like in TextEdit and going

01:13:45   back to the classic Mac OS with teach text. And every Mac word processor I've ever used,

01:13:51   Mac write, even Microsoft Word. If you try a new word processor and type command N,

01:13:58   what is the font in the new window by default? It's Helvetica 12. Microsoft decided not to pay

01:14:06   to license Helvetica and instead commissioned a ripoff. That's Ariel. They decided it would

01:14:13   be cheaper to do their own. And so the only ways that, and so it's a ripoff in that it

01:14:19   has the same metrics as Helvetica. And to most people's eyes, it looks the same and it's supposed

01:14:25   to look largely the same. And then they just changed a few letters to not try to make it a

01:14:33   copy copy, but just sort of a, well, it's inspired by copy. The capital R in Ariel looks really

01:14:42   stupid and the capital C looks really bad. And the lowercase T has a pointy top for unbelievable,

01:14:50   you know, it looks like a toothpick at the top and a typeface where none of the other characters do

01:14:54   this. My opinion, and I believe this, I'll go to my grave, is that anybody who says they like Ariel,

01:15:02   what they mean is they like Helvetica and they don't see the difference. And if anybody ever

01:15:06   says, I would like you to do this, make this for me and use Ariel 12. You as a designer are

01:15:13   committing a crime if you don't just set it in Helvetica 12 and assume that they're getting what

01:15:19   they wanted. For example, I just read a story yesterday that is in his debate prep that Joe

01:15:25   Biden, somebody sent this to me, I should link to it from Daring Fireball, that Joe Biden,

01:15:30   his favorite typeface is Ariel 14. And they're like, oh, who's group we're going to vote for now?

01:15:36   But my, my, my take on that is that I could see why Joe Biden likes that as typeface because it's

01:15:42   just plain, right? It's a very plain font. And so when he says I would like my, my materials set in

01:15:48   Ariel 14, whoever he says that to should just set it all in Helvetica 14. And Joe Biden will be even

01:15:55   better off than he was before and will be happy as a clam. Yep. All right. All right. Let me take a

01:16:01   break here and thank our next sponsor. And it's Mint Mobile. Oh man. Are you still using one of

01:16:07   the big wireless providers? Have you asked yourself what you're paying for and exactly what you're

01:16:12   getting for the money you're paying between their expensive retail stores, inflated prices and hidden

01:16:17   fees you're being taken advantage of because they know you'll pay. Enter Mint Mobile. Mint Mobile

01:16:22   provides the same premium network coverage you're used to, but at a true fraction of the cost

01:16:28   because everything is online. Mint Mobile saves on retail locations and overhead and passes those

01:16:33   savings directly to you. They make it easy to cut your wireless bill down to just 15 bucks a month.

01:16:39   Every plan comes with unlimited nationwide talk and text with Mint Mobile. Stop paying for

01:16:44   unlimited data that you're never going to use. Choose between plans with three, eight or 12

01:16:49   gigabytes of 4G LTE data. Use your own phone with any Mint Mobile plan and keep your same phone

01:16:55   number along with all of your existing contacts, et cetera. Ditch your old wireless bill and start

01:16:59   saving with Mint Mobile. Here's what to do. Get a new wireless plan for just 15 bucks a month.

01:17:04   Get the plan shipped to your door for free. Go to mintmobile.com/talkshow. That's

01:17:10   mintmobile.com/talkshow. Cut your bill to just 15 bucks a month. All right. Let's,

01:17:16   before we move on, let's talk about all of the various things that WidgetSmith offers right now.

01:17:24   So what are the features that, what things can you put in a WidgetSmith widget?

01:17:28   Sure. So it's like sort of the core conceit of the app is that I wanted to just let you

01:17:36   make as many widgets as you want and have them do whatever you want. And so you can add widgets of

01:17:43   any particular size of the small, medium, and large that you want. And then you can schedule

01:17:48   those widgets to appear or just have a default and they'll just always be displayed. But you could,

01:17:52   but if you want, you could say, "I want my widgets to, during the workday, show one thing or during

01:17:57   the evening, show something else." And it's like the types of widgets that I have in it are, you

01:18:03   have things that are time-based, so like the time clock, the fuzzy time, that kind of thing, or the

01:18:10   date or a calendar, a bunch of stuff with photos. You can show a photo with text layered on top of

01:18:16   it, your battery, things that are coming up on your calendar, things that are in your reminders

01:18:20   list, weather, tides, and astronomy data, so like the moon phase or the sunrise and sunset time.

01:18:28   And so those are all the kind of, essentially, my goal is to try and capture

01:18:33   basically all the data sources that exist in iOS as much as I could, so in terms of tapping into

01:18:41   the system calendar and the system reminders list and just trying to be as comprehensive as I can.

01:18:47   And I mean, the reality is, this is the list of things that I was able to get ready in time,

01:18:54   rather than necessarily the full list of things that I could have imagined or dreamt up. I still

01:19:00   have a whole bunch of stuff, but it's like to start with, and the things that I think most people use

01:19:03   it for is to show those kind of basic data and even just, probably the most popular widget is

01:19:09   just showing the date and showing it in an interesting way, because for each of those types

01:19:13   of widgets, you can choose the font, the color, if there's a border around it, the time, the things

01:19:19   like we were talking about earlier, like the time format, you know, do you want to have 24-hour time,

01:19:24   do you want to have the system default time, do you want to have a full PM written out, or just

01:19:28   one that's a single A or a P? Basically, my goal is that you can configure basically everything

01:19:35   about it. Do you want the text on the bottom, do you want the text on the top? Whatever it might be,

01:19:38   that's kind of the core conceit of the app and the features it has.

01:19:43   I don't know why I was in college and at the student newspaper and the editor a few years

01:19:49   ahead of me, Scott Smith, turned me on to just using A and P instead of AM PM, and his argument

01:20:01   was, well, they both have an M, so you're just wasting, you're wasting space. I was like, huh,

01:20:06   never thought of that. And then ever since now for 25 years and counting, I get frustrated

01:20:13   when software doesn't let you do it. And I understand why, because it is standard just

01:20:18   to have the AM and the PM. But the fact that you, you know, yeah, I'll handle that case,

01:20:26   you know, it's not that rare, right? It's not like there's two of us out there who do it. But

01:20:31   but in it, so those are the data sources. We've talked about fonts, you've added a couple already,

01:20:40   even since launching. And of course, color. Yeah. Oh boy, colors.

01:20:46   You gotta love that my very first app update after like it kind of like, well, it's like in the way

01:20:55   the story went crazy is like the place that Widget Smith had its like 15 minutes of fame moment was

01:21:02   on TikTok, where it got picked up by kind of the impression I get is it's very much like the fashion

01:21:08   beauty vlogger kind of community. It seems to be kind of the place where it

01:21:12   hit in a way which is definitely an audience and a community that I have no experience in whatsoever.

01:21:19   But that's apparently where it got picked up. And as you may imagine, my very first app update

01:21:25   added a collection of pastel colors as prebuilt options to the application, where it's like,

01:21:31   all of a sudden now you have this beautiful pastel orange and yellow and pink and blue that were not

01:21:37   the colors that I was envisioning when I was making the app, but they're in there now.

01:21:41   So how did you get the feedback for that? Was it because people wrote to you or because you were

01:21:47   like watching their TikToks where they said, "This is great, but I wish it had..."?

01:21:52   Well, the story for that is actually even more of a like a roundabout thing where so on the Friday

01:22:00   that it ended up getting like having its explosive moment, like early in the day, so when I launched

01:22:05   an app, it always will have kind of like a contact me button, where it'll be like, "Tap here and send

01:22:11   me an email," basically. And I collect customer support and get feedback that way. And Widget

01:22:17   Smith was no different. And about just after lunch on that Friday, I thought that all of a sudden my

01:22:24   app had gotten like somehow that email address, that support address, had gotten sucked into some

01:22:28   kind of spam bot or something. Because the usual first week of support I get are from people in the

01:22:37   Apple tech community, and many of them know me by name and are like, they're writing a letter with

01:22:41   feedback or comments or bug reports, whatever it might be. They're writing it to me. They'll be

01:22:45   like, "Hey, underscore. Congrats on the app. I ran into this issue." And it's like, to me.

01:22:50   And all of a sudden around midday, I started getting the opposite of that, which was these

01:22:54   very short, poorly written, slightly incoherent things that I was getting from addresses that

01:23:02   didn't look like the normal kind of community and audience that I was getting. And I was like,

01:23:05   "Oh, gosh. Somehow this address has gotten kind of pulled into something that's not what I

01:23:10   am using. Somehow it's gotten to some spam bot that's just sitting there and thinks it's funny

01:23:15   to just keep sending me these kind of emails." And not that it's like disparage those, but it's

01:23:20   a very different kind of email than I'm used to. And that just kept building over and over throughout

01:23:26   that day. And it's like, it just becomes more and more problematic in the sense of, "Oh, what do I

01:23:30   do with these?" And at some point later in that afternoon, someone I think on Twitter just sent

01:23:35   me a link to one of the videos on TikTok that I think was the one that had the biggest views at

01:23:42   this point. And at that point, it had several million views at that point. And it all of a

01:23:48   sudden was like, "Oh, this is starting to make sense as to why my support queue is now just

01:23:54   filled with emoji everywhere, and it is a totally different audience than I'm used to." And it isn't

01:24:02   necessarily that they were asking for pastels. It was more I interpreted the audience and the

01:24:06   way that they were using it to be that they would appreciate if there was an increase in the pastel

01:24:12   palette within the application. And so I did that on my own prerogative, and it hit very well.

01:24:18   That feedback was very well received. And then immediately, I think the second or third update

01:24:24   was I built a custom color picker so that you could really dial it into exactly whatever it is

01:24:31   the color you want, because it became very clear that my pre-built basics were like, "Would you like

01:24:37   it in red or green or blue?" This isn't going to cut it. We're going to need to really go down that

01:24:42   road. But I just discovered it in a weird—someone was like, "Hey, you seem like you're doing well

01:24:48   on TikTok." And I'm like, "I know what TikTok is. It's not like I have no concept of it, but I don't

01:24:53   have an account. I've never used it." And so out of nowhere, essentially, this was happening in this

01:25:01   community that I'm not really a part of or have a connection to. And it wasn't really until it

01:25:06   spilled over into Twitter, which is a community that I do typically have experience in, that I

01:25:14   actually was like, "Oh, this is what's happening." And that's where all of a sudden my shift towards

01:25:21   cuter fonts and more pastel colors became something that seemed like an obvious move.

01:25:27   Yeah, and that's what I was talking about, too, where a good developer

01:25:33   doesn't just take requests. It's you listen to the reason, right? And so even if you sussed out,

01:25:43   "Oh, I can suss out from this that a variety of pastels would go over fantastic with this crowd,"

01:25:52   it's not because they said, "I would like you to add pastels." You have to just sort of read between

01:25:59   the lines. And it's like maybe in the same way that a good wedding DJ doesn't just take the

01:26:06   request for specific songs, but is like, "Oh, these people are ready to dance." You think more like

01:26:16   that, and you're steering their desires that way. Was the custom picker hard? I don't even know. Is

01:26:23   that a standard thing in SwiftUI? It's not a standard thing. It's completely—well,

01:26:27   there is a standard one in SwiftUI, but I couldn't use it because of the way that my editor is

01:26:32   structured. It just wouldn't have worked. It would be this kind of weird odd man out in my picker,

01:26:38   so I just built a custom one. It's like, "Is it hard? I don't know." I've been doing this a long

01:26:42   time. It wasn't straightforward, but it was not something that was insurmountable. The nice thing

01:26:50   with color, at least in this, it's a constrained problem set. For my purposes, there's only so many

01:26:58   colors that I need to display, and I can kind of relatively easily come up with a way to just drag

01:27:04   your finger along on the picker. And that's a fairly intuitive thing, rather than going down

01:27:09   the road of RGB or something, which is not a very user-friendly thing of they don't know how much

01:27:15   red they want in their color. They just want to see it on the screen and drag their finger over

01:27:19   towards it and be like, "Oh, there it is. I want this one." I find talking to my son,

01:27:24   and he's nerdier than most. He's not really into programming at all yet, maybe. He's actually taking

01:27:33   computer science for the first time now in 11th grade. What do you think the language is?

01:27:38   Java still? No, better. Great. Oh, Python? Yeah, Python.

01:27:43   Python. I thought it was... My hope was, "Oh, I hope it's Python." I don't even know Python,

01:27:49   but I was hoping it was Python because I don't really know it, but I know enough about it to

01:27:53   root for it, and I know it's a good language. And I thought, "Well, if not Python, hopefully

01:27:58   JavaScript. Please not Java. Please not Java." It was Python. And his textbook is the O'Reilly

01:28:05   Python book. And it's like, "Oh, well, that's a good book." But even he knows RGB. It's like a

01:28:13   gamer thing because you learn the RGB color so you can program your keyboard to light up the right

01:28:18   colors. But it actually is surprising talking to him about it that there's a surprising number of

01:28:24   people who all of a sudden, they know hex values for RGB colors. And it's like, "Oh, I'm surprised

01:28:33   that you know that. Okay, sure." But it's not a particularly humane way to describe color.

01:28:40   No, no. That's definitely not something that it is a tool of trade, not something that a normal

01:28:46   person should be expected to know the exact hex value of the color that they want.

01:28:51   Yeah, 4A, 525A.

01:28:53   Yeah.

01:28:54   So I'm trying to think what else there's left to talk about here. So all right, let's talk

01:29:04   about the monetization.

01:29:06   Sure.

01:29:07   So this, it seems like... Like you said earlier that you kind of thought maybe WidgetSmith would

01:29:19   be less popular than WatchSmith. They share a monetization strategy and in fact, pool together.

01:29:27   Sure.

01:29:28   So the basic idea, they're free apps and certain of the features are unlocked through a... What do

01:29:35   you call it? A pro account, a premium account?

01:29:37   Yeah, I call it WidgetSmith Premium. It's like a membership or a subscription to the app.

01:29:42   And it is, I think, $2 a month or $20 a year. And among those are weather and the tides,

01:29:54   which I guess... Is that the same data source or is it different?

01:29:57   It's two separate data sources. The tide data is coming from a tide data source,

01:30:03   and then the weather is a separate thing.

01:30:05   Yeah. And that's it. It's very simple. There's no, "Oh, you pay $1 to get colors and you pay

01:30:16   $3 to get weather and that renews because it's subscription." It's just one thing,

01:30:23   it's a membership, and then the only choice is do you want to pay monthly or annually and save 20%.

01:30:30   I love that you're very precise and say that you save 19%.

01:30:34   Yeah. Well, I gotta say, just as a brief digression on that, it's like that screen

01:30:40   is the one that I feel like I agonized over more. I try and be thoughtful about my design in a lot

01:30:45   of things, but that's the screen that I think I agonized over the most because I don't want to be...

01:30:51   It's very easy to be misleading or to be manipulative or to be...

01:30:57   Having people sign up for things that ultimately they're going to regret.

01:31:02   And there's countless scams and things in the App Store that are that way. And it's like,

01:31:06   my goal and my design is the opposite. And maybe some people might say it's a bad design in that

01:31:14   way, but it's like, my goal is it is very clear what you're signing up for, it is very clear

01:31:19   what it costs, it is clear the difference between the monthly and the yearly, where it's like,

01:31:27   even with the monthly, I show you the monthly price times 12, and I say it's going to cost this

01:31:33   much a year. And so it's very clear that this is what's going to happen. Because the last thing I

01:31:38   want is to have everybody who hits that button and starts subscribing to the app, they know exactly

01:31:43   what they're in for, they're not going to be surprised, they're not going to be upset. That's

01:31:48   the thing that I ultimately want there, because I'd rather have fewer customers that were happier

01:31:52   than somehow end up with all these customers who are like, "Why am I being charged for your app?

01:31:57   This is not what I want." And so my goal with that was definitely very much to just be

01:32:01   as straightforward and clear as I can. It's like, rather than saying you're saving 20%,

01:32:06   it's like, "No, you're actually saving 19%." Because if I'm lying to you and saying it's 20%,

01:32:10   then I'm lying to you. I'm already off to a place that that's not true. You're actually not saving

01:32:16   20%, you're saving 19%. Right. And the buttons are the same size, you're not steering people

01:32:23   towards a big sign up for the year versus sign up for the month, or vice versa. They're the same

01:32:29   size. The 23.88 per year annual cost of the monthly is printed in a very normal sized font.

01:32:39   The same font as everything else. The only actual small print is the actual, what should be small

01:32:46   print, your purchase will be applied to your iTunes account and the confirmation of your

01:32:50   purchase subscriptions will automatically renew. There's nothing hidden in the small print. It's

01:32:54   a very honest exchange. And again, it's beautifully simple where you're either in

01:33:00   the membership or not. The free version is extremely useful in both cases.

01:33:14   It's a very good balance where it is very useful as a free app, and therefore it is very popular

01:33:21   as a free download. But yet, what is there to be paid for is a reasonable amount of money. It is

01:33:27   about 20 bucks a year for anybody who does sign up and gives features that people would actually

01:33:36   want. Right. Yeah. And what I like to, I ended up with this, it's like selling

01:33:42   more, essentially selling digital goods is always a weird business because it doesn't cost me

01:33:50   anything to let you access pink. Right.

01:33:56   The fact that in theory I could have put pink behind a paywall and you have to pay a dollar

01:34:01   to unlock pink, okay, great, or blue, or whatever color that might be. That feels like a weird

01:34:09   business to be in. This is a broader discussion of a lot of the apps that are making most of the

01:34:14   money on the App Store are these consumable in-app purchase things where you're buying gems that

01:34:20   are just bits in a database, but they're creating this big cost to them. And it's like,

01:34:25   I don't ever feel great about that. And instead, I feel much better about a business where weather

01:34:30   and time data costs me something, and so I can't provide it to you for free. It's unreasonable. And

01:34:36   certainly I'm not giving it to you at cost. That's not what it costs me to provide that data, but

01:34:44   it feels reasonable to pay for that. I need you to pay for it on an ongoing basis,

01:34:49   so it's a subscription, and then that's the audience that I'm charging for. And if you

01:34:58   are a user who just wants to support the app and just wants to pay for it and never use

01:35:03   weather and tides, great. I appreciate that. That's wonderful. But if you're someone who wants

01:35:08   weather data, I feel good about charging you for that. And it's nice and simple and straightforward.

01:35:13   It's not trying to be manipulative or problematic in a way that I feel like so much of the App Store

01:35:19   is, and it means that I'm avoiding a lot of the things that would go down a path where you can

01:35:26   make a quick buck but end up in a way worse place. It sounds like you and I are getting ready to move

01:35:34   to some kind of hippie compound, but you can't put a price on what it's like to sleep good at night.

01:35:42   Trying to scoop up every available penny you could make if you tried to do everything short of towing

01:35:55   your line against tricking people into paying for something gets you dangerously close to trying to

01:36:01   move the line of what constitutes tricking or not. Whereas if you're trying to stay as far away from

01:36:07   the tricky line as possible, you almost certainly are leaving money on the table that you would have

01:36:13   picked up, but you're probably not leaving any money on the table from people who definitely

01:36:18   wanted to buy it, and they're the ones you feel good about. And there's so many normal businesses

01:36:23   in the real world where you never have to worry about it. If you run a restaurant,

01:36:28   nobody gets tricked into coming into your restaurant to eat.

01:36:31   I didn't know I had to pay for this dinner. Why am I paying for this steak? I thought it was free.

01:36:40   Yeah, that's the expectation. And there's this straightforwardness. You walk in the door,

01:36:46   and they hand you a piece of paper that has the name of the food and how much it costs.

01:36:50   And it's very straightforward. And you'd be surprised if you order the hamburger and it

01:36:55   says it's $15. And at the end of the meal, they're like, "That will be $17 a month for the rest of

01:37:01   your life." It's like, "What? That would be a surprise. That would not be what you expected

01:37:06   for." But that's not what happens. Or next month when your credit card bill comes and you've got

01:37:11   another charge from the place you ate a month ago, and it's like, "What? I didn't know I was

01:37:15   subscribing to a hamburger from the place. I was in an airport over in Florida. Why am I subscribed

01:37:23   to a hamburger?" But I feel like so often that happens in the App Store, though. That kind of

01:37:27   thing can happen where there are so—especially with subscriptions—it can very easily be something

01:37:33   that you don't really know what you're signing up for. Yeah, totally. All right, let's talk a

01:37:37   little bit about weather. I don't think people understand that weather data costs money to

01:37:42   developers. And it does. There is no—well, there's some free weather info, but "free," and there's a

01:37:51   reason why weather apps are usually paid. And if they're not paid, are sort of a cesspool of

01:37:58   privacy-invasive shenanigans. Yeah, where they're just trying to get your location data, basically.

01:38:04   Yep, because—yeah, and this is—once you think about it, everybody—if you,

01:38:13   dear listener of the talk show, have never really pondered this, you're going to—your mind's about

01:38:19   to be blown, because if you think that there are a bunch of scammy ad network type of businesses,

01:38:25   hundreds and hundreds of them out there, that really would like to have your location data,

01:38:32   and you know that all these apps system-wide have really been locked down in terms of anything that

01:38:39   has location data you have to ask the user for permission for, and it's very easy to go check

01:38:45   in the privacy section of settings which apps have location data, which ones have used it recently,

01:38:51   and how to turn it off. And you think, you know, it's hard for scammers to get into it.

01:38:57   What apps do you grant location to? Well, of course you grant it to your weather app,

01:39:02   right? Because you want weather where you are, and it makes—other than a turn-by-turn directions app,

01:39:10   I can't think of another genre of app where granting location data is more essential to it.

01:39:16   I guess the Pokemon Go, right? And like ride hailing, maybe.

01:39:19   Yeah, ride hailing, right. But that's—again, that's sort of mapping, right? Like, it's just a—ride

01:39:25   hailing is almost just a variant of turn-by-turn directions. It's giving them turn-by-turn

01:39:31   directions to get to you, you know? Yeah.

01:39:32   So guess what? There's an awful lot of weather apps that have made arrangements and deals,

01:39:39   and if you have a free third-party weather app on your phone, you probably are giving up your

01:39:45   location data to outfits that you probably don't want to give your location data to.

01:39:50   Yeah. I mean, I can speak from experience that that is something that—at any time there are

01:39:56   companies that exist, and I get solicitations for this kind of stuff as a developer, that

01:40:01   any time you have an app that accesses location data, that they are more than happy to pay you

01:40:06   for that data. And you'll just—they'll basically say, "Oh, it's no big deal. You just drop our SDK

01:40:11   into your application." Right.

01:40:12   And it'll—because you've granted permission, we'll just collect the data and send it off,

01:40:17   and you'll get a check each month, and it absolutely exists and it's something. And it's

01:40:22   like, I don't think that's what people are signing up for when they're hitting, like,

01:40:25   "Show me the location. Show me the weather data for where I am right now."

01:40:28   Yeah. So this whole direction got me thinking. And when Apple bought Dark Sky earlier this year,

01:40:37   it made me wonder—I was not surprised, because I've been a fan of Dark Sky

01:40:44   I think since they launched. It's a fantastic service, and I love their

01:40:49   predictions for near-term precipitation. And they've been uncannily accurate for the most

01:40:57   part over the years. And when they're not, it's never like—I feel ripped off. It's like if they

01:41:02   say, "Hey, rain's starting in five minutes," and it doesn't rain, it looks—it sure as heck looks

01:41:08   like it's about to rain. Right? Yeah.

01:41:09   And there have been times where they've said, "Dark Sky has given me an alert, like,

01:41:14   rain's starting in 10 minutes." And I look up and I'm like, "They're nuts. There's no way it's going

01:41:18   to rain in 10 minutes." And sure as hell, 11 minutes later, it's raining. And it's like,

01:41:23   "Where did this come from?" But anyway, I wonder if Apple's long-term plan on this is to provide

01:41:31   weather services at the system level. I mean, it definitely was something that came to mind for me,

01:41:38   as someone who uses it. I could see Apple trying to get to—I don't know how—I'm not sure if they

01:41:47   would ever require it. That feels like tricksy, but it's definitely a thing of if they can get

01:41:52   people off the need for a third-party developer to have to pay for weather data. That certainly seems

01:42:02   like a good benefit. I mean, my suspicion, though, honestly, is that they don't like that in the

01:42:07   weather app, it has the Weather Channel logo in the bottom right corner. I know. Or the Yahoo logo,

01:42:12   whatever that is. I think the reality is they just view that as, "Why do we have on one of the most

01:42:18   used apps probably—I've got to imagine it's like Messages and then Weather are probably the two most

01:42:23   used apps on iOS. We have some other company's logo prominently in the corner of this app at

01:42:30   all times, and I've got to imagine they just want to not have that there." Have you ever asked your

01:42:36   home assistant, your dingus, for the weather? Like if you have HomePods and you ask, "Hey,

01:42:43   what's the weather?" I don't know what the rules are because it doesn't seem like they always

01:42:50   tell you, but sometimes they'll be like, "The weather today in Philadelphia will be 71 degrees

01:42:54   with 30% chance of rain, and a low temperature in the evening down to 57. My weather data is

01:43:01   provided by the Weather Channel." And it's even worse than the logo, right? Because the logo,

01:43:07   at least they can make small and stick in the lower corner, but to actually—

01:43:10   Have to say it out loud.

01:43:13   Right.

01:43:13   Yeah. I just go to imagine that has more to do with it because I think they—I

01:43:19   would love for them to provide it. And I mean, in some ways, of course, that would make a bit

01:43:24   of a conundrum for me because part of the way that I've sort of structured my things is that

01:43:28   weather data has a cost. But if they did, they could certainly go down that road now that they

01:43:34   own Dark Sky and that they have that data and they have it in a broader way. But in my mind,

01:43:42   they're just going to—they just want to get rid of that logo as soon as they can.

01:43:45   Yeah. Well, that's where I was going with it is that if—so it is admirable that you're not

01:43:49   charging for access to more than, say, the eight primary colors. And I say that—I say admirable

01:43:55   in that I like your thinking. I don't think there's anything wrong, personally, with apps that do that.

01:44:01   We actually had tossed that around with Vesper as an idea before we just gave up the ghost,

01:44:06   but that maybe we would have a paid subscription thing that would have alternate themes for Vesper.

01:44:12   And that wasn't necessarily no marginal cost because we were thinking maybe it would be

01:44:18   fonts that we had to license to include. But it might be. It might be stuff like colors where

01:44:25   literally it's not a marginal cost to us to offer a red. But you have to charge for something.

01:44:32   And it felt better than charging for sync. I don't know.

01:44:36   Yeah. And I think—

01:44:38   Or more for sync or something like that.

01:44:40   When I think about that, though, it's great to reserve the ability to charge for things in the

01:44:46   future. When I'm coming into something like this, it's like, I want to have a business model up front

01:44:54   that I'm accumulating enough revenue to keep the lights on and to have a reasonable business,

01:45:01   but it's offset just as much by creating goodwill and the opportunity in the future.

01:45:07   That if at some point, whether data becomes free for me and it becomes a little silly that I'm

01:45:11   charging for it, then at that point, it's like, I'm sure there are other opportunities and there's

01:45:16   other things. Or even in the near term, one of the obvious things that I should probably be starting

01:45:20   to do is work with designers and have theme packs or things that are that kind of a purchase within

01:45:29   the application. What I like about that is it's a truly premium upsell in a way that it isn't like,

01:45:38   "I'm charging you for red." It's like, "I'm charging you for, here's this designer who has

01:45:43   created this gorgeous set of borders and colors and backgrounds and wallpapers, and you can

01:45:49   buy them as a unit, and you're getting something that feels nice, not something that feels like

01:45:55   I'm being cheap." Yeah, exactly. If it was a custom border design that made it seem like a very fancy

01:46:02   certificate of authenticity, my widget is completely certified, and people might have fun

01:46:10   with that. Yeah, and I do think... Here's my other question about weather before I get off the

01:46:18   weather. The other thing I wanted to pick your brain about is that WidgetSmith defaults to feels

01:46:24   like temperature instead of actual temperature. I get a lot of feedback on this. Okay, so as a

01:46:31   weather app aficionado, I have mixed feelings about this. I'm curious why that's the default.

01:46:40   That's almost never the default. Sure. So this is one of those cases where every weather app I ever

01:46:49   use, where it's an option that I can display the actual temperature, like the scientific temperature

01:46:57   or the apparent temperature, I always set it to apparent temperature. Because as a person existing

01:47:03   in the world, that's the temperature that actually is meaningful to me. That if I go outside and it

01:47:10   feels like 100, then I want to know that it feels like 100, not that it is 90. That's what I want to

01:47:18   know when I look at the weather app. So I'm always flipping that switch. And so as a developer,

01:47:26   that's one of the places where I'm just being a little opinionated and saying, "I think this is

01:47:30   actually what you want." That when you say you want to know the weather, you actually want to know what

01:47:36   it's going to feel like if you go outside, not what a thermometer sitting outside would tell you.

01:47:43   And so in the same, like what you were saying earlier of like, "Tell me the problem. Don't tell

01:47:47   me what your solution is to the problem." The problem you have is, "What's it going to feel

01:47:51   like if I go outside?" And I can answer that question. People have worked this out with

01:47:56   feels like temperature and wind chill and heat index and all that. And so I think that's a better

01:48:01   answer. And some people get really upset about that when they realize that like, "Why does it

01:48:07   seem like my thermometer outside on my deck says that it's 80 degrees, but your thing says it's 90

01:48:14   degrees." And it's like, "Well, it's because it's super humid outside." And if you go outside,

01:48:17   it's going to feel like it's 90. And so that's why there's an option to do it. I made it so that you

01:48:22   can optionally turn it off. But as a default, I firmly believe that apparent temperature is what

01:48:28   everyone should think about because that's actually what people care about.

01:48:31   Okay, I was on board with you. And on that team all summer long, earlier this summer,

01:48:36   I switched all of my apps that I—and I switched between a bunch. All of them that support feels

01:48:43   like, I switched to feels like. I had it on my watch. And I was like, "This is fantastic." And

01:48:48   there were days—and it was summer. And it was, you know, it's the East Coast. So, you know,

01:48:53   usually it was my feels like would say, "Hey, it feels like 95, even though it's only

01:49:00   84." And that's a big difference. And it's the difference between pleasant and unpleasant. And

01:49:07   it would be right. And I was like, "Everything should be like this." And then I ran into a couple

01:49:12   of days in a row where it was wrong. And it would be like, "It feels like 94." And it's like, "Oh,

01:49:19   that's miserable." And I was like, "Well, I got to go out anyway." I go out, and it was beautiful.

01:49:24   And it was like, and it's the—really, the feels like was just, in my opinion, wrong. It didn't

01:49:29   feel like it at all. And I don't know what—and I was talking to Ryan Jones, who's the developer of

01:49:36   Weatherline, one of my favorite third-party weather apps. And he was like, he just—it

01:49:42   was one of our typical chats where it was either going to be really long, and he was like, "Oh,

01:49:46   don't even get me started." And it basically, he was like, "I think all the effort I've put into

01:49:52   Weatherline, you could put into—I would like to put into a new formula for feels like to actually

01:49:58   get it right." That's how hard it can be. And I concluded by the end of summer that when feels

01:50:06   like is wrong is worse, and therefore outweighs the benefits of when feels like is better. And

01:50:14   what I kind of want, and none of my apps seem to do, is to find the perfect balance of showing me

01:50:20   both at once. It's like, it seems like most apps either show you one or the other, or they show you

01:50:25   one of them big, and then the other one is like small print at the bottom, you know, like weighted.

01:50:30   But it can be very wrong. That's my complaint with it, is that sometimes it'll say it feels like

01:50:37   blank, and it's like, no, it actually feels like the actual temperature.

01:50:42   Yeah. And I mean, there are so many solutions to this that are tricky. It certainly is a thing,

01:50:47   because it's not like perception is a hard thing to measure,

01:50:51   especially with something like weather. And some people don't mind the humidity nearly as

01:50:57   much as others and say that they're going to feel it differently. And I think of the National

01:51:03   Weather Service. Have you ever seen their graphical forecast?

01:51:07   No, I don't think so.

01:51:08   So they have this forecast that is very, very economic in terms of the way that it shows

01:51:19   you with the weather data. And what I've always thought is interesting with their economy of

01:51:25   how they do it is the heat index or the wind chill is only shown when it's beyond a certain amount

01:51:32   different than the typical amount different from the actual temperature. And I feel like there's

01:51:42   a certain maybe something in there that I think they may be sort of hitting on. But there's a

01:51:49   certain balance where, yes, you only want it to show when it's going to tell you something that

01:51:55   you really need to know. Like when it is actually-- you're going to walk outside and you're going to

01:52:01   be like, "I thought it was 72," and you walk outside and you're miserable. And you're like,

01:52:05   "I want you to tell me that right now." So maybe there's something like that where you only show it

01:52:11   if it's different, like above a certain amount. And so you're trying to optimize for the surprise

01:52:17   factor. Or if it's above-- only tell me if the heat index is above 95, say. At that point,

01:52:26   switch to using that or I don't know. But it's a problem I've struggled with for how to show that

01:52:34   data in a way that is reasonable. Yeah, it's a complicated problem. Anyway, now that you have

01:52:39   a weather app, effectively, welcome to the club. I've been in the club for a while. Yeah, I guess

01:52:45   so. So I guess last but not least, again, I'm not trying to get actual numbers. No, no, that's fine.

01:52:56   But a reasonable-- amidst this avalanche of downloads, you're also getting a somewhat

01:53:04   commensurate increase in number of people who are actually signing up. It's not just

01:53:09   all people using the free app. It is actually a hit product for you. Yes. No, it is certainly

01:53:16   converting well, at an rate that you would usually expect for this kind of thing. Because in a normal

01:53:21   application, you kind of expect that the majority of your users aren't going to subscribe, aren't

01:53:28   going to pay, aren't going to be doing anything like that. But you just hope that a certain

01:53:32   percentage of people are, and that it seemed to be the case with this. That enough people want to

01:53:40   see that data or support the app or for whatever reason they're signing up, that they're doing it.

01:53:47   And I was worried when it had its crazy-- the first 24 to 48 hours of this app, where it really

01:53:58   took off, were unlike anything I've ever seen in 12 years of making apps for the App Store,

01:54:02   where the number of downloads I was getting in an hour is collectively what it usually takes years

01:54:10   for all my other apps put together. That's insane.

01:54:14   It's one of these things, I don't have a concept of how to even really deal with that. And my fear

01:54:20   was that obviously you'd have this huge spike, absurd numbers, tens of millions of people

01:54:25   downloading the app, and then all of a sudden it was going to fall off, and no one was going to

01:54:31   subscribe. And it would have just been like, "Huh." If you remember that funny day that I had

01:54:34   crazy downloads and then nothing changed in my life? That was kind of what I was-- at least the

01:54:40   pessimist in me certainly had that little fear in the back of my mind. But I was thankful to see that

01:54:47   even as it's sort of settled down and it isn't-- I mean, I kind of feel like-- you know when you see

01:54:52   people going off to climb Mount Everest, they have to go up to different camps along the way?

01:54:57   Yes.

01:54:57   And they'll go up somewhere and they'll spend a week, and then they'll go to the next one,

01:55:00   and they'll spend a week. I feel like I'm in one of those base camps now, where

01:55:08   in those first few days, I was up on Everest. I'd never seen anything like this. This is way up high,

01:55:14   and it's like I've come down from there, but I'm just hanging out at advanced base camp now. It's

01:55:20   not normal by any definition of what normal would be, but it's continuing on and having a life and

01:55:27   having conversions into subscriptions and doing the things that make it a sustainable business

01:55:32   and not just being crazy up, crazy down. That was funny, and I just go back to my other apps.

01:55:39   Congratulations. It is well-deserved. But just in terms of how bananas it is,

01:55:45   I'm looking at the live top chart for free apps right now. And as we speak, the list is number one,

01:55:53   WidgetSmith, two, Zoom. Again, this is in coronavirus with back to school and all of

01:56:03   this stuff going over Zoom. Three is your arch rival, Color Widgets. But similar to the same

01:56:12   basic idea is an app about widgets. Four, Discord, a very, very popular talking chat app.

01:56:23   Five, TikTok, which has been threatened to be removed from the app stores, which in addition

01:56:29   to its popularity has prompted its downloads. Six, YouTube, Instagram, Gmail. Have you heard

01:56:36   of Gmail? Snapchat. And then number 10 is Facebook, and then 11 is Messenger, and it goes on from

01:56:43   there. Now, of course, some of this is it doesn't mean that WidgetSmith is more popular than Facebook.

01:56:50   Obviously, Facebook's downloads are suppressed and Instagram, et cetera, are suppressed on a

01:56:55   daily basis significantly by the fact that there are literally billions of people who already have

01:57:01   them. But it puts it into context. I mean, some of these apps are not like the others in this list.

01:57:11   Right? One of these apps was made by a single person working at a computer in his basement,

01:57:16   and the other one is made by some of the most valuable companies in the world.

01:57:20   Right. I mean, I think I'm pretty sure that Facebook has more than one engineer working

01:57:26   on their main app. I hope so.

01:57:27   I think so. It's just really, really awesome to be talking to you and have you not just on the list,

01:57:36   but at number one. It's really a lot of fun. But part of that is, before we go into the final

01:57:44   section, I want to talk about sleep tracking. But before we get there, your basic strategy

01:57:50   has been so interesting to me. Over the 12 years you've been working on the platform,

01:57:55   was it a recent tweet? I just saw a tweet from you where you mentioned that you've had 59 apps.

01:58:02   Yeah.

01:58:02   Was that recent?

01:58:03   Yeah, that was a couple of days ago when I was just kind of reminiscing on the 12 years that

01:58:09   it has been to get me to here. I've made 59 apps over the last 12 years.

01:58:14   Tell me if you disagree in any way. But I think a basic description of your strategy from the

01:58:23   beginning is to come up with ideas for smaller apps that you could do by yourself relatively

01:58:33   quickly and see what's popular, see what sticks. And if it gains traction or some angle of it

01:58:44   gains traction, then go with it. And if not, move on to another idea. All 59 apps are not still

01:58:52   actively maintained and available in the app store. Your strategy is to be a singles hitter,

01:59:02   not a home run hitter. And spray a lot of singles and get on base as often as you can.

01:59:07   And in baseball, good things happen as opposed to, "Well, I'll just sit there and keep trying

01:59:13   to hit a home run and wait till the bases are loaded." Let me keep going with my analogies here.

01:59:20   If you're playing Tetris, you're trying to clear lines as you go. You're not saving a column over

01:59:26   on the side waiting for a couple of big four-in-a-row pieces to get the four-in-a-row

01:59:33   things. You're clearing rows as you go. And to me, this is the payoff that you've been waiting for.

01:59:43   You keep working on good ideas. You keep trying them. You're there on day one. And in terms of

01:59:50   that whole debate of, "Hey, why were developers so mad that they only had 24 hours notice for iOS 14?"

01:59:58   Because it's good to be there on day one. Right? And it's-

02:00:05   I've benefited from that many, many times. One of my other popular apps,

02:00:09   Podometer++, is a step counter. And it was the first app that ever

02:00:13   used the motion processor in the iPhone 5S. And because it was the first, it did well.

02:00:19   And that's a skill. It is a tremendous skill. You're prolific. And I'm not trying to

02:00:26   puff you up just because you're the guest on my show, but there's a prolificness to it.

02:00:32   But if you think about it, just the amount of time you've spent on the infrastructure of setting up

02:00:38   the metadata in the App Store to get 59 apps adds up to weeks of time.

02:00:44   Well, I have my 10,000 hours of uploading screenshots into iTunes Connect.

02:00:48   Right, right. I have been doing that far more than I wish I would have been able to.

02:00:52   Right. You're really good at launching a new app.

02:00:57   Yeah.

02:00:57   You never know what's going to hit. It's always true.

02:01:05   And I think it's one of those things where my goal in what is, A, I have a really short attention

02:01:12   span. And I love—the thing I enjoy most is making new apps. If I'm honest, I really don't

02:01:16   like maintaining apps. I love making them. I love the idea. I love seeing a WWDC keynote is probably

02:01:25   my favorite two hours of the year in my work. I love seeing these are the new things and coming

02:01:32   up with what's possible. Or as we were talking about earlier, what's maybe not so possible in

02:01:37   what they're hoping for, but something that I could make happen. I love that process, and I love

02:01:44   doing that. And I have a short attention span, and I get bored maintaining something. And so

02:01:49   I like that process. And it means that, yeah, it's like I've gotten good at knowing how to turn apps

02:01:55   around very quickly. I've gotten good at knowing how to launch apps, how to—what are the features

02:02:00   that are actually going to be meaningful for an application? What is something that if I actually

02:02:05   make, it's like—there's a very fine line between knowing what's a good version 1 feature and what's

02:02:11   a version 1.1 feature. And because half the time I never build the 1.1, it's important to know that

02:02:16   difference and to know that this is not something that I need for version 1, and I should push it to

02:02:21   the side and wait on it. And that has allowed me to be able to be in the position where it's like,

02:02:28   I've launched 59 apps. I would say all but maybe six of them were complete flops from a financial,

02:02:35   a business, whatever perspective. I learned a lot from them. So it's certainly like—and

02:02:39   it benefits me now when I'm making an app like WidgetSmith that touches so many different parts

02:02:45   of iOS and all of the system that I've built a calendar app. So if I want to add calendars to

02:02:52   WidgetSmith, that's easy. I've done that before. I have all this code. I know where all the weird

02:02:56   bugs are. I've worked around them before. If I want to interact with weather data, like I built

02:03:00   a weather app years ago, and I've done this before. I know how to do it. And I can build

02:03:06   that experience, and I think it's a model that works well for the—I feel like the indies

02:03:12   kind of traditionally, like the traditional Mac or Apple indie is the person who has their one thing

02:03:20   that they almost slavishly work on and develop. And you have a James Thompson who's worked on

02:03:26   PCALC for timing material. I don't know how long he's been working on that app.

02:03:31   30 years?

02:03:32   It's just 30 years. Something like that. And he is—that path, I would have lost my mind.

02:03:39   I'm glad it works for him. That's great. But for me, I'm always looking and interested in the new

02:03:46   thing, and I am already in the midst of all of this with WidgetSmith. The biggest app in the

02:03:54   world right now, I'm already starting to think about new apps I want to make. And if anything,

02:03:58   the maintenance and the management of WidgetSmith is a burden rather than a blessing. That's just

02:04:04   who I am, and that's how I've gotten to be to where I am. And it's a situation, too, where I

02:04:09   think it's worth saying that I feel very grateful for the ability to do what I do, and I think it is

02:04:16   largely based on the App Store and on Apple and what they do for a developer like me. The fact

02:04:24   that I can launch 59 apps over 12 years, and the infrastructure and everything is in place for me

02:04:31   to be able to do that, and they take care of the billing, and they take care of all of the things

02:04:34   that allow a one-man shop. It's just me in my basement writing code. I don't have a big

02:04:41   infrastructure. I don't have a big staff. That, I don't think, would be possible in a world that

02:04:48   wasn't like the App Store, and it's something that I feel very grateful for. Sometimes I get to be in

02:04:53   my bonnet around all the stuff that's been happening with the App Store and Epic and all the

02:04:57   shenanigans. It's like, I'm able to do what I love doing because the App Store is the way it is, and

02:05:04   it works for people like me to have just as much standing as all the other apps you just listed in

02:05:10   the top 10 of the App Store right now. I have just as much claim to that top chart as they do.

02:05:17   And it doesn't matter that they're Google. It doesn't matter that they're Facebook. I'm just

02:05:20   a guy, but the App Store is a great leveler in that way. And so I feel very grateful for

02:05:24   like that Apple has created it and sort of is something that exists for me.

02:05:28   Yeah, that's well said. I mean, and it must be gratifying too, because the nature of Widget

02:05:32   Smith is such that what people are enthusiastic for about it means they see it all the time,

02:05:41   right? It is not like... Peacock. Just to toss out another example. Beloved,

02:05:49   I've been using Peacock, I think for close, if not 30 years. Close, certainly close, at least 25.

02:05:54   I go days and weeks, maybe even at a time without launching Peacock because I have nothing to

02:06:02   calculate, right? Whereas a widget on your home screen, there it is on your home screen. And where

02:06:07   do people really, if they're really going to spend time to tweak and customize the color and the font

02:06:14   and the size and sit there and really get in there and futz with it, where do they want it? They want

02:06:21   it on their first home screen, right? Or the second one, the one where they're going to see it all the

02:06:25   time. So there you've got this thing that they see all the time, which is super cool. Put aside just

02:06:31   the financial aspect of it. That's just cool when you realize, "Holy crap, there are thousands

02:06:42   of people looking at my thing all day, every day, and it's in the device in their pocket."

02:06:47   Yeah. And it has the name of the app right underneath every widget.

02:06:51   Which is really awesome.

02:06:53   Which is... I get a lot of requests that I'm like, "Oh man, can't you hide that?" And it's like,

02:06:57   A, I can't because that's just not the way Apple has built the widget system. And B,

02:07:02   if I could, I would not.

02:07:03   There you go. There's the first time you've been a little selfish on the entire interview.

02:07:08   A little bit. A little bit in this. That's one thing that I am very grateful that every single

02:07:13   time I see a screenshot of someone being like, "Hey, look at this cool thing I did with my home

02:07:16   screen." There it is. Widget Smith right there. Go to the app store, search for it and get it.

02:07:21   It is. It's very cool. It is a very nice way of...

02:07:26   There's a thing they can search for right there. All right, let me thank our third and final

02:07:34   sponsor of the show. It's our good friends at Squarespace. Oh man, speaking of customizing

02:07:39   your stuff, how about your website? You want to customize your website? Well,

02:07:42   if you have a Squarespace website, you can customize everything. You can start with a slew

02:07:49   of award-winning templates that are already pre-designed that scale from big 27-inch iMacs

02:07:57   all the way down to your phone. And you can customize them any way you want. And just

02:08:04   anything you do, you do it right there in the browser. What you see is what you get.

02:08:09   As you're designing your website, you're looking at exactly what everybody else will see

02:08:14   when they see your website minus the edit buttons. That's it. Could not be easier.

02:08:21   If you are the sort of nerd who knows what CSS and HTML and JavaScript are, and you want to get

02:08:26   in there and mess with the code, you can do that too. But if you don't even know what those things

02:08:31   do, what they mean, you don't have to. You'll never see it. That's the range that Squarespace covers.

02:08:38   Everything from registering your domain name to getting your analytics and seeing where and how

02:08:44   people are getting to your website and how many people, all of it built into one great, easy to

02:08:50   use system. They have an offer code, talk show, just T-A-L-K-S-H-O-W. When you go to check out,

02:08:57   you get 10% off. You can use that to register for a whole year at a time, save 10% off an entire year.

02:09:03   My thanks to Squarespace. Go to squarespace.com/talkshow.

02:09:09   You get a 30-day free trial. Just remember that code. Go to squarespace.com/talkshow and remember

02:09:15   the code "talk show" to get 10% off. When you do go to pay, when your free trial is over.

02:09:21   All right, speaking of the name Widgetsmith, for a while, you'd think it would be an original name.

02:09:27   For a couple of hours, at least over the weekend, you could find another Widgetsmith

02:09:32   in the App Store. I wrote about it. I don't expect you, after all of your kind words,

02:09:41   about the opportunity that the App Store has afforded you. I'm not asking you to complain,

02:09:47   but it's got to be frustrating. That had to be like, "Oh, man." If you're set up, you're saying,

02:09:54   "Oh, man, Widgetsmith is flying high. This is going to come to an end. One of these days,

02:09:59   I'm going to be knocked off the number one spot." It's going to happen anyway, right?

02:10:04   For it to be knocked off the number one spot by a rip-off app.

02:10:09   That hurts. It hurts. There's no simple way to say it. It just hurts. It was painful to see that—

02:10:17   I think that it's most hurtful about—I mean, I've had many copykits I've had to deal with in

02:10:23   the years of the App Store. The most hurtful are the ones that are poor knockoffs. It's like what

02:10:30   you were saying about Ariel, right? It isn't knocking me off in a way that it's like taking

02:10:38   what I did and doing it better, right? That kind of a scenario, it's more like, "Oh, man,

02:10:45   I should have thought of that." That feeling is not great. It's not a nice feeling, but it's like,

02:10:50   "Okay, that's fair." It's like when you're getting ripped off by somebody who it's clearly just,

02:10:55   "This thing is popular. Let me just grab its name, throw together a basic app that will get just

02:11:02   enough utility to get past App Review and throw it in the App Store." It's much more like,

02:11:08   it feels more like stealing than about being inspired by something or imitating it or

02:11:15   those types of the more positive versions of, "Clearly, I'm sure there are countless people

02:11:21   making widget apps right now." That would be foolish if you had an idea for one or you're

02:11:27   going to think, "I'm going to cash in on this market." Of course, people are doing that.

02:11:31   But what's hurtful and what was difficult about that one is that it was such a poor copy,

02:11:38   and it wasn't hardworking, and it wasn't thoughtful and clever. I think that was the part that was

02:11:43   harmful about it. To complain, it's like, "Certainly, I wish that Apple, their infrastructure

02:11:51   was such that that didn't happen in the first place, that they caught that kind of thing."

02:11:55   You've got to think there's a way and a mechanism and a business process that they can catch this

02:12:01   stuff rather than having it had to always be reported. I could imagine there's always going to

02:12:07   be situations that fall outside of the process that they come up with, and there's always going

02:12:14   to need to be a "report this app" system to deal with the cases that, if you're copying an app that

02:12:19   isn't particularly popular, it might not draw to their attention that there actually isn't this

02:12:25   other app that has the same name or whatever that might be. But you've got to think that if they

02:12:30   were thoughtful about the names or the keywords and things like that, for the top

02:12:36   100 apps in each of the categories—so that's something like, I don't know, like 2,600 apps

02:12:42   or something, maybe—it's not an inconceivable number that you'd have to wrap your head around.

02:12:47   To be thoughtful and to be protective of those names, it seems like something that they should

02:12:54   be able to do. And I think, if anything, while I'm frustrated by it, the only thing that I see

02:13:01   that's particularly encouraging to me about all of the controversy that we've been dealing with

02:13:06   this summer with the App Store and whether there should be a 30% cut and whether there should be

02:13:10   alternative app stores and all of these things, I take hope in that Apple, in the 12 years I've

02:13:17   been doing this, seems to do their best work when they are under pressure and they have to prove

02:13:23   that they're living up to the ideals that they always market themselves as having.

02:13:29   And Apple says the App Store is the place you go because of trust and privacy, and trustworthiness

02:13:36   are the things that it's there for. And trustworthiness is a bit in question if you're

02:13:42   allowing copycat clone scam apps to exist in your platform. That's clearly just problematic for that.

02:13:49   And I'm sure Apple was embarrassed that they let this through. And my hope is that they actually

02:13:54   have pressure now because they keep putting up these marketing websites that say the App

02:13:59   Store is amazing. And I agree, the App Store is amazing. I just sang its praises a few minutes ago.

02:14:04   But now what I like and what I'm encouraged by is they have to prove that now. And so this happened

02:14:11   once. I don't expect this is going to happen again for Widgetsmith. I've got to imagine there's

02:14:17   someone who got a very stern talking to by somebody who's like, "This is embarrassing. Two days before

02:14:22   this, we published this whole big new website on Apple.com saying how great and trustworthy the

02:14:28   App Store is. And then this happens two days later. This can never happen again." And that pressure

02:14:33   is great. Yeah, I agree with that. That's a good take. And I do think that it's an interesting way

02:14:42   to keep them on their competitive toes as they have less competition directly, at least that

02:14:52   they're not an underdog. And I definitely don't want to devolve this into an argument over

02:14:58   what the word monopoly means. But there is less competition in the phone space.

02:15:06   You're talking about developing on the platform for 12 years. We're old enough now where for us,

02:15:14   12 years doesn't seem like that long. For my son who's in 11th grade, it seems like he probably

02:15:20   barely remembers or doesn't remember what it was like before iPhones. But I remember when the

02:15:27   iPhone was new and felt... I felt even before it came out, just in that wild, crazy interim where

02:15:36   Apple had announced it at Macworld, but it wasn't even shipping until June, it was a wild time. And

02:15:44   I thought, "This is a surefire hit. This is going to be great. I cannot wait for this." And I remember

02:15:49   thinking, "They're going to do apps." There's a famous... Not famous, famous to me, but Merlin

02:15:55   Mann was doing podcasts on the Macworld show floor and grabbed me and Jason Snell and interviewed us.

02:16:01   It was a 10-minute podcast. And Jason Snell and I... Merlin asked us if we thought they were going

02:16:07   to have apps, and we didn't even think about that at the time. And within five or six minutes,

02:16:12   Snell and I had talked ourselves into, "Yeah, they're going to do apps. There's going to be

02:16:16   apps eventually. It has to be." And it's a great five minutes of podcasting because it was an hour

02:16:22   after the thing had been unveiled to the world. But at the time, Palm was still real, and they

02:16:30   eventually came out with the Palm Pre, which was a great platform, and unfortunately, too late.

02:16:36   - Yeah, I made apps for it. - Right. Did you really?

02:16:38   - I did. - I loved it.

02:16:40   - My first job when I was in high school was making apps for the Palm 5 and the Palm Pre.

02:16:45   - Oh, but that's not the Palm Pre. - No, no, I also made apps for the Palm Pre.

02:16:48   - Oh, okay. Well, I loved it. Blackberry was still a thing, and they had apps, and

02:16:55   nobody knew. And Nokia tried to get... It was all up in the air whether we were going to settle on

02:17:01   Monopoly, a duopoly, a triopoly. Was mobile maybe going to be different?

02:17:08   - You had Pocket PC, right? App Micro's Microsoft was getting into the

02:17:13   sort of space with Pocket PC. - For about 15 years, from the early '90s

02:17:22   until the mid-2000s, when we called the non-phone-wond PDAs, and it was a separate category, but

02:17:29   it clearly was meant to converge, there were never a dominant platform, and you never knew.

02:17:36   And we've settled into a thing, and it's probably the way most markets settle in, where there's

02:17:41   fewer competitors than not. But something has to keep Apple on its competitive toes, right?

02:17:46   Otherwise, complacency is inevitable. And I think that the pressure on the App Store,

02:17:51   the upside to it is, I agree with you completely, that it's a way to inspire Apple to up its game

02:17:59   across the board with everything related to the App Store, even if nothing changes regulatory or

02:18:05   legal-wise as to what they're required to do. - Yeah, that pressure and that sense of,

02:18:11   like, you can't be an underdog when you're the biggest company in the world,

02:18:14   but you can still feel like you have to prove yourself. And that desire is only good,

02:18:22   and only positive. And if Apple continues to hold themselves to high standards, and then the world

02:18:27   holds them to those, that's a great situation for Apple and for the world.

02:18:32   - Yeah, when I was in high school, I was a huge Larry Bird fan, and I devoured his autobiography

02:18:39   after he retired. And he talked about how he was, and if you search YouTube for Larry Bird

02:18:46   trash-talking, he's widely regarded as both one of the greatest basketball players of all time, but

02:18:53   almost certainly the greatest trash-talker of all time. And he said in his book that he did it

02:18:59   because he felt he'd be playing, and he'd realize, look at the other team's lineup and realize that

02:19:06   he knew in his heart there was nobody on their team who could cover him, nobody who he really

02:19:10   respected as his peer, as a player. Like, okay, if he's playing the Lakers and Magic Johnson's

02:19:15   on the other team, or he's playing the Bulls and young Michael Jordan is on the other team,

02:19:19   and he could tell how good Jordan was going to be. Sure. Or Dr. J, you know, any of those classic

02:19:23   players that he's, sure, he had no problem getting fired up. But he's playing, I don't know, Denver

02:19:27   Nuggets, you know, and it's like, who knows. He'd fire himself up by going over to the other bench

02:19:35   before the game and picking out who's going to cover him and say, like, you better hope the co--

02:19:40   hope they don't put you on me because I'm going to torch you. And they just say that to fire himself

02:19:45   up. I feel like you need to do something like that when you're on top, you know. And I don't think

02:19:50   it's-- He doesn't follow through. He's embarrassing himself. Yeah. So I don't think Apple's going to

02:19:53   trash talk. But they need to do something inside the locker room effectively, you know, like,

02:20:00   that's the other thing with sports is most players don't say things inflammatory because they don't

02:20:05   want the other team to put the quote up on the chalkboard or the whiteboard, I guess they have

02:20:09   now, you know, hey, this guy on the other team said we can't pitch, you know, well, how do you

02:20:13   feel about it, you know, and it fires you up. Apple kind of needs to do that. Like these people say

02:20:18   they're not, you know, developers say they're not getting value from the App Store. Let's prove them

02:20:22   wrong. Yeah. And I think that's that's good for everybody. Yeah. And then but my last, my last

02:20:28   thing on the ripoff story is just that so many people whenever these things come up, say, well,

02:20:33   what do you what do you expect Apple to do? Even the richest company in the world, there's if

02:20:36   there's 100,000 new apps coming or updates coming through the App Store every week, and there's over

02:20:41   a million apps in the App Store, how can they possibly compare every single app against every

02:20:45   other one? That's not how you would police it. That that makes no sense. It's you start with the

02:20:52   most popular apps, right? And so like if the 57,263rd most popular app gets ripped off,

02:21:02   that shouldn't happen. There should be a good way for the rightful developer of that app,

02:21:11   53,000 levels down in the popularity charts to register the complaint when they notice it and

02:21:17   have it taken care of in a fair and judicious manner. But in terms of like catching this stuff

02:21:22   before it even happens, starting with the most popular apps would be the way to go because who

02:21:27   did? Why would you want to rip off the 53,000th most popular app, right? Whereas maybe the most

02:21:33   popular app number one, maybe you'd want to rip off. Yeah, there's a value in that that is

02:21:39   tangible and real and obvious. So that that would be my argument against why we should expect

02:21:46   better from Apple. All right, last segment. I want to talk about sleep tracking. Now,

02:21:52   you have an app, Sleep++. Merlin Mann, speaking of Merlin Mann, he was on the show about a year ago

02:22:00   and turned me on to sleep tracking. And I don't know how, you know, this is typical of when

02:22:05   Merlin's on the show. I have no idea how we got there. And it seemed bizarre to me. It just seemed

02:22:10   again, like with the breathe thing. I don't know. It doesn't seem like something. I go to sleep when

02:22:14   I'm tired. I wake up when I'm when I wake up. Yeah. Merlin said I should I guess I'd been having

02:22:20   some sleep problems, which is rare for me. Usually I sleep like a baby. He said you should get Sleep++

02:22:25   and I got the Sleep++. This was not, you know, a year ago, the watchOS didn't have built in

02:22:35   sleep tracking, but it no, but Sleep++ could track your sleep. And there are other sleep tracking

02:22:42   apps. I enjoy, I stuck with it. I still do it to this day. I enjoy it. I do notice some trends. I

02:22:50   don't really have any sleep problems, but I enjoy it. I don't really understand how it works now.

02:22:56   And I need you, I need you to explain, explain it to me. So you're asking like how watchOS 7 sleep

02:23:01   tracking works? Well, I start with how did, how did it work? How did Sleep++ track my sleep before

02:23:07   watchOS 7? Sure. So the way, so Sleep++ originally I used to use to kind of like this thing where on

02:23:16   the watch you would like start us, you would say when you went to bed and say when you woke up,

02:23:21   like you had to physically tap a button on the, on the watch. And that was because of a few,

02:23:24   if you did that, it meant that I could access kind of, they had this power efficient way of showing

02:23:31   me your motion during the night. And I could use that to kind of infer roughly how well you slept.

02:23:38   And I knew the duration of your sleep because you've said, you know, I just went, I went to bed,

02:23:42   I just, I'm going to bed and you tap it when you wake up. And that works well. And probably in some

02:23:47   ways gives you more accurate data, but for most people, they don't want to have the last thing

02:23:52   they do before they go to bed is hitting a button on their watch. And the first thing they do when

02:23:55   they wake up is to hit another button. So it doesn't really scale very well. And so instead,

02:24:00   what eventually I did is I worked out a way to like an Apple watch when it's attached to,

02:24:05   attached to your wrist is always collecting a variety of sort of health and fitness metrics.

02:24:12   So it's always collecting your step count. So it's trying to estimate essentially,

02:24:16   does it seem like you're walking? And if you are walking, you know, how many steps have you taken?

02:24:21   It's also collecting your active calories, which is what is shown in the red ring of your,

02:24:27   you know, in the activity app. And it's about every six minutes or so, it'll take a heart rate

02:24:33   reading, assuming your wrist is still and is, you know, close enough, like the watch is snug enough

02:24:40   to your wrist that it can get a, get a reading, it'll record one about every six minutes.

02:24:44   And essentially what I did is I used those three metrics to be able to pretty accurately estimate

02:24:53   when it seems like you're in bed, and it's the same like when you are awake and moving. And,

02:24:59   you know, a lot of that's just a bit of clever heuristics and looking at the data. And, you know,

02:25:04   for a while I had the years of the time that I've been recording all these nights for myself using

02:25:11   the old version where I was like manually starting and stopping, and I could use that to kind of

02:25:15   build my model that Sleepless Plus is based on. And I would use that, you know, I can use that

02:25:20   data to infer things about your night. I personally, it's like, as far as I can tell, any app that

02:25:26   tries to tell you, like in very great detail, the sleep stages you're in and all the kind of deep

02:25:33   sleep analysis stuff based on just automatic sleep tracking on an Apple Watch, like I'm a little

02:25:38   suspect. I don't really see that as something that's possible with what that data is, but it's

02:25:42   definitely possible to be able to identify when you're asleep and roughly are you sleeping well

02:25:49   or not? Like, are you restless or are you awake? Are you, you know, every time you get up to use

02:25:54   the bathroom in the night, you're going to take steps. And so I can say, "Oh, it looks like you're

02:25:57   taking steps. Clearly you're not, you know, you're not walking. Unless you're sleepwalking, like,

02:26:01   you're awake." And so that's what Sleepless Plus does to sort of create that model and to get the

02:26:09   data. And then once you have the data, then it's just the fun part of showing it in ways that are

02:26:14   useful, trying to show you trends, trying to give you a sense of your habits and your patterns,

02:26:19   because sleep is kind of a weird health metric because you can't change it as easily as you can

02:26:26   for a lot of things. Like, if you're trying to close your exercise ring, you can go for a walk.

02:26:32   If you're trying to hit 10,000 steps, you can go for a walk. You can do things in a proactive way,

02:26:37   but like telling someone you're not sleeping enough, like, there's things they could do to

02:26:42   influence that. But if they're a new boy, like if they're a new parent, like, what are they going to

02:26:48   do? Like, I'm sorry, like, I have a newborn who wakes me up every two hours. Yes, I'm sleep

02:26:52   deprived. And like, I can measure that for you. But mostly what I can do is just give you a sense

02:26:57   of when you wake up in the morning and you're like, "I am a wreck." Like, why am I—and you

02:27:02   look at the thing and it's like, "Yeah, that's because you slept three hours last night."

02:27:05   Like, that's a useful bit of information that I can at least affirm you with. But, you know,

02:27:09   sleep tracking is weird in that way. And I think that's led to why Apple's implementation of sleep

02:27:14   tracking is so weird. Hmm. So that's a good example to me of like the difference between

02:27:22   a heuristic and an algorithm, which I guess the line is usually kind of fuzzy, you know,

02:27:28   where does an algorithm turn into a heuristic? But like inferring when you sleep from a bunch of data

02:27:35   that isn't really directly measuring sleep is, you know, that's a heuristic where you could be wrong.

02:27:43   Yeah, I would have never used it in the first place if I had to start and stop it automatically.

02:27:47   Sure.

02:27:48   It's just, I just wouldn't remember to do it. And it's like, you know, and I wouldn't remember,

02:27:52   I wouldn't remember, I don't know which end of the sleep I'd be less likely to remember. I guess

02:27:56   at some point during the day, I'd remember, "Oh, I woke up and I guess I could go back." But—

02:28:00   Yeah.

02:28:01   Especially the going to sleep part, it's like the whole point of going to sleep is, "Oh, I'm

02:28:05   fading off here. You know, I'm falling asleep. I better turn out the—put the iPad down and just

02:28:11   close my eyes." It's like, I don't remember anything. So I—you know that I use the app

02:28:20   because I've sent you feedback over the last year.

02:28:22   You do.

02:28:22   Including features—

02:28:27   My quotes were wrong in one point. I miscapitalized a word, I believe.

02:28:31   Well, and the big one was, up till four in the morning, you would get, it would classify,

02:28:39   like if I fell asleep at three in the morning, it would count as last, you know, wouldn't say

02:28:45   technically by the book that's Tuesday or Wednesday morning, but you would classify it as

02:28:53   Tuesday night. And I would write to you and complain when I went to bed at like 4.15 that I was

02:29:00   being put into the wrong day.

02:29:03   My cutoff for the previous night's cut, like was it two or was it apparently not generous enough?

02:29:09   That in my mind, people falling asleep at 4.15 are not considering that the night before sleep,

02:29:15   but apparently I was wrong on that one.

02:29:17   So I've been a big fan. But what now—WatchOS 7 officially supports sleep tracking at the system

02:29:29   level. What is new from the system level, and what's new for you as—is this conducive to

02:29:39   Sleep++ or is this sort of Sleep++ has sort of been Sherlocked?

02:29:44   So that question is the easier one. So Sleep++' downloads have been up since WatchOS 7 came out.

02:29:52   So it's clearly not, like if it's Sherlocked, it's Sherlocked in the best way possible that

02:29:55   is involving more people downloading it, where it's, if Apple, if anything, Apple has created

02:30:00   awareness that sleep tracking is a thing you want to use your watch for, which previously I had to

02:30:05   convince people that that was possible and that they should try and charge your watch when you're

02:30:09   showering so that you can wear it overnight. I had to kind of do that kind of messaging and convince

02:30:14   people that, well, I charge my watch overnight. If I don't charge it overnight, when am I ever

02:30:18   going to have my watch charged? And you've quickly realized that if you charge it when you're getting

02:30:22   ready in the morning and when you're getting ready for bed, it's very easy to typically,

02:30:26   like for a normal person, to have your watch charged. But I think what's Apple doing it is

02:30:33   just, what's tricky about it is they're, I think they're limited by the battery life of the Apple

02:30:38   watch and the level of analysis and detail that they can pull out of you while you're sleeping.

02:30:45   That for all their, like their fancy algorithms and for all they're trying to do, like they're

02:30:50   machine learning and it's, you know, sure second to none. But the reality is they're still only

02:30:55   collecting motion data heart rate every six, every six minutes. And that's it. Like if you imagine

02:31:02   the sensors that are active during the night, and I suppose they could potentially be using

02:31:05   the microphone, I'm not sure about that, but there's a limit to what they can do with that.

02:31:11   And so they, I think, decided early on, it seems, or at least at this point, is they're not going

02:31:17   down the road of clinical analysis of your sleep. They're not trying to, so in my development work

02:31:25   for Sleepless Plus, for a while I was wearing a variety of like more dedicated sleep tracking

02:31:31   devices. And there are ones that do continuous heart rate monitoring throughout the night.

02:31:36   And so this is, you know, essentially the mode that your watch is in when you're running a

02:31:40   workout, it's running a mode like that continuously. And so it's tracking your heart rate,

02:31:45   you know, multiple times per second. And with that kind of data, if you have continuous heart rate

02:31:50   data, you can really start to get into the weeds potentially about sleep stages. And, you know,

02:31:54   REM sleep has a different heart rate and respiratory rate than slow wave sleep,

02:32:00   or then light sleep, where they can very easily tell when you're awake and when you're asleep,

02:32:04   because motion is a pretty bad metric for awake and asleep. Because if you're lying in bed reading,

02:32:10   and especially if you're reading on something like an iPad where you don't have to move your

02:32:13   wrist to turn the page, like you could very easily be lying in bed completely still,

02:32:17   but be completely awake. And there's no way for the watch to know that other than heart rate,

02:32:23   because your heart rate goes down when you fall asleep. And I think because Apple doesn't want it,

02:32:27   they don't have the battery budget to run the heart rate data all night long, they are limited

02:32:33   in kind of mostly they can just do the kind of things I do in Sleepless Plus, where they can say,

02:32:38   "It seems like you slept about this long, and you were generally asleep in ways that we can

02:32:44   be confident about this often." And I think that's meant that they, instead, rather than being a

02:32:50   clinical approach with sleep tracking, they're going the behavioral model for sleep tracking,

02:32:54   and they're just trying to do all the things that they can say. It's like, "We're going to

02:32:58   influence—you can make good choices to help you wind down and kick off this shortcut an hour."

02:33:05   Now it's time for wind down, and you'll get a little tap on your wrist and say, "Hey,

02:33:09   you said you wanted to go to bed at 10 o'clock. It's 9.30. Maybe you should calm down. Would you

02:33:16   like to listen to some calm music?" They're going down that road where it's very much like this

02:33:22   behavioral modification version of sleep tracking, which I think makes sense because of the data they

02:33:27   have and because of what they could show you. They don't overpromise and say that it's a really

02:33:33   powerful sleep tracker, because it isn't. There are better sleep trackers out there. If you have

02:33:38   sleep apnea and need to track your sleep in great detail, the Apple Watch is not the device for you.

02:33:44   But what they're saying is, hopefully, the Apple Watch ends with sleep tracking on the Apple Watch

02:33:48   and WatchOS 7, it'll encourage you to sleep more and to have better sleep patterns and hygiene that

02:33:56   you're going to turn off your phone earlier and you're going to go to bed at a more consistent

02:34:02   time, which are the actual changes that you can actually make to your sleep. You can't change if

02:34:07   your kid wakes you up in the night, but you can certainly turn off your phone an hour before you

02:34:12   go to bed and not just stay up late reading Twitter or watching movies. That's a choice

02:34:17   that you can make, and so they can encourage you there. And then for the actual data perspective,

02:34:23   my model gets a little bit better because now they're also recording. The Apple Watch records

02:34:28   when it thinks I'm asleep. And so that is a confirmation or an adjustment that I can feed

02:34:34   into my model. Because if I didn't think you were awake, but the Apple Watch does think you're awake,

02:34:40   there's a very good chance they're right and I'm wrong because they're operating at a much lower

02:34:44   level, even if not with necessarily way more data. They definitely have a better amount of data,

02:34:51   and certainly better machine learning and a giant team of data scientists, I'm sure, who've finally

02:34:56   tuned their model. I'm just a guy in my basement writing codes. So you've got to imagine their data

02:35:01   is better than mine, so my model got better in watchOS 7. But for people who just want to track

02:35:07   their trends and get a sense of, "When do I go to bed on Tuesday nights?" The Health app is hopeless

02:35:12   for that kind of stuff. So Sleepless Plus is an app that is useful for everybody, even if they

02:35:18   do have watchOS 7 and use the system sleep tracking. Right. Like maybe Tuesday nights is

02:35:23   your basketball league or your volleyball and you exercise it, but it's for working professionals

02:35:28   and you play late games and you're exercising late in the day. And, oh wow, look at that. Every

02:35:34   Tuesday night I actually wind up sleeping earlier because I did this exercise, even though it was

02:35:40   later at night. Or maybe vice versa, maybe you come home and you're excited because you were,

02:35:44   you know, one way or the other, you might notice a trend. Yeah, I don't know why I kept up with it. I

02:35:51   honestly enjoy it. It's just interesting to me, and I did notice some trends. I don't know if it's

02:36:01   because of it. I have been going to bed earlier. I'm looking at my last seven days. I'm nowhere

02:36:06   close to 4 a.m. So sure, that's good. I don't need to like undo the John Gruber feature where I

02:36:13   push that to 6 a.m. No, but it is interesting and I'm glad to hear it. You know that it's like

02:36:19   to raise the awareness. I find it fascinating to do it. And I think like with all of the Apple Watch

02:36:27   sensors, I'm not sure any one of them is more accurate than a dedicated sensor, right? Like the

02:36:33   pedometer aspect is pretty close in my opinion. Like the times where I've actually like

02:36:40   like at Disney World or something. Like I haven't done it in years because it's got just too

02:36:46   accurate. But like you where you could go on Google Maps and measure a long walk and see what

02:36:52   the watch said. The watch was accurate enough where I don't know that any kind of pedometer

02:36:56   would be more accurate. But like for all most of the sensors, sure, you're going to get a more

02:37:02   accurate blood oxygen level from a dedicated blood oxygen sensor than the one on the watch, but it's

02:37:08   good to have it on the watch, right? And I think with that, it's what the value of the sensors on

02:37:15   the Apple Watch is there sort of the fact that they're always happening in the background and

02:37:20   you don't have to think about it. You don't have to go and look and like if you had a blood oxygen

02:37:24   sensor, you can have one of those little like finger clippy things that you picked up at CVS

02:37:28   Pharmacy. You'd have to go and remember to use it regularly for that data to be useful. Whereas what

02:37:35   the Apple Watch is doing is it's just always on in the background. There's like this ephemeral data

02:37:40   collection that you can then go back and look at. And that's I think where it becomes really

02:37:46   powerful. It isn't that it's the best at any one of those things necessarily. I think of the way

02:37:51   that Apple would say that they have the best camera in the world. I think that's a comment

02:37:57   that they would say, and they really mean it. When they say they're the best camera company in the

02:38:00   world, they mean it. And I don't think they would say that they are the best sleep tracker in the

02:38:05   world. And if they do, they're being a bit disingenuous because a dedicated device that is

02:38:10   doing huge amounts of things and is probably the size of a small iPad that you have to strap to

02:38:15   your head, that's probably going to be able to get more data out of it. But it's a good device. It can

02:38:21   give you enough data to encourage behavioral change and to give you awareness. Because I think what

02:38:27   you were saying, it's like you don't know why you do it, but you still kept up with it with sleep

02:38:30   tracking. What I've seen time and time again from customers is it's just making you aware of

02:38:36   something that you otherwise would never be aware of. Because you're never going to write down every

02:38:40   morning when you wake up, "When did I go to bed? When did I wake up?" and just keep track of it.

02:38:43   You're never going to do that. So it's never going to be a data that you can be aware of. And so once

02:38:49   it's something that is measurable and is measurable in a way that is ephemeral, you don't have to do

02:38:53   any work for it. The only work you have to do to track your sleep with an Apple Watch is make sure

02:39:01   that it's charged before you go to sleep. And you just get into a few habits with that of charging

02:39:06   it and you'll be fine. And once you've done that, now that data is there. And you don't have to check

02:39:11   in on it all the time. Like if you didn't open Sleep++ for three weeks and then you open it again,

02:39:16   I'll still have all the data that has been collected during that period. And it's available

02:39:20   to you, and if you're curious about it or it becomes a thing that you're aware of and it helps

02:39:26   you make choices that are like—it's not like it's punitive, but if you don't get a lot of sleep,

02:39:31   the line in Sleep++ that was that night will turn a subtle shade of red. And it'll be like, "Hey,

02:39:38   maybe that wasn't so good." And it's not going to be mean about it, but it's just saying, "Hey,

02:39:43   that's a situation you found yourself in, and it could be better." And that's because you don't

02:39:49   have to think about it. It's great. Don't eat three slices of pepperoni pizza at 12.30.

02:39:52   Yeah. So it's like, "I do that." I will say the other thing I got confused about upgrading to

02:39:58   watchOS 7, which I did by starting with this new review unit watch, was I went through,

02:40:05   like I said, I set up the defaults. I was interested in the sleep tracking feature,

02:40:10   and they were like, "Do you want to track your sleep?" And it's like, "Okay." And it's like,

02:40:12   "What time do you usually go to bed?" And you put it in. And then all of a sudden,

02:40:16   without really asking for it, I was set up with the, "Hey, it's an hour from now. You want to go

02:40:22   to bed? Do you want to start winding down?" And it locks your phone out. And it's like,

02:40:26   "I don't want this. I find it patronizing. I'm a grown man. I don't need to be told to go to bed."

02:40:32   And again, if you like the feature, maybe you do need it. Maybe you get distracted and you play

02:40:38   video games later tonight. And it's helpful for you to have your watch say, "Hey, maybe you should

02:40:43   go to bed," and you'd lost track of time. I'm not saying, I don't want to be too judgmental about

02:40:47   it, but I hate the feature. But I also feel like part of that is Apple's desire to save battery

02:40:53   life because you go into that sleep mode on watchOS 7, and it turns the always-on display off,

02:41:00   and you have to tap it to see something. And you can see why Apple, as a company that wants to both

02:41:06   encourage people who are interested to wear their watch all night, but also doesn't want people to

02:41:11   feel like now they don't know when to charge it, to encourage them to use a mode where the screen

02:41:17   goes completely off, even with a "always-on display." And I think that sleep mode,

02:41:24   I mean, previously I've always had to just put it in—I got into the habit, I always flipped my

02:41:28   watch into theater mode when I got into bed, because that was just the way you had to do it

02:41:33   before. But what's weird with the sleep mode is the way that Apple tries to schedule it and have

02:41:38   it be this automatic thing where I find it kind of annoying where it also turns off the sleep mode in

02:41:46   the morning based on the time that you've said that you typically wake up. And I've definitely

02:41:52   had times when I'm sleeping in for whatever reason—I went to bed late, or I was up in the

02:41:58   night with a kid or whatever it is—and I feel like I've been woken up by the bright light of the

02:42:04   always—my new Apple Watch has a very bright always-on display, which they talked all about

02:42:10   it in the thing. It's twice as bright or three times as bright or whatever it is. They are true,

02:42:15   because in a dark room it has woken me up. And I did not set an alarm. I did not want this bright,

02:42:21   blaring light to be from my wrist as I'm lying my arms next to me on the pillow. And so I wish

02:42:29   that they didn't quite go down that road of it being so scheduled. It's like, "No, when I go to

02:42:35   bed, I'll hit the button. I'm in a dark room. It's going to be very obvious that I have not put it in

02:42:40   sleep mode yet. And in the morning when I wake up, it's going to be very obvious when I look for the

02:42:44   time and my screen is black. And turning my wrist, it still is black. I'm going to remember to turn

02:42:50   off sleep mode." And so I think that's—I've turned almost all of that off at this point for myself.

02:42:54   I had it on just so I'd know how it worked, but for myself, I've turned it all off and I just

02:42:58   manually put it in sleep mode and manually take it out of sleep mode in the morning.

02:43:01   Yeah, that's what I do too. And the only thing I automate is I automate Do Not Disturb,

02:43:05   which is what I've been doing ever since it was a feature. When I say, "Just don't send me

02:43:09   notifications between this hour and that hour," but then other than that, I manage it manually.

02:43:16   Yeah, and God help you. I mean, the only thing worse than your always-on Series 6

02:43:21   bright display waking you up in the middle of the night is waking up whoever you are in bed with.

02:43:26   Yes, that's not what you want. Why is there this beaming beacon of light stuck in our bed? This is

02:43:35   not sustainable. It is. But it's always like, "Be careful what you wish for." It's like,

02:43:41   I've been clamoring for an always-on display since the very first watch. I spent an embarrassing

02:43:45   amount of my Series 0 watch review complaining about the fact that the display isn't always on,

02:43:51   and I thought it was nothing but upside once they get the battery life to the point. And then I went

02:43:55   to bed with a very bright watch and I was like, "Oh, there is a downside." All right. Well, you

02:44:03   have been extremely generous with your time in an extraordinarily busy week. But what a great time

02:44:10   to have you on the show for the first time, David. I really appreciate it. So your apps,

02:44:16   59 apps, we can't talk about all of them, but there's WidgetSmith and WatchSmith and Sleep++,

02:44:22   which we've mentioned. Any other apps you want to toss out there?

02:44:25   I think the only other app that I think is that's been a standby for me for many years is Perometer

02:44:31   ++, which is my step-counting app. And I feel like those four, WidgetSmith, WatchSmith, Sleep++,

02:44:37   and Perometer++, that's my business at this point. Those are the ones that have survived out of the

02:44:42   59. Yeah. You know what? And speaking about, you said how you did a calendar app and that helped

02:44:47   you with WidgetSmith. Being so hooked into the health system had to have been a huge leg up,

02:44:53   because that's just not Apple's fault. It is complicated because it has to be complicated

02:44:59   for privacy reasons alone. Yes. It is one of the more convoluted systems, for a good reason. And

02:45:09   I think they do a really good job of making it usable, but also, yeah, there are a lot of

02:45:16   weird edge cases in the health system that I've spent a lot of time and a lot of gray hairs on.

02:45:21   Right, with Perometer+ and gray hairs, plus, plus.

02:45:27   Podcast-wise, you do have a podcast with Marco Arment, Under the Radar, which you can search for

02:45:34   in your podcast app of choice, which is probably Overcast.

02:45:39   I hope so.

02:45:39   And it will probably show up as the number one hit and not number two,

02:45:44   from a podcast called Under the Radar Color Podcasts. Yeah.

02:45:53   Thank you so much for being here. What else? Oh, of course, Twitter, you are

02:45:57   _DavidSmith, where the underscore is an actual underscore.

02:46:02   Yeah.

02:46:03   Have you ever seen—there's an old—I think it was McSweeney's Internet Tendencies, where it was like

02:46:13   10 worst email addresses in history to read over the phone.

02:46:18   Oh, I think I've seen this kind of thing, yeah, where it's certain punctuations and things,

02:46:22   or is it actually a word or is it a number? Right, it's a mixture of like, you know,

02:46:27   U-N-D-E-R-S-C-O-R-E underscore. But then, you know, anyway, I'll put it in the show notes. I swear.

02:46:33   It occurred to me whether or not your underscore in _DavidSmith is an underscore or the word,

02:46:42   but people will find you. Anyway, thank you so much. It has been an absolute delight.

02:46:47   [BLANK_AUDIO]