PodSearch

Under the Radar

321: WWDC 2025 Aftermath

 

00:00:00 ◼   ► Welcome to Under the Radar, a show about independent iOS app development.

00:00:03 ◼   ► I'm Marco Arment.

00:00:04 ◼   ► And I'm David Smith.

00:00:05 ◼   ► Under the Radar is usually not longer than 30 minutes, so let's get started.

00:00:09 ◼   ► So, WWDC has come and gone.

00:00:12 ◼   ► It's a big one.

00:00:13 ◼   ► It's a really big one for developers.

00:00:15 ◼   ► And I expect, I know I feel completely overwhelmed by what to do next, in what order to do the

00:00:26 ◼   ► things that I want to do.

00:00:28 ◼   ► There's way more that I want to do than I have time to do in a few months.

00:00:32 ◼   ► How are you feeling?

00:00:34 ◼   ► Yeah, it's, A, I think it was a really, like, for both of us, I mean, we've been doing this

00:00:39 ◼   ► for a very long time.

00:00:40 ◼   ► We've been to a great many WWDCs, virtually, in person, all of the above.

00:00:45 ◼   ► And I feel like I have this general sense of, like, the years that are like, oh, that was

00:00:50 ◼   ► a good one in terms of it was an interesting set of announcements, both in terms of new

00:00:57 ◼   ► opportunities, in terms of clearing out, like, just sort of system-wide tech debt by them,

00:01:03 ◼   ► you know, dealing with issues that are just sort of long, lingering things.

00:01:07 ◼   ► And just in general, like, leaving with a sense of like, ooh, there's some really interesting,

00:01:12 ◼   ► fun, engaging work that I look forward to this summer.

00:01:16 ◼   ► And I would say this year felt that way.

00:01:18 ◼   ► It felt very much like Apple was playing to its strengths.

00:01:22 ◼   ► It was doing things that make my life easier and better, broadly.

00:01:26 ◼   ► And overall, like, I'm excited to get started.

00:01:31 ◼   ► The challenge, as you said, is obviously it's the nature of this kind of an update is there

00:01:37 ◼   ► touches lots of parts of the app in lots of different ways.

00:01:40 ◼   ► And so I, who knows how much we'll actually be able to get done by day one.

00:01:45 ◼   ► I expect I will have something ready for day one across all my apps, but it's going to be

00:01:51 ◼   ► a tricky one in that way as, you know, it's like, especially as someone who, like, makes

00:01:56 ◼   ► a widget app.

00:01:56 ◼   ► The number of places you can put a widget now, just every year, I'm continuing to be struck

00:02:02 ◼   ► by just every, the Apple, any surface Apple possibly can, they now will put a widget on.

00:02:06 ◼   ► So you can, now you have widgets in CarPlay and you have different kinds of widgets that

00:02:11 ◼   ► you can activate from buttons and you have controls in watchOS and they're just like everywhere

00:02:15 ◼   ► is a widget, which is great as someone who makes widgets, but it's also terrible as someone

00:02:19 ◼   ► who makes widgets that I now have tremendous surface area to have coverage for.

00:02:24 ◼   ► But, you know, I'm excited for that.

00:02:25 ◼   ► And overall, I would say like my overall impression of this year was like two thumbs up.

00:02:31 ◼   ► Like it was great.

00:02:31 ◼   ► I think there's a lot of cool, interesting things.

00:02:34 ◼   ► And I think, you know, this, the year to come, you know, beyond just the, what, what

00:02:39 ◼   ► we can squeeze into the next couple of months, uh, you know, it'll just be a good year.

00:02:43 ◼   ► I think of interesting work.

00:02:45 ◼   ► And that's really all I want.

00:02:46 ◼   ► It's like, I want to do the interesting work.

00:02:48 ◼   ► I want to tackle interesting problems.

00:02:50 ◼   ► I, it's useful in this case, like with a big redesign to have the, like the opportunity

00:02:55 ◼   ► to be kind of forced and pushed to reevaluate my designs, which, you know, I go back and

00:03:01 ◼   ► immediately I looked at all of my apps and I'm like, oh no, my apps are terrible.

00:03:05 ◼   ► Now that I've seen this new design language, I look at everything.

00:03:08 ◼   ► I'm like, oh, it's terrible.

00:03:09 ◼   ► It's terrible.

00:03:10 ◼   ► I don't want to, I don't want to look at it.

