Under the Radar

208: The Road Ahead


00:00:00   Welcome to Under the Radar, a show about independent

00:00:03   iOS app development.

00:00:04   I'm Marco Arment.

00:00:06   - And I'm David Smith.

00:00:07   Under the Radar is never longer than 30 minutes,

00:00:08   so let's get started.

00:00:10   - So I have a wonderful update, Dave.

00:00:13   A few episodes ago, I forget exactly how long it was,

00:00:17   I had asked about advice about what to do

00:00:19   when I was modernizing my app code base into Swift,

00:00:24   and I needed to rewrite my watch app.

00:00:27   I had asked you whether I should do it in Swift UI,

00:00:30   which would involve a complete rewrite,

00:00:32   throwing away a whole bunch of UI code,

00:00:34   but UI code that was for WatchKit, which I hate,

00:00:38   and that was old and crusty,

00:00:39   and it would be good to get rid of,

00:00:41   and I am happy to report that I took your advice

00:00:45   at the time, which was, yes, go ahead

00:00:47   and rewrite it in Swift UI,

00:00:49   and as of roughly today, it's almost done.

00:00:54   I have almost the entire core of it all done,

00:00:57   all rewritten, all working, I'm using it now on my watch.

00:01:00   Yesterday, I got local audio playback working again.

00:01:03   Everything's integrated, everything is using

00:01:05   the same sync engine as the desktop,

00:01:07   or as the, wow, as the iOS version.

00:01:12   - Which is on the desktop now.

00:01:13   - Yes, it is, it's on my desktop at least.

00:01:15   That's the story of another day, though.

00:01:18   So happy to report that that is almost complete,

00:01:23   and I actually, I should have it in beta

00:01:24   in the next couple days, and it's gone very well.

00:01:29   There are things about Swift UI

00:01:31   that are incredibly rough edges, incredibly,

00:01:34   and there is so much about it that is undocumented

00:01:37   or poorly documented, and there's so much about it

00:01:40   that is confusing and a little bit ugly

00:01:42   and a little bit hacky, but overall,

00:01:47   this project has been a success,

00:01:49   and overall, I think I might like Swift UI.

00:01:54   It's still a bit of a might there,

00:01:57   'cause there are so many weird situations.

00:02:00   Once you leave the beaten path of what would look good

00:02:05   on a conference slide and start having real world needs,

00:02:09   like, okay, well, what happens when this data has to change

00:02:12   as a result of a sync action,

00:02:14   or how do you persist this data,

00:02:15   or how do you react to this strange situation

00:02:19   that you have in real life all the time?

00:02:21   Swift UI has still a lot of rough edges

00:02:23   and a lot of hackiness around a lot of those conditions,

00:02:25   but I'm happy to report that if you are willing

00:02:29   to drop a lot of your, quote, requirements

00:02:32   of certain custom behaviors or special appearances,

00:02:37   and if you're willing to just kinda let Swift UI

00:02:39   be Swift UI and kinda come to it on its own terms,

00:02:42   if you're willing to rewrite a whole lot

00:02:44   of your data layer stuff to adopt

00:02:46   the new observable object protocols and stuff like that,

00:02:49   then it actually can be pretty cool,

00:02:53   and I actually have been able to do quite a lot of UI work

00:02:56   pretty quickly, and there's parts of it

00:03:00   that go very slowly, but overall,

00:03:03   I've actually been fairly happy with it

00:03:05   in the context of a watch app

00:03:08   that can require mostly the latest OS.

00:03:12   In other contexts, like, I haven't brought any of it

00:03:16   to the phone yet.

00:03:17   I did, actually, over the break,

00:03:19   I actually did very quickly write a, like,

00:03:21   throwaway single-screen coffee calculator app

00:03:25   entirely in Swift UI for iOS only.

00:03:28   It's not released, so please don't ask,

00:03:30   but it might someday be.

00:03:32   It's actually easier to put something in the App Store

00:03:35   rather than trying to, like, have this app on your phone

00:03:38   that you launched four times a year

00:03:41   and have that actually work without, like,

00:03:42   something expiring, but, so it actually might release

00:03:45   to the App Store, but anyway, overall,

00:03:47   I'm very happy with Swift UI on the watch,

00:03:51   and I'm looking forward to a time

00:03:54   when I might be able to use it on iOS,

