Developing Perspective

The iPhone 5.


00:00:00   Hello and welcome to Developing Perspective. Developing Perspective is a podcast discussing

00:00:04   news of note in iOS development, Apple, and the like. I'm your host, David Smith. I'm

00:00:08   an independent iOS and Mac developer based in Herne, Virginia. This is show number 81,

00:00:12   and today is Friday, September 21st. Developing Perspective is never longer than 15 minutes,

00:00:17   so let's get started.

00:00:18   All right, so it's a very exciting day. I have in my hand my iPhone 5. It just got delivered

00:00:23   about 10 o'clock Eastern and couldn't be more excited about it.

00:00:28   It is a beautiful device.

00:00:30   I ended up getting a black one, which I think was a good choice,

00:00:33   at least in the near term, which I'll talk about in a little bit.

00:00:36   But for today's show, I'm just going to talk about the iPhone 5.

00:00:39   I'm going to talk about some of the functional parts of that

00:00:42   and also just some of the things that it may impact you as a developer.

00:00:46   So first, first impressions, it is thin.

00:00:48   It is light.

00:00:50   It is quite impressive.

00:00:52   I mean, you kind of get the vibe when Johnny Ive says all those nice things about it that

00:00:57   it's going to be pretty fancy, and it's pretty fancy.

00:01:00   I mean, the camphor edge along the side is beautiful.

00:01:03   It's a little less sharp compared to the iPhone 4, which is quite nice, which I wasn't expecting

00:01:09   just in terms of it feels a bit more comfortable in a hand.

00:01:14   It's light, fairly solid.

00:01:16   I mean, if you don't have one coming today, definitely stop by an Apple store.

00:01:21   pick one up, it's good to get a feel of it, because it feels very different than the phone

00:01:26   that you've had before, especially in terms of the screen size.

00:01:29   I got a black one, and I think that was a good decision, at least in the near term,

00:01:33   because letterbox apps you barely notice to some degree, because the letterboxing just

00:01:40   disappears into the border on the top and bottom.

00:01:43   If you got a white one, it would probably be a bit more noticeable.

00:01:46   Please don't let your letterbox apps exist in the store for very long, though.

00:01:50   super easy to take care of for almost every application.

00:01:52   I know if you have some super custom thing, you're out of some trouble.

00:01:56   But please take care of that.

00:01:59   It's one of those funny things where on one hand you could say, maybe there's going to

00:02:03   be 10 million, 20 million iPhone 5s in the next couple months.

00:02:07   But on the flip side of that, the people who are buying them are most excited about their

00:02:13   technology that's in their hands.

00:02:15   and compared to the whatever 300 million existing iOS devices.

00:02:20   And so you want to get those excited people,

00:02:22   with their excited wallets, into the app store and buying your apps.

00:02:25   And so you want to be optimized, you want to look great on the new iPhone.

00:02:28   And so it really shouldn't be too bad.

00:02:30   Mostly it's just you take a default PNG of the new size,

00:02:34   throw it into your application, and it will start running in that mode.

00:02:37   If you're doing something that's vertically scrolling,

00:02:40   which it seems like 80% of iPhone apps do some kind of vertical scrolling,

00:02:44   that's basically all you'll have to do.

00:02:47   And the only changes I've had to make for the most part,

00:02:49   in my audiobooks app, I had to make the settings screen

00:02:52   and the player screen slightly different.

00:02:54   The settings screen, I just turned into a table view,

00:02:56   so it used to be a static list of options that you'd toggle.

00:02:59   Now it's just a table view, because that's better,

00:03:01   it's more flexible down the road,

00:03:03   and it also just made my transition much simpler.

00:03:06   And the player screen, I just had to do a few tweaks,

00:03:08   specifically around things where, like,

00:03:11   I have an ad that scrolls in and out on the bottom,

00:03:13   and out on the bottom, and then you make sure it was actually the bottom and not what I

00:03:16   used to think was the bottom because I was lazy and just did, you know, 460 as the bounding

00:03:22   height for the view.

00:03:24   But otherwise, it's really not hard.

