00:00:27 ◼ ► I miss those days. A little bit. I mean, it is really nice to wake up in my house with my family, you know, not having to travel across the country and spend an Apple Watch a night in a hotel.
00:01:10 ◼ ► Whereas this year, it was planned and expected. And this is, you know, it feels a little different that going into a week where, you know, it's like, "Okay, I kind of know how this is going to go."
00:01:20 ◼ ► And, you know, so far, we're about recording this around the middle of the week. And it's, so far, I'd say it's been going well and is, you know, similar, if not slightly better in a few ways to what we had last year.
00:01:31 ◼ ► Where it's the same kind of, you know, nice, short focused videos that, you know, we're going to format that I think is just amazing. And then they've added a few little bits and pieces to it. But otherwise, overall, like structurally, the conference seems to, you know, they've gotten the hang of it, and they didn't have to actually change that much from what they did last year to make it even better.
00:01:50 ◼ ► Yeah, I mean, again, like, I think we are going to have a weird transition that's not going to be entirely positive if they go back to in person conferences next year. Because there is so much about this that actually is really nice for a lot of people.
00:02:04 ◼ ► And honestly, I like it this way. I mean, as I said, like, there is definitely stuff I miss about the old, you know, in person format. But if they never went back to the in person format, I wouldn't be upset.
00:02:25 ◼ ► Yeah. And I think too, it's even things like they've added, like a few little extra ways to make the week even better. Like they added digital lounges, which turned out, when they sort of announced those ahead of the conference, and it turned out it's essentially a Slack community that is essentially going to be created for this week. And then I think at the end of the day on Friday, it'll just sort of disappear. So it's not like this, you know, long term thing that Apple is doing.
00:02:49 ◼ ► But for this week, there's this Slack group that you can sign up to be added to. And then it's essentially a highly moderated Q&A, for it seems like the main way that it's being used, where there's a mechanism by which you can ask a question.
00:03:05 ◼ ► And there's different sort of like office hours with different Apple folks there. And they'll answer your questions. And if they answer your question, then you can respond to the thread where they answered it in terms of if there's a follow up question or clarification you'd like to make.
00:03:21 ◼ ► But overall, I sort of participated a little bit in this in the Swift UI ones yesterday, and it was really nice. It felt like a really cool combination of a lab and a developer forum where because it is, it's better than the forums because it's moderated in a very sort of structured, concrete way that I think the dev forums can often kind of feel a bit meandering.
00:03:44 ◼ ► And there's a lot there's a much higher noise ratio where there's a lot of people who are just posting like, you know, they have a they run into some issue, and they're just posting their question there. And it's hard to kind of work out is this something specific to their setup?
00:03:56 ◼ ► Or is this an actual question about technology and platforms? Because the digital lounges are kind of heavily moderated. Only the questions that are actually interesting and useful and have broad applicability are being answered.
00:04:10 ◼ ► And so that's there. And then it's kind of like a lab where, you know, the right people, the people who are developing this technology are the people who are answering the questions. And so that was kind of cool and a really cool kind of way for them to even sort of go a step farther than the labs, which are also being offered this week where you can have, you know, essentially, one on one WebEx calls with people at Apple.
00:04:33 ◼ ► But but I would say I think we're recording this in the middle of the week, and hopefully many of you will hear it before the end of the week. So if you're not participating in either of those things, the labs or the digital lounges, I would highly encourage you to give it a try because I found it.
00:04:45 ◼ ► Yeah, I wasn't sure what to expect with the lounges. But I would say I learned a lot just from the you know, the one the q&a they did yesterday. And I think they're planning to do one of those, you know, essentially every day this week.
00:04:56 ◼ ► Yeah, that's really cool. I'm really happy to see them like, taking this online only format and not only just repeating what was last year, which actually worked pretty well, but even like broadening it and adding and adding to it and you know, taking things about previous web, webc that were in person, like the labs, and figuring out like new formats for that new ways to do it new ways to give more people access to Apple employees and and and lab like experiences, because that's that's always been such an incredibly valuable part of the conference.
00:05:25 ◼ ► And yet, it's been so hard for so many people out there to ever have access to that because it because getting to the conference is so expensive, and so limited and how many people can even get in. And so to have that be broadened out to anybody for free. That's really cool that that really is a huge improvement for a pretty big part of the community.
00:05:46 ◼ ► Yeah, no, I'm very bad. Overall, I'm very, very pleased with the structure. And I think if it goes back to being in person again, I will be happy in some ways and sad and others and hope that they even if they went that way that they would do the same kind of thing where they could preserve what was great about the online if they went back to in person, rather than just sort of undoing all of the improvements they've made.
00:06:07 ◼ ► But now it's probably actually worth talking a little bit about actually what was announced and what was, you know, the the themes and overall, I think we've often kind of, you know, you don't need us to go through API by API necessarily, but I think it's often interesting for us to kind of give our broad themes for what we're seeing this year.
00:06:23 ◼ ► And then maybe sort of wrap finish up by talking about some of the sort of the API's that we're most excited about. And I think for me, overall, this felt like a, I was gonna say a light year, but it isn't light in terms of content. There's a whole lot of stuff here.
00:06:38 ◼ ► But there are some years I find where there's the big sweeping announcements, things that create a whole new, like, you know, opportunity in the App Store, see, like widgets last year, or their massive fundamental system overhauls, like when we had iOS seven, where, you know, here's a new UI language that Apple is pushing.
00:06:58 ◼ ► And there's those big kind of sweeping years. And then there's a year like this, where I feel like Apple is, most of the changes felt like they were kind of, Apple is fixing drawbacks or limitations or stumbling blocks on the platform, rather than like introducing wild new things.
00:07:18 ◼ ► And so as an example, it's like, in Swift UI, you know, there's some things that are kind of new and new and additional, but largely it was, you know, those things that you've been annoyed with or struggling with or having to do weird workarounds for, we've built them into the, you know, built them into the API directly.
00:07:35 ◼ ► And there's time and time again, where I feel like there's many of these things that like weird workarounds are going away. And I love that as a year, I think it's it makes my summer a lot more straightforward, that it's not I'm doing a lot of busy work, I'm doing a lot of, you know, deleting stuff that I don't need anymore, or doing things in a much more reliable and straightforward way.
00:07:54 ◼ ► And then there's the things that they did add the major and sort of new things, which I think are primarily like SharePlay seems like the biggest sort of customer facing feature that is a big new API. And then on the developer side, there's all the like async wait stuff.
00:08:10 ◼ ► And then there's those things, it's like either if you're not, if you don't have an app that has a particularly collaborative aspect to it, SharePlay is fantastic, but not necessarily relevant. And then the async wait stuff is super cool, but requires iOS 15. So it's very unlikely that many of us are going to be able to adopt it sort of right away.
00:08:35 ◼ ► Yeah, this I love years like this, because, you know, even though it might not be super exciting, you know, on the surface level, it's one of those things where as you look through the API diffs, and as you watch the sessions, you start realizing, oh, there's this whole new framework, or this all new capability, like in the underground stuff in your app, like, you know, there's this whole new text engine that replaces core text.
00:08:59 ◼ ► There's like, there's all this, obviously, you know, async await, as you mentioned, and actors and all these like language changes, and all the API changes that are now made possible by that.
00:09:09 ◼ ► There's a lot of this stuff that most customers won't be demanding from you. So in a way you have tons of freedom, like when there's a new giant customer facing feature, customers basically dictate your roadmap from that.
00:09:23 ◼ ► Like, I still I don't have widgets yet. I was working on that actually last week. But I still get one star reviews almost every day, because I don't have widgets yet. And from customers saying, What the heck is this app abandoned because there's no widgets.
00:09:37 ◼ ► This year, I don't think there are any features like that. Like, I don't think there's going to be a thing this year where, where your customers are going to be giving you one star reviews for not adopting some new thing that was just announced, you know, besides shareplay, which, honestly, I think shareplay is going to end up a lot like the iMessage App Store, where it's a really cool thing.
00:09:58 ◼ ► I don't think a lot of people are going to be using it with a lot of apps. It might it might take off with a small number of apps, I don't see it taking off with a big number of apps. So that's not the kind of thing that I think most apps really need to rush to adopt unless you happen to be like, you know, a movie playing app or something.
00:10:14 ◼ ► But otherwise, I don't expect that to become a big thing. Even even for my app, even for overcast, I honestly I don't think I'm going to do it unless there's massive demand that I'm not seeing yet. But that'll probably come later. But anyway, you know, because there's not seemingly any of those, like, customer mandated features that you have to adopt, like a new UI redesign, or like some big feature, like widgets, that gives us a great opportunity this year to kind of back off the the gas pedal on like all the brand new games.
00:10:43 ◼ ► And go back and do features and quality control. You know, it's much like how we've talked here on the show about the seasonality of the Apple developer year, and how normally the springtime is when you get a chance to pay down technical debt, fix bugs, you know, maybe make some features based on the old API's that that you don't need to worry about W2C changing your plans for.
00:11:06 ◼ ► And then the summer comes and it throws everything in the air, and you have to rush to get all the new stuff adopted. Well, this year, you don't seem to really have to do that. So this year, we have, I think, an extended period of the whole next year, where we can just focus on quality tech debt and features that like under our control, not having to, you know, drop everything to adopt Apple's roadmap that they've laid out for us.
00:11:30 ◼ ► And the good news is that because so many of the iOS 15 changes, as usual, you're not going to really be able to use a lot of the a lot of them until you can require iOS 15. That kind of gives you a year, you know, this this this following next year to work through that that adoption rate.
00:11:48 ◼ ► And so, you know, by next summer, we can probably start requiring iOS 15, we can probably start, you know, using a single weight everywhere all over our code and all that stuff, like we can use the new text engine, we can use all these new, you know, there's a lot of UI kit, minor changes here and there.
00:12:03 ◼ ► So, in a way, I'm actually really happy that there's not more giant user facing stuff, because so many people, myself now included, can't require the new OS on day one. And so whatever they announced, we really can't use until a year or two later anyway.
00:12:19 ◼ ► So in this way, since there's nothing really pressuring us to jump all over this new stuff, we can do it more on our own schedules, and focus more on other areas of our app development that that don't require us to drop everything and and, you know, quickly rush to adopt the new hot thing.
00:12:35 ◼ ► Yeah, I suppose it's like, if I was trying to summarize the theme, it feels like it's a year of like, it's a year of better rather than new. Yeah. And so like, I can make my apps better. And there are certain things that are new in that. But overall, it is more that I can, you know, shore things up and take it in like rough, round off rough edges that have been annoying or get rid of a bunch of hacks, potentially that I have in there, or at least, you know, one thing I always even if I can't drop support for old OS is it's like, I can do it.
00:13:04 ◼ ► OS is it's like I can, you know, my weird sort of hacked around implementation can be when I show income be sort of on old, you know, on devices running the old OS is, and I can use the new version for new OS is and kind of is a way for me to adopt like there's, you know, the way the new in Swift UI, there's a whole bunch of these things where I was doing, you know, strange hacks and things around like searching, for example, like they used to be this really complicated thing that you had to interact with you, I get for and there was never really a good answer.
00:13:33 ◼ ► And now it's just a first party thing. And I expect to adopt the first party thing. And, you know, when people are running iOS 15, and also have my old version in there, that works, sort of that has weird edge cases and problems. And I'll just kind of, you know, sort of divert my code that way. But, you know, an increasing proportion of my users will get the better implementation will get the version that works more reliably and is more straightforward. And so it's like a year like that is is always great for me, I really enjoy being able to just sort of figure out how to do that.
00:14:09 ◼ ► We're brought to you this week by Pingdom from SolarWinds. Today's internet users expect a fast web experience no matter how targeted your marketing content or how sleek your website is, they'll bounce if a page is loading too slowly. With real user monitoring from Pingdom, you can discover how website performance affects your visitors experience. So you can take action before your business is impacted all for as low as $10 a month.
00:14:33 ◼ ► Whether your visitors are dispersed around the world or across browsers, devices and platforms, Pingdom helps you identify bottlenecks, troubleshoot performance and make informed optimizations.
00:15:19 ◼ ► So Dave, I'm wondering, the watch actually seemed like kind of a quiet year this year in most ways, except they added this one capability that I think you actually might have a lot of use for.
00:15:33 ◼ ► Yeah, so I mean I think we were transitioning into the things I'm most excited about this year and I think number one is the way they added always on capabilities to the Apple Watch, which is one of those things where it isn't that I can, it's not transformative, it's just this quality of life improvement and I can make my apps so much richer as a result.
00:15:54 ◼ ► So this essentially, if you know what I'm talking about, is on a Series 5 or 6 Apple Watch, when you put your wrist down, currently your app gets this kind of frosted glass look that shows the time and it replaces your, you know, the running app.
00:16:15 ◼ ► And so, in WatchOS 8 now, you can, A, even if you don't do anything, it'll just continue to show your application just in a dimmed view, like all the time, so you don't have this weird frosted glass thing, which is great.
00:16:38 ◼ ► So if I have a workout app, I can show metrics and there's a really clever kind of way that they're doing it where you can, the system can throttle the frequency of those and give your app feedback on that in terms of to say, you know, you're allowed to update your UI once a second, maybe, if you're a workout app.
00:17:00 ◼ ► And presumably under the hood, it's allowing them to do a lot of battery optimizations and things like that, but it's a really cool thing that now, you know, third party apps can do the thing that first party apps did.
00:17:38 ◼ ► But it kind of helps for all of them because it like it gets rid of that, like instead of having that blurred glass look, as you were saying, you can decide how your UI looks in the sleep state.
00:18:13 ◼ ► And from a user point of view, it's going to be great too because as a user, that blurred screen over anything, not your clock face or the workout app, that sucks from a user point of view.
00:19:52 ◼ ► And right now I'm doing all kinds of weird tricks and things to try and keep that that count fresh, which is problematic because, you know, I can't I have to throttle it so that I get enough updates throughout the day.
00:22:04 ◼ ► And so if you have, for example, if you're like loading like a web view in your app to a certain page that the user like the user enter this URL or clicked on something that is loading this URL, you can say at the API level, I didn't do this out of my own volition.
00:22:26 ◼ ► Other than that, I'm actually, oh, and there's the store kit refund API, which might be a little bit more limited than we first thought, but that's probably worth adopting for your iOS 15 users because I think people will start expecting that.
00:22:44 ◼ ► Yeah. And I think that's great. I mean, I think a lot of those things are just, they're nice to have. And the store kit, like they also just essentially rewrote all of store kit to make it very swifty and nice, which is like great to see.
00:23:12 ◼ ► Exactly. Like the next time I implement store kit, I will absolutely use store kit too. But it's like, it's the kind of code you just never want to mess with because you've got it working.
00:23:21 ◼ ► The money is coming. This is great. The last thing I want to do is just, you know, like change it. And that turns out there's some weird issue and I like lose out on a week's worth of income as a result.
00:23:34 ◼ ► I think the big things for me on iOS and a little bit on watchOS too, but is the some of the improvements in SwiftUI and the one that I think I'm most excited about is the new canvas API.
00:24:12 ◼ ► Or you end up doing something where you like render it into an image. You actually use core graphics, like the old style way of doing it. You render something into a core graphics context, create an image and then just display it in SwiftUI, which is also kind of bad.
00:24:38 ◼ ► And so far in my testing it is really, really good and also is just kind of transformative in a few narrow contexts that I think will make it really compelling for the things that I can do.
00:24:58 ◼ ► And so there's a couple of situations in both my widgets and my complications for WidgetSmith and WatchSmith respectively where I've had to pare down what I show or kill an idea that I've had because there was no way for me to get, you know, just put the simple example is in my complication system.
00:25:16 ◼ ► I wanted to show like a day of the week dial, you know, so if you had, if you imagine you just have a dial that has like M O N for Monday, T U E for Tuesday, and it just goes around in a circle and there's an arrow pointing to whichever one is the current one.
00:25:28 ◼ ► It seems like it should be a relatively straightforward thing, but building that in a way that was gotten under the memory limits turned out to be super hard previously, just because of the nature of having to have so many different text instances to do that in a way that curved the text appropriately.
00:25:45 ◼ ► You know, whereas I so far I took, you know, took that same code that I'd been using or you tried to use and failed previously, put it inside of a canvas and I could display it no problem.
00:26:33 ◼ ► Cause I wanted, if I'm going to write a redesign UI, I want to do it in Swift UI and it just seems like, like, you know, iOS 13 and 14 versions of Swift UI weren't quite flexible and ready enough for me to do that with a lot of my needs.
00:26:53 ◼ ► You know, things like, you know, they like table lists are now refreshable and searchable and like all this like just little quality of life stuff that, that a lot of apps need if you're going to adopt Swift UI.
00:27:26 ◼ ► And that's, I think I'm going to be spending most of my summer doing that, just kind of like living this like one year behind lifestyle, which I realize is what a lot of our listeners out there either choose to do or have to do for their, for their jobs.
00:28:11 ◼ ► Yeah, exactly. And I think I'm very much the same way. It's nice to have enough to keep me busy, have a lot of interesting opportunities, but it's not a year that I feel like I'm going to be totally swamped and overwhelmed that have to, you know, and I can be selective in which apps get updated.
00:28:26 ◼ ► You know, many of my apps, I think will need very little update and very little change to be, you know, compatible with iOS 15. And so far, it seems also like it's a very much a non breaking year where there isn't a, you know, I went, one of the first things I always do is I read, you know, recompile all my apps on the new OS and all of them seem to have, you know, very few deprecation warnings, very few weird compatibility issues or crashing on launch or anything like that.
00:28:52 ◼ ► Like, overall, it seems like it's a very stable, good year. And so there's not a lot of busy work that I'm going to have to do. And so overall, it's just exciting. And it's fun. And, you know, the conference itself has been going really well. And I look forward to the next few days of, you know, watching sessions in them as soon as they come out being in the digital lounges, doing my labs and kind of enjoying the fun of the week where there's a bit more buzz among the community and a lot of just kind of fun solidarity and community that, you know, is always a highlight for me.