00:03:56   like, in the iOS app, and that might start this year,

00:03:59   I think, which we'll get to in a minute,

00:04:00   but overall, the watch project, I'm very happy.

00:04:04   You convinced me to go that direction.

00:04:06   It went very well, and it's almost done.

00:04:08   - That's wonderful to hear, and I think it gels a lot

00:04:11   with my experience with Swift UI,

00:04:13   that I think there is this, it's like there is this

00:04:16   very uncomfortable period at the beginning

00:04:19   of doing Swift UI work, where because of the lack of,

00:04:23   I mean, I think both, there's a lack of documentation

00:04:26   and kind of a difficulty there, or even just,

00:04:28   I mean, it looks like documentation is a tricky thing.

00:04:30   It's like there are good resources for Swift UI that exist.

00:04:34   They're just not first party,

00:04:36   but I think there's this really awkward period

00:04:37   where it, because it's so different conceptually

00:04:41   than any other sort of experience I've had

00:04:44   in building things, that there's just, like,

00:04:45   you have to hit your head into a wall for a while

00:04:49   and it's uncomfortable and not pleasant,

00:04:51   and then suddenly you break through to the other side,

00:04:53   and it's like, huh, okay.

00:04:55   Like, I can kind of get this.

00:04:57   And there's some things about it

00:04:59   that are just super awesome and amazing.

00:05:01   And so it's sort of, having a project to start out with,

00:05:05   I think, is a great place, and I think the watch app,

00:05:07   I'm so glad to hear, turned out to be that for you,

00:05:09   'cause I think, and that was my experience.

00:05:11   I learned Swift UI on the watch as well,

00:05:13   and I think it's a really good context for it,

00:05:15   because just the use cases and the complexity

00:05:19   of what you're doing are so much simpler, necessarily,

00:05:22   because it's on a watch, that it's a great place

00:05:26   to kind of play around with that,

00:05:28   whereas on an iOS, the expectations are much higher,

00:05:31   the screen size is much higher,

00:05:32   the layouts are much more nuanced and complicated,

00:05:35   so it sort of necessarily makes sense

00:05:37   that it's harder to learn there.

00:05:40   But yeah, that's great to hear,

00:05:42   and I'm glad that you're stepping firmly into 2021,

00:05:47   into the modern age, writing apps in Swift and Swift UI.

00:05:52   It's very cool.

00:05:53   - Yeah, and the Swift side of it

00:05:54   is also working out very well for me.

00:05:56   I'm finally, it's funny, I crossed a threshold yesterday

00:06:00   where I had to work inside

00:06:03   of some Objective-C classes yesterday,

00:06:06   and as I was writing the code, I was thinking,

00:06:08   man, I wish I was writing in Swift right now.

00:06:11   Like, the Objective-C versions of what I was writing

00:06:14   felt more cumbersome, and it wasn't for any

00:06:17   significant reason, it was like a semicolon here or there.

00:06:20   It wasn't that big of a deal, really.

00:06:22   Like, the things that programmers complain about

00:06:25   are often greatly exaggerated. (laughs)

00:06:28   But I was very happy to be at that point now,

00:06:32   and I realized, too, as I go through different,

00:06:35   rewriting certain classes or writing new code in Swift,

00:06:40   I notice just how many methods or refinements

00:06:45   or name changes or things like that

00:06:49   have only started being used very recently in the OSes,

00:06:52   like as of iOS 13, or some of the things I was doing

00:06:55   were on file handles, and file handles

00:06:59   completely changed their API in iOS 13.4.

00:07:04   (laughs)

00:07:05   - Oh, great.

00:07:06   - And so, in a way that makes things a little bit cleaner

00:07:09   with exception handling and stuff, and so,

00:07:10   there's a lot of things that changed then,

00:07:12   and instantly deprecated the previous versions,

00:07:13   and so I actually am requiring for the next update

00:07:17   to overcast whenever it comes out,

00:07:18   it's still a little bit out, but I'm actually

00:07:20   gonna require iOS 13.4, which is strange.

00:07:25   - Why not?

00:07:26   - But it makes certain things easier,

00:07:27   and there's so many things like that where

00:07:29   I'm actually, not only am I getting into Swift finally

00:07:33   for real this time, but I'm actually happy

00:07:36   that I waited this long, because a lot of this stuff

00:07:41   has gotten nicer in fairly recent versions of the OS,

