PodSearch

Developing Perspective

#186: Dropping Bombs

 

00:00:00 ◼   ► Hello and welcome to Developing Perspective.

00:00:02 ◼   ► Developing Perspective is a podcast discussing news of note and iOS development, Apple and

00:00:06 ◼   ► the like.

00:00:07 ◼   ► I'm your host, David Smith.

00:00:08 ◼   ► I'm an independent iOS developer based in Herndon, Virginia.

00:00:10 ◼   ► This is show number 186, and today is Monday, June 2nd.

00:00:14 ◼   ► Developing Perspective is never longer than 15 minutes, so let's get started.

00:00:18 ◼   ► All right, so I am coming to you from San Francisco, specifically my hotel room after

00:00:24 ◼   ► just walking out of a rather remarkable keynote.

00:00:29 ◼   ► it was not exactly what I expected,

00:00:31 ◼   ► and in a very good way.

00:00:34 ◼   ► I think it was interesting going into a keynote like that

00:00:38 ◼   ► with not-- I wouldn't say I had low expectations,

00:00:42 ◼   ► but I didn't really know what to expect.

00:00:44 ◼   ► I didn't know if it would be a hardware-focused event,

00:00:46 ◼   ► software-focused event, just minor updates, huge things.

00:00:50 ◼   ► Who knows?

00:00:51 ◼   ► And it turned out it was pretty huge.

00:00:54 ◼   ► And if I'm honest, it's still all kind of seeping in,

00:00:56 ◼   ► and that's the way that I tend to do this.

00:00:58 ◼   ► If you've been listening to the show for a while,

00:01:00 ◼   ► you probably have heard me do this,

00:01:02 ◼   ► where it's right after lunch, right after the keynote,

00:01:05 ◼   ► I'll tend to do a short kind of first impressions post.

00:01:08 ◼   ► And then later in the week, I'll do another one.

00:01:10 ◼   ► I like doing one now.

00:01:12 ◼   ► Before, I fully formed all my thoughts.

00:01:13 ◼   ► They're a little bit more rattled.

00:01:15 ◼   ► But everything I know now is not under an NDA,

00:01:18 ◼   ► or in any way restricted from me to talk about it,

00:01:21 ◼   ► because it was just in the public keynote.

00:01:23 ◼   ► So I can just kind of speak freely

00:01:24 ◼   ► with what I think about, rather than having

00:01:26 ◼   ► to be a bit more thoughtful later on.

00:01:28 ◼   ► and the week.

00:01:29 ◼   ► So first thoughts, first impressions.

00:01:32 ◼   ► It's big.

00:01:35 ◼   ► It's huge.

00:01:38 ◼   ► I don't really know how to undersell it.

00:01:41 ◼   ► I felt like a little bit I was being played

00:01:43 ◼   ► while I was watching the keynote, though.

00:01:45 ◼   ► Because the first two sections, the Mac and the iOS section,

00:01:48 ◼   ► felt fairly-- I wouldn't say meh.

00:01:51 ◼   ► But in that vein, it wasn't large, categorically shifting

00:01:57 ◼   ► changes to the platforms.

00:01:59 ◼   ► Some of the things that are kind of cool--

00:02:01 ◼   ► so starting with, I guess, in chronological order,

00:02:03 ◼   ► talking about Yosemite, it's slightly freshened up UI.

00:02:07 ◼   ► Nothing huge there.

00:02:08 ◼   ► Some widgets in Notification Center.

00:02:11 ◼   ► The continuity thing is kind of cool in terms

00:02:13 ◼   ► of having a connection and an awareness

00:02:16 ◼   ► between your device and your laptop

00:02:20 ◼   ► is just powerful and cool in a lot of ways.

00:02:22 ◼   ► And I'm glad to see some of those kinds of things going on.

00:02:25 ◼   ► And I think you'll be able to do some really cool things

00:02:27 ◼   ► as a developer with that.

00:02:29 ◼   ► Like, it immediately comes to mind for me,

00:02:31 ◼   ► as a podcast developer, to be able to-- you're

00:02:34 ◼   ► listening to a podcast, for example, on your phone.

00:02:36 ◼   ► You sit down and you pick up where I left off,

00:02:38 ◼   ► and that is a smooth and defined handoff,

00:02:41 ◼   ► rather than the user having to manage that, or things

00:02:44 ◼   ► like that that is kind of cool.