00:03:11 ◼   ► Um, but it's going to be months probably until it's all done, but that's exciting.

00:03:15 ◼   ► That's interesting.

00:03:16 ◼   ► And it's fun to have that kind of fresh perspective to sort of appear, you know, in, in over the

00:03:22 ◼   ► course of a week, it's been kind of a roller coaster because, um, uh, you know, first of

00:03:27 ◼   ► all, I would say for all of you developers out there, get this beta on a device and start

00:03:33 ◼   ► using it.

00:03:33 ◼   ► I don't care what device, but get it out, get it on something and start using it because

00:03:37 ◼   ► what Dave just said is very important.

00:03:39 ◼   ► As soon as you get used to seeing the new design language across the system, your app

00:03:44 ◼   ► will feel old, like very, very old and it will look old.

00:03:48 ◼   ► All of your customers, first of all, some of your customers are doing that already because

00:03:53 ◼   ► I'm, you know, they're on betas because they're nuts like me.

00:03:55 ◼   ► Some of your customers, you know, that's going to, that's going to be throughout the summer

00:03:58 ◼   ► by the fall.

00:04:00 ◼   ► This is going to be a very polarizing release.

00:04:03 ◼   ► You're going to have some people who hold onto the old version of the OS is forever because

00:04:07 ◼   ► they don't like the new design, but it's so radical and it does look pretty cool for

00:04:12 ◼   ► a lot of people.

00:04:13 ◼   ► And so there's going to be, I think, pretty strong adoption in the fall and you're going

00:04:18 ◼   ► to want your app to fit in.

00:04:19 ◼   ► And as soon as this lands to the public, your app is going to start looking old and that clock

00:04:25 ◼   ► is ticking for like, how long will you let this, will you let your app look old to your

00:04:30 ◼   ► customers?

00:04:30 ◼   ► You're going to want to have this running on a device and you're going to want to start

00:04:35 ◼   ► working on, you know, UI possibilities now, ASAP.

00:04:40 ◼   ► You know, I said back when the redesign for the OS was rumored, I said that there's like,

00:04:47 ◼   ► if they do a big redesign, that's basically all we're going to be able to do all summer

00:04:51 ◼   ► and fall.

00:04:51 ◼   ► I stand by that for the most part.

00:04:53 ◼   ► Like it is going to be a lot of work.

00:04:56 ◼   ► Like I started playing with the UI stuff over the last couple of days and a lot of it still

00:05:01 ◼   ► doesn't work right.

00:05:02 ◼   ► A lot of it has some weird, like tricky little gotchas that you have to figure out or work

00:05:06 ◼   ► around.

00:05:06 ◼   ► You know, you got to file a bunch of bugs and hope they fix them soon so you can start actually

00:05:10 ◼   ► using the stuff.

00:05:11 ◼   ► But your customers don't know any of that.

00:05:13 ◼   ► Your customers come September are going to see the system looks radically different and

00:05:17 ◼   ► your app looks old.

00:05:18 ◼   ► So you got to get on that ASAP.

00:05:21 ◼   ► And what's interesting, like, you know, the way I feel kind of generally about what they

00:05:26 ◼   ► delivered this year, a lot of people who I think are not developers or maybe who are skeptical

00:05:33 ◼   ► of AI think they didn't really give us that much this year.

00:05:38 ◼   ► And I can tell you for sure that's not the case.

00:05:41 ◼   ► We'll get to that in a minute.

00:05:43 ◼   ► But I think one of the challenges that I'm facing is that I do see that, oh, yeah, I have

00:05:49 ◼   ► to do a redesign badly now.

00:05:51 ◼   ► But also, there's all these cool new APIs that I also want to play with.

00:05:57 ◼   ► So there is some balance to find there.

00:06:01 ◼   ► And of course, I never find those balances.

00:06:03 ◼   ► But there's some balance to find there with, like, how do I spend my time?

00:06:08 ◼   ► And it's kind of this big crunch period, too, because you have only a very short time when

00:06:14 ◼   ► you have to consume a whole bunch of developer sessions, figure out what to do with your app,

00:06:19 ◼   ► and start using these new APIs so that you can ask the right questions during the lab if

00:06:24 ◼   ► you're there that week.

00:06:25 ◼   ► And or you can start filing bugs that actually have any chance of getting fixed before this

00:06:29 ◼   ► thing is released.

