PodSearch

Under the Radar

33: iOS 10

 

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

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

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

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

00:00:10 ◼   ► So last week we talked a little bit about our initial impressions from WWDC and what

00:00:15 ◼   ► was specifically new and interesting and exciting about watchOS.

00:00:19 ◼   ► Today we're going to tackle probably the more most important of the platforms that Apple

00:00:25 ◼   ► talks about.

00:00:26 ◼   ► In their keynote they've said they have all these platforms now.

00:00:28 ◼   ► They have watchOS, MacOS, iOS, and tvOS.

00:00:31 ◼   ► iOS is certainly the most significant of those,

00:00:34 ◼   ► I would imagine, at least in terms of users,

00:00:37 ◼   ► and probably in terms of business, too.

00:00:39 ◼   ► - And in terms of developers, for sure.

00:00:41 ◼   ► - Yeah.

00:00:42 ◼   ► And so, it seems like the one we wanted to make sure

00:00:45 ◼   ► we had enough time to really chew on what was announced,

00:00:49 ◼   ► and kind of just go through it.

00:00:51 ◼   ► But before we actually get into exactly

00:00:52 ◼   ► what has changed in it, I wanted to briefly mention

00:00:55 ◼   ► how at least I go about doing this, where I go through the -- like, on the developer

00:01:03 ◼   ► portal, there's a couple of documents that whenever any new OS comes out, I always read

00:01:07 ◼   ► this. There's the, like, the "What's New" guide, where it's just like a nice little

00:01:12 ◼   ► brief summary, like a bulleted list, where Apple pulls out all of the high-level features

00:01:16 ◼   ► that have changed, that are new, that are interesting. There's the human interface guidelines

00:01:21 ◼   ► will often have a little updated section, which they do this time where they talk about

00:01:26 ◼   ► how the notifications and widgets look different, how a Siri integration looks from a human

00:01:30 ◼   ► interface perspective. And then there's the really thick and terse one, which is the actual

00:01:35 ◼   ► API diffs document, which is every single bit of code in Apple's APIs, SDK, the whole

00:01:44 ◼   ► thing is shown there. So every method that was added, every method that was removed or

00:01:48 ◼   ► deprecated or changed is listed out there. And I'll go through, and any word of it, if

00:01:52 ◼   ► there's a new beta or update, I'll go through all of those places to make sure that I'm

00:01:57 ◼   ► aware of everything that's changed. Because we've gotten to a point with iOS now where

00:02:03 ◼   ► the changes are more, there's way more things that change than I care about. The platform

00:02:07 ◼   ► is just way too expansive to really pay attention to everything. And so what I need to do, though,

00:02:12 ◼   ► is make sure that I understand what's changed, because every now and then there'll be this

00:02:16 ◼   ► little nugget, like something's changed in UITableView, something's changed in some kind

00:02:20 ◼   ► of UIKit framework or foundation thing that will make my job either easier or make something

00:02:25 ◼   ► possible that previously I was stuck on. And so I want to be aware of it, but most of those

00:02:29 ◼   ► I just kind of skim through. If there's nothing in it for me, like when it gets down deep

00:02:34 ◼   ► into the metal stuff or the really crazy game stuff, I'm like, I'm just skimming this to

00:02:39 ◼   ► make sure that there's nothing in there for me, but I'm pretty sure I'm just going to

00:02:43 ◼   ► skip on.

00:02:44 ◼   ► the whole dark period where there were diffs

00:02:47 ◼   ► because the method signatures had changed,

00:02:49 ◼   ► but they had only changed in ways of annotations

00:02:52 ◼   ► for nullability or changing ID to instance type

00:02:55 ◼   ► or things like that.

00:02:56 ◼   ► And so there was this period during the Swift transition,

00:02:59 ◼   ► which I think we might be just about done with

00:03:01 ◼   ► in these diffs, where it would show almost everything

00:03:04 ◼   ► was different.

00:03:05 ◼   ► You'd have to really skim through to pick out

00:03:07 ◼   ► what had actually changed in a meaningful way.

00:03:09 ◼   ► - And that's actually something that I still run now.

00:03:11 ◼   ► In Safari, you can specify a custom user stylesheet.

00:03:16 ◼   ► In those particular cases, they actually all had the same CSS tag on the divs, and so I

00:03:23 ◼   ► just hid them.

00:03:24 ◼   ► So when I'd go through, all the modified blocks would go away, which I still actually run

00:03:27 ◼   ► because I think we're on the outside of that.

00:03:31 ◼   ► But typically, when an API is modified, it usually was just one of those kinds of things

00:03:35 ◼   ► because Apple doesn't tend to change something in a way that would be a functional change,

00:03:40 ◼   ► and so I can just hide those all away.

00:03:42 ◼   ► So that's a little pro tip.