00:02:46 ◼   ► So that's kind of an interesting thing on the Mac.

00:02:48 ◼   ► It was fairly minor, I'd say, on the Mac,

00:02:51 ◼   ► at least compared to, I think, what

00:02:52 ◼   ► some people had expected, including myself.

00:02:55 ◼   ► in terms of potentially it being a major overhaul of the UI

00:02:59 ◼   ► system, of the fundamental way that apps are built,

00:03:03 ◼   ► these types of things.

00:03:04 ◼   ► None of that happened.

00:03:05 ◼   ► It was very much the next evolution in that.

00:03:09 ◼   ► And that's great.

00:03:10 ◼   ► I'm not particularly a big Mac developer.

00:03:12 ◼   ► I do some of it.

00:03:13 ◼   ► But mostly, that's not really my focus.

00:03:15 ◼   ► Most of my focus is definitely on iOS.

00:03:17 ◼   ► And on iOS, we had a couple of good--

00:03:22 ◼   ► they're slow playing us.

00:03:23 ◼   ► They show up first.

00:03:24 ◼   ► and it's like interactive notifications.

00:03:26 ◼   ► Cool.

00:03:27 ◼   ► OK, that's nice.

00:03:28 ◼   ► And it's nice that there's a third party capability for that,

00:03:31 ◼   ► it seemed, based on what some of the things they were saying.

00:03:35 ◼   ► Spotlight is, I guess, kind of nice.

00:03:38 ◼   ► Be able to have a bit more powerful search,

00:03:41 ◼   ► a slightly better keyboard, audio and video chat

00:03:44 ◼   ► type of things.

00:03:46 ◼   ► Cloud Drive, which seems kind of a weird document model

00:03:52 ◼   ► that they're kind of moving to, or it's still siloed by app,

00:03:54 ◼   ► but they're accessible in a central location.

00:03:57 ◼   ► It's like, OK, that's cool.

00:03:58 ◼   ► They have these variety of different things.

00:04:01 ◼   ► Then they got to, I think, the thing that made me most nervous

00:04:04 ◼   ► as a developer, of course, is the-- when they started

00:04:08 ◼   ► to talk about HealthKit.

00:04:10 ◼   ► And based on what they said there,

00:04:11 ◼   ► it sounded not so scary as somebody who makes an iOS

00:04:17 ◼   ► fitness tracking thing.

00:04:19 ◼   ► It wasn't so much that Apple was taking over the space so much

00:04:21 ◼   ► just giving some increased visibility to it,

00:04:24 ◼   ► as well as just emphasizing what's going on there.

00:04:28 ◼   ► And kind of having a way to aggregate data rather

00:04:30 ◼   ► than necessarily to just like-- they

00:04:32 ◼   ► didn't release their own pedometer or something

00:04:34 ◼   ► like that, which would have been a bit awkward potentially

00:04:37 ◼   ► for me.

00:04:39 ◼   ► They said they're doing some stuff with home sharing.

00:04:41 ◼   ► I'm not trying to just summarize it necessarily.

00:04:44 ◼   ► But those are kind of the things that I remember

00:04:46 ◼   ► from the keynote.

00:04:48 ◼   ► And then things took a turn.

00:04:51 ◼   ► So that's probably about an hour into it.

00:04:54 ◼   ► And I was like, oh, this is cool.

00:04:55 ◼   ► It's a standard keynote.

00:04:56 ◼   ► This kind of feels like the talk rather than the tick.

00:04:59 ◼   ► It's kind of a minor step forward.

00:05:02 ◼   ► And then they said, OK, now we got some stuff for developers.

00:05:06 ◼   ► And they made a pretty bold statement,

00:05:08 ◼   ► I think, when they first started talking

00:05:09 ◼   ► about the developer stuff.

00:05:11 ◼   ► They said, I think it's the largest release and rollout

00:05:14 ◼   ► that we've ever done.

00:05:15 ◼   ► And Apple is perhaps known and kind of famously

00:05:18 ◼   ► loves to hyperbolize things.

00:05:20 ◼   ► And so I was like, oh, sure it is.

00:05:22 ◼   ► It's going to be the biggest, baddest, amazing thing I've

00:05:24 ◼   ► ever seen.

00:05:26 ◼   ► And then I'm pretty sure they followed through and came

00:05:29 ◼   ► through on that promise.

00:05:30 ◼   ► What they delivered is kind of huge.