00:06:30 ◼   ► So there's so much going on right now.

00:06:33 ◼   ► Like, I feel like I'm being pulled in a thousand different directions, all of which are super

00:06:38 ◼   ► urgent and have to be done yesterday.

00:06:39 ◼   ► Though I will say, it is good to also realize that there is this initial sprint.

00:06:46 ◼   ► And then I feel like things settle down in the way that we, you know, we most likely have

00:06:53 ◼   ► until mid to late September to be until we have to be ready, which is about three months.

00:07:00 ◼   ► Is it June to July, July to August, August to September, three months.

00:07:04 ◼   ► And so we do have a bit of time once that initial sprint settles down.

00:07:08 ◼   ► Absolutely.

00:07:09 ◼   ► I'm the same as you.

00:07:10 ◼   ► Like, I've watched so many session videos in the last week and a half that they all start

00:07:17 ◼   ► to run together.

00:07:18 ◼   ► And like, I just, I vaguely remember things.

00:07:21 ◼   ► And that's my point in what I'm doing right now is I'm watching as many as I can, but

00:07:26 ◼   ► not paying deep attention to them as I'm going.

00:07:29 ◼   ► I'm trying to be exposed to lots of ideas and frameworks and things such that over the

00:07:34 ◼   ► course of the next few weeks, when I really dig into things, I'll be like, oh yeah, I remember

00:07:38 ◼   ► this being somewhere.

00:07:39 ◼   ► And then you can go into the developer app and they have searchable transcripts, which

00:07:42 ◼   ► is super helpful.

00:07:42 ◼   ► And so if you want to find something that you referenced earlier, but it is definitely a bit

00:07:50 ◼   ► overwhelming.

00:07:50 ◼   ► And I think the thing that's been interesting and slightly reassuring to me, so the new design,

00:07:55 ◼   ► which probably, I mean, I imagine if you're listening to this, you probably know what we're

00:07:57 ◼   ► talking about, but like Apple, you know, this liquid glass is the high level feature of the

00:08:04 ◼   ► design, but it's more than just this new visual texture with the liquid glass thing.

00:08:08 ◼   ► It's a slightly more, I might say stripped down or cleaned up hierarchy and visual sort of

00:08:18 ◼   ► language that they're going for, which in some ways is I found very helpful where a lot of

00:08:23 ◼   ► my initial work so far where I'm, a lot of what I'm doing is just taking a screen and then

00:08:28 ◼   ► just playing with it in Xcode to sort of see how quickly I could get a basic sort of liquid

00:08:35 ◼   ► glassified version of it.

00:08:36 ◼   ► And thankfully for this kind of update, the majority of the change is about removing old

00:08:43 ◼   ► customizations and old things that I was doing that were how, how you would add distinctiveness

00:08:50 ◼   ► previously.

00:08:50 ◼   ► In a weird way, like the design language itself has so much inherent distinctiveness and newness

00:08:58 ◼   ► that even just a completely vanilla out of the box, like you're just using Swift UI with

00:09:04 ◼   ► all the basic like default settings is going to look wildly interesting and different to your

00:09:10 ◼   ► users.

00:09:10 ◼   ► So we don't need to radically push it out beyond that.

00:09:13 ◼   ► And so the interesting thing, which at least is reassuring at this point is most of what

00:09:17 ◼   ► I'm doing is just sitting there and like delete my custom, this, delete my custom, that switch

00:09:21 ◼   ► from using my custom segmented control to a standard system with control, like all of these places

00:09:25 ◼   ► where I was doing things differently before, because the iOS 18 versions of these things were like

00:09:35 ◼   ► plain in a way that was not interesting.

00:09:37 ◼   ► And now I think plane takes on an interest in this update.

00:09:40 ◼   ► And inevitably what's going to happen is people will get used to this plane and then we will want our

00:09:45 ◼   ► own custom and adjust things further over the years to come.

00:09:48 ◼   ► And, you know, the sign language will evolve and all those things.

00:09:51 ◼   ► But at least I find some comfort in that, that most of the summer I think is going to be stripping down

00:09:57 ◼   ► the existing things and a little bit of re-architecture, a little bit of adjustment.

00:10:02 ◼   ► But a lot of it is going to kind of naturally come out of a simplifying process rather than

00:10:09 ◼   ► a process where if the new design required huge amounts of custom work to adopt, I would be