00:03:43 ◼   ► If you find the modification blocks and the diffs too much,

00:03:46 ◼   ► you can just add a user style sheet to block any diff

00:03:50 ◼   ► with a class modified and it'll go away.

00:03:52 ◼   ► - Of course you would have solved this problem

00:03:54 ◼   ► in an automated way.

00:03:55 ◼   ► - That's what I do.

00:03:56 ◼   ► In general, it's been an interesting year, I'd say,

00:03:58 ◼   ► in terms of working out what's going on.

00:04:00 ◼   ► This is the first year we're on the iOS side.

00:04:03 ◼   ► There's only a few things that really jump out at me

00:04:05 ◼   ► as like, oh goodness, I need to spend the summer

00:04:08 ◼   ► working on this stuff.

00:04:09 ◼   ► probably spend most of my summer on the watch. Because on the iOS side, things didn't change

00:04:14 ◼   ► dramatically unless you're in a certain and specific type of application, which is, I

00:04:20 ◼   ► guess, what we'll go through. Because it seems from my initial look, the two things that

00:04:25 ◼   ► most apps are going to be needing to make sure they're aware of are the changes to the

00:04:28 ◼   ► way widgets work and the way that notifications work.

00:04:32 ◼   ► The low-hanging fruit of changing, you know, massively changing things about UIKit or massively

00:04:38 ◼   ► changing things about system frameworks. Every year they have done something like that and

00:04:44 ◼   ► it just seems like this year is the lightest of those years. This is iOS 10 now, iOS version

00:04:49 ◼   ► 10, and we've had all these years to mature this platform and Apple has had all these

00:04:54 ◼   ► years to figure out what these frameworks should do, how they should work, and the rate

00:04:58 ◼   ► of change is going to affect all of us. I think that rate is permanently slowed down

00:05:03 ◼   ► now. I don't think we're ever going to get back to a point until maybe there's

00:05:07 ◼   ► entirely new OS platform with entirely new frameworks that replace all of these

00:05:11 ◼   ► but I think we're probably a ways off from that so I don't think we're gonna

00:05:15 ◼   ► get back to that point where like we're gonna have to spend all summer like

00:05:18 ◼   ► redoing major stuff because Apple fundamentally changed the way something

00:05:22 ◼   ► works or made something like vastly easier for most apps now instead we have

00:05:27 ◼   ► these fairly minor improvements to the frameworks and major new areas of apps

00:05:33 ◼   ► functionality that is now possible you know things like apps like messages apps

00:05:36 ◼   ► we'll talk about. But even those, I feel like we've hit this low-hanging fruit point, even

00:05:43 ◼   ► with that kind of thing, where like, it used to be that when Apple would open up new ground,

00:05:48 ◼   ► like when they added the extension system, lots of apps could use some kind of extension

00:05:53 ◼   ► in iOS, what was that, 8 that they added extensions?

00:05:56 ◼   ► >> Yes, iOS 8.

00:05:58 ◼   ► >> Right. So that was like, almost every developer had something they could do, whether it was

00:06:02 ◼   ► using the new APIs then, or whether it was like, you know, oh, now I can add an extension

00:06:06 ◼   ► for my app. But now it's getting narrower and narrower just because all that low-hanging

00:06:11 ◼   ► fruit's been picked. So now it's like, okay, well, now you can make an app in messages,

00:06:15 ◼   ► but that's going to make sense for relatively few apps. Now you can have a Siri integration,

00:06:22 ◼   ► but because of the limitations placed on that, again, that's going to only be possible or

00:06:27 ◼   ► sensible for a handful of app types. And so as we add these more things, it's kind of

00:06:34 ◼   ► nice. In a way it's bad because it's less exciting for most developers every year when

00:06:42 ◼   ► there's less that they can do that's new and interesting. But it's also nice that we're

00:06:48 ◼   ► not having our whole summers blown on basically churn, on things that either our users don't

00:06:55 ◼   ► see like having to rewrite frameworks or anything, or things that just everybody will consider

00:07:00 ◼   ► table stakes and we won't kind of get credit for them among our users like iOS 7 redesigns.

00:07:05 ◼   ► So it's kind of nice that I think we can spend our time better with this rate of change given

00:07:11 ◼   ► limited time in the summer.

00:07:12 ◼   ► >>

00:07:29 ◼   ► And come September, having a handful of new apps that are all taking advantage of the

00:07:35 ◼   ► new stuff to try and take advantage of that.

00:07:38 ◼   ► And I think increasingly there are things that I'm like, "I don't have a ride-hailing

00:07:42 ◼   ► service that I'm going to build a messaging or Siri integration for."

00:07:48 ◼   ► That's a way bigger problem than something that I could reasonably tackle.

00:07:52 ◼   ► And so it's interesting to—part of when I go through all these diffs and all these

00:07:57 ◼   ► what's new, I'm always going through it with a filter of, could I make an interesting