00:07:45   and a lot of this stuff I really couldn't adopt

00:07:49   a lot of the niceties of a lot of this stuff

00:07:51   until I could require, say, iOS 13.

00:07:54   And that hasn't, like, my shipping version

00:07:56   still is on 12, I'm gonna drop that soon,

00:07:58   but most of this is happening very recently,

00:08:01   and SwiftUI, yeah, it came out last year,

00:08:04   but SwiftUI requires iOS 13 and watchOS 6,

00:08:07   and I can only reasonably require those versions

00:08:10   of the OS for my user base, like, around now.

00:08:14   So I really couldn't have adopted SwiftUI earlier

00:08:16   than I did without significant user loss,

00:08:19   and I'm actually very happy that I didn't adopt Swift

00:08:22   as heavily as I am now until very recently,

00:08:25   so I could also take advantage of stuff on the iOS side.

00:08:29   - Yeah, and I think that'll make sense.

00:08:30   I mean, there's always that attention there

00:08:32   in terms of the, you know, this, like, speed

00:08:35   versus ultimate ease, because the longer you wait,

00:08:38   the easier many things will often become,

00:08:41   and there's less sort of rework or change

00:08:43   or things like that that you have to navigate,

00:08:45   but it certainly is, you know, it's like,

00:08:47   if you wait too long, it becomes problematic,

00:08:48   but it sounds like, you know, in terms of where you are

00:08:51   and with overcast going forward this year,

00:08:53   like, it seems like you're in a pretty sweet,

00:08:54   you know, good place where you're comfortable

00:08:58   with the new tools and the new technologies

00:09:01   to a sufficient degree that you can adapt

00:09:03   and sort of adopt them as you go going forward

00:09:07   into this year, and you don't have sort of this wall

00:09:12   that you had to climb at the end of last year.

00:09:14   Now, that's like, if you've done that, it's behind you,

00:09:17   and now you can just kind of move forward

00:09:18   into doing whatever feature work or things

00:09:20   that you sort of want to do in this year.

00:09:23   - Exactly, and you know, and a lot of this stuff,

00:09:25   like, you know, for different programmers,

00:09:27   the timing of when is best for you to jump

00:09:29   into something new is very, very different,

00:09:31   and a lot of this is just because

00:09:32   of the kind of programmer I am.

00:09:34   If I was more into, like, being, like,

00:09:38   on the cutting edge of things, tooling or language design

00:09:41   or anything else, I would've and should've

00:09:43   jumped into Swift much, much earlier than this.

00:09:46   If I was really into, like, influencing the direction

00:09:50   of the language, like, you know, posting on the groups

00:09:52   and, you know, making pull requests

00:09:54   and talking about proposals, like, all that stuff,

00:09:57   again, earlier would've been better,

00:09:59   but I'm not that kind of programmer.

00:10:00   I like to go in to a new environment,

00:10:04   you know, a platform, a tool, a language,

00:10:07   when all that stuff has been worked out,

00:10:08   when it's pretty stable, pretty mature,

00:10:11   and has a lot of niceties already built in

00:10:13   from having many years of evolution

00:10:16   and refinement and experience.

00:10:18   Like, you know, I wanna go in not when it's, like,

00:10:21   you know, the city's under construction

00:10:23   and everything's being built and everything's in flux.

00:10:24   I wanna go in when, like, it's like a movie futuristic city

00:10:29   where, like, everything is, like, clean and polished,

00:10:32   not like the bad future cities, but, you know, like,

00:10:34   what futuristic cities used to be depicted as.

00:10:37   Like, you know, everything is, like, clean and perfect

00:10:39   and advanced and everyone's flying around and flying cars

00:10:41   and everything's, like, that's what I want

00:10:43   when I enter a new language.

00:10:45   I want it to be at that stage of its evolution,

00:10:47   not the, like, you know, rough and tumble early days,

00:10:50   which many people find very exciting,

00:10:52   but that's not for me, because, like,

00:10:54   I'm not a language nerd at all

00:10:56   and I don't tolerate any problems with the tooling.

00:10:58   And that's, again, like, Swift UI is still

00:11:01   in those early days, which is why it was hard for me

00:11:03   to adopt that at first.

00:11:05   But Swift itself is very much not,

00:11:07   and it's way past those, and so Swift itself

00:11:10   and the frameworks on iOS and everything that use Swift