00:10:17 ◼   ► completely overwhelmed rather than just lightly overwhelmed.

00:10:21 ◼   ► Yeah, I think I'm hoping that proves to be correct.

00:10:25 ◼   ► So far in my very early experimentation, it does appear that way, that you can rely a lot on the

00:10:32 ◼   ► defaults. And in fact, in many cases, you should strip away customization and rely on the defaults.

00:10:37 ◼   ► In fact, Apple has told us that much over and over again in the design sessions for WVC.

00:10:41 ◼   ► So I think one thing that helps a lot, you know, you said like the kind of the stock controls in iOS 18

00:10:47 ◼   ► and before were kind of bland and boring. The new system design is more opinionated than we've had since

00:10:55 ◼   ► iOS 5 and 6. You know, even 6 started stripping some of it up. I was like, it's the most opinionated visual

00:11:02 ◼   ► design since early versions of iOS. And over time, like, you know, it's, that's, it's been a long time since

00:11:09 ◼   ► we've had that. The, the design language of iPhone apps has basically become just, you know, flat shades

00:11:18 ◼   ► of color and text and, you know, just what iOS 7 started. Like it's been, it's been just, iPhone apps

00:11:25 ◼   ► look not that different from web apps and Electron apps. And that's part of, that's kind of, that kind

00:11:30 ◼   ► of all works together in a cycle. Well, now there's a huge bomb that Apple dropped and all of a sudden

00:11:35 ◼   ► they're going to look very different. Now, not every company is going to take advantage. In fact, I would say

00:11:40 ◼   ► most big companies are not going to adopt the new design language very well, if at all. They're going to want

00:11:47 ◼   ► their own branding. They're going to want their own look that they, that they say is consistent across all their

00:11:52 ◼   ► platforms, you know, like that. So apps from big companies are not going to look native anymore. They're going to look old

00:11:59 ◼   ► and they're going to look custom in a kind of in a bad way or a bland way. This I think gives opportunities

00:12:04 ◼   ► for us to take advantage of. Like for indies, we can make our apps look on the iPhone, like whatever we

00:12:10 ◼   ► want. And we don't have to worry about like, well, is it, does it, is it going to fit in with our overall

00:12:16 ◼   ► brand across all of our properties and platforms? Nope, we don't care. We can just make a great iPhone app

00:12:23 ◼   ► or, you know, Apple platform app, depending on your platform. And so I think this is an opportunity for

00:12:28 ◼   ► developer, for indies in particular, that we have an advantage here. We can work faster than the big

00:12:34 ◼   ► companies at adopting the new language and we can adopt it where many of them won't adopt it at all.

00:12:39 ◼   ► That I think will give our apps a bit of an edge on the platform, not for everybody. You know, most users

00:12:45 ◼   ► out there don't care, which is why all these boring big company apps are designed the way they are, because

00:12:50 ◼   ► most people don't care. But the core group of like Apple enthusiasts and iPhone enthusiasts who

00:12:55 ◼   ► really love the platform and things being native and integrated, that's our people. And they do care.

00:13:02 ◼   ► And we can make apps that appeal to them better than the big companies will be willing or able to do

00:13:07 ◼   ► for a while. So we have a window of opportunity here that we should take advantage of. That if we adopt

00:13:13 ◼   ► everything aggressively and early, we have an edge. So that, and that's, that's what I'm planning on doing

00:13:20 ◼   ► for overcast. Like, to be honest, like I don't think I'm spoiling any surprises here to say that

00:13:24 ◼   ► I'm going to redesign the app to fit in then with a new design language, of course. Like, and I, and by

00:13:27 ◼   ► the way, I am so glad at this moment that I did the rewrite and that it's done effectively now.

00:13:34 ◼   ► Because to have laid the, to have laid the groundwork for all modernized code, all Swift UI,

00:13:41 ◼   ► all Swift, you know, and then all Swift UI, that makes all of this so much easier. If I hadn't done the

00:13:49 ◼   ► rewrite over the past few years, this might kill overcast. Like this summer, like having to do

00:13:54 ◼   ► this, this might be enough. I might, I might've thrown in the towel and said, I can't keep up.

00:13:58 ◼   ► So I am so glad I did that when I did. Um, so anyway, yeah, redesign coming because I think

00:14:06 ◼   ► any app that takes itself, that any app that takes pride in how it integrates and fits in

00:14:12 ◼   ► and looks well and is native on the iPhone has to do a redesign or at least heavily consider,

