PodSearch

Under the Radar

Under the Radar 27: Fast App Review

 

00:00:00   welcome to under the radar a show about

00:00:02   independent iOS app development I'm

00:00:04   Marco Arment and I'm David Smith under

00:00:06   the radar was never longer than 30

00:00:08   minutes so let's get started so an

00:00:11   exciting thing happened over the last I

00:00:13   guess it's about a week or so at least

00:00:16   since I first noticed this and started

00:00:17   to hear about it so as you would imagine

00:00:20   as someone who has quite a few apps I

00:00:22   submit to the App Store on a

00:00:24   semi-regular basis you know usually I'll

00:00:26   have at least a Napper to in review at

00:00:28   any given time and you notice something

00:00:31   a bit funny the my apps started to get

00:00:35   through review really quickly and in

00:00:38   fact this is now sort of gone from being

00:00:40   this sort of a freak occurrence which

00:00:41   I've had before you know in the past

00:00:43   I've had like a freak app review that

00:00:45   just went through in a day or two or I

00:00:46   think I've even had a couple that went

00:00:47   through in a few hours and you know who

00:00:49   knows what that is but this has happened

00:00:52   now three times in a row where my last

00:00:54   app reviews have taken 27 25 and 17

00:00:57   hours respectively and I've started to

00:01:01   hear more generally from app developers

00:01:03   that this is a thing now that whatever

00:01:06   is causing this to happen is a

00:01:08   consistent thing it isn't just my

00:01:10   account and if you go to app review

00:01:13   times which is this lovely little

00:01:14   community source yeah I don't know site

00:01:17   that Dave or who's the guy who also does

00:01:19   the iOS dev weekly newsletter runs where

00:01:21   you can you know you can submit your app

00:01:23   review times it seems like this is a

00:01:26   thing that the vast majority of apps

00:01:29   that are you know people who have

00:01:30   submitted their app review times

00:01:31   recently are saying that it's taking you

00:01:33   know a day or two you know somewhere

00:01:35   between you know one or two days which

00:01:38   is a massive departure from what we had

00:01:42   before and you know certainly it's fair

00:01:44   to have a side note obvious yes I know

00:01:46   Android has no review time and it's

00:01:48   amazing and it's wonderful but this is

00:01:50   the world in which the iOS App Store

00:01:52   lives and has lived for a very long time

00:01:54   where there as long as I can remember

00:01:57   the after view has taken about a week

00:02:00   sometimes it takes a bit less than a

00:02:02   week typically around big updates you

00:02:05   know so like in September sometimes

00:02:07   things will speed up a little bit

00:02:08   because you know there's new update lots

00:02:11   of updates coming out the Apple wants to

00:02:12   get those read

00:02:13   for the new phones great sometimes you

00:02:16   can get it slower sometimes it can be

00:02:17   you know 10 days 2 weeks but I would say

00:02:20   about a week has been what it's been for

00:02:22   seven or eight years now and how all of

00:02:25   a sudden it seems like you know fingers

00:02:26   crossed

00:02:27   dabble has changed something in their

00:02:30   process in their staffing in their

00:02:32   automation in who knows what but they're

00:02:35   doing something that's meaning that app

00:02:37   review is taking a day and that seemed

00:02:41   like a pretty big deal and something

00:02:42   that we should talk about because I feel

00:02:44   like a lot of the ways in which I

00:02:47   approach development are in many ways

00:02:49   sort of there were they're working

00:02:51   backwards from it's whatever whenever I

00:02:54   submit it's going to be a week until

00:02:55   that shows up in the store and so if you

00:02:58   change that calculus to essentially be a

00:03:00   day then a lot of things about the way

00:03:02   that you know updates that I think are

00:03:04   big enough or good enough to go and

00:03:05   actually submit or things might change

00:03:08   and just in general like it's it's good

00:03:10   for a lot of reasons there's also some

00:03:12   tricky things that I think will also be

00:03:13   worth updating so does that make sense

00:03:17   yeah I mean I I'm as surprised as

00:03:19   anybody because as you said like it has

00:03:22   been about a week you know whether it

00:03:24   was six days or eight days like it's

00:03:26   been about a week for almost the entire

00:03:29   history of the App Store

00:03:30   and we should clear for the iOS App