00:05:33 ◼   ► There's a ton of things that they're

00:05:36 ◼   ► doing both in the App Store in terms of inter-app

00:05:40 ◼   ► communication, extensions, widgets.

00:05:43 ◼   ► There's a whole new language called Swift.

00:05:45 ◼   ► It just kind of blew my mind.

00:05:47 ◼   ► And it was kind of fun seeing the reactions

00:05:50 ◼   ► to fellow developers in that scene, seeing

00:05:53 ◼   ► these same things.

00:05:54 ◼   ► It's like, whoa, these are all the things

00:05:56 ◼   ► we've been asking for for years.

00:05:58 ◼   ► And it's like, all of a sudden at once,

00:06:00 ◼   ► you're really going to just dump them all on us at once, which

00:06:04 ◼   ► maybe I would have gradually sold them out

00:06:08 ◼   ► over the last few releases, but I'll take it.

00:06:10 ◼   ► I think on my App Store improvement checklist,

00:06:14 ◼   ► the series that I did on the show a little while ago,

00:06:17 ◼   ► they seem to have done maybe a handful of them.

00:06:20 ◼   ► It's hard exactly how to count until I get my hands on it.

00:06:23 ◼   ► But at least a handful of those things are addressed now,

00:06:25 ◼   ► which is kind of cool.

00:06:26 ◼   ► Be able to have some better searching,

00:06:30 ◼   ► showing if an app's an editor's choice,

00:06:33 ◼   ► to show that on the app in the badge,

00:06:35 ◼   ► and doing some things around in-app purchases,

00:06:38 ◼   ► and family sharing and things.

00:06:40 ◼   ► There's some stuff that I think they're doing there

00:06:42 ◼   ► that is definitely an improvement.

00:06:43 ◼   ► It's not as far as I would like to see it go eventually,

00:06:46 ◼   ► but it is definitely a step forward.

00:06:48 ◼   ► And I'll take that.

00:06:49 ◼   ► As someone who makes my living in the store,

00:06:51 ◼   ► anytime they're making progress and don't

00:06:53 ◼   ► seem to be completely just letting things kind of fall

00:06:58 ◼   ► fallow, I'm pretty happy about that.

00:07:00 ◼   ► I like the new search interface.

00:07:03 ◼   ► It's not perfect, I think, but it's certainly

00:07:05 ◼   ► better having this kind of more continuously scrolling list.

00:07:08 ◼   ► I think it's designed to encourage a bit more

00:07:11 ◼   ► exploration by customers, replacing the Nearby Me tab

00:07:17 ◼   ► with this poor little tab that every couple of releases

00:07:20 ◼   ► just gets replaced with something else and never seems

00:07:22 ◼   ► to really stick.

00:07:24 ◼   ► So that was replaced, and that was kind of cool.

00:07:27 ◼   ► But then they started just dropping bombs.

00:07:31 ◼   ► It's like all of a sudden, probably Craig was up there

00:07:35 ◼   ► and just sort of dropping bombs on us.

00:07:36 ◼   ► He's like, OK, so we now have an extension framework.

00:07:40 ◼   ► So you can now have inter-app communication in kind of the way

00:07:44 ◼   ► that we've, for so many years, been asking for,

00:07:47 ◼   ► where you could define something that you can offer up

00:07:53 ◼   ► to other applications.

00:07:55 ◼   ► And they can then act on them.

00:07:56 ◼   ► So you can say, I can handle a URL.

00:07:58 ◼   ► I can handle a document.

00:08:00 ◼   ► I can handle a text.

00:08:01 ◼   ► I can handle a picture, whatever it is.

00:08:02 ◼   ► And you have the ability, through the UI activity

00:08:05 ◼   ► share sheet type of thing to then expose

00:08:08 ◼   ► that behavior to someone else.

00:08:10 ◼   ► Evan, like I said, this is all pre-NDA.

00:08:12 ◼   ► I don't really know all the details of that.

00:08:14 ◼   ► But it seems at least promising that that is something

00:08:16 ◼   ► that they're heading towards.

00:08:18 ◼   ► And even in its most simplest form

00:08:21 ◼   ► is something that is going to allow

00:08:23 ◼   ► us to do some really cool things as developers.

00:08:27 ◼   ► Widgets in Notification Center I think is great.

00:08:31 ◼   ► There's a lot of just little cool things that I think

00:08:33 ◼   ► a lot of applications would benefit from by having

00:08:35 ◼   ► a more persistent place that you can put things that isn't badges.

00:08:39 ◼   ► For example, the classic one for me is obviously in Podometer++.

00:08:43 ◼   ► If you want to look at your step counts,

00:08:45 ◼   ► you can just have them in Notification Center all the time.

00:08:49 ◼   ► I have enough to badge the app.

00:08:52 ◼   ► It's just data that's up there.

00:08:54 ◼   ► I can give you more detailed things potentially than just a number,

00:08:57 ◼   ► in terms of where you are in your goal, these types of things.

00:09:01 ◼   ► Maybe even do some graphs and charts or things.

00:09:03 ◼   ► You can extend and export the experience of an application

00:09:07 ◼   ► outside of it, which is awesome and kind of revolutionary.

00:09:12 ◼   ► At least, revolutionary for the platform, not necessarily

00:09:14 ◼   ► revolutionary in general.

00:09:17 ◼   ► Yeah, and there's just a lot of things

00:09:22 ◼   ► that they're starting to allow that-- it dovetails pretty well

00:09:26 ◼   ► into episode 185, the last one I did,

00:09:29 ◼   ► where I was talking about my perspective now

00:09:31 ◼   ► on trying to find opportunities within the App Store

00:09:35 ◼   ► and see where Apple is heading and see

00:09:36 ◼   ► what they're focused-- putting their weight behind

00:09:39 ◼   ► and trying to get in the way of that.

00:09:40 ◼   ► And there's a lot of things.

00:09:44 ◼   ► There's a lot of waves breaking or whatever metaphor

00:09:47 ◼   ► you'd like to use.

00:09:48 ◼   ► There's a lot of things going on.

00:09:49 ◼   ► There's a lot of opportunities I think

00:09:51 ◼   ► this summer is going to create for developers.

00:09:54 ◼   ► And honestly, at this point, I am a little overwhelmed

00:09:57 ◼   ► by what exactly I'm going to do.

00:09:58 ◼   ► There's obviously some obvious simple low hanging fruit things

00:10:01 ◼   ► that I'll do to my existing apps.

00:10:03 ◼   ► But I think there's a ton of opportunities.

00:10:05 ◼   ► There's a lot of things that if you executed well and got it,

00:10:09 ◼   ► you know, sort of were an early trailblazer on some

00:10:12 ◼   ► of these technologies, I think there's a lot of things that you

00:10:15 ◼   ► could do to get noticed in that.

00:10:17 ◼   ► And there's just a whole new realms of applications

00:10:21 ◼   ► that previously just were not possible that now are.

00:10:24 ◼   ► And any time that happens, like maybe you

00:10:25 ◼   ► could use a land rush.

00:10:26 ◼   ► You could call it that if you want

00:10:27 ◼   ► to go a couple more on the negative side.

00:10:29 ◼   ► Or you could just call it a really ripe opportunity.

00:10:31 ◼   ► So I'm pretty psyched.

00:10:32 ◼   ► And then, of course, the last biggest bomb of all, like, oh,

00:10:36 ◼   ► and by the way, here's this new language.

00:10:38 ◼   ► It's called Swift.

00:10:40 ◼   ► It's like a objective C without the C, which is kind of crazy.

00:10:45 ◼   ► And if I'm honest, I don't know too much about it

00:10:47 ◼   ► at this point.

00:10:48 ◼   ► I'm sure there's some things I'll be learning over this

00:10:50 ◼   ► next week.

00:10:51 ◼   ► My initial reaction when I saw that was like, that's cool.

00:10:54 ◼   ► I'm glad that they're doing that.

00:10:56 ◼   ► And maybe that's something I'll look at in the fall

00:10:59 ◼   ► or in the winter or something like that.

00:11:00 ◼   ► I don't expect to be spending too much time trying

00:11:02 ◼   ► to learn it this summer.

00:11:04 ◼   ► I expect it's just going to be too much to try and balance

00:11:07 ◼   ► learning all of the new APIs and all the new applications

00:11:10 ◼   ► and all these types of things that are now part of the system

00:11:13 ◼   ► to then balance that with also trying to learn a new language.

00:11:17 ◼   ► Because at its core, Objective C is at least something

00:11:21 ◼   ► that I know well.

00:11:22 ◼   ► And so that's just maybe a cautionary note

00:11:25 ◼   ► as I'm thinking about it myself is

00:11:27 ◼   ► that be careful about diving too much into Swift

00:11:29 ◼   ► unless you have a lot of overhead that you can burn

00:11:32 ◼   ► through and a lot of runway or whatever you

00:11:35 ◼   ► want to think about it.

00:11:37 ◼   ► My suspicion is maybe I'll go to the introduction

00:11:40 ◼   ► to Swift session or see those types of things.

00:11:43 ◼   ► But I'm not going to focus too much on probably learning it.

00:11:46 ◼   ► There's a lot of APIs.

00:11:47 ◼   ► There's a lot of really cool fundamental things

00:11:49 ◼   ► that I'm going to be focused on making sure that I know how

00:11:52 ◼   ► to do using my existing Objective C skill set.

00:11:56 ◼   ► And also, to be fair, Swift is a brand new language.

00:11:58 ◼   ► And that is not to say that I don't think Apple

00:12:01 ◼   ► was thoughtful about it.

00:12:02 ◼   ► And it's fully formed and well developed.

00:12:04 ◼   ► But that is always going to be a little bit scary,

00:12:08 ◼   ► being one of the first people to implement a new language when

00:12:13 ◼   ► there's not necessarily going to be user-facing benefit

00:12:15 ◼   ► to that.

00:12:15 ◼   ► That benefit is going to come to you in terms of your ability

00:12:18 ◼   ► to more safely and more efficiently write code,

00:12:22 ◼   ► hopefully.

00:12:23 ◼   ► Maybe they say that it's much faster, which maybe is true.

00:12:25 ◼   ► And if that's the case, down the road,

00:12:27 ◼   ► It'll certainly improve my implications

00:12:29 ◼   ► as I move towards it, potentially.

00:12:31 ◼   ► But in the meantime, I've got a full plate as it is.

00:12:35 ◼   ► So yeah, so that's the keynote.

00:12:39 ◼   ► And those are my first reactions.

00:12:41 ◼   ► It's big.

00:12:41 ◼   ► It's one of the bigger years.

00:12:43 ◼   ► And it's kind of cool in some ways as a developer

00:12:46 ◼   ► that last year, I feel like the-- WWDC last year

00:12:51 ◼   ► had much more of a-- when you looked at iOS 7,

00:12:54 ◼   ► you saw the aesthetics of it.

00:12:57 ◼   ► And so much of my time and energy last year

00:12:59 ◼   ► was spent on design and visual types of things

00:13:02 ◼   ► and interaction types of things, which is not to say isn't fun

00:13:06 ◼   ► or interesting, but my heart really is with development.

00:13:13 ◼   ► And so seeing them rolling out and expanding the development

00:13:17 ◼   ► things in really dramatic ways is exciting,

00:13:19 ◼   ► because the next year, I think rather than being as worried

00:13:22 ◼   ► about pixels, I'm going to be thinking about bytes and code

00:13:26 ◼   ► and things like that that just make me super excited

00:13:29 ◼   ► as a developer.

00:13:30 ◼   ► And so I'm pretty psyched.

00:13:31 ◼   ► I think it's awesome.

00:13:34 ◼   ► It's like it's Christmas morning,

00:13:35 ◼   ► and we just opened up all our toys,

00:13:37 ◼   ► and we got way more things than I think anyone was expecting.

00:13:40 ◼   ► No hardware, nothing like that.

00:13:41 ◼   ► This is just about the code.

00:13:43 ◼   ► And that's really cool.

00:13:45 ◼   ► All right, so that's it for this little first impressions post.

00:13:49 ◼   ► Like I said, I'll probably have another one later in the week,

00:13:52 ◼   ► after I've had a time to kind of digest things, talk to people

00:13:54 ◼   ► I'm out here in San Francisco and see what's going on.

00:13:57 ◼   ► But those are some of my first impressions.

00:13:59 ◼   ► It's big, it's huge.

00:14:00 ◼   ► Open up the developer portal and get going.

00:14:03 ◼   ► All right, as always, we have questions, comments, concerns,

00:14:05 ◼   ► complaints, underscore David Smith on Twitter,

00:14:07 ◼   ► David at developing perspective dot com.

00:14:09 ◼   ► And otherwise, we hope you have a great week.

00:14:10 ◼   ► If you're out in San Francisco, if I run into you,

00:14:12 ◼   ► definitely say hi.

00:14:14 ◼   ► And otherwise, have a happy coding.