00:14:18 ◼   ► you know, some major design tweaks. Yeah. And I think the nice thing about that, that like I'm

00:14:23 ◼   ► personally very excited about on the design side is like, I like the design, um, which makes it easier

00:14:28 ◼   ► this summer when I stare down that work to look at it. Like I've, you know, I have it on a, on a testing

00:14:33 ◼   ► phone at this point. I'm not, I haven't gone down the, uh, on my main phone yet, which at this point,

00:14:38 ◼   ► I think I'm glad of, um, at the time I didn't want to do it cause I was traveling and now I'm home and

00:14:42 ◼   ► I'm like, maybe I'll give this a couple of weeks and a couple of betas before I go there, but I'm

00:14:47 ◼   ► using it regularly on my testing device and doing things on my testing device that, um, sort of

00:14:52 ◼   ► increase my compatibility with it. And the more I use it, the more I like it. I think the initial, like

00:14:57 ◼   ► my first hour with it, my reactions were much more mixed because it is so, so opinionated, but

00:15:04 ◼   ► the more I've used it, the more I really like it. And I think that is very helpful with something

00:15:09 ◼   ► like this, where I'm looking at it and I, the more I play with it, the more I enjoy it. And I'm feeling

00:15:14 ◼   ► good about that. Like, Ooh, this is fun. Like, and I look at, and the reason when I look at my old app

00:15:18 ◼   ► and I don't like it anymore is because I've seen something that is better. And the like couple hour

00:15:25 ◼   ► version of just rebuilding with the new SDK and making a few minor changes to adopt the new layout,

00:15:31 ◼   ► I think looks better. I think it looks different and better is always these things is a bit squishy

00:15:36 ◼   ► because part of what makes it better is that it's new. And so it's hard to differentiate between

00:15:41 ◼   ► the newness and the intrinsic like goodness of it. Um, but in some ways that is like an inherent

00:15:48 ◼   ► thing of design that part of what will make it interesting and compelling for our customers is

00:15:53 ◼   ► that it is new and it is novel. And sometimes a new and novel is just as powerful as other aspects.

00:16:00 ◼   ► And I'm saying that I don't think it's, I think it is well-designed and I think it is thoughtful.

00:16:03 ◼   ► And I think it's easy to have the kind of hot take version of like, Oh, the contrast isn't good here

00:16:10 ◼   ► or the way they do this isn't great. But I think those things will either be just many of those things

00:16:17 ◼   ► are related to it being an early beta, that there are glitches and there are artifacts in the way that

00:16:23 ◼   ► it works, which are make it less compelling than it will likely end up being. And the other thing is

00:16:28 ◼   ► just, I, the more I've read and listened to all the design talks and read the documentation and things,

00:16:34 ◼   ► it is clear that many, you know, this has been thoughtfully thought through. I don't think this

00:16:39 ◼   ► is Apple responding sort of in a half completed way to wanting to do a redesign. I think this,

00:16:48 ◼   ► they've thought it through into lots of different places and we can, there are places that I disagree

00:16:52 ◼   ► with the direction they went, but overall I can see that it was made with, you know, a sort of intention

00:16:58 ◼   ► behind it. And that I think will help it to stand up over time. And sort of as we get, as it evolves and develops

00:17:06 ◼   ► both this summer and this end of the coming years, you know, I think it's starting with a good foundation to grow from.

00:17:11 ◼   ► Yeah. And I think too, like, whether or not you agree with all the choices Apple made, like, I don't agree with all

00:17:18 ◼   ► the choices they made. Like, there's a lot of stuff that I think will be revised and toned down in future releases.

00:17:24 ◼   ► Hopefully some of it will be toned down before the ships, but I'm honestly not holding my breath on that.

00:17:28 ◼   ► But, you know, hopefully in future releases, some of this will be tamed a little bit.

00:17:33 ◼   ► But no matter what you think is design, it doesn't really matter if you're a developer because this is what

00:17:39 ◼   ► they're doing and this is what all the customers are getting. And so we're, this is happening to us,

00:17:45 ◼   ► whether we like it or not. And you can either like stay on board the iOS train, which has always been

00:17:51 ◼   ► made of quicksand. I know this is a lot of mixed metaphors.

00:17:54 ◼   ► Like, you can either like go where they're going or have your app fade out of relevance