00:03:32   Store the Mac App Store has gone all

00:03:34   over the map because it seems to have to

00:03:37   have gotten a lower priority most of its

00:03:40   life and and so the Mac App Store times

00:03:43   have often been as high as like 30 days

00:03:45   which was horrible and that's pretty

00:03:47   crippling to to any actual efforts to

00:03:49   get quality software in the market but

00:03:51   on iOS it's been pretty much yeah pretty

00:03:55   much a week forever and you know I don't

00:03:58   think there was I don't think this is a

00:04:00   coincidence I think Apple is pretty

00:04:03   clearly setting internal metrics of

00:04:05   whatever guideline they they consider to

00:04:07   be good enough they hit that guideline

00:04:10   and it's pretty obvious that for most of

00:04:13   the history of the App Store that's been

00:04:14   a week and there's lots of reasons why

00:04:16   Apple might want to not get faster and

00:04:20   one of the biggest ones obviously is the

00:04:22   faster they review apps the more

00:04:24   frequently people will submit updates so

00:04:26   just

00:04:26   it'll increase the total volume of

00:04:28   updates they're going to have to deal

00:04:29   with which will increase their cost

00:04:31   increase the size of that team but that

00:04:33   the team has to be et cetera and you

00:04:36   know as you get more and more people in

00:04:37   this in the app review team you're

00:04:40   probably gonna have more mistakes made

00:04:43   and that increases the risk of angering

00:04:45   developers getting negative press you

00:04:48   know possibly letting letting bad things

00:04:50   through instead of you know being a too

00:04:52   aggressive on the good things so it's

00:04:55   certain there's certainly reasons for

00:04:56   Apple to want to keep the review times

00:04:58   high for all these kind of accessory

00:05:01   benefits they get from it and and I

00:05:03   really it really does seem like for the

00:05:05   last eight years they have just thought

00:05:07   that one week was good enough and that

00:05:09   was a good balance of all these factors

00:05:11   according to them and developers have

00:05:13   kind of gotten used to it and have just

00:05:15   I was resigned to accepting that it

00:05:18   would just always be about a week

00:05:19   because they obviously were targeting

00:05:20   that and so that was just the way it was

00:05:22   it was always going to be forever and

00:05:24   the idea now that that that over the

00:05:28   past few months like if you look at the

00:05:29   graph on on the Trant development thing

00:05:32   I look at the graph like it it hasn't

00:05:36   been like a dramatic drop just yesterday

00:05:38   it's been like a pretty straight

00:05:41   downward slope for the last few months

00:05:43   basically since Phil took over and it's

00:05:47   it's probably related although Phil

00:05:50   already ran that department before so

00:05:53   like Phil already was the head of the

00:05:55   department that contains a preview so he

00:05:58   was already the top of that before so

00:06:00   presumably he could have you know he

00:06:03   probably could have just heard this

00:06:04   before and just and didn't because I he

00:06:06   probably thought he was he was however

00:06:08   the one who made the decision that seven

00:06:10   days was was a good target so there are

00:06:14   changes afoot like this is it there's

00:06:16   because it has not just been like all of

00:06:18   a sudden in like a day it's been like

00:06:21   this because it's been this this kind of

00:06:23   steady progression downwards over the

00:06:24   last few months I think it's more likely

00:06:26   that this is intentional and that this

00:06:28   is possibly the new goal possibly here

00:06:32   to stay and that will just have

00:06:35   tremendous effects on our development

00:06:37   because like like I remember back when I

00:06:38   purview you know back when the apps were

00:06:40   started

00:06:40   you settled pretty quickly into this

00:06:42   one-week delay I I said a number of

00:06:45   times back then like yeah cuz back that

00:06:48   iOS developers had not quite resigned

00:06:49   ourselves this is like the inevitable

00:06:51   forever state and we were like oh I

00:06:53   preview is terrible there should be no a

00:06:55   preview we should have direct access and

00:06:56   and be able to update as much as we want

00:06:58   just like people could always do on the

00:06:59   Mac etc and and at the time I remember

00:07:02   saying like there's a huge difference

00:07:04   between having a short a preview and

00:07:08   having a long a preview and the longer

00:07:10   it takes generally like the more of a

00:07:13   burden it places on developers and the

00:07:15   more of like a slowing effect it has on