00:11:14   or that Swift has been adopted for,

00:11:15   it's significantly in a better place.

00:11:18   - Yeah, and I think it's really the only downside

00:11:21   of that strategy, and I think I generally am

00:11:22   in the same place as you, except for the sense

00:11:24   that for my work, I enjoy, well,

00:11:28   my pattern has been to adopt things as soon as I can,

00:11:32   typically, in terms of new framework features

00:11:36   and, you know, iOS capabilities.

00:11:38   And that has been typically, like, in the early,

00:11:41   you know, the first maybe two years of Swift,

00:11:44   it didn't matter if I was Objective-C or if I was Swift.

00:11:47   And it's only been in the last couple of years

00:11:50   where I feel like last year where it was,

00:11:52   you know, if I wanted to do a proper watch app,

00:11:54   I needed to do SwiftUI.

00:11:56   And if I, and then this year, it was, you know,

00:11:58   if I wanted to do widgets, I had to use SwiftUI as well.

00:12:02   And so there's, we're starting to get to, I think,

00:12:04   the place also where, you know, if you want to be able

00:12:07   to do the latest and greatest, Apple is no longer,

00:12:11   you know, doing that in a way that you can just,

00:12:16   you know, still be doing things the old way.

00:12:18   Like, it's all the new way now.

00:12:20   And it certainly makes sense, you know,

00:12:21   SwiftUI and what they're doing with it.

00:12:23   And the way that it works with widgets, like,

00:12:25   is very cool, and I think it's a very clever

00:12:28   technological solution, but it's like,

00:12:31   regardless of that, that's the direction that they're going.

00:12:33   And so I think it's definitely an interesting place to be

00:12:36   as I, like, look forward into this year.

00:12:38   It's like, I feel good that I feel competent

00:12:41   with Apple's core technology stack that there is,

00:12:45   like, they're gonna almost certainly be putting

00:12:48   at front and center in all of the new things

00:12:49   that they announce this year.

00:12:52   That, you know, being competent with SwiftUI

00:12:54   seems very important right now.

00:12:57   If you want to make an app that is, you know,

00:12:59   gonna be able to do sort of the latest and greatest

00:13:02   cool stuff on iOS, because that's just where Apple is.

00:13:05   And that's, you know, the key theme of WDC last year

00:13:08   was very much like SwiftUI, it's a little early,

00:13:12   it's a little young, but this is,

00:13:14   we're not joking about this, this is for realties,

00:13:17   this is what we're gonna be doing for a long time,

00:13:20   and, you know, sort of get on board as soon as you can.

00:13:23   - We are brought to you this week by Command Line Heroes.

00:13:27   This is a podcast that tells epic true tales

00:13:30   of developers, programmers, hackers, geeks,

00:13:32   and open source rebels who are revolutionizing

00:13:35   the technology landscape.

00:13:37   Season six of Command Line Heroes is available now.

00:13:41   This season tells the stories of black technologists

00:13:43   who innovated and invented, despite systemic racism,

00:13:47   unfair hiring practices,

00:13:48   and unequal education opportunities.

00:13:50   There's an episode all about Gladys West,

00:13:52   whose mathematical models and data analysis

00:13:55   paved the way for GPS.

00:13:57   Another episode tells the story of Jerry Lawson,

00:13:59   who invented the first cartridge-based video game console,

00:14:02   paving the way for Atari, Nintendo, and Sega.

00:14:05   I was always a Sega person.

00:14:06   Another episode tells the story of Mark Dean,

00:14:09   who grew up in the Jim Crow South,

00:14:11   and grew up to revolutionize the PC industry

00:14:13   with the ISA bus.

00:14:15   I remember ISA cards.

00:14:16   My first card was an ISA card.

00:14:17   It's a sound card.

00:14:18   Anyway, season six of Command Line Heroes sounds awesome.

00:14:22   I've added it to my podcast app, of course, Overcast,

00:14:24   so I can listen to it, 'cause this sounds fantastic to me.

00:14:28   This is right up my alley,

00:14:28   and if you listen to this show,

00:14:29   it's probably right up your alley, too.

00:14:31   Search for Command Line Heroes anywhere

00:14:33   you listen to podcasts, especially if it's Overcast,

00:14:35   and we will include a link in the show notes.

00:14:38   Our thanks to Command Line Heroes