00:08:00 ◼   ► app to do that? Is there an opportunity here? And looking for those little opportunities

00:08:05 ◼   ► and nuggets. And this year, I've decided what my new app is going to be for the summer,

00:08:12 ◼   ► because I can't go a summer without making a new app, because that just wouldn't be

00:08:15 ◼   ► right. Just one? Just one. But it's just going to be just one this year. And it's

00:08:20 ◼   ► not a radical new departure. It's more in the health and fitness area that I've been

00:08:26 ◼   ► setting up Campin, because there's not a new big opportunity that I've seen that makes

00:08:32 ◼   ► sense for me to dive into at this point. And so that's what I'm going to do. And that's

00:08:37 ◼   ► nice in some ways, that it'll make my summer a lot simpler, but there is definitely this

00:08:40 ◼   ► interesting tension that as the platform has gotten so mature, there are fewer of these

00:08:45 ◼   ► kind of new little frontiers being created, at least certainly ones that can be sort of

00:08:51 ◼   ► taken advantage of by smaller teams.

00:08:53 ◼   ► - Yeah, I mean, I feel like that's kind of inevitable.

00:08:57 ◼   ► I don't think there's anything Apple could have done

00:08:59 ◼   ► to prevent that slowdown of new growth.

00:09:02 ◼   ► I mean, they gave us the whole watch and the whole TV.

00:09:05 ◼   ► We have these whole new platforms

00:09:07 ◼   ► that are being fairly underused by developers

00:09:09 ◼   ► for various reasons.

00:09:11 ◼   ► So those might open up more in the future.

00:09:14 ◼   ► But again, that's the kind of thing where like,

00:09:17 ◼   ► on iOS, on the phone and the iPad,

00:09:19 ◼   ► you have good reasons to use lots of different kinds of apps

00:09:23 ◼   ► a user, there's lots of market for that. When they open up new platforms, like on the

00:09:28 ◼   ► Watch, the Watch is a new platform with wide open space for the most part, especially with

00:09:33 ◼   ► WatchOS 3 as we talked about last week being so radically different and new, but there's

00:09:38 ◼   ► also only so many app types that are compelling enough to use on the Watch that actually make

00:09:43 ◼   ► sense to use on the Watch. So like you can't, you know, if your business is something that

00:09:47 ◼   ► doesn't really make sense on the Watch, you know, you might have a great business on iOS

00:09:50 ◼   ► and just they release a whole new platform

00:09:52 ◼   ► and there's just kind of nothing for you to do there.

00:09:54 ◼   ► TV is also very similar.

00:09:55 ◼   ► I think TV's slightly more broad than the watch,

00:09:58 ◼   ► but only so many app types will make sense on the TV.

00:10:02 ◼   ► And only James Thompson can put a calculator there.

00:10:05 ◼   ► (laughing)

00:10:06 ◼   ► - With a game controller.

00:10:07 ◼   ► - Yeah, exactly.

00:10:08 ◼   ► He's the best.

00:10:09 ◼   ► So yeah, like you know,

00:10:12 ◼   ► so as they open up these new platforms and everything,

00:10:14 ◼   ► again, it's similar to the iOS enhancements

00:10:16 ◼   ► that we got this year.

00:10:18 ◼   ► It's really, really good for a narrow subset of app types,

00:10:21 ◼   ► but it's not gonna be universal.

00:10:24 ◼   ► - Exactly, but it's fine,

00:10:25 ◼   ► and I think there's certainly some work for us to be done.

00:10:27 ◼   ► - Oh yeah.

00:10:28 ◼   ► - Especially, I think,

00:10:29 ◼   ► the whole new notification system that they added.

00:10:33 ◼   ► This was the one that I was going through

00:10:34 ◼   ► when I was trying to prepare for today

00:10:36 ◼   ► and looking through what is the thing

00:10:37 ◼   ► that most apps are probably going to need

00:10:39 ◼   ► or would like to take advantage of,

00:10:41 ◼   ► is they have this great new notification system,

00:10:44 ◼   ► which the number of apps that, in some ways,

00:10:46 ◼   ► use notifications is pretty broad. I know a couple of my apps do it, obviously Overcast

00:10:51 ◼   ► does. I saw this in a couple of the sessions this year, where they're not fundamentally

00:10:59 ◼   ► changing what's possible, and there's a few things that are new and possible in the notification

00:11:03 ◼   ► system that you can do now that you couldn't do before. You can add user notifications

00:11:07 ◼   ► from the watch that you couldn't do before, but on iOS, and functionally they'll be fairly

00:11:11 ◼   ► similar. You can add media attachments now, I think was one of the big new things, and

00:11:16 ◼   ► have a slightly more sophisticated, expanded view for notification. But the thing that