00:07:17   on technological progress on development

00:07:20   and on your ability to ship quality

00:07:21   software I remember even saying back

00:07:23   then seven days is you know we can

00:07:27   tolerate this but it would be it would

00:07:29   be totally different if it was 24 hours

00:07:30   and now it appears that after eight

00:07:34   years they are actually changing it so

00:07:37   that it is 24 hours and I never thought

00:07:41   this would happen I am very happy about

00:07:43   it it will change the way we do things

00:07:46   and not all those things will be for the

00:07:48   better but I think most of them will I

00:07:51   don't know I mean what do you what do

00:07:53   you think how will this change I mean

00:07:56   your special case also because you do so

00:07:59   many apps how do you think this will

00:08:01   change the way you work so I was trying

00:08:04   to think through how this changes things

00:08:05   and the biggest like I think that it

00:08:08   makes different has different impacts on

00:08:10   different kinds of updates that I'm

00:08:12   trying to do and it sounds probably

00:08:14   worth one thing I looked up ahead of

00:08:16   time was I was curious what the current

00:08:19   adoption rate for updates is recently

00:08:22   you know since iOS 7 there's been

00:08:24   automatic app updates so you know

00:08:26   customers don't have to go to the App

00:08:27   Store and hit update anymore like and

00:08:29   for most people that just happens

00:08:30   although I believe that's off by default

00:08:32   isn't it

00:08:32   if it is then a lot of people are

00:08:35   turning it on or going to the App Store

00:08:37   a lot because what I saw is that for me

00:08:40   I'm seeing about three days to get 80%

00:08:43   of people updated to the latest version

00:08:47   because that's also an important thing

00:08:49   to keep in mind because like even if the

00:08:50   app update cycle is a day

00:08:54   it's still a while until that update

00:08:56   will be running on everybody all of your

00:08:58   customers apps but it's still a pretty

00:09:00   substantial change if say we're going to

00:09:02   a world where 80% of your customers get

00:09:05   the update four days one day for app

00:09:07   review three days for actually updating

00:09:09   it on their phone you know versus eleven

00:09:13   twelve thirteen days like that's a

00:09:14   pretty substantial change but that's you

00:09:18   know so good to keep in mind that so

00:09:19   within about you know three or four days

00:09:20   I can get people doing things for small

00:09:23   changes like bug fixes you know I see

00:09:26   pan update and I you know I get a crash

00:09:29   report back something like that some

00:09:31   situation where there's this little

00:09:33   change that is obviously wrong with

00:09:36   what's currently out there this changes

00:09:38   the dynamic for me a lot for looking at

00:09:40   it and saying well maybe I'll just do

00:09:41   like a point oh one release 0.02 release

00:09:44   point O three release like doing the

00:09:46   more iterative model in terms of these

00:09:50   little little fixes when I used to look

00:09:53   at those kind of updates and I'd bundle

00:09:55   them together because you know a lot of

00:09:58   those fixes really are short and simple

00:10:00   and kind of verifiably correct you know

00:10:03   you look if you look at you'll find the

00:10:05   line of code where oh then you know what

00:10:06   am I thinking you know I have an off by

00:10:08   one error I have an out of bounds there

00:10:09   like something that is just obvious and

00:10:11   fixable and I want to get that out to my

00:10:14   customers as quick as I could but you

00:10:16   know doing a going through at one-week

00:10:19   process when I can't submit and any any

00:10:22   other changes it usually didn't make

00:10:24   sense and so I tend to bundle these

00:10:26   things up and then you know do a big

00:10:27   sort of a bigger submission and you know

00:10:30   when that one came out maybe I'll do

00:10:31   another one

00:10:32   but you that the cadence of that was

00:10:35   very much you know I'd be doing maybe an

00:10:39   update or two a month but you could

00:10:43   imagine a world where you would do

00:10:44   updates much more regularly I mean in

00:10:46   many ways it's much sort of like you

00:10:48   imagine with web development where you

00:10:50   can do releases on a fairly regular

00:10:52   basis and your as a result you're sort

00:10:55   of your average lifespan of a bug of a

00:10:59   known bug will drop dramatically

00:11:01   you know you discover a bug you fix a

00:11:03   bug you ship that out to your customers

00:11:05   so for small changes it seems like