00:18:00 ◼   ► and your users start to hate it over time and it'll seem abandoned. Like, that's it. Like,

00:18:04 ◼   ► those are our choices. And so I have chosen, even though I don't love every single choice they've

00:18:09 ◼   ► made, I've chosen, like, look, I'm an iOS developer. I'm staying on this train. And so I'm adopting this

00:18:15 ◼   ► design aggressively because that's what my customers will expect. I mean, look, I already have like 2% of

00:18:20 ◼   ► my user base using developer beta 1. So that shows you like I have, I have a nerdy audience. And so they're going to

00:18:28 ◼   ► expect this to work and to fit in on day one. So that's what you got to do if you're in this game. We are brought to you this

00:18:37 ◼   ► episode by Sentry. All right, founders, time to be honest. How much time is your team wasting on debugging?

00:18:42 ◼   ► If you're like most startups, it's way too much. Your team should be focused on shipping features,

00:18:46 ◼   ► not chasing down bugs. That's where Sentry comes in. It's a real time error monitoring and tracing

00:18:52 ◼   ► platform. So you know exactly when something breaks, where it happened and why. No more 1am slack threads

00:18:58 ◼   ► are digging through endless logs to try to figure it out. Now here's the game changer. Seer, Sentry's

00:19:03 ◼   ► new AI debugging agent. It's like hiring an engineer who already knows your entire code base. Seer finds

00:19:10 ◼   ► the true root cause 94% of the time. And it can even generate merge-ready pull requests, plus optional

00:19:17 ◼   ► tests to prevent regressions. So the bottom line is you ship faster, your team isn't drowning in bug

00:19:22 ◼   ► alerts, and instead of grinding through logs, your developers are back to building the product. This is so

00:19:28 ◼   ► important to have these kind of insights into the issues of the apps that we build. So this is a

00:19:32 ◼   ► great platform to check out. The good news is new users of Sentry get three months free of the team

00:19:38 ◼   ► plan, which covers 150,000 errors. Hopefully you don't have that many, but hey, we've all been there.

00:19:44 ◼   ► Click the link in the show notes or go to Sentry.io and use the code RADAR. That's Sentry, S-E-N-T-R-Y.io

00:19:52 ◼   ► and use the code RADAR or just click the link in our show notes. Our thanks to Sentry for their support

00:19:57 ◼   ► of this show and relay. So as much as we're excited about the redesign and thinking about that, I think

00:20:04 ◼   ► probably a place that might be worth just touching on before we wrap this up is to also talk about the

00:20:10 ◼   ► reality of while we're focused on updates that are going to come out in September, most likely, you

00:20:16 ◼   ► know, historically, it'll be sort of the third-ish week of September. Between now and then, I expect to

00:20:23 ◼   ► also have to ship regular updates to my app that I think having an entire quarter of the year where

00:20:29 ◼   ► there's no activity is doesn't reflect well on the app. And I think for my personal planning and the

00:20:34 ◼   ► things that I'm hoping to do just doesn't make sense. And so it's been a really interesting week

00:20:39 ◼   ► as I've shifted my mindset. Like last week, I was just, you know, on all these test prototype builds,

00:20:45 ◼   ► and I was just like, completely destroying my app, you know, in a separate branch that didn't really

00:20:51 ◼   ► matter, you know, change the deployment target to iOS 26, so that I can just ignore all the weird

00:20:57 ◼   ► warnings, and just go for it, right? Like that was last week. And this week, I'm back in the actual

00:21:02 ◼   ► production stable things, shipping features and doing work, which is weird in some ways, like it is

00:21:09 ◼   ► fascinating as a sort of thought exercise, because I'm building features, knowing what the next version

00:21:17 ◼   ► of iOS is going to be. So it's like, I know the future, but I'm like working in the past, which is

00:21:22 ◼   ► strange. But it's also just the reality of where I am, which has been interesting, because I'm, you know,

00:21:27 ◼   ► every as I'm building these, I'm building a visual feature right now. It's like all of my controls and

00:21:33 ◼   ► layout and things are very much like, huh, how can I build this for iOS 18 in such a way that it will

00:21:39 ◼   ► be compatible with liquid glass and the new design language and kind of start pre making my life

00:21:45 ◼   ► easier later in the summer when I actually have to adapt this new feature to that. And I think it's

00:21:50 ◼   ► one of those those complicated things. I've had some summers where I just don't do anything and don't