00:11:21 ◼   ► I love is rather than just adding stuff, they just said, "Okay, we've learned a lot of lessons

00:11:26 ◼   ► from the old way that we used to do notifications, from way back in the day when notifications

00:11:32 ◼   ► were a very different thing." I can't remember exactly when notifications were added to iOS,

00:11:36 ◼   ► but it was probably iOS 4, iOS 3, something like that. It was a really old API, and so

00:11:42 ◼   ► they said, "We've learned a lot since then."

00:11:45 ◼   ► I think it might have been five.

00:11:47 ◼   ► >> That's still five years ago, if it was iOS 5.

00:11:52 ◼   ► And so I love that they took that and they just made it better.

00:11:54 ◼   ► The new API makes a lot more sense, is a lot more flexible and dynamic and fits the way

00:11:59 ◼   ► people use notifications better.

00:12:01 ◼   ► And I saw that in notifications.

00:12:03 ◼   ► I also saw it like they have a whole new image capture system, if you're a camera app for

00:12:08 ◼   ► recording things.

00:12:09 ◼   ► They took what used to be a very old and kind of awkward API, and they said, "We're going

00:12:15 ◼   ► to make a new one that's a lot better."

00:12:18 ◼   ► And I like seeing that kind of improvement on the platform, too, where these aren't things

00:12:23 ◼   ► that we were just saying, that they're broadening this new frontier for what's possible.

00:12:27 ◼   ► They're taking something old that kind of works right now, but they can make better,

00:12:33 ◼   ► and they can make the quality of life for users that little bit better.

00:12:37 ◼   ► And so they're going ahead and taking advantage of that.

00:12:39 ◼   ► And there's always the tricky thing with these where it's like, well, if I adopt the new

00:12:43 ◼   ► thing, I have to only support iOS 10 and those types of concerns.

00:12:48 ◼   ► But otherwise, these are these great little things that if you're doing notification work,

00:12:51 ◼   ► it'll now be a lot easier.

00:12:52 ◼   ► The API will make a lot more sense, and everyone, everything sort of along those lines will

00:12:57 ◼   ► be so much better.

00:12:58 ◼   ► And I love seeing those little improvements.

00:13:00 ◼   ► Also, I mean, you know, in regards to requiring iOS 10, I mean, you have pretty good data

00:13:05 ◼   ► on your adoption rates.

00:13:07 ◼   ► I think in general iOS 10 adoption is going to be substantially faster than previous versions

00:13:13 ◼   ► because Apple learned something important with some of their recent point updates. They

00:13:17 ◼   ► learned that putting in new emoji equals incredibly fast updating among the user base. And in

00:13:24 ◼   ► 10, not only, there's probably new emoji I would imagine, but not only that, there's

00:13:28 ◼   ► this entire new messages app capability set that is very much in that same vein and I

00:13:35 ◼   ► I think people are going to upgrade very quickly

00:13:38 ◼   ► to get the new iMessage stuff.

00:13:41 ◼   ► - Yes, I think the only thing that is going to,

00:13:44 ◼   ► would slow it down at all is that the iOS 10

00:13:47 ◼   ► is the first one in a while that dropped device support.

00:13:51 ◼   ► So it dropped support for the iPad 2, 3, and 4

00:13:55 ◼   ► in the original mini, and it dropped support for the 4S,

00:13:59 ◼   ► I think, so there is a non-insignificant number of devices

00:14:04 ◼   ► that just can't upgrade.

00:14:05 ◼   ► - Especially if you have an iPad app.

00:14:06 ◼   ► - Yeah.

00:14:07 ◼   ► But even more strongly, I think it's gonna age out

00:14:11 ◼   ► those devices in a good way because I think it's even,

00:14:15 ◼   ► like I just bought a new iPad.

00:14:17 ◼   ► I didn't actually own an iPad that could run iOS 10.

00:14:20 ◼   ► And so I had to go and buy one in order to do development.

00:14:24 ◼   ► And so I was like, I went and bought an iPad.

00:14:25 ◼   ► - It's a hard life, we lead.

00:14:27 ◼   ► - Yeah, it is, well, but it speaks something

00:14:29 ◼   ► to the platform that the last iPad I bought was an iPad 4.

00:14:33 ◼   ► But it was, it's like, that's when I sort of stopped

00:14:36 ◼   ► upgrading every year on the iPad.

00:14:39 ◼   ► And it's interesting, certainly not everyone's

00:14:42 ◼   ► an iOS developer who now is in my situation

00:14:44 ◼   ► where they kind of lost interest in the iPad,

00:14:46 ◼   ► and now like, well, if I'm gonna have any application

00:14:48 ◼   ► running iOS 10, I need to do it.

00:14:50 ◼   ► And of course, I also got an iPad for Swift Playgrounds,

00:14:53 ◼   ► because that is so fun.

00:14:54 ◼   ► But I think there's gonna be, like you said,