00:14:40   for their support of this show and Relay FM.

00:14:42   - So I think it seems like a good place, right,

00:14:46   at the start of the year,

00:14:47   to sort of think through what we kind of expect

00:14:50   for this year, not in the sense of predictions

00:14:53   in a formal way, but I was just,

00:14:55   I feel like this is always the week where,

00:14:58   we've had the holidays, I took some time off

00:15:00   for the first time in a while.

00:15:02   Actually didn't work for a few days, which was nice.

00:15:05   It's like coming back was a little rough on Monday,

00:15:07   but I'm back, and I start to think forward.

00:15:09   I start to think about, okay,

00:15:11   what is this year gonna look like?

00:15:13   And both in terms of like,

00:15:15   where do I expect my apps to go?

00:15:17   But I think at the first place was just trying to think

00:15:19   in terms of like, what are the kind of the layout,

00:15:23   like the big blocks of this year that I expect?

00:15:25   And are they different, obviously, in a world of COVID

00:15:28   where a lot of the typical scheduling

00:15:31   may be slightly adjusted?

00:15:32   And so I think the first place I was just sort of thinking,

00:15:35   trying to think through was,

00:15:36   what is the sort of developer schedule likely look like

00:15:40   for us this year?

00:15:41   And I think it's probably gonna be one of these sort

00:15:43   of a year, a little bit similar to last year,

00:15:46   but slightly more confidence and certainty

00:15:49   that I suspect WGC will be remote again.

00:15:52   I think that will almost, there's much,

00:15:55   it's probably more likely that it will be early June

00:15:57   rather than late June.

00:15:59   Like I think that's typically where Apple likes it,

00:16:00   and I think now that they're planning it,

00:16:02   and have a year of work from home and all that

00:16:05   under their belt, they're probably gonna be a bit more

00:16:08   confident about doing that.

00:16:09   And so I kind of expect they will go back to the normal

00:16:11   like first or second week of June.

00:16:13   It'll be a at-home WWDC.

00:16:15   Between now and then, I don't expect much in the way

00:16:18   of sort of developer things.

00:16:21   We're pretty high on the iOS builds as it is.

00:16:24   Like I think we're on .4 now, I think, of iOS.

00:16:28   And so like it seems pretty, I think we're getting

00:16:32   fairly old and mature at this point.

00:16:34   So it seems less likely that we're gonna have,

00:16:35   like I think last spring there was the iPad cursor support

00:16:40   that came out, and that was kind of a relatively large

00:16:42   developer feature mid-cycle.

00:16:44   But I think we might, if I'm just guessing now,

00:16:46   it seems we're fairly set between now and June,

00:16:49   and so I could sort of plan accordingly

00:16:51   with what I'm gonna do.

00:16:52   And then we'll have another WWDC and developer cycle,

00:16:56   and then in the fall iOS launch,

00:16:58   and we'll get a new set of hardware, and so on.

00:17:02   And I think that's the general framework of the year

00:17:05   that I'm expecting.

00:17:07   And beyond that, I think some things are gonna be

00:17:11   sort of very quiet this year, that I think

00:17:13   there will continue to be conferences or sort of

00:17:17   things like that, but they'll all be remote

00:17:19   for at least between now and WWDC.

00:17:21   There's not gonna be a lot of opportunities

00:17:23   for things outside of that.

00:17:25   And I think in terms of actual opportunities,

00:17:29   like who knows what the next version of iOS

00:17:31   is gonna include.

00:17:32   But I think at a broad strokes, we have another,

00:17:35   we have six months of probably clear skies ahead of us

00:17:39   from a developer perspective in terms of

00:17:41   we can choose what we're gonna work on,

00:17:43   not much is gonna change in the environment around us,

00:17:45   and we could just sort of go full steam ahead

00:17:46   in whatever direction we decide based on

00:17:50   sort of the position we find ourselves in now in January.

00:17:54   - Yeah, that all sounds pretty much right to me.

00:17:55   I also agree that WWDC is almost certain

00:17:59   to be remote again, because as much progress

00:18:02   as we're making in the world here,

00:18:04   I don't think June is gonna be a time

00:18:05   when anybody's gonna have a 5,000 person

00:18:07   in person conference, that's a little soon.

00:18:11   And Apple also would be, I think, fairly conservative

00:18:15   with when they would do that again.