00:21:56 ◼   ► ship anything all summer. And I just don't love the way that feels. And right now, it's like, I want

00:22:04 ◼   ► to get to the new stuff. And I don't have a ton of time to be doing this. So I have tremendously

00:22:08 ◼   ► motivated, I will say, the last couple days of work, I've actually been some of the most productive I've

00:22:13 ◼   ► been, you know, in the last few months, because I have in the back of my mind this like, oh, you know,

00:22:19 ◼   ► I need to do these things, because I think it's a useful thing, you know, for the roadmap of the app,

00:22:24 ◼   ► and to have some features and to have a little bit of inertia going on to it rather than hitting

00:22:28 ◼   ► the summer, which is, for a lot of my apps, it's busiest times, like I don't want to have no updates,

00:22:34 ◼   ► have no interest, have no reason for customers to be engaged and excited about it. But I also have

00:22:40 ◼   ► this delightful motivation that as soon as I the sooner I can get this work done, the sooner I can

00:22:46 ◼   ► transition back to working on iOS 26, and the new shiny features. And so that's been interesting. And it's

00:22:52 ◼   ► been a nice motivation to do that. But yeah, that's the approach that I'm taking. And I think

00:22:57 ◼   ► I'm just sort of going through it carefully in that regard, if I'm trying to not create problems for me

00:23:03 ◼   ► on either side, and not trying to end up with these this massive, you know, giant get conflict that I'm

00:23:10 ◼   ► going to have to resolve later, like try and just be very clean about the way that I do it. And hopefully

00:23:16 ◼   ► that's going to work out. But it's definitely a weird thing. And I wasn't sure how you're approaching

00:23:20 ◼   ► this summer, like, are you expecting there to be meaningful overcast updates between now and

00:23:24 ◼   ► September? Or is it just going to be a big update in a kind of come the fall?

00:23:29 ◼   ► So one thing I have to, I have yet to judge is, how much can I actually work on the new code

00:23:38 ◼   ► base, and the old code base at the same time? There's, you know, obviously, you know, we have

00:23:44 ◼   ► branching and stuff. But like, sure, how much am I going to be pressured technically, or practically to

00:23:50 ◼   ► require 26, you know, close to day one, for future overcast updates? Like, will I be able to maintain

00:23:57 ◼   ► both? Most of what I want to work on, and we haven't even had time to talk about the LLM and

00:24:03 ◼   ► intelligence based features yet, but that's substantial. So there's, you know, between like

00:24:08 ◼   ► what I want to work on this summer, it's like a whole bunch of new design work, and a whole bunch

00:24:13 ◼   ► of work with the new APIs. And that doesn't leave that much room for me to release anything useful to my

00:24:19 ◼   ► customers in the meantime. The thing is, overcast is already in a pretty good state. And also, summer

00:24:25 ◼   ► is a low period for podcasts anyway. So I think it's totally fine for me to basically issue a couple

00:24:33 ◼   ► of bug fix releases here or there. Like I have one right now in beta testing that fixes a couple of

00:24:38 ◼   ► bugs from the big watch rewrite, and that's probably going to be out in, you know, a week or so, maybe

00:24:41 ◼   ► less. And I don't think I need to do that much else with overcast this summer for like bridging the gap,

00:24:47 ◼   ► unless some big bug comes up. I think my time is better spent trying to make the best release in

00:24:52 ◼   ► the fall that I can. And ideally, it's not just a redesign. Ideally, I can also have some of the new

00:24:59 ◼   ► API niceties in place by then as well. Because the redesign, I expect people will love or hate because

00:25:08 ◼   ► it's going to match the system and the system people love and hate. So and it's and it's different. So

00:25:14 ◼   ► any difference I make people will love or hate. So I feel like usually if I'm going to go through a

00:25:19 ◼   ► redesign, it helps to kind of, you know, smooth that over with the customer base. If you're also bringing

00:25:25 ◼   ► some nice new features to it as well at the same time. So I'd like to I'd like to have time to do both.

00:25:30 ◼   ► And that just doesn't leave that much bandwidth for incremental stuff over the summer that I don't

00:25:34 ◼   ► even necessarily know what it would be. So whereas I have a very clear view of what I want to be able

00:25:41 ◼   ► to ship this fall. And it's pretty aggressive. I think I'll be able to get maybe half of it done.

00:25:48 ◼   ► But I do have I do have goals there. So I'm just focused on that.