00:14:58 ◼   ► there's all these extra forces that are pushing people

00:15:01 ◼   ► new devices that this fall, say on the iPhone, it's like if you were on a 4S and you were

00:15:06 ◼   ► just kind of hanging on with that 4S, there'll be this extra push to try and get you to do

00:15:11 ◼   ► it because you're going to get all these messages from people that don't make sense or look

00:15:15 ◼   ► weird. It's like on the emoji one, it was always you'd get, what is it, it was like

00:15:19 ◼   ► a black ghost emoji or something that you would get if they sent you an emoji that you

00:15:23 ◼   ► didn't support yet. You get these weird looking things that make you, or like, what is what's

00:15:28 ◼   ► what's going on?" Then I'm sure you have a conversation, like, "Why'd you send me this

00:15:31 ◼   ► weird emoji?" And it's like, "Well, no, it looks great on my screen." It's a taco on

00:15:35 ◼   ► my screen. And then they'll go and, you know, these little extra things. So yeah, I mean,

00:15:41 ◼   ► based on what I've seen in my data more recently, adoption rates are such that there's a good

00:15:46 ◼   ► chance I'll go iOS 10 only across all my core apps. It's a little bit risky to do that in

00:15:53 ◼   ► some ways, but it just makes things so much simpler. Adoption is such that it's usually

00:16:00 ◼   ► at least half of my users are running iOS 10 within the first week or so, which is pretty

00:16:07 ◼   ► good, and then you get close to like 80% maybe by a month later. And so it's pretty nice

00:16:15 ◼   ► to be able to just say, "You know what? I'm giving up a few sales and a few downloads,

00:16:20 ◼   ► But I can make my code a lot cleaner, I can update things, and especially I run into a

00:16:24 ◼   ► lot of weird issues with watch stuff, because in order to use the watch 3, they need to

00:16:29 ◼   ► have upgraded to iOS 10.

00:16:32 ◼   ► And I don't know how that will work if you upgraded to iOS 10 but not to watch OS.

00:16:36 ◼   ► There's a lot of weird compatibility issues that I think I could just sidestep by saying,

00:16:41 ◼   ► "You know what?

00:16:42 ◼   ► iOS 10, watch OS 3," and just go from there.

00:16:45 ◼   ► And that's nice.

00:16:47 ◼   ► be in a place that we can do that sort of roughly from day one.

00:16:52 ◼   ► Our sponsor this week is Cococonf. Cococonf is a technical conference series for Apple

00:16:57 ◼   ► developers. This fall, Cococonf will be coming to Washington, D.C. area on September 9th

00:17:02 ◼   ► and 10th, and to San Jose on November 4th and 5th. Speakers this year include Matt Drance,

00:17:08 ◼   ► Jamie Newberry, Daniel Steinberg, Laura Savino, Mike Ash, Danny Gregg, and James Dempsey.

00:17:14 ◼   ► And listeners of our show can use code under the radar to save 20% on those tickets for

00:17:19 ◼   ► DC and San Jose.

00:17:20 ◼   ► Now you can go to their site and see their videos from some past events and you can see

00:17:23 ◼   ► like they get great speakers, they have great production value, they have great technical

00:17:28 ◼   ► content and great other content as well.

00:17:30 ◼   ► Check out if you're going to be in DC on September 9th and 10th or San Jose on November 4th

00:17:34 ◼   ► and 5th, check out these events.

00:17:36 ◼   ► Use code under the radar to save 20% on those tickets for DC and San Jose.

00:17:41 ◼   ► And thank you so much again to CocoaConf for sponsoring our show.

00:17:44 ◼   ► So in the new stuff, are there any particular APIs that you look at it for overcast and

00:17:49 ◼   ► you think, "You know what? I'm excited about that. That's my first thing to dive

00:17:53 ◼   ► into and start adding to my app"?

00:17:55 ◼   ► Really, I mean, number one for me is the kind of boring thing where, "Oh, now I have

00:18:01 ◼   ► a reason to make what used to be called a 'today widget.'" And now it's just a

00:18:04 ◼   ► widget. And that's great. I never had a reason to before because I didn't think

00:18:09 ◼   ► anybody would put their podcast app play controls or whatever into notification center. I didn't

00:18:14 ◼   ► and that may make sense when you have

00:18:15 ◼   ► Control Center right there.

00:18:16 ◼   ► But now widgets are in more places and they're everywhere.

00:18:19 ◼   ► So I'm gonna certainly try to take advantage of that

00:18:23 ◼   ► as long as they are now allowing buttons and widgets.

00:18:26 ◼   ► We will find out.

00:18:26 ◼   ► (laughs)

00:18:27 ◼   ► As long as I don't do calculations, maybe that'll be allowed.

00:18:30 ◼   ► But anyway, so I'm gonna try to do widget stuff.