00:18:16   So I bet Apple won't have anything in person

00:18:19   possibly the entire year.

00:18:21   Certainly not the first half of the year.

00:18:23   But anyway, looking at the tech side of things,

00:18:28   I think it's interesting to look at where we are

00:18:30   on the different platforms and kind of assume

00:18:34   where things might go from there.

00:18:36   It seems like all the action this year

00:18:40   is going to be most likely, I think, on the Mac

00:18:44   and in the area of potential AR thing later in the year.

00:18:49   You know, we've heard rumors for so long, so many years,

00:18:53   this is gonna be the year of Linux on the desktop

00:18:55   and this is gonna be the year that Apple releases

00:18:56   the AR headset. (laughs)

00:18:58   But the rumors of that happening this year

00:19:02   are really heating up recently and are coming

00:19:04   from sources that are historically usually more accurate.

00:19:09   And it sure is sounding like a significant possibility

00:19:13   that we might get something like an AR development kit

00:19:16   this year, even if the product itself,

00:19:18   like the glasses or whatever, is not ready yet.

00:19:21   And there's a reason why Apple's been pushing so heavily

00:19:24   into putting LIDAR sensors and all the things and everything.

00:19:27   It's not just for better table demos.

00:19:30   There's probably a better reason.

00:19:31   And so I think, you know, looking at the platforms,

00:19:35   iOS itself seems pretty immature, pretty stable.

00:19:40   Like quality and stability-wise, iOS 14

00:19:42   has been a remarkably good release for me.

00:19:44   Have you seen the same thing?

00:19:47   - Yeah, I mean, I think broadly speaking,

00:19:48   it's been very stable, certainly compared to 13

00:19:50   in the early days of 13. - Yeah, yeah.

00:19:53   Not saying much for me.

00:19:54   - You know, there are still areas that always get frustrated

00:19:56   with like opening the Settings app

00:19:58   and the Settings app getting stuck for some reason

00:20:01   is still one of these things that like haunts my phones

00:20:03   and I have no idea what's going on there.

00:20:04   But otherwise, I don't think there's any sort of regular

00:20:08   annoyances or issues that I have on iOS 14.

00:20:10   - Yeah, like it seems like iOS

00:20:12   is in a very good place right now.

00:20:14   And it's also, you know, after 14 major releases,

00:20:18   it's, you know, the new stuff that comes every year

00:20:20   is not that mind-blowing.

00:20:22   It's not that life-altering for developers.

00:20:25   You know, it's incremental progress here and there.

00:20:27   And so I think we're gonna keep seeing that.

00:20:29   iOS is pretty mature.

00:20:30   I also think that, you know, you're looking

00:20:31   like on the Mac side, there's a lot of excitement right now

00:20:34   happening around the Mac, both I think internally in Apple

00:20:38   for the first time in possibly eight or nine years

00:20:43   and certainly externally.

00:20:44   And I think that has come at the cost of the iPad

00:20:50   to a large degree.

00:20:51   And not to say that they're, you know, ignoring the iPad,

00:20:54   but I think the iPad has lost like favored child status

00:20:59   among certain priorities maybe for the time being.

00:21:04   Because I think what we're seeing is that, you know,

00:21:06   the iPad got a lot of attention, a ton of attention

00:21:09   for a while on the consumer side.

00:21:12   The pro side of the iPad has gotten like bursts of attention

00:21:16   every few years, but they've been strong

00:21:19   when they've happened.

00:21:21   But I think what we're seeing now is Apple has redirected

00:21:23   that like pro focus of like what is high-end computing

00:21:27   on our platforms and where does that happen?

00:21:29   I think Apple for a while was trying to push that

00:21:30   to the iPad and now they've significantly gone back

00:21:34   to the Mac in that area.

00:21:35   And that's, I love that 'cause I've been on, you know,

00:21:38   a Mac person the whole time, so it's very good news for me.

00:21:41   I apologize to iPad people out there.

00:21:43   But I think overall that's likely to continue into 2021

00:21:48   where I think it's gonna be a pretty quiet year

00:21:52   for high-end iPad users.

00:21:55   You know, I mean hardware-wise, who knows what they're doing

00:21:57   like the 2018 iPad Pro is basically still

00:22:01   the current iPad Pro with very few changes.

00:22:04   But I also don't see a lot of need for them

00:22:08   to push that performance higher and higher and higher