00:25:52 ◼   ► Yeah, I think that's perfectly reasonable. And I think there's this complicated tension. That's why

00:25:56 ◼   ► I wanted to bring it up. Because it's just it's and I, I don't think I'm going to, you know, I think I

00:26:02 ◼   ► will try very quickly, hopefully in the next few weeks, ship the last these last sort of couple of

00:26:07 ◼   ► updates that I'm hoping to do this summer and then transition, you know, meaningfully on to the new

00:26:12 ◼   ► stuff. And I think I will be working on the new stuff. History has shown me that

00:26:18 ◼   ► I think I don't expect I'll be able to require iOS 26. Anytime soon, I expect I'm going into this

00:26:25 ◼   ► with the expectation that I will need to be supporting at least probably the last two versions

00:26:31 ◼   ► of iOS. In addition to iOS 26, that tends to be what kind of works well and is reasonable with my,

00:26:37 ◼   ► you know, sort of usage and analytics. And so I'm just going to have to build it with that in mind,

00:26:43 ◼   ► which in some ways makes it easier because, um, I like you use your philosophy is slightly

00:26:50 ◼   ► different. Like I am doing less wholesale change or I often will, you know, I, there's the complicated

00:26:56 ◼   ► thing with, especially in Swift UI of dealing with that where very often what I've done in the past,

00:27:01 ◼   ► especially on watchOS, but it's, you know, can apply in lots of places is I'll end up with like two

00:27:06 ◼   ► different like high level view trees in the app that I'll like create a new fork. That's the,

00:27:12 ◼   ► if you're running iOS 26, you get this new sort of root controller root view. And if you're running

00:27:18 ◼   ► the old versions, you get the old one. And that often makes it easier for me to kind of have work

00:27:23 ◼   ► that is going back and forth rather than sort of having breaking changes that can go, that make it

00:27:28 ◼   ► very difficult. Or if you do one change here, then it also affects here. Um, and so sort of keeping

00:27:34 ◼   ► things separate can be often very helpful, but yeah, it's going to be interesting. And it's a

00:27:38 ◼   ► challenging one, um, to think about backwards compatibility with, because it is such a, you know,

00:27:44 ◼   ► sort of a, there's a, some amount of fundamental change that is happening to our apps and fundamentally

00:27:49 ◼   ► sort of little tweaks and layout changes and things that will make it difficult. But I mean,

00:27:55 ◼   ► we've, we've gone through this before. I think it is not some, not an insurmountable problem,

00:27:59 ◼   ► but it will definitely be a challenging, um, thing to support older versions and to navigate

00:28:05 ◼   ► doing that in a way that doesn't sort of drive us crazy, um, with dealing with the compatibility

00:28:11 ◼   ► issues, because, you know, especially with a lot of the things being innate, like that's good and bad

00:28:16 ◼   ► that if you have the same control in Swift UI and you run it on iOS 26, it could behave or look or have

00:28:23 ◼   ► different metrics to if that same thing is running on iOS 17 or 18. And so that can cause all kinds of

00:28:29 ◼   ► weird, you know, sort of emergent behaviors, which are challenging to track down.

00:28:33 ◼   ► Yeah. And, and I think a lot of it depends on like, you know, is your app kind of in,

00:28:37 ◼   ► in growth mode or are you mostly like serving your existing customers? Like I I'm deciding that

00:28:42 ◼   ► I'm going to require 2826 pretty aggressively, um, like pretty close to day one, just because

00:28:49 ◼   ► overcast is mostly serving existing customers. Now, like I'm not getting tons of new users per day.

00:28:54 ◼   ► My, I'm not like hockey stick growth anymore. Um, so, you know, my, my goal is serve my existing

00:28:59 ◼   ► customers as best as I possibly can and, you know, try to slowly gain more over time. So I think,

00:29:04 ◼   ► you know, an aggressive release schedule for that makes a lot of sense, but you know,

00:29:07 ◼   ► that depends on your app. All right. Well, thank you so much everybody for listening. We have so

00:29:12 ◼   ► much to do. We're going to keep covering this throughout the summer. Um, good luck with all

00:29:16 ◼   ► of your apps out there and all of your session watching and all of your API testing and all

00:29:20 ◼   ► of your bug filing and everything else we're all trying to do right now. And we'll talk to you

00:29:23 ◼   ► in two weeks. Bye.