00:18:32 ◼   ► I'm gonna try to adopt the new notification APIs.

00:18:35 ◼   ► And just kind of enhancements all over the place,

00:18:37 ◼   ► like stuff like that.

00:18:39 ◼   ► There's the speech recognizer, which is interesting.

00:18:43 ◼   ► but the way it works, because the idea

00:18:45 ◼   ► of using a speech recognizer in a podcast app

00:18:47 ◼   ► sounds pretty cool if you could provide

00:18:50 ◼   ► a live transcript of what's being said.

00:18:52 ◼   ► Unfortunately, the limitations and realities of that API

00:18:55 ◼   ► are such that that's not really a compelling use for it,

00:18:58 ◼   ► or even necessarily allowed or possible use for it,

00:19:02 ◼   ► but there's all sorts of little stuff all over the place,

00:19:06 ◼   ► little API enhancements, things like the new animation APIs,

00:19:11 ◼   ► But for the most part, I can't use SiriKit

00:19:13 ◼   ► 'cause my app doesn't, the intents that they've created

00:19:16 ◼   ► in SiriKit so far don't include media playback control.

00:19:20 ◼   ► So I really can't do anything there.

00:19:23 ◼   ► Enhancements to things like Core Audio and AV Foundation

00:19:27 ◼   ► don't really apply to the way I do things.

00:19:30 ◼   ► So for the most part, I'm just looking at

00:19:33 ◼   ► just general app improvements, with the exception of

00:19:36 ◼   ► the big new widget, I'm almost certainly going to

00:19:39 ◼   ► rewrite my app for watchOS 3 and see if I can juice

00:19:43 ◼   ► watch app usage that way, 'cause right now my watch

00:19:45 ◼   ► app usage is pretty low, and I attribute that to a

00:19:48 ◼   ► combination of my app just sucking and also apps

00:19:52 ◼   ► on the watch in general sucking.

00:19:54 ◼   ► So I'm gonna hopefully try to fix that and see if

00:19:57 ◼   ► that boosts usage there, but yeah, for the most part

00:19:59 ◼   ► it's gonna be a summer of like, you know,

00:20:01 ◼   ► of basically incremental enhancements to the product,

00:20:04 ◼   ► and that's honestly great, because now there's like

00:20:07 ◼   ► new things I can do, you know, these new APIs

00:20:08 ◼   ► that make some of that easier or make some things better

00:20:12 ◼   ► or possible that weren't before,

00:20:14 ◼   ► but it's nothing like absolutely major that I feel like,

00:20:16 ◼   ► oh my god, I'm never gonna make it,

00:20:18 ◼   ► I have to get all the stuff done by the fall.

00:20:19 ◼   ► And I'm probably gonna require iOS 10 on day one

00:20:21 ◼   ► because I'm probably gonna roll this haul

00:20:23 ◼   ► into like a 3.0 update and make it like a big update,

00:20:26 ◼   ► and then I don't have to worry about all the compatibility

00:20:29 ◼   ► loading of stuff and everything.

00:20:30 ◼   ► - Sure, and it is a nice thing to look at your summer

00:20:33 ◼   ► and say it's not like, okay, I'm on this crazy March

00:20:36 ◼   ► to the end of the summer that like if you're not there

00:20:38 ◼   ► on absolute day one, it's not as significant as if it's one of these things or this brand

00:20:44 ◼   ► new thing that you really want to be part of that news cycle. If you didn't end up

00:20:50 ◼   ► shipping on day one, it may not be as big of a deal, because these are just incremental

00:20:54 ◼   ► improvements rather than these whole cloth, "Wow, this whole new thing is possible.

00:20:58 ◼   ► It's amazing."

00:20:59 ◼   ► - Right, I mean I could ship like three weeks in

00:21:01 ◼   ► and it wouldn't really matter.

00:21:03 ◼   ► - Yeah, 'cause I think I looked at it,

00:21:06 ◼   ► at the calendar, and my gut, like if I had a guess,

00:21:08 ◼   ► I would say that iOS 10 is going to launch

00:21:13 ◼   ► on the 21st of September, would be my guess.

00:21:17 ◼   ► - Oh come on, I know, this is not a guess,

00:21:19 ◼   ► you have a distribution, what's the likelihood?

00:21:22 ◼   ► You probably have a graph here.

00:21:24 ◼   ► - Well 'cause the event is almost,

00:21:26 ◼   ► The fall event is almost always the second Tuesday in September.

00:21:33 ◼   ► The only reason that it has not been the second Tuesday was when the second Tuesday was the

00:21:37 ◼   ► day after Labor Day, which was a weird thing because Labor Day was as late as it could

00:21:44 ◼   ► possibly be, because Labor Day in the US is the first Monday in September.

00:21:49 ◼   ► But anyway, so usually the event is the second Tuesday in September, and iOS will usually

