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