00:22:10   when the software is not really getting there to support it.

00:22:12   So I think the iPad's gonna be pretty quiet still

00:22:15   for a while.

00:22:16   Looking at, you know, software platforms,

00:22:18   I think the Mac still is like greatly in flux.

00:22:21   You're in the middle of this transition,

00:22:23   you're in the middle of both the hardware

00:22:25   and like a software UI transition on the Mac.

00:22:28   And so that I think is gonna get all the attention.

00:22:30   So I think where all the heat is gonna be this year is

00:22:33   the Mac, you know, a little bit on the iPhone

00:22:36   'cause it's always a little bit on the iPhone,

00:22:37   but not like significantly, almost none on the iPad.

00:22:41   And then if that AR thing happens,

00:22:43   where we get at least a developer kit this year,

00:22:46   then that's gonna be like the new hotness.

00:22:50   Everything else seems pretty stable.

00:22:52   You know, the watch is pretty stable.

00:22:54   I don't expect, you know, the watch never changes

00:22:57   in major ways, so I don't expect

00:22:59   that's just all of a sudden start.

00:23:01   And so I think it's gonna be that kind of year.

00:23:02   You know, if you're mainly on iOS,

00:23:05   I think you're gonna have a pretty like nice,

00:23:07   you know, incremental slash quiet year.

00:23:09   And if you're the kind of early adopter,

00:23:11   I think the AR thing coming in could be

00:23:12   a really massive deal.

00:23:14   And if you're on the Mac, it's a pretty big year anyway.

00:23:17   - Yeah, and I think that sounds fairly reasonable.

00:23:20   And it's interesting though as you say that all through,

00:23:22   it's like in many ways it's a relief

00:23:24   because the main areas that like I do my work in,

00:23:28   I don't think are particularly going to be

00:23:31   in upheaval this year.

00:23:33   And that's comforting in some ways to have

00:23:35   a sort of potentially a more straightforward, easy year

00:23:38   that I can focus on refinement rather than on

00:23:40   like complete whole cloth creation.

00:23:44   'Cause you know, as much as it's like I'm excited

00:23:46   about what's happening on the Mac,

00:23:47   and I think it's, you know, I expect it's a year

00:23:50   that I will buy at least one, potentially more than one,

00:23:54   new Macs just to sort of, and it's like every time

00:23:56   they come out with a new, fancier, better, you know,

00:24:00   Apple Silicon Mac, I'm probably going to buy one

00:24:03   just because if it, I don't know how many times

00:24:06   they're going to be able to have this step change function

00:24:09   like improvement in my, in the performance

00:24:12   and my productivity on the platform,

00:24:14   but I will gladly take as many times

00:24:16   as they can do that this year.

00:24:18   Smart.

00:24:18   And then it's like, you know, the other things like AR,

00:24:22   like sure, it sounds interesting, but it's not as like

00:24:24   I have to see it, in my mind, I've never found

00:24:27   a compelling sort of thing that I felt I could do,

00:24:31   that I felt like I felt personally empowered

00:24:33   where it's, you know, it's a situation

00:24:35   that would make sense for me, so we'll have to see

00:24:38   certainly what happens there, and it's like if that's,

00:24:40   if the other platforms are kind of nice and straightforward,

00:24:43   that's great, like I can have a year where I focus on

00:24:45   just continuing to make like, you know, WidgetSmith,

00:24:48   WatchSmith, Pedometer, Sleep, like I can make these apps

00:24:52   just better and focus on just improvement,

00:24:55   and hopefully maybe I'll have a quieter summer

00:24:57   and, you know, it's, have a quieter year overall,

00:25:00   which would be nice in some ways.

00:25:02   - Yeah, I think we could all use a rest after 2020.

00:25:05   But also, you know, but I'm totally with you,

00:25:07   I think a year where you mostly get to just refine stuff

00:25:12   and add features and make stuff better

00:25:14   and maybe work on some of the like, you know,

00:25:16   underlying engine code, that's a great year to me.

00:25:19   I love that kind of year.

00:25:21   You know, there's a time and a place for the exciting,

00:25:23   you know, throw everything away, start over,

00:25:24   a new platform, those kind of years.

00:25:26   But we've had a bunch of those in the last decade,

00:25:29   and we could actually use some time to catch up,

00:25:31   especially in the last few years with the introduction