00:21:55 ◼   ► launch the following Wednesday, with the new phones launching the following Friday. Wow.

00:22:00 ◼   ► And that's not based on some kind of rumor or insight, that's just looking at the calendar.

00:22:05 ◼   ► And so I think that means we have roughly 58 workdays between now and then. And so sometimes

00:22:14 ◼   ► I've been at this point in the summer and been like, "Okay, I have 58 days. I have

00:22:19 ◼   ► to do all these things. Wow, this is intimidating." And this year it's a little less. There's

00:22:24 ◼   ► not as much. I look at the Siri thing, which is this huge new API that's really compelling

00:22:30 ◼   ► and interesting in some ways, and I think the way they built it was really clever and

00:22:34 ◼   ► flexible with this sort of intent system, rather than it being a very—on the one hand,

00:22:40 ◼   ► you could imagine a Siri thing that was really unintelligent, that was just passing strings

00:22:45 ◼   ► to apps and hoping that the apps could work it out, but that gets really complicated with

00:22:50 ◼   ► localization and all kinds of issues like that. And so instead they've done this kind

00:22:53 ◼   ► clever, intense system. That also means they can use it in other places. That's how you build,

00:22:58 ◼   ► I believe, maps integration, is with exactly the same code as you'd use for Siri integration.

00:23:03 ◼   ► So that's really cool, but other than starting and stopping a workout, which is a really simple

00:23:08 ◼   ► use case for Siri, which I'll probably do in Podometer++, you can start a workout,

00:23:14 ◼   ► and so maybe I'll make it so you can start the workout from Siri. Sure, why not? But otherwise,

00:23:18 ◼   ► Otherwise, there's not much there.

00:23:20 ◼   ► And a Messages app, the messaging system

00:23:24 ◼   ► and that part of the keynote I looked at,

00:23:25 ◼   ► and I was like, I feel old.

00:23:27 ◼   ► I feel like I use messaging in a way

00:23:30 ◼   ► that is just not compatible with where this is going.

00:23:34 ◼   ► And that makes me feel nervous to try and dive into that.

00:23:38 ◼   ► All I'll probably do on messaging

00:23:39 ◼   ► is add a couple of sharing things to my apps,

00:23:43 ◼   ► 'cause there's a useful thing where if you share

00:23:46 ◼   ► the messages app and you share from your app, the person who receives that, if they don't

00:23:51 ◼   ► have your app installed, will get a little option to say like, "Hey, would you like to

00:23:55 ◼   ► install this app?"

00:23:56 ◼   ► >>Ezra Klein Yeah, I'm looking forward to that for sure.

00:23:58 ◼   ► That is a no-brainer to try to support that.

00:24:00 ◼   ► >>

00:24:00 ◼   ► Sure, because I mean, like even, yeah, like in Overcast, it's like if someone, if I

00:24:03 ◼   ► were to send somebody an episode and say like, "Hey, listen to this cool new episode of

00:24:09 ◼   ► Connected," and they don't happen to have the Overcast client installed, right there,

00:24:16 ◼   ► I think they can even, they'll just tap it, and if it's a free app, probably it'll

00:24:20 ◼   ► just install.

00:24:21 ◼   ► So there's a lot of things there that are like cool little bits and pieces, but it's

00:24:26 ◼   ► nice. And that's a nice feeling to look at the summer and not be overwhelmed in a way

00:24:31 ◼   ► that I have in some years. And so I look forward to iOS 10 and it's like the fall will be nice

00:24:37 ◼   ► and then it's like there's not some crazy new piece of hardware that we're going to

00:24:40 ◼   ► have to support. So maybe it'll just be a nice quiet summer.

00:24:43 ◼   ► Well, we just don't know about the new hardware yet.

00:24:46 ◼   ► Maybe.

00:24:47 ◼   ► That'll come in 10.1.

00:24:48 ◼   ► In 10.1, all of a sudden everything goes crazy and that ruins our holidays because it comes

00:24:53 ◼   ► out like the beginning of December or something.

00:24:54 ◼   ► - Right, oh, now we have a round iPad.

00:24:56 ◼   ► - Why not? (laughing)

00:25:00 ◼   ► - Yeah, I mean, and I think, you know,

00:25:02 ◼   ► if you look at what's available, you know,

00:25:03 ◼   ► like I said earlier that like there wasn't a whole lot

00:25:06 ◼   ► of like new ground, but there is new ground.

00:25:09 ◼   ► And I think this is going to be a great opportunity

00:25:13 ◼   ► for people, maybe not us, but I mean, you and me,

00:25:17 ◼   ► maybe not us, like with our apps and what we tend to do.

00:25:19 ◼   ► But I think there are opportunities, there is new ground.

00:25:22 ◼   ► messages is a really big deal.