00:11:07   that's a

00:11:08   new something that I'll have to think

00:11:09   through on bigger releases it sort of

00:11:13   changes things I think the biggest thing

00:11:15   that it changes is if it can become

00:11:16   consistent ly around a day or two then

00:11:19   when I'm doing a big update something

00:11:21   that I'm trying to mark it around

00:11:22   something that I'm trying to get

00:11:24   attention for it'll be great to have

00:11:26   some a better sense of if I put it in

00:11:29   review

00:11:29   it'll be approved or rejected within 24

00:11:32   hours say that was like what the this

00:11:35   becomes and I really hope Apple doesn't

00:11:36   change their mind on this and this is

00:11:38   just some kind of cruel experiment but

00:11:40   if this is actually the new reality then

00:11:43   that changes that a lot because I can

00:11:46   submit my update I can get it approved

00:11:47   and I can coordinate my marketing versus

00:11:50   the thing that I ended up having to kind

00:11:51   of do now where I submit it and I say

00:11:54   like tell you I'm tell people in the

00:11:55   press and talk to people and say hey

00:11:57   sometime in the next 7 to 10 days

00:11:59   I hope it'll be approved and you know

00:12:03   maybe if you can write an article about

00:12:05   it that would be great but like the

00:12:07   worst thing on those updates is if it

00:12:08   gets rejected and if you get a rejection

00:12:11   and then getting the rejection reira

00:12:13   viewed takes a week like suddenly you

00:12:16   can end up the you know of some that you

00:12:17   hoped was going to be one week can

00:12:19   become three weeks or more and so

00:12:22   turning that around to you get rejected

00:12:24   you resubmit you get approved and that's

00:12:26   two days rather than two weeks is just

00:12:29   massive for release planning for big you

00:12:32   know marketing pushes and things like

00:12:33   that and yeah I mean like the rejection

00:12:36   thing I think is one of the biggest

00:12:37   savings here because you know I said

00:12:39   like if you're especially if you're

00:12:41   submitting a brand new app Apple's gonna

00:12:43   nitpick a lot of things you might have

00:12:44   thought of or they're gonna disagree

00:12:46   with you on something that's kind of

00:12:48   near the edge of a rule or something

00:12:49   rejection is a multiplier of this app

00:12:53   review time where like you know if it is

00:12:56   not uncommon for for up for the a 1.0 of

00:12:58   an app to get rejected one to three

00:13:01   times before one finally gets approved

00:13:03   you know with little changes here and

00:13:05   there the more you you go near third

00:13:08   rails like in-app purchase or pay

00:13:12   services like the more likely that is to

00:13:13   happen but either way like you always

00:13:17   had to plan like you know well this

00:13:19   might get this app I'm planning to

00:13:21   launch my

00:13:21   get rejected one to three times before I

00:13:24   can launch it so now your buffer which

00:13:27   used to be like well this is probably

00:13:29   gonna be in the store sometime in the

00:13:30   next month can now shrink down to this

00:13:34   can probably be in the store sometime in

00:13:35   the next week and that that is

00:13:37   substantially better it just it

00:13:40   dramatically decreases the cost of

00:13:43   rejection and and it also decreases how

00:13:47   bad it is if Apple wrongly rejects you

00:13:49   this is true

00:13:51   yeah and I'm delighted to vent it's just

00:13:55   it's I'm honestly still trying to wrap

00:13:56   my head around some of the changes

00:13:58   because I think about this and I

00:14:00   combined it with thinking of recently

00:14:02   about the business models and the things

00:14:05   that are all on both sides in the App

00:14:06   Store where you know things like paid

00:14:10   updates which we don't have would have

00:14:13   would meek would make bundling up the

00:14:15   changes in two large things making make

00:14:19   a lot of sense you know sort of the the

00:14:20   the model of software where your version

00:14:22   number you know it's like you have a 1.0

00:14:25   and then a year later you have a 2.0 and

00:14:27   that kind of a a model which in this I

00:14:29   would say feels fairly outdated at this

00:14:32   point the changes too dramatically if

00:14:36   there's no incentive on the business

00:14:38   side to bundle up your changes and if

00:14:40   releasing updates it becomes really

00:14:42   lightweight and straightforward it's

00:14:44   kind of like this is a situation you end