00:03:26   Please do that.

00:03:27   It's very straightforward.

00:03:28   Apple has been very responsive about getting things turned around.

00:03:31   I got all my apps approved.

00:03:33   The last ones came this morning, which was a little later than I would have liked, but

00:03:37   there's certainly nothing too bad.

00:03:39   Let's see, otherwise, performance is going to be

00:03:42   a funny thing for this, because the iPhone 5's performance

00:03:45   is so much faster than all the other devices.

00:03:49   It is noticeable, the 4S before, I'd be like,

00:03:52   I remember when I got my 4S, I'm like,

00:03:53   oh man, this is awesome, it's so fast, it's so great.

00:03:56   But now I pick up the 5 and it's like,

00:03:59   oh man, that 4S was slow, it was dog slow.

00:04:03   So that's going to be kind of a funny thing,

00:04:06   because from a performance perspective,

00:04:09   actually it was kind of a funny joke I made

00:04:13   earlier in the week, was I had to do all my performance work

00:04:15   on my weather app before today, because after today

00:04:18   I'm not going to be very motivated to do it,

00:04:20   because I'm not going to be graded on it

00:04:22   unless I use my old 4S a lot,

00:04:24   because it's just not, I won't see it.

00:04:28   I mean, my app launches, I spend a lot of time

00:04:30   on my launch speed for my app,

00:04:32   and it's basically instantaneous now.

00:04:33   On my 4S, I got it down to maybe like half a second, something like that.

00:04:38   0.34 I think was the best phone I ever had.

00:04:43   I haven't actually done my instrumentation to measure it,

00:04:48   but it's probably less than a tenth of a second,

00:04:50   where at some point you just stop noticing it.

00:04:53   That said, obviously I still want to be supportive of the older devices.

00:04:56   I mean, the majority of my users aren't going to be on the iPhone 5 probably.

00:04:59   And so I want to make sure I'm certainly working backwards

00:05:02   on that.

00:05:02   But it's a nice thing to know that maybe

00:05:04   in a couple of years-- it's the classic thing.

00:05:07   If you keep moving, you keep kicking the can to some degree.

00:05:10   But in a couple of years, if this is the base phone,

00:05:12   if this is the new 4 in two years or three years,

00:05:17   this is a great device for that.

00:05:19   Because basic operations just are instantaneous.

00:05:22   Now, I'm sure you can do things to push the limits of that.

00:05:25   But basic operations are just so much faster.

00:05:27   And that's awesome.

00:05:29   Let's see, the screen itself looks gorgeous.

00:05:31   I think you're going to need to--

00:05:33   now that I'm looking at some of the stuff I'm doing,

00:05:35   it's like I may need to work a little bit on some of my colors

00:05:38   and things to make them really pop on the new screen,

00:05:42   because it is just such a gorgeous, sort of nicely,

00:05:44   sort of deep saturation levels, good solid blacks.

00:05:48   There's even some of my font sizes and in choice,

00:05:50   I'm going to have to tweak a little bit because just the way it looks.

00:05:55   Let's see, what else about the phone?

00:05:57   And see, it's just a surprising thing.

00:06:03   I've had an iPhone in my pocket for a very long time,

00:06:05   and I wasn't expecting this to be surprised.

00:06:08   I was expecting to like it, but it's surprisingly good.

00:06:11   It feels good in my hand.

00:06:13   I'm going to struggle a little bit with the reaching all the way

00:06:17   to the top thing with the 16 by 9 screen.

00:06:19   I think I'm going to get used to it.

00:06:20   I've always had a little bit of a trouble with that.

00:06:24   It's just one of those-- I don't have chocolate berry hands,

00:06:26   So it's not like one of those, like, I need to--

00:06:28   so as always, I think I've held it sort of slightly different

00:06:32   anyway in terms of being able to reach the whole screen.

00:06:34   And so it's not as big of a transition,

00:06:36   but I'll definitely notice that.

00:06:38   But overall, it's definitely a nice thing.

00:06:39   And for most apps, I've really enjoyed the extra real estate

00:06:43   so far just in playing with it.

00:06:44   In terms of I open up Instapaper and I--

00:06:47   it's not something like that where you're just

00:06:49   trying to read content.

00:06:50   You can just go an extra two or three lines

00:06:52   before having to sort of flip to the next page.

00:06:55   And so that's just awesome.

00:06:59   Sound quality is great.

00:07:00   Otherwise, yeah.

00:07:01   I mean, that's most of what I was

00:07:03   going to say about the phone itself.

00:07:04   I mean, it's just a gorgeous thing.

00:07:06   Definitely check it out if you aren't lucky enough to have one.

00:07:09   Definitely go to the Apple Store and check one out and get one.

00:07:13   Or get one to hold on to so you can play with it

00:07:16   and kind of get a good sense of it.

00:07:19   Let's try, I think.

00:07:19   So really some design considerations as a developer

00:07:22   and what it means with a new phone.

00:07:23   Some things you definitely are-- from now on,

00:07:27   I'm increasingly nervous about where

00:07:32   Apple is going in terms of the stability of screen sizes.

00:07:35   And specifically, I'm thinking about the iPad in terms of it's

00:07:41   great that they've been so stable.

00:07:43   It's been 1024 by 768 and 320 by 480 for years.

00:07:48   And that's made life a lot really easy for us.

00:07:50   And the problem is it's allowed us to be pretty

00:07:52   lazy for a lot of things. I know I've done this a lot where you just hardcode stuff and

00:07:58   other than handling rotation, you don't really have to worry about it. And there's this inkling

00:08:02   that I had after seeing this that it wouldn't surprise me if at some point there's a version

00:08:07   of the iPad that's 16 by 9. And maybe it's not the big one or maybe it's a new small

00:08:13   one or a version of the iPad Mini or something. But it feels nice. There's a couple of things,

00:08:19   especially for things like reading, where it would work really well.

00:08:22   And for movies, like, it fits.

00:08:24   And so I'm definitely starting to think, and I think as all the development I'd be

00:08:29   doing forward, I'm going to make sure I'm very flexible in the vertical dimension.

00:08:32   I think Apple is pretty safe.

00:08:34   They would only change one dimension of the thing.

00:08:37   So if they were going to change the iPad, I think they'd likely make it, it would

00:08:43   would still be 768 as the narrow one, and then whatever 768 times 16 over 9 is, whatever

00:08:50   that math works out to, in height. And so I'm not sure about that. That's a wild speculation,

00:08:57   but that's just the sort of the gut I'm getting and something that I'm going to be keeping

00:09:00   in the back of my mind that I want to be careful about.

00:09:03   Other things that are more iOS, just generally iOS 6 related, Smart App banners are now available

00:09:09   in iOS 6, and this is one of my little pet peeves,

00:09:12   so I'm just going to emphasize it here.

00:09:13   I wrote a blog post.

00:09:14   The show notes are in--

00:09:17   there's a link in the show notes to my site.

00:09:18   It takes like two minutes to implement this on your site.

00:09:21   And Smart App Owners, in a nutshell,

00:09:23   is a way that Apple has now sort of promoted and galvanized

00:09:28   around--

00:09:29   for if you want to create a link to your app on your website,

00:09:32   this is how you do it.

00:09:33   You add a little meta tag to the top of your HTML,

00:09:36   and that's it.

00:09:36   Apple takes care of the rest.

00:09:37   is a really smart, clever thing where if they have the app, it'll launch it.

00:09:41   They don't have the app.

00:09:43   It'll show them the price and a Buy button.

00:09:45   If they already have bought it but haven't installed it,

00:09:48   they get an Install button.

00:09:49   It's great.

00:09:50   It's exactly what you want.

00:09:52   Please do this.

00:09:52   Any time I see a pop-up now being like, hey, get our app.

00:09:56   Don't get our-- when I visit your website, I'm going to be very angry.

00:10:00   I'm probably not going to install your app.

00:10:03   And I'm probably just going to close the site and move on.

00:10:07   because clearly you're not caring about me and my experience in the way that I'd like

00:10:10   to be taken care of.

00:10:11   Really, it takes two minutes just to do it, think, don't forget about it.

00:10:15   iOS 6 adoption is through the roof.

00:10:17   I think the last I saw it was about 28%, about 48 hours in.

00:10:20   So this is almost all your users are going to be on iOS 6, which means they'll have iOS

00:10:27   app banners.

00:10:28   So please do that as quickly as you can.

00:10:30   Let's see other things.

00:10:33   One last funny thing, of course, is the iPhone 5 is the first of the ARMv7s processors.

00:10:40   I'm not too familiar with the exact low-level details of that.

00:10:43   I believe it changes and improves some of the floating-point operation stuff.

00:10:47   I was looking at it a little bit, but I'm not a huge processor guy.

00:10:50   The kind of funny thing is what they've done, Apple's done, is now essentially the Xcode

00:10:55   in its default state will only support ARMv7 and ARMv7s, which means you can no longer

00:11:01   support the iPhone 3G or below natively.

00:11:06   You can hack things around, you can use old versions of Xcode, but you cannot in a supported

00:11:11   fashion build for both ARMv6 and ARMv7s, which is fine in my experience.

00:11:16   Very few users are on the 3G anymore. There's going to be some.

00:11:21   You're going to annoy some people, but just sort of embrace that and move on.

00:11:26   library provider if you're someone who provides a

00:11:30   so-so's first that if you built frameworks for things for code

00:11:34   could rebuild your frameworks as soon as you can because you get a compiler error

00:11:38   and warning and things

00:11:39   if you don't have an army sevens

00:11:41   s slice for the new iphone

00:11:43   and your friend work sets can important thing to do if you are one of those

00:11:46   people i ran into that person when the frame is amusing and it's like

00:11:49   it's just kind of annoying

00:11:51   uh... anyway that's it for today show

00:11:53   i'll probably picking up again

00:11:54   in the next couple of shows talking about the weather app arc that I've been working

00:11:57   through.

00:11:58   I had some kind of fun things happen.

00:12:00   Like yesterday I finished my localization work, so I got my translations back from service

00:12:04   provider.

00:12:05   I'm going to do an episode just walking through localization, how that works.

00:12:09   I did a whole fun thing about accessibility in my weather app where it does a bunch of

00:12:13   -- it's doing what I hope is smart accessibility rather than just doing the simple stuff of

00:12:18   like displaying, you know, making sure that the label is set correctly.

00:12:21   It turns my phone into actually kind of more like a weatherman.

00:12:24   Like you open it up and you swipe around and it's telling you things about the weather

00:12:28   rather than just showing you what's on the screen.

00:12:30   And a bunch of other things.

00:12:31   The app's going well.

00:12:32   I'm hoping to submit next Friday, so I've got about a week left of work.

00:12:36   Though it's pretty much done.

00:12:37   I'm just polishing, sending out beta testing, that kind of stuff.

00:12:41   I'll be submitting next week.

00:12:42   And then I'm happy to announce that I'll be targeting an October 17th release date, which

00:12:48   I'm kind of excited about.

00:12:49   So October 17, circle out on your calendars.

00:12:51   That's when I'll be launching my new weather app

00:12:54   to be named shortly as part of the marketing build up

00:12:57   towards it.

00:12:59   That's still about a month out.

00:13:00   So it's a little while.

00:13:03   And at this point, it's just little teasers here and there.

00:13:06   But definitely stay tuned if you're interested in kind

00:13:08   of how this whole process goes that I started talking

00:13:10   about a couple weeks ago.

00:13:12   And hopefully I'll be talking about as it goes down the road.

00:13:16   All right, hope you guys have a great weekend.

00:13:18   Enjoy your iPhone 5s, either your own or your friends, or the ones you can pick up at the

00:13:23   Apple Store.

00:13:24   It's always a fun time when we get new hardware.

00:13:25   Otherwise, I hope you guys have some happy coding, and I will talk to you next week.

00:13:29   Bye.