00:25:24 ◼   ► And it's a really big deal,

00:25:26 ◼   ► kind of on the level that Snapchat is a really big deal,

00:25:28 ◼   ► where I don't understand it,

00:25:31 ◼   ► and I'm not really the target audience,

00:25:33 ◼   ► and I will probably never understand it.

00:25:35 ◼   ► But it's huge, and there's good potential there.

00:25:38 ◼   ► There have been messaging apps that have been huge

00:25:41 ◼   ► in the world that have mini apps inside of them,

00:25:45 ◼   ► and I can't even tell you whether that's WeChat

00:25:47 ◼   ► or Line or both.

00:25:49 ◼   ► I know it's one of those maybe,

00:25:50 ◼   ► but I can't even tell you which one,

00:25:52 ◼   ► but I know this is a big thing.

00:25:54 ◼   ► So that is a big opportunity for people

00:25:57 ◼   ► who are in that ecosystem and for people

00:25:59 ◼   ► who understand it better than we do.

00:26:02 ◼   ► So there are opportunities here for sure.

00:26:05 ◼   ► And even though the Siri stuff is limited,

00:26:08 ◼   ► but it's still there, there's still new stuff you can do.

00:26:11 ◼   ► The Maps integration where you can now have Maps apps,

00:26:15 ◼   ► that's also, that's a thing.

00:26:17 ◼   ► It's maybe not for anything you and I currently do,

00:26:21 ◼   ► but there's stuff there.

00:26:23 ◼   ► So there are areas here that are new ground.

00:26:25 ◼   ► And I will simply close this argument by saying

00:26:28 ◼   ► that last year was the release of content blockers.

00:26:32 ◼   ► And I was sitting in the session,

00:26:36 ◼   ► I was sitting there and I was thinking,

00:26:37 ◼   ► you know, I can make a content blocker

00:26:39 ◼   ► that would be really good,

00:26:40 ◼   ► but there's gonna be a thousand of these things on day one.

00:26:43 ◼   ► And I'm just gonna get buried.

00:26:44 ◼   ► And everyone's gonna make this and that's it.

00:26:47 ◼   ► And even, and so I decided later in the summer

00:26:49 ◼   ► to actually do it, and there was the whole peace debacle,

00:26:52 ◼   ► and that was unfortunate on a number of levels.

00:26:54 ◼   ► But the fact remains that on day one,

00:26:58 ◼   ► I launched this content blocker in this new area

00:27:00 ◼   ► that was just opened up, thinking there would be

00:27:03 ◼   ► thousands of other apps, and I would just be buried

00:27:05 ◼   ► under this flood, and there weren't.

00:27:09 ◼   ► There were like four.

00:27:10 ◼   ► Like it was such a small number of actual content blockers

00:27:13 ◼   ► that were out there on day one.

00:27:15 ◼   ► So if there's an area that's opened up now

00:27:18 ◼   ► that wasn't opened up before,

00:27:20 ◼   ► don't assume that there's gonna be a million app developers

00:27:23 ◼   ► that rush in there and bury you.

00:27:25 ◼   ► If you can be there on day one with something good

00:27:27 ◼   ► that was not possible before,

00:27:29 ◼   ► you actually have a pretty good chance

00:27:31 ◼   ► of seeing some success.

00:27:32 ◼   ► So basically don't let the size of the app store

00:27:36 ◼   ► dissuade you from trying when there's a new area

00:27:39 ◼   ► like this being opened up.

00:27:41 ◼   ► - Yeah, and I think that's especially,

00:27:43 ◼   ► This is, if you have, like I often hear from people who talk about, like they wish they wanted to make their own apps,

00:27:48 ◼   ► but they don't really know when or why, or like when and when to do it, or how to do it, or how to get, like,

00:27:53 ◼   ► "I don't know if I have a good idea," is like an excuse I often hear.

00:27:57 ◼   ► This is the best time you're ever gonna have to make a new app, is when there's a new iOS update.

00:28:03 ◼   ► Go through the diffs, go through the what's new, find something that couldn't be possible before,

00:28:08 ◼   ► that is now possible, and make an app around that.

00:28:11 ◼   ► And it may be a small niche thing, but there are plenty of small niches that can make at

00:28:18 ◼   ► least a good start for a sustainable business.

00:28:21 ◼   ► And so it's a great time to spend your summer doing that, especially if there's not a

00:28:24 ◼   ► lot of other things that you need to do, find something new.

00:28:27 ◼   ► Find a little niche that you can go into and maybe it'll be the tip of a wedge to open

00:28:31 ◼   ► up a new opportunity for you.

00:28:33 ◼   ► Ezra Klein Exactly.

00:28:34 ◼   ► All right, and with that, we are out of time this week.

00:28:37 ◼   ► Thanks for listening everybody, and we'll see you next week.

00:28:39 ◼   ► Bye!