00:14:46   up with I believe I think this is what

00:14:47   chrome does the browser we're like

00:14:49   there's just a new version all the time

00:14:52   or even a scenario where I think I don't

00:14:56   actually use the Facebook app but I

00:14:57   believe it's just sort of every week

00:14:59   gets an update and the number goes

00:15:01   bigger or something along those lines

00:15:03   I've heard of a lot of software

00:15:05   companies moving to that kind of a model

00:15:07   where you're you just ship on a very

00:15:10   regular basis and the app the product

00:15:13   you're sort of always gets better rather

00:15:15   than there being these discontinuities

00:15:16   in updates you know that rather than

00:15:20   having these big moments where the

00:15:23   customers have to be like whoa what's

00:15:24   going on and you know sometimes you'll

00:15:25   still have those if you're doing a big

00:15:27   UI refresh or something like that but in

00:15:30   general if the app is just sort of

00:15:31   always getting better if it's getting

00:15:33   updated in the background behind the

00:15:35   user

00:15:36   you can kind of get into a very

00:15:37   interesting pattern there that kind of

00:15:39   completely gets away from the concept of

00:15:41   like oh I'm working on my next big

00:15:42   three-o

00:15:43   it's like no I'm just the app is just

00:15:45   always getting better and I don't need

00:15:47   to break them up into small into these

00:15:48   big updates because updates are

00:15:50   lightweight they're like this sort of

00:15:52   this very simple thing that you know

00:15:54   it's even if there was no app review it

00:15:58   taking you'd like the difference between

00:15:59   a day and zero days is a fairly minor

00:16:03   because the majority of the time is

00:16:05   going to be spent in getting people to

00:16:07   actually go and download it from the App

00:16:09   Store's like to get the new software

00:16:10   anyway so as long as that number is on

00:16:12   that very low end it's warped by the

00:16:15   update rate and so it's essentially for

00:16:17   like free to do which hopefully Apple

00:16:20   you know can adapt to because I would

00:16:22   imagine the rate will necessarily go up

00:16:25   but I mean the Android store has had

00:16:28   essentially no app review well they have

00:16:29   a purview but it doesn't take time like

00:16:32   I'm not entirely sure in the details of

00:16:34   that but I remember they famously

00:16:35   announced that they had added app review

00:16:38   to the Google Play Store but nobody

00:16:40   noticed yeah I think it takes like a few

00:16:43   hours to a day something like that but

00:16:45   it's it's short and that works and

00:16:48   that's great and if we give that's our

00:16:50   world to now like that's kind of wild

00:16:51   like I would love the amad you know the

00:16:53   the who worst thing and I think you ran

00:16:55   into this recently with an overcast

00:16:56   update where is where you ship an update

00:16:58   that you know like you're all your

00:17:01   testing all these things you somehow you

00:17:03   missed a pretty substantial bug you know

00:17:06   a date of lost bug something that's

00:17:07   crushing your server is something like

00:17:09   some some kind of really heinous bug and

00:17:12   previously for those things we would

00:17:14   have to go and do the like the bet you

00:17:16   know like again our knees and beg Apple

00:17:18   hey please give me an expedited review

00:17:19   an Apple was usually pretty good about

00:17:21   that you know in my in my years I've

00:17:24   requested probably a handful of those

00:17:26   they've always granted them I mean they

00:17:28   the email you get back was almost always

00:17:30   a bit comical because it has this kind

00:17:32   of like well we'll make a special

00:17:33   one-time exception for you and really

00:17:35   shouldn't rely on this you know it's

00:17:37   like poor you know it's like sort of

00:17:38   this kind of very condescending email

00:17:41   you get back but whatever I don't mind

00:17:42   being condescended to if that meant that

00:17:44   my app got really you know good approved

00:17:45   in a few hours and

00:17:46   this kind of terrible bug you know I've

00:17:48   had I've shipped updates where you know

00:17:51   it's like if you launch the if you

00:17:52   launch that particular version it would

00:17:53   like start corrupting your database or

00:17:55   things like these things happen and

00:17:57   they're terrible but I almost wonder if

00:17:59   Apple would still have the expedited

00:18:01   system you know in a world of you know

00:18:04   if it's a one-day review cycle like if

00:18:06   you can be you know a request a one-hour