00:25:34   of SwiftUI and Catalyst and all these things that are like,

00:25:37   you know, massive like platform shifting things.

00:25:41   I think it's really nice to be able to actually have time

00:25:45   to adopt those, where you're not fighting like a,

00:25:48   kind of like a marketing cost year,

00:25:52   where they like redesign the OS or add dark mode,

00:25:56   or like things where like you are kind of forced

00:25:58   by market pressure or by technological changes,

00:26:01   you're kind of forced to adopt a new thing,

00:26:04   but it's not like that big of a deal for your app,

00:26:06   or it doesn't benefit your customers

00:26:08   in that many direct ways.

00:26:09   Like those I feel like are kind of overhead years,

00:26:11   where you're just kind of forced to churn

00:26:13   and do a lot of work that doesn't necessarily result

00:26:16   in like new marketable features.

00:26:18   I think this year will hopefully be the opposite.

00:26:20   Like, and we've had a bunch of those years recently,

00:26:22   so I'm glad to have one that this is finally looking

00:26:25   like it's probably gonna be more like a refinement year,

00:26:27   where you'll actually have a chance to add value

00:26:30   for your customers and hopefully not have like major

00:26:34   distractions or major technological churn needs

00:26:38   that you'll be forced to adopt and cost the other time.

00:26:42   - Yeah, I do think it's a funny thought

00:26:45   as I'm thinking through sort of what this year

00:26:47   might look like.

00:26:48   There's a non-insignificant chance that this is

00:26:51   the first year in the last 12 years

00:26:53   that I don't launch a new app.

00:26:55   - What?

00:26:56   - I know, right?

00:26:57   But I'm thinking about my situation and like where things are

00:27:01   with like the apps that I have and you know,

00:27:03   like the amount of work I have and the opportunities I have

00:27:06   like making Widget Smith, you know.

00:27:09   It's like I don't expect to launch a new app

00:27:10   and have it be as successful as Widget Smith ever again.

00:27:13   (laughing)

00:27:14   And so it's the kind of, so like the amount of work I have

00:27:19   just in sort of continuing to refine and develop

00:27:22   and flesh out and really take advantage of the position

00:27:27   that Widget Smith is in, like it feels like more work

00:27:31   than I could ever do.

00:27:32   And so like let alone having time to work on my other apps

00:27:36   and give them some attention as well.

00:27:38   And so it was just this funny thing when I was thinking

00:27:39   about this year and it's like, I mean,

00:27:41   it's sort of like never bet against the iPhone,

00:27:45   like never bet against me launching a new app.

00:27:48   But when I look at this year, I feel like the odds

00:27:51   are the lowest they've ever been for new app launching.

00:27:54   And who knows, maybe 2021 will be the year of no new apps.

00:27:57   We'll see.

00:27:58   - I'm not taking that bet.

00:27:59   (laughing)

00:28:02   There is, because like if they do anything

00:28:04   with new hardware, like if there is a single new hardware

00:28:08   capability or if they really do give us like an AR dev kit,

00:28:12   you're gonna have an app out there on day one.

00:28:14   Come on, like people mature, people get refined,

00:28:18   but people don't fundamentally change that much.

00:28:20   (laughing)

00:28:22   You're gonna have an app on day one for whatever new

00:28:24   hardware or software capability there is.

00:28:27   Whether it's a major effort or like a minor kind of

00:28:30   throwaway thing, you're gonna have something there,

00:28:32   believe me.

00:28:34   - I mean, I feel like maybe if I don't,

00:28:36   it'd be like disappointing like the world.

00:28:38   That's who I am.

00:28:39   But it is, it's a weird thing looking at this year.

00:28:41   And I feel like so many platforms are in a good,

00:28:44   stable place, there's not a lot of huge new things.

00:28:46   And obviously we'll find out in June how,

00:28:49   if I'll be laughing about saying that I may not launch

00:28:53   something new this year.

00:28:54   But I feel pretty fully loaded at this point as it is.

00:28:59   So if it was ever gonna happen that I just kind of

00:29:05   stick to what I've already got and continue refining

00:29:07   and developing it, 2021 seems like that year.

00:29:10   - I'm not holding my breath.

00:29:12   Thanks everybody for listening.

00:29:13   And we'll talk to you in two weeks.

00:29:15   - Bye.

00:29:16   [BLANK_AUDIO]