0:00:00Hello and welcome to Developing Perspective.
0:00:02Developing Perspective is a podcast discussing news of note in iOS development, Apple and
0:00:06the like.
0:00:07I'm your host, David Smith.
0:00:08I'm an independent iOS developer based in Herner, Virginia.
0:00:11This is show number 223, and today is Friday, June 26th.
0:00:16Developing Perspective is never longer than 15 minutes, so let's get started.
0:00:19All right, so at the end of the last episode, I said I'd probably do another one at WWDC.
0:00:24I did not.
0:00:25I also did not think I did one last week.
0:00:28Getting over WWDC is always an interesting time of the year.
0:00:31The actual week itself is just nonstop and relentless in the best possible way.
0:00:35And so that's really fun.
0:00:37I really enjoy being out there, meeting lots of people, learning a tremendous amount, especially
0:00:43enjoying my time at the actual conference in the labs, talking to engineers.
0:00:49It's the one thing that I wish more and more people were able to do by getting a ticket
0:00:54WWDC because, you know, it's just a unique experience that I always enjoy.
0:01:00But now I'm back.
0:01:01Now I'm back at the grindstone sitting at my desk writing all the codes and it's gonna
0:01:06be an interesting summer.
0:01:07There's a lot of good stuff, a lot of things that, like this year is, I would say, an exciting
0:01:12year rather than a brutal year.
0:01:14Like some years we were looking at, I'm looking at what I'm going to put out to build, what
0:01:18I'm trying to build, and it's, you know, tear everything down, rebuild it, it's going to
0:01:21be crushing.
0:01:22year, it's not. This year, it's actually pretty straightforward. There's a lot of minor changes
0:01:28that I'll be doing. And then there's a lot of things that I'm working on that just get
0:01:31better. And I like those types of changes where the work I'm doing feels very productive
0:01:36and user-facing, that my users will be able to--I can put it in the release notes, and
0:01:41they'll be impressed rather than just--I think someone--I remember hearing someone call it
0:01:46the hygiene features, things that you just kind of, you know, your customers assume that
0:01:52you're going to do, which are important to do because if you, you know, if you don't,
0:01:56you don't want to be unhygienic, I suppose. But if you do do them, then you don't really
0:02:02get much credit for them. You don't get a much a lot of goodwill just out of necessarily
0:02:06doing those. And so I always like it when years where I have tangible improvements that
0:02:09I can do. And for me, a lot of those are going to come on the watch. But I have a few other
0:02:13things in store, as always. But the main topic I wanted to talk about today that I thought
0:02:19would be a useful thing to walk through, both to help me think about my planning as well
0:02:24as for probably especially helpful for somebody who for whom this is one of your earlier beta
0:02:31cycles on iOS and watch OS and Mac OS, just to have a sense of what's going to happen
0:02:37this summer. It's like what to expect this summer. Because there's a Apple is a company
0:02:43that likes to see it seems to like to have a good rhythm with things where they do the same thing
0:02:47over and over and over again. And that's probably good. It helps us as developers know what to
0:02:54expect and to plan accordingly. And it probably is helpful for them internally to not have to
0:02:59feel like they're constantly reinventing the wheel. So this is sort of what happens over a summer.
0:03:04So you can kind of plan accordingly and be ready for the fall when the you know,
0:03:08the real exciting stuff will launch.
0:03:10So this week, on Tuesday, Apple launched Beta 2
0:03:15of all the various things, of iOS, of Mac OS, and--
0:03:20or I guess it's-- oh, sorry, OS X and watchOS 2.
0:03:25And roughly, I would say, they typically
0:03:27launch Betas every two weeks.
0:03:30That seems to be the pattern they've
0:03:31done the last couple of years.
0:03:33And so it's kind of this thing that you
0:03:35can start to rely on and depend on as a developer, which
0:03:38is quite helpful.
0:03:40The beta is what I'm referring to that,
0:03:42is probably just take a step back.
0:03:43If you're really, really new at this,
0:03:44is at W3C they released the new developer tools, the new SDKs,
0:03:51all the new things that we can take advantage of in the new OS.
0:03:54And we can install this on testing devices.
0:03:57And I would recommend that you keep it to testing devices,
0:03:59at least for a little while.
0:04:02I have WatchOS 2 and a testing watch, which coincidentally,
0:04:05you can now just pick up at an Apple store.
0:04:06Like you do this little pre-reservation thing online,
0:04:10but you can just go and get one.
0:04:11It's not quite as crazy as before,
0:04:13where there was very-- there were very supply constrained.
0:04:16I went in and just bought a new-- bought a testing watch,
0:04:19put a watchOS 2 on it.
0:04:21Because betas are betas.
0:04:23They are going to have terrible battery life often.
0:04:26They can have some weird performance characteristics.
0:04:28So be careful.
0:04:29But we get the betas, and we can play it with them.
0:04:32And you get a new version of Xcode.
0:04:33This year it's Xcode 7.
0:04:35And you can download and install that.
0:04:37And the nice thing is Xcode 7, you
0:04:39can just run it in parallel to your existing, the main version,
0:04:42which I think is 632.
0:04:44I think that's the shipping version of Xcode, but whatever.
0:04:47You can run both of them at the same time on the same machine.
0:04:51And so you can switch back and forth
0:04:53depending on what it is you're working on.
0:04:55But you can install those, and they'll
0:04:56come out roughly every two weeks.
0:04:58And I'll have a link in the show notes.
0:04:59There's a great little chart Will Haynes puts together
0:05:01every year.
0:05:03as a chart to show the progress of the betas, how long they've launched, and I always found
0:05:07that helpful to just kind of get a sense of how, when I should expect the next one.
0:05:12But conceptually, you should probably be thinking that there's going to be a new beta coming
0:05:15out roughly every two weeks until we get towards the end, like maybe like beta five or six.
0:05:21At some point, it'll stabilize, and then betas will not come every two weeks.
0:05:25And typically, that is the point where Apple has said, you know, there's always something
0:05:30up their sleeve.
0:05:31there's always some feature that is going to be coming in the last GM that is often
0:05:37related to the hardware they're going to announce this fall. And that is going to then probably
0:05:44be coming along in that last beta. And so they don't want to show that to the world quite yet,
0:05:50and so it's held out. And so my guess is internally, they're probably still running a few betas,
0:05:55but we won't see those.
0:05:58Historically, this process will continue until roughly
0:06:02the second Tuesday in September, which this year is September
0:06:068, which is in 74 days or 53 weekdays, if you're curious.
0:06:14At that point, we'll probably be able to submit
0:06:16iOS 9, watchOS 2, or LCAP applications
0:06:22to the various app stores.
0:06:24That's sort of roughly the experience they had before.
0:06:27It'll launch then, and then it will probably,
0:06:29the actual be released to the world the third Wednesday
0:06:32in September, and obviously that's just me guessing
0:06:34based on past dates, but somewhere in that ballpark,
0:06:38more likely than not.
0:06:40The only thing that I think could change
0:06:41that pattern slightly, if all of the rumors and speculation
0:06:46and some of the little hints we've seen in iOS 9,
0:06:50they indicate there's some fancy new iPad stuff coming out,
0:06:54this fall. I wouldn't be surprised if potentially
0:06:58the iPad and iPhone were launched at the same event
0:07:01this year, which sometimes they are, sometimes they haven't been, but I think
0:07:05combining them together would probably make sense because there's going to be
0:07:08new iOS 9 features
0:07:10that take advantage of the new stuff that we see on the iPad.
0:07:13And so, you know, they may
0:07:17tweak the schedule slightly, but somewhere around there is probably safe.
0:07:20If you're sitting down today and you're planning out what it is
0:07:23you're going to be doing over the summer, what you're going to build, when you're going
0:07:26to build it, how much time you have to do that building.
0:07:29I think it's fairly reasonable to say that you need to be ready by the second Tuesday
0:07:33in September, and you're probably not going to be disappointed in the direction of not
0:07:39being ready in time.
0:07:41Maybe you may get an extra week, you may get an extra few days, but my guess is you'll
0:07:45be safe if you did it around then.
0:07:47And that's what I'm doing.
0:07:48I'm kind of planning out.
0:07:49I've worked out roughly what I'm expecting to be working on over each of the weeks, but
0:07:53between now and then.
0:07:55And I think it's pretty doable.
0:07:57It's, what is it, 10 weeks, roughly 10 working
0:08:00weeks of time, which should be enough to get
0:08:03quite a lot done.
0:08:06One thing I did want to mention on that score
0:08:08is that you probably want to also make sure you're planning
0:08:10to submit your updates.
0:08:12If you're doing new and fresh iOS 9 stuff,
0:08:15to make sure your updates ideally are ready on day one.
0:08:19And the reason I say that-- not day one of being released
0:08:22to customers, but being able to submit them as early in that process as possible.
0:08:26Typically, we'll be able to submit probably about a week, week and a half before customers
0:08:31will be able to get it.
0:08:32And in my experience, if you are in that early wave of submissions, you know, you are rearing
0:08:39to go, everything's ready, the new GM comes out, you download it, you do a round of testing,
0:08:43and you submit that same day, that you have a much higher chance of being featured, you
0:08:47have a much higher chance of getting Apple's attention as somebody taking advantage of
0:08:51of new OS stuff than you do if you submit later on
0:08:56in that process.
0:09:00Because certainly the people doing that marketing efforts,
0:09:01the people who are on the lookout for those things,
0:09:03they want to be planning and working out all the details
0:09:05of their marketing, their features, all the stuff
0:09:08they're going to be doing coincident with the launch,
0:09:11they want to get that in as early as you can.
0:09:14So it's just something to keep in mind
0:09:16that even if you say submitted three or four days
0:09:18after submissions opened and you were ready for customers
0:09:17after submissions opened and you were ready for customers
0:09:19on day one, you may be missing an opportunity.
0:09:22So just something to keep in mind.
0:09:24The other things I wanted to mention.
0:09:26If you are going to work on the new iOS 9 stuff
0:09:29and you see issues or challenges in the APIs, in the SDKs,
0:09:33things that you have an idea for an app,
0:09:35but the way it works currently, it
0:09:38prevents you from doing that or there's something weird
0:09:40you're running into.
0:09:43Maybe it's a bit of a cliche at this point.
0:09:45But everything you always hear is
0:09:46that Apple engineering is driven by radars.
0:09:51It's not a perfect process.
0:09:55There's all kinds of issues and challenges with it.
0:09:56But the time to file a radar
0:09:58about a problem you are having is now,
0:10:00and if not even last week,
0:10:03in my experience and from talking to engineers in person,
0:10:06from their perspective,
0:10:11they are most able to help fix things
0:10:12as early in that process as you can let them know
0:10:14that things are wrong.
0:10:15So at this point, we just got beta two.
0:10:18My suspicion is internally, they are working on beta three,
0:10:23if not four at this point within the engineering staff.
0:10:26And so they are probably running out of time
0:10:31to be able to incorporate features or changes
0:10:35if you do not get your feedback into them soon.
0:10:38If you wait until September to submit a bunch of issues
0:10:41problems. You're at the very least probably pushing out until like 9.1 for that to be
0:10:48addressed, but more likely than not you'll maybe even be pushing it out until iOS 10.
0:10:54And so just something to keep in mind, like if there is something you're running into,
0:10:58I mean I've submitted probably about 10 to 12 radars I think since I got back from WWDC.
0:11:04It's anything that I run into I will file as a radar. And sometimes they get returned
0:11:09to me as won't fix, sometimes they get returned to me as duplicate. But, you know, I can't
0:11:14complain if I don't vote with my radars. So that's what I do. All right, what are the
0:11:21another thing that I wanted to talk about is Swift, which is what to expect over the
0:11:25summer and kind of in that theme. Swift two seems to be gaining a lot of traction. It's
0:11:31the way it's people are talking about it, just in the community and amongst my friends.
0:11:35It seems to be, it's not this novel new thing
0:11:40that we're all kind of curious about.
0:11:43It's becoming much more of an accepted
0:11:45and robust part of the development tools.
0:11:48And I'm starting to increasingly become interested
0:11:52in using it.
0:11:53I've talked about this before many times.
0:11:55I'm brutally pragmatic in the way that I built
0:11:58off the software and applications.
0:12:00And so building, starting to learn Swift is something
0:12:04that I expect to have to do at some point,
0:12:07but finding the opportune time for that
0:12:08is always a bit awkward.
0:12:10Probably not gonna do it over the summer,
0:12:12especially because more likely than not,
0:12:14and I mean, the last betas have proven this,
0:12:16Swift is still undergoing changes and improvements
0:12:20and changes in how it's structured and how it works,
0:12:24and I would rather learn it
0:12:26when it hits a fairly stable point.
0:12:28And the next sort of logical stable point
0:12:30is probably at the end of the summer,
0:12:32September/October when Swift 2.0 is finalized. That's probably around the time this winter
0:12:38when I will be picking it up and starting to learn at it and learn it in detail. And
0:12:43the funny thing is, and this is just an observation I was noticing for why I'm probably most interested
0:12:48in learning Swift now, is not necessarily--I think there are some technical advantages
0:12:53to Swift. You know, it has some protection and safety things over Objective-C. Those
0:12:59Those are vaguely interesting to me.
0:13:00At this point, I'm a reasonably proficient Objective-C developer, and I'm very quick
0:13:05with it, and I know how it works, and so it's very comfortable for me.
0:13:08But the biggest thing that is encouraging me to get into Swift, and I'm sure this is
0:13:12not unintentional on Apple's part, is that Apple is progressively Swiftifying all of
0:13:18the libraries and the Cocoa frameworks and things.
0:13:21And so my Objective-C code is progressively getting more and more unattractive as I start
0:13:27to have all these crazy nullable like flags and options. And, you know, the block handlers
0:13:35that I'm passing into system API's are now these huge sort of massive masses of stuff
0:13:40that isn't really there for Objective C, but it's there for Swift. And it started to make
0:13:45my programs look ugly. And, you know, that's an encouragement for me to go and get and
0:13:50dive into Swift a bit more because a lot of those things look, look and feel natural and
0:13:55at home in Swift because that's the whole point.
0:13:58And Apple is clearly investing in it and they are focused on it.
0:14:02And that's a train I probably don't want to get left behind on.
0:14:06And lastly, just a random closing thought for the summer as you're thinking about what
0:14:09you're going to do.
0:14:11One thing I'd encourage everyone to do, this is something I'm kind of famous for doing,
0:14:14but think about building something new at some point this summer.
0:14:18Like it's a good time, there's new APIs, there's new fun stuff.
0:14:20Whether that's a product, whether that's just a hobby, whether that's just something that
0:14:25doesn't exist, just scratches an itch that you have, like just I would encourage everyone
0:14:29to try and build something new.
0:14:32Take a break from working on one of your main projects or consulting clients or whatever
0:14:35it is that you do and just build something new and interesting.
0:14:38And I will say that I learned the most from the newest projects that I work on.
0:14:43And so I would encourage everyone to have that experience as well.
0:14:46All right, that's it for today's show.
0:14:49As always, questions, comments, concerns, complaints, you can find me on Twitter, I'm
0:14:52@_davidsmith there, or you can email me, david@developingperspective.com.
0:14:55Have a great week, happy coding, and I'll talk to you later.