00:18:09   review like I don't even know if that

00:18:10   would even make sense but it's lovely to

00:18:12   think that at worst it would be a day

00:18:14   before I could get something out I mean

00:18:16   it takes them about a day to respond to

00:18:17   those requests so it's like I think that

00:18:20   actually might be a sign like if they

00:18:22   end up eliminating the extra had to

00:18:24   review system I think that would be a

00:18:25   sign that they intend to keep through a

00:18:26   few times this low because with the

00:18:28   review times being approximately a day

00:18:31   that system doesn't make sense anymore

00:18:33   it's it's there's no gain there because

00:18:35   it takes about a day to get the FFI

00:18:37   reviews so yeah it's I mean that would

00:18:39   man that would be great it this really

00:18:42   would like many of the problems of app

00:18:45   review are proportional to the time it

00:18:47   takes every few to happen and so you

00:18:50   know you don't get rid of all the issues

00:18:52   of that review by having short review

00:18:54   times but you do make a lot of them a

00:18:56   lot smaller of a problem and so I man

00:18:59   this is great

00:19:00   anyway we are sponsored this week by

00:19:02   Braintree go to Braintree payments comm

00:19:05   slash radar why make payment integration

00:19:07   more difficult than it has to be

00:19:09   Braintree powerful full stack payment

00:19:12   platform allows you to accept nearly any

00:19:14   type of payment from any device with

00:19:16   just one integration it's flexible to

00:19:18   your systems needs and supports most

00:19:20   languages where they're using Java Ruby

00:19:22   or Python you'll always have a range of

00:19:24   server-side and client-side SDK is

00:19:27   available this code supports Android iOS

00:19:29   and JavaScript clients and this takes

00:19:32   just ten lines of code to implement

00:19:34   Braintree now by next year maybe even

00:19:36   next week there could be a whole new way

00:19:38   to pay maybe it'll be the next Bitcoin

00:19:40   the next app will pay maybe both

00:19:42   fortunately brain trees full stack

00:19:44   payment platform is easily adaptable to

00:19:46   whatever the future holds so you can

00:19:48   adapt easily to accept everything from

00:19:50   pounds to PayPal to the next big

00:19:52   innovation from any device with just

00:19:54   this one integration and when that next

00:19:56   payment method comes out all you have to

00:19:58   do is update a few lines of code no late

00:20:00   nights

00:20:00   no complicated recoding no stress about

00:20:03   staying ahead of the curve Braintree is

00:20:05   here to help

00:20:05   Braintree makes payments and your job a

00:20:07   whole lot easier learn more at Braintree

00:20:10   payments comm slash radar thank you very

00:20:13   much to Braintree for supporting under

00:20:14   the radar and all of real AFN so I

00:20:17   wanted to also mention the the impact

00:20:20   this has both ways on quality so like

00:20:24   for me I mentioned before like I stress

00:20:27   out like crazy when doing it release and

00:20:29   and part of the reason I stress out is

00:20:31   what you mentioned earlier of like I

00:20:33   know that if I screwed up something

00:20:35   big-time it's gonna take me a week to

00:20:36   get to get a fix out there and that's

00:20:38   just horrible and like worst case

00:20:41   scenario if the app it's something's

00:20:42   really bad like a data loss bug I'm out

00:20:44   to pull the app from the store until I

00:20:46   can get a fix out there and lose like a

00:20:48   week of sales I've never had to do that

00:20:51   but it always been like kind of like the

00:20:52   like the the failsafe in the back of my

00:20:54   mind like well I might someday have to

00:20:55   do that if it's really bad I've had to

00:20:57   do that yeah it's it's bad pull the net

00:21:00   from from the store for a week and it's

00:21:02   just like well that's that yeah I like

00:21:04   it that's a that's a huge dent in your

00:21:06   income and in the app's growth and usage

00:21:08   and sucks for the customers so yeah so

00:21:10   like I've always had in the back of my

00:21:12   mind like man if I screw this up this is

00:21:14   gonna take me a week to fix and if it

00:21:16   only takes me a day to fix that's a

00:21:19   pretty big difference and so this the

00:21:23   faster you can get updates out the more

00:21:26   you know the lower stress it is but also

00:21:29   I think the more likely I might be to

00:21:32   let my standards slip of of like testing

00:21:36   and quality assurance to be like because

00:21:39   before like if you've ever rejected a

00:21:43   binary more than 24 hours after you

00:21:47   submitted it then if you think about in

00:21:49   this new system that would have shipped

00:21:51   to customers and I've done that a few

00:21:54   times I did that look two weeks ago so

00:21:58   you know I feel like this will this this

00:22:02   is a double-edged sword it will increase

00:22:05   the ability for us to to to get fixes

00:22:08   out there and to improve quality and to

00:22:10   be faster but I think it will also

00:22:11   increase the likelihood that we ship bad

00:22:13   bugs

00:22:14   and it's gonna take a certain degree of

00:22:16   self-control of quality assurance of

00:22:20   good rigorous practices to prevent that

00:22:22   one of the weird side effects of this is

00:22:25   that right now getting your app approved

00:22:28   through the App Store takes roughly the

00:22:30   same amount of time or even less then

00:22:32   getting test flight beta approval for

00:22:34   the first version of the baby ship in

00:22:35   test flight so hopefully that's a

00:22:38   temporary hiccup and hopefully that will

00:22:41   change maybe to the point of getting rid

00:22:42   of test flight review entirely because

00:22:44   it doesn't make a lot of sense and

00:22:46   especially in this world because like

00:22:47   we're basically right now I am more

00:22:50   incentivized to just update the app for

00:22:52   everybody than I am to run a beta

00:22:54   because running a beta will take way

00:22:56   longer now then then just getting the

00:22:58   update out there which is very strange

00:23:01   and I think it also I was thinking too

00:23:03   like it and one of the things I remember

00:23:06   I when I was talking about this online

00:23:07   people were the comment I got back was

00:23:09   this like well this is just gonna make

00:23:11   people use the public as their QA

00:23:13   Department which i think is sort of what

00:23:14   you're saying it's like well I may as

00:23:16   well just ship it out into the world and

00:23:18   if people if there are bugs people will

00:23:20   tell me and I'll submit an update and

00:23:22   we'll go back round and round and I mean

00:23:24   I guess that the reality is that may be

00:23:27   true and for some people that may happen

00:23:29   but I think overall like the average

00:23:32   quality will still go up because it's

00:23:35   you know it's like our ability to sort

00:23:37   of ask them like in a lot of ways I

00:23:39   think of software quality you know it's

00:23:42   like you're trying to get to say like

00:23:44   for some arbitrary measure say it's like

00:23:45   crash free users which is I think the

00:23:47   way fabric and crashlytics measure it

00:23:49   it's like I want that line to approach

00:23:52   100% and the faster I can iterate on it

00:23:56   the faster I'm going to get it there and

00:23:58   so while some like some reality because

00:24:01   I think think of you viewing like public

00:24:03   QA as a bad thing like it can be but the

00:24:06   reality is a lot of bugs can only be

00:24:08   found in the wild you know if beta

00:24:12   testing and internal QA were perfect you

00:24:16   know then we wouldn't need a crash

00:24:17   reporter we I wouldn't mix in my apps I

00:24:20   would have just caught all the bugs

00:24:21   before I shipped it but like that's not

00:24:23   the reality like I had respect and

00:24:25   especially any app that involves user

00:24:27   data in any way

00:24:28   a guy Avena of a recipe book app and

00:24:30   sometimes I find some very strange and

00:24:33   interesting bugs that are caused by

00:24:35   issues that I just wouldn't have I never

00:24:39   even dreamed of or imagined would be

00:24:41   issues but it's like that's just the way

00:24:42   people are using you know using the data

00:24:44   or it's their particular language or

00:24:46   character set has a weird quirk that

00:24:48   causes a strange issue see also our

00:24:50   episode number 16 designing for misuse

00:24:52   yes exactly like some of these things

00:24:55   you're only gonna find and but for me

00:24:57   like maybe there is definitely I have to

00:25:00   keep I think it's in it's like it's a

00:25:01   good cautionary word to keep in the back

00:25:03   of our minds that just because our

00:25:05   review is quick and fixing a potential

00:25:07   bug is more lightweight we still have to

00:25:10   have the discipline of keeping of

00:25:11   keeping ourselves to high standards that

00:25:14   we're not just gonna like oh we'll just

00:25:15   ship it and fix it and you know sort of

00:25:16   fix it in post kind of mindset but if we

00:25:20   embrace the ability of what that means

00:25:22   if we keep our standards high they can

00:25:25   now the overall quality can get to that

00:25:28   much higher and having a much more

00:25:30   higher quality level so much faster you

00:25:33   know sort of in way that I think of in

00:25:35   some ways like iOS updates like iOS you

00:25:38   know big major updates where Apple

00:25:40   doesn't update once a year with you know

00:25:42   a few point releases on the way that's a

00:25:45   much slower process necessarily to

00:25:47   getting towards really high quality

00:25:50   overall because you just it just takes

00:25:53   longer and so there's a much higher

00:25:55   period where things aren't going to be

00:25:57   as good yeah and I think you know and we

00:26:00   can see like it's not like this is going

00:26:02   to be the first platform ever that has

00:26:04   fast app updates available like we can

00:26:06   see from existing platforms the Mac the

00:26:09   web maybe Andrew it I don't know but you

00:26:12   know you can see from other platforms

00:26:13   what happens when developers come update

00:26:15   their software whenever they want and

00:26:17   the answer is some some products become

00:26:20   like crashing unstable and changing

00:26:22   every day but most don't

00:26:23   most just have releases that are

00:26:25   carefully issued when they need to be

00:26:27   and like most of my Mac apps don't

00:26:29   update themselves every day

00:26:30   it's fine like they they wait until they

00:26:32   they have a solid release and then they

00:26:34   update them web apps tend to be the same

00:26:36   way we know we're like you're generally

00:26:38   not noticing changes every single day to

00:26:40   web apps that you use

00:26:41   they're generally not like crashing

00:26:43   constantly because everyone's running

00:26:43   untested code like people just have

00:26:45   disciplined and good practices and they

00:26:48   figure out how to make it work and I

00:26:49   think iOS is gonna be the same way you

00:26:52   know as this time stays down if it stays

00:26:54   down as we hope it does then we're just

00:26:56   gonna see just in the long run better

00:26:59   software and there might be some hiccups

00:27:00   along the way as some developers get a

00:27:03   little bit too careless with it but I

00:27:04   think that will iron itself out fairly

00:27:06   soon and it'll just be great and I'm

00:27:09   just assuming this stays here I could

00:27:12   not be happier that they're making

00:27:14   changes like this because this means

00:27:16   that they care and that they recognize

00:27:20   that the previous system was not as good

00:27:22   as it can be exactly and I like honest

00:27:26   genuine thanks to if anybody who happens

00:27:28   to listen to the show happens to work in

00:27:30   app review or know someone who works in

00:27:32   app review you know highest of fives

00:27:34   like this is awesome this is exactly the

00:27:37   kind of thing that is an encouragement

00:27:40   to me as a developer especially as a

00:27:42   smaller developer that you know there

00:27:45   are changes afoot that things you know

00:27:47   we've been talking about for a while

00:27:48   that the App Store is a trickier and

00:27:50   trickier place to to make a business and

00:27:53   to make a run at and these changes in

00:27:55   some ways are small but they are

00:27:58   impactful in terms of they allow me to

00:28:00   ship better product more easily and

00:28:03   that's awesome and so thank you all so

00:28:06   big big congrats the app review team for

00:28:09   the amazing degree of like secrecy that

00:28:12   they have like i i've through my web

00:28:15   presence and everything else i have met

00:28:18   a lot of apple contacts or heard from a

00:28:21   lot of apple people from every

00:28:23   department you can think of in the

00:28:24   company except a preview I have never

00:28:27   heard from or met or heard about anybody

00:28:31   who either worked in a preview or who

00:28:34   even knew anybody who worked in a

00:28:36   preview that's pretty crazy that's

00:28:38   saying a lot anyway so a good job on

00:28:40   them they're more secret in the car yeah

00:28:42   so congrats i purview thank you for

00:28:44   doing this please keep it up we are

00:28:45   looking forward to this being our new

00:28:47   reality I believe it's all the time we

00:28:49   have for this week

00:28:50   so thank you very much for listening

00:28:51   everybody thank you Phil Schiller you're

00:28:54   amazing and

00:28:55   please keep this and we'll talk to you

00:28:59   guys next week bye