Under the Radar

Under the Radar 5: Managing Feedback


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

00:00:01   independent iOS development I'm Marco

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

00:00:06   radar is never longer than thirty

00:00:07   minutes so let's get started so today

00:00:10   what we wanted to talk about is the way

00:00:14   in which we manage and deal with getting

00:00:17   feedback on our products on our apps

00:00:19   both in terms of from customers but I

00:00:22   think one of the things that I really

00:00:23   wanted to unpack a little bit is the way

00:00:25   that we do we handle feedback when

00:00:28   products are in the earlier stages so

00:00:30   things like beta testing or early

00:00:32   interactions with customers because some

00:00:35   of the things that I found really

00:00:37   complicated when I'm developing an app

00:00:39   or developing a major update is I will

00:00:41   have in my mind a vision for what I want

00:00:44   that update to do what though what I

00:00:47   want the app to do and I kind of am

00:00:49   working towards that I'm working towards

00:00:51   that but at in this early sort of like

00:00:53   embryonic state it's only in my head and

00:00:56   in the little prototypes and the little

00:00:58   bits of code that I'm building and

00:01:00   something significant though happens the

00:01:03   first time you ever show it to someone

00:01:04   else even beyond just telling someone

00:01:07   the idea but when you actually show them

00:01:08   something and you give them something to

00:01:10   react to react to the way that you think

00:01:13   about your the app seems to change for

00:01:15   myself because suddenly it has their

00:01:17   feedback their suggestions their ideas

00:01:19   start to be kind of mixed in and muddled

00:01:22   along with mine and so something that

00:01:24   I've learned is that I have to be really

00:01:26   really careful about how I get that

00:01:30   feedback at what point I get that

00:01:31   feedback and the way in which I sort of

00:01:34   manage it because what I don't want to

00:01:36   do is take too much feedback too quickly

00:01:38   and kind of lose that vision for what I

00:01:41   want to do where I want the app to be or

00:01:44   what I want the update to be and so it's

00:01:47   something that I it's a weird discipline

00:01:48   that I think you kind of have to learn

00:01:49   and I was curious though if you've had a

00:01:51   similar set of experiences how do you go

00:01:53   about kind of pulling in that feedback

00:01:55   during early development I will usually

00:01:57   you know ask close friends for input on

00:02:00   certain basic decisions about it basic

00:02:03   feature decisions how things might be

00:02:04   structured what features might need to

00:02:06   be necessary or unnecessary and then I

00:02:08   I've recently in recent years gotten

00:02:10   really a big fan

00:02:12   of medium-sized private betas for me

00:02:16   that the private beta is extremely

00:02:17   useful and I've done a number of sizes

00:02:20   of betas I first you know in the early

00:02:22   days of overcast I was doing a beta of

00:02:25   like I think like 20 people

00:02:26   I've also since then done betas with 800

00:02:30   people because test flight allowed you

00:02:31   to do 1,000 now it's actually 2,000 but

00:02:33   so that I did like 800 people on a beta

00:02:36   that was like I basically had a public

00:02:37   signup form and just without that almost

00:02:39   anybody in more recently I've done much

00:02:41   smaller babies going back to that

00:02:43   original size so if like 20 to 40 people

00:02:45   again and what I found is that the the

00:02:48   quality of the feedback doesn't actually

00:02:49   seem to change significantly with the

00:02:53   size of the beta and which is

00:02:56   counterintuitive but it seems like you

00:02:59   can show the app to a relatively small

00:03:01   number of people and you'll pretty much

00:03:04   get all the feedback you need from a

00:03:06   small group and and you know maybe it

00:03:09   maybe not a small group of like two but

00:03:11   10 or 20 people if they're actually

00:03:14   gonna use it and give you feedback which

00:03:15   is a separate point but if they're

00:03:17   actually gonna use and give you feedback

00:03:18   you don't need that many people involved

00:03:20   in the group now the feedback you get it

00:03:23   tends to be really focused or really

00:03:25   heavily weighted towards upfront

00:03:27   feedback right the very first time

00:03:29   somebody uses a beta because and I don't

00:03:32   know if other people do this but I do

00:03:34   this where if somebody gives me a beta I

00:03:36   will usually take a lot of time going

00:03:38   through the app that very first time and

00:03:40   giving pretty detailed feedback to them

00:03:42   but after that first time as more

00:03:45   updates come in I very rarely ever take

00:03:47   that amount of time again unless I have

00:03:49   you know spot an obvious but then I can

00:03:50   you know screenshot a tenant's them

00:03:51   whatever but general feedback about

00:03:54   about a beta or about an app I usually

00:03:56   it's usually front loaded and I found

00:03:57   that to be the case with most of my

00:03:59   testers as well so what I will usually

00:04:01   do is if I can I will have a few new

00:04:05   testers in every group and test flight

00:04:08   allows you to see who among the group

00:04:11   didn't install the latest few version

00:04:13   like it'll tell you the last version

00:04:15   each person installed so if I see some

00:04:17   of my testers losing interest you know

00:04:19   like if they if they just don't install

00:04:21   the updates or if the last IP they

00:04:23   installed was like five builds ago I'll

00:04:25   just quietly remove them from the

00:04:27   list because and it's no hard feelings

00:04:28   you know his I do that office I always

00:04:29   thought about this all the time because

00:04:31   I lose interest or I don't have time in

00:04:33   that in that month or whatever so I

00:04:35   usually will cut people who who kind of

00:04:37   aren't using it and you know no hard

00:04:39   feelings lots a lot of times are my

00:04:40   friends I don't I don't even you know

00:04:42   doesn't doesn't matter no hard feelings

00:04:43   and then I will add a few new people

00:04:46   every time because it allows me to get

00:04:49   that that initial impression like

00:04:50   somebody's first impression of this app

00:04:52   it allows me to have that ongoing

00:04:54   throughout the process rather than

00:04:56   showing it all to the same people right

00:04:58   up front and never bring any new people

00:05:00   in along the way so I've only recently

00:05:03   started doing beta testing properly at

00:05:06   all I would say like the most recent

00:05:08   update I did for pedometer plus plus was

00:05:10   the first time I'd ever done a big

00:05:13   update our big beta test before I

00:05:16   launched something big and you know it's

00:05:17   the before that it had only really been

00:05:19   I would Institute - I would have it

00:05:22   running on my my own phone maybe my

00:05:24   wife's maybe a few like a one or two

00:05:27   other people and honestly and then on a

00:05:29   lot of testing devices and I'd never had

00:05:32   that experience of having this big kind

00:05:34   of like wide like I did a similar type

00:05:35   of thing like I just said anybody who

00:05:37   wants to beta test pedometer plus plus

00:05:39   let me know and it went to test flight

00:05:41   and I put them all in and I had this an

00:05:43   interesting thing that was sort of like

00:05:44   similar to your experience where you get

00:05:46   this big wave of comments in this big

00:05:48   wave of feedback early on and then it

00:05:51   sort of dies down and then actually I

00:05:52   found is you ended up with another wave

00:05:54   like a week later with sort of like the

00:05:56   huh now that I've been using it for a

00:05:58   while here's like some other thoughts

00:06:00   and I would say that I had a very

00:06:01   similar kind of experience to you

00:06:03   insofar as there's only a certain number

00:06:05   amount of feedback was actually helpful

00:06:07   and like beyond that it you start to get

00:06:11   a lot more repeats you start to get a

00:06:12   lot more tangential things but like at

00:06:15   its core what I found helpful in the

00:06:17   beta test was validating a that the app

00:06:21   works and is functional in the way that

00:06:23   I need it to be and then to its

00:06:25   validating that it's a good idea that

00:06:28   people are like I'm not getting to like

00:06:30   what this doesn't make any sense or

00:06:32   people who have used the app before and

00:06:33   going to this version are like this

00:06:34   doesn't make you know you're totally

00:06:35   breaking the thing that made the app

00:06:37   good before because I think those are

00:06:39   the things that I find out

00:06:40   struggle with as myself because I have

00:06:43   been working on if you see I've been

00:06:44   working on an update for for several

00:06:45   months my experience with the app at

00:06:48   that point becomes almost exclusively

00:06:50   the new version of the app and not what

00:06:53   the existing version in the App Store

00:06:55   is and I can tend to lose sight of the

00:06:58   distance that I'm creating between those

00:07:00   two things because I never go back to

00:07:01   all right other than for like my final

00:07:03   acceptance testing like I won't go back

00:07:05   to the App Store download the version

00:07:07   and run that for a few days like that's

00:07:09   just not typically the way I'd do it

00:07:11   because obviously I'm constantly running

00:07:12   development builds on my own machine and

00:07:14   the feedback that I got was kind of that

00:07:16   was most helpful is when I have someone

00:07:17   who's like so I used the old version

00:07:20   yesterday and I used the new version

00:07:21   today and this felt weird by going from

00:07:24   there to there and like those types of

00:07:26   feedback are things that are really hard

00:07:27   for me to do because like I said I have

00:07:29   this whole new vision for the app I've

00:07:31   imagined and built features around this

00:07:34   whole new thing and that's what I'm used

00:07:36   to and months later like sometimes the

00:07:38   weirdest one is when you go back to the

00:07:39   App Store version you're like what is

00:07:40   this like I can't believe nothing and

00:07:42   you've not even necessary like oh I

00:07:43   can't believe this shipped but like whoa

00:07:45   this is different like this functions in

00:07:47   a different way this has lots of other

00:07:50   issues and so that was something that I

00:07:53   learned from this feedbacks like look at

00:07:56   these little like huh this was weird

00:07:57   coming from that and that's helpful both

00:07:59   in terms of from a development

00:08:00   perspective but then also from in terms

00:08:02   of what questions are my beta testers

00:08:05   going to have about the app

00:08:07   what's weird to them what's new to them

00:08:09   and then when I take that feedback I can

00:08:12   structure my documentation or my

00:08:14   remember like release notes or things to

00:08:16   be like if you're coming from the old

00:08:18   version to the new version you might

00:08:19   find this weird if you find this weird

00:08:21   this is the answer to your question but

00:08:24   that's something that I was never able

00:08:25   to do before I was able to find test

00:08:27   flight like I have a broader audience

00:08:29   and something that I definitely now I

00:08:31   think will use going forward

00:08:32   whereas before I always view test light

00:08:34   it's like oh it's beta testing it's just

00:08:35   like making sure that there's no

00:08:36   Crashers this making sure there's not a

00:08:38   lot of things but understanding customer

00:08:41   perspective changes from the old to the

00:08:43   new was really helpful

00:08:44   but even when starting out new I mean

00:08:46   the the initial overcast beta I did 41.0

00:08:49   before the app is out was incredibly

00:08:52   valuable in

00:08:53   because when you're developing an app

00:08:56   and you're only using it yourself you

00:08:57   know like like you mentioned I do the

00:08:58   same thing where like I'll use it myself

00:08:59   for like you know months and and as soon

00:09:02   as I can get it running on my phone

00:09:03   that'll be I lose it myself full time

00:09:05   and when you're developing the app

00:09:08   yourself you know how to use it and you

00:09:11   know what you did so everything makes

00:09:13   sense to you and when you first show it

00:09:15   to beta testers especially for a 1.0

00:09:18   where they are not familiar with the app

00:09:19   before the the most valuable perspective

00:09:22   I got was what doesn't make sense or

00:09:25   what is being misunderstood from what I

00:09:28   intended and I made tons of interface

00:09:31   improvements and tons of changes during

00:09:33   that initial test you know I thought

00:09:35   that a beta test would just be like oh

00:09:37   just let me know if anything crashes or

00:09:39   breaks and then I'll ship it in a few

00:09:41   weeks it turned out to be months long

00:09:44   because everybody gave really good

00:09:46   feedback about you know this doesn't

00:09:48   really make sense or I don't understand

00:09:49   what this is and and the app I

00:09:52   dramatically improved the app it was

00:09:54   almost like shipping at version 2.0 you

00:09:56   know we're headed than shipping 1.0

00:09:58   because I had such great feedback just

00:10:00   by asking people and again you don't

00:10:02   need this was only a group like 20

00:10:04   people it doesn't need to be a big group

00:10:05   it just needs to be people who aren't

00:10:07   you because you you get everything you

00:10:10   did because you did it and you designed

00:10:12   it and as soon as you show anybody else

00:10:14   you immediately will see the flaws in

00:10:17   what you did because you will see them

00:10:20   either struggling to to understand what

00:10:23   you did or misinterpreting things or

00:10:26   missing entire big features because they

00:10:28   just don't see them or they don't they

00:10:30   don't see why they would need them or

00:10:32   something and it's great like my effects

00:10:35   panel in overcast look totally different

00:10:37   when when I sipped the 1.0 beta the very

00:10:40   first beta voice boost didn't even exist

00:10:43   by that name it was actually a boost

00:10:46   slider and it had four different modes

00:10:49   and and and smart speed was you know it

00:10:52   was there but everything was kind of

00:10:53   rearranged differently and and over time

00:10:55   and the the wording that the labels were

00:10:57   all different and over that beta I was

00:10:59   able to really refine that panel reduce

00:11:02   voice boost down to either an honor and

00:11:04   off which was actually it's it was at

00:11:05   strongest setting I

00:11:07   just I realized happy to development you

00:11:09   know actually I always just leave it the

00:11:11   strong a setting because that's the best

00:11:13   so obviously let me the other ones and

00:11:15   just make it the strongest setting and

00:11:17   and it you know stuff like that would

00:11:18   reduce user confusion and the beta I

00:11:20   rearranged major parts of the interface

00:11:21   during the beta the directory was was

00:11:24   dramatically changed and added to during

00:11:27   the beta I mean so many things in the

00:11:28   interface so many changes so many you

00:11:30   know boarding of microcopy in the

00:11:32   interface and everything so much of that

00:11:34   was improved simply by asking people

00:11:37   like hey you know what do you think of

00:11:39   this and and watching watching what they

00:11:41   said and seeing what they got and what

00:11:43   they didn't get and what they

00:11:43   misunderstood under the radar this week

00:11:46   is sponsored by image X IMG I XCOM /ut

00:11:51   our image X is basically it's hosted

00:11:54   image processing and image resizing so

00:11:56   so you kind of give them a Quebec end

00:11:58   source of images whether it's your web

00:12:00   server an s3 bucket or even just

00:12:02   arbitrary URLs that you sign and have

00:12:04   them process then you can just serve

00:12:06   their URLs for that for those images in

00:12:08   your apps on your websites anywhere that

00:12:10   you could that you need an image served

00:12:11   over HTTP and you can do real-time

00:12:14   processing on that image just by URL

00:12:16   parameters to their service so I use

00:12:19   image X I used it for a while for

00:12:22   overcast thumbnails it is a fantastic

00:12:24   service for just basic things like

00:12:26   resizing you know like all I need to do

00:12:27   with overcast thumbnails most of the

00:12:29   time is resize them and serve them over

00:12:31   a fast CDN and it does that flawlessly

00:12:33   there I have no complaints about that at

00:12:35   all but also what it does a little more

00:12:38   fancy stuff like for instance you can

00:12:39   serve you know automatically serve

00:12:41   different dpi to different screens so

00:12:43   like if you have a device that it has a

00:12:45   Retina screen versus one that doesn't it

00:12:47   can automatically serve the right dpi to

00:12:49   that to not waste bandwidth or not look

00:12:50   bad you could automatically serve things

00:12:53   like like the WebP e format to devices

00:12:55   that support WebP II things like that

00:12:57   there's all sorts of great stuff you can

00:12:59   do automatically and then also you can

00:13:01   actually adjust the images by using

00:13:02   those URL parameters so you can do

00:13:04   things like you know change the colors

00:13:06   crop them in different ways

00:13:08   rotate them add annotations I mean

00:13:10   there's so much you can do with this

00:13:11   pretty much any kind of like image

00:13:13   filtering tasks that you can do so much

00:13:16   editing technique you can do here just

00:13:18   by changing URL parameters and it all

00:13:19   runs

00:13:20   their proprietary system that is all at

00:13:23   gpu-accelerated it's it is so fast I've

00:13:25   never seen an image processing CDN that

00:13:27   works this quickly and that's why I use

00:13:29   them in matrixes API is very easy to use

00:13:32   I can hurt my own thing myself to do it

00:13:33   in like one function but if you want any

00:13:35   other kind of library support they have

00:13:36   tons of libraries for different

00:13:38   languages including one for Swift from

00:13:40   the developers over at ho dinky so check

00:13:42   this out

00:13:43   image six comm that's IMG I XCOM slash u

00:13:47   TR for under the radar thank you very

00:13:49   much to image chicks for sponsoring our

00:13:50   show once you're out of this beta phase

00:13:53   like you've gotten all this good

00:13:53   feedback from your beta then you have

00:13:56   the interesting thing of how do you

00:13:57   transition to feedback from customers

00:14:00   more generally so you're kind of you're

00:14:02   past this point where fair enough you've

00:14:04   got all this great feedback from a small

00:14:06   group of people you open something up

00:14:07   you put it out as a broader update to

00:14:10   lots of people and then things get

00:14:12   really interesting at least or at least

00:14:14   complicated because suddenly you have

00:14:16   lots and lots of customers who all have

00:14:18   different visions for your app all have

00:14:21   different goals for your app and just by

00:14:24   the volume of like the virtue of having

00:14:25   so many numbers like hopefully your app

00:14:28   is gonna have thousands tens of

00:14:30   thousands hundreds of thousands millions

00:14:32   like you're gonna have such a wide and

00:14:35   varied user base at a certain point that

00:14:37   the feedback you get and the way you

00:14:39   collect and manage that becomes like an

00:14:42   engineering problem in and of itself

00:14:43   it's something that I've over time had

00:14:46   to kind of wrap maybe become more

00:14:48   comfortable with the understanding that

00:14:50   I'm not a I'm never going to make

00:14:52   everybody happy like that's just a given

00:14:54   like right off the bat if you ever are

00:14:56   kind of trying to build an application

00:14:58   catering to everybody you're gonna end

00:15:01   up building like a terrible application

00:15:03   because you just can't do it you're

00:15:05   never gonna make something that makes

00:15:07   everybody happy but you're still are

00:15:09   gonna get a lot of feedback and that's a

00:15:10   good thing like when you get feedback

00:15:12   from a customer you know they send you

00:15:14   an email and say hey I love the app I

00:15:16   wish it did X like that's a good sign

00:15:19   that means they like the app enough to

00:15:21   open up an email their email client then

00:15:23   write down something thoughtful and it's

00:15:25   a big enough part of their life that

00:15:26   they see it as something that could be

00:15:28   better could more fully meet their needs

00:15:31   and that's a good thing

00:15:33   but I've definitely gone down the rabbit

00:15:35   hole many times where I look at that

00:15:38   feedback and be like oh yeah I should do

00:15:39   that I should do that I should do that

00:15:40   and you can end up with a product if you

00:15:42   kept if you kept saying yes to every bit

00:15:45   of that feedback like by version 2 or 3

00:15:48   or what you know several updates down

00:15:50   the road your app is gonna look nothing

00:15:51   like what it really was

00:15:53   especially for fulfilling or like a

00:15:55   smaller shop like what makes my apps

00:15:57   good typically is they're like

00:16:00   simplicity and the design around being

00:16:02   really accessible because I can't build

00:16:05   big monolithic massive structures

00:16:08   because I'm just one guy I have to

00:16:10   always be fighting that tension and so

00:16:12   typically what I'll end up doing is I'll

00:16:14   say hey thank you for the feedback I

00:16:16   appreciate it it helps like inform my

00:16:18   future decisions but I never say or very

00:16:21   rarely will say like yes absolutely

00:16:23   that's a great idea I will definitely do

00:16:24   that it'll be in the next update unless

00:16:27   it's something of course that I'm

00:16:28   already working on but being able to say

00:16:30   no to people was something that I

00:16:32   definitely had to learn it was something

00:16:34   that I had really struggled with early

00:16:35   on how do you deal with feedback from

00:16:38   like the more general public to your

00:16:40   apps you have to consider when you get

00:16:43   feedback you know when somebody is

00:16:45   asking for a feature or asking for a

00:16:47   change it's easy to look at that and say

00:16:49   oh well if I can add this feature or if

00:16:52   I can change the app to work in this way

00:16:54   then I will get X number of people that

00:16:58   will be happier with the app or that

00:16:59   might buy it who wouldn't buy it before

00:17:01   if you keep following the try but you

00:17:03   said like it's very easy to basically

00:17:05   have like the the microsoft office 97

00:17:07   toolbar of app features you know to have

00:17:09   like this giant wall of features really

00:17:12   massive settings areas and and tons of

00:17:14   tons of just complexity and and burden

00:17:17   in the app and I can very easily

00:17:20   overwhelm not just an independent

00:17:21   developer but also the users who have to

00:17:23   see all those options and don't

00:17:24   understand them or might or might

00:17:25   configure them wrong and not understand

00:17:27   how they got there and and so what you

00:17:29   have to consider when when you have

00:17:31   people saying oh if only it had this

00:17:32   feature I would be happier there are

00:17:34   many people who are already happy with

00:17:37   the app the way it is and if you add

00:17:39   things to it or if you change the way

00:17:40   things work they might become less happy

00:17:43   with the app and so that's always been a

00:17:45   very tricky balance for me with overcast

00:17:47   because I when I made overcast it was in

00:17:50   part in response to what I was seeing

00:17:52   from so many podcast apps at the time

00:17:54   which was just so much complexity in the

00:17:57   interface and the settings and

00:17:58   everything and I wanted to make

00:18:00   something simpler a lot of people use

00:18:03   overcast because it was simpler at the

00:18:05   time you know and now you know that now

00:18:06   there's there's a lot of great podcast

00:18:08   after now many of which are that simple

00:18:10   but but at the time that was like a

00:18:12   unique selling point for overcast and I

00:18:14   I never want to ruin that and you know

00:18:17   not only for for myself and for my

00:18:19   customers but also just like for the

00:18:21   quality of the app like if I add too

00:18:23   many features the app gets worse because

00:18:25   it's harder to navigate it's more

00:18:26   complex there's more edge cases that I

00:18:28   might not be able to test as reliably as

00:18:29   I test the core functionality it's a

00:18:31   very tricky balance like in in 2.0 I

00:18:34   added streaming and I thought it would

00:18:37   be amazing if you could just tap any

00:18:39   episode and before tapping an episode

00:18:42   would just download it if you didn't

00:18:43   already have it downloaded and you'd

00:18:44   have to wait for it to download before

00:18:45   it would play and in 2.0 I think well

00:18:48   now I have a streaming engine so if you

00:18:50   tap on an episode now I'm just going to

00:18:52   start playing the episode just start

00:18:54   streaming it and that'll be amazing and

00:18:56   to me it was amazing

00:18:58   but the the number one feedback I've

00:19:00   gotten for 2.0 has been how do I turn

00:19:03   that off and just go back to the old way

00:19:05   of doing it because I want to just go

00:19:07   download a bunch of stuff I don't want

00:19:08   to start playback immediately now

00:19:10   downloading things requires two two

00:19:12   steps you know it's half the input

00:19:13   button and tap downloads look now I've

00:19:15   made the way that people used to do it a

00:19:17   little bit harder because I thought the

00:19:18   new way was better but not everybody

00:19:20   thinks so and so now and so now I have

00:19:23   to weigh this decision of like well do I

00:19:24   add another option for that do I change

00:19:27   the interface to be more like kind I

00:19:28   like the way when you tap a tweet and

00:19:30   Tweetbot it rather than going directly

00:19:32   to something it expands a little like

00:19:34   button panel below it I thought about

00:19:36   maybe doing something like that there's

00:19:38   now I have I have this property to solve

00:19:40   and no matter how I solve it if I leave

00:19:42   it the same as it is now or if I add a

00:19:45   setting to just toggle the old behavior

00:19:46   back on which i think is kind of the

00:19:48   worst way of doing things or leave the

00:19:49   way it is now in which case the you know

00:19:51   somebody's angry or the app is slightly

00:19:53   worse or I can do the Tweetbot button

00:19:55   row thing when you tap an episode cell

00:19:57   which will anger the people who like the

00:19:59   streaming immediately approach

00:20:01   now I'm adding I'm making that two taps

00:20:03   for that instead of one so none of these

00:20:05   are perfect and that's the thing when

00:20:08   you're facing app design decisions like

00:20:10   this and when you're dealing with

00:20:11   people's feedback nothing you do will be

00:20:13   perfect nothing you do will satisfy

00:20:15   everybody and so you basically just have

00:20:17   to fit you kind of have to develop a

00:20:19   sense yourself and you can you can see

00:20:21   the results - you kind of have to

00:20:22   develop a sense yourself of what will

00:20:25   probably please the most people and

00:20:27   result in the best app I feel like it's

00:20:30   it's relatively counterproductive to

00:20:33   think too much about what were people

00:20:36   accustomed to before because all your

00:20:39   new customers just see the new app and

00:20:40   the app at the app as a thing the app is

00:20:44   a concept is what it is today not what

00:20:47   it was two years ago and so even as

00:20:49   you're bringing your customer base

00:20:50   forward through updates I always think

00:20:53   it's way more important to have a better

00:20:55   app today and a better app for tomorrow

00:20:58   than it is to please everybody who

00:21:01   wanted everything done the old way so as

00:21:04   I'm weighing this feedback about

00:21:05   overcast streaming versus downloading

00:21:06   when you tap on the thing I'm not really

00:21:08   considering you know do I do I give that

00:21:11   option to people to just toggle it back

00:21:12   the way it was before because that that

00:21:15   to me is like losing the quality fight

00:21:17   because that is just adding another

00:21:18   option that new new people will go into

00:21:20   the app not knowing or caring what that

00:21:22   does if they accidentally turn it on the

00:21:24   app will start behaving differently and

00:21:25   they'll think it's weird and if they

00:21:26   didn't remember how to turn it on so I'm

00:21:28   not really considering that option I'm

00:21:30   more considering like probably the doing

00:21:32   the tweet button row thing instead

00:21:34   because I think overall if I was

00:21:36   starting from scratch now that I have

00:21:38   many different things you can do on an

00:21:40   episode rather than just tapping it to

00:21:41   download it that is probably the best

00:21:43   approach so that's probably what I'm

00:21:44   going to do because I'm thinking about

00:21:45   what what what will make the best app if

00:21:48   somebody looks at it for the very first

00:21:49   time not how do I please everybody

00:21:52   throughout history because not only is

00:21:55   that not good for app quality but it's

00:21:57   impossible and I think it also speaks a

00:22:00   little bit to one of the other traps

00:22:02   that I know I've run into a lot with

00:22:03   feedback is the trap that it's very easy

00:22:07   to over weight the feedback you get

00:22:11   proportional to the size of your user

00:22:14   base

00:22:15   so like the only who you hear from are

00:22:18   the people who are I typically very

00:22:20   upset or very happy and the entire like

00:22:24   middle of your user base which is

00:22:26   probably in many ways the more important

00:22:27   group of your user base you'd hear

00:22:31   nothing from its I've definitely fallen

00:22:34   into the trap several times where like

00:22:35   I'll get a feature request like once a

00:22:39   week for like six weeks and from

00:22:42   uniforms from six different people and

00:22:45   because it's happening at the sort of

00:22:47   interval in my mind it's like oh wow

00:22:49   people are could keep asking for this

00:22:51   this must be really important but then

00:22:54   you take a step back it's like six

00:22:55   people have asked for this feature like

00:22:58   the app has 1.4 million users and six

00:23:02   people have asked for it like it's very

00:23:04   hard to not conflate those things and

00:23:07   make it feel like wow this is really

00:23:09   important because the only people you

00:23:11   hear from like there's the self

00:23:13   selection for people who want things

00:23:16   changed whereas all the people who want

00:23:18   status quo or at least who are happy

00:23:21   with what it is you never hear from and

00:23:23   that's a really funny dynamic that you

00:23:26   then have to have to like balance with

00:23:27   and get comfortable with to say like

00:23:29   okay like is this when I'm like if I get

00:23:32   what care what it actually is a lot of

00:23:35   feedback like it is has like 10% of my

00:23:38   user base reached out to me to ask me

00:23:40   for a feature like if they do like

00:23:42   that's probably worth paying attention

00:23:43   to

00:23:44   I probably never gotten feedback beyond

00:23:46   like every - every now and then where

00:23:48   I'll you'll accidentally like ship a

00:23:49   horribly horrible crashing bug in which

00:23:52   case fair enough you hear from a lot of

00:23:53   people saying fix the crashing bug and

00:23:55   you know that's like good feedback I

00:23:56   will definitely fix but in general like

00:23:59   you just you just kind of have to go

00:24:01   with it and I think we're to wind this

00:24:03   down is to focus on in order to build

00:24:06   software I think you have to be able to

00:24:09   have a vision for what you want the app

00:24:11   to do like you're trying to build this

00:24:14   vision it's been a bit abstract but it's

00:24:18   like you want have someone to like they

00:24:20   know it's yours they know what the app

00:24:21   is like it has a personality maybe

00:24:23   that's the right way to say it's like

00:24:24   you're trying to create this persona

00:24:26   that your app

00:24:27   and doing things that ultimately will be

00:24:31   counter to that persona are probably

00:24:33   going to be counterproductive when you

00:24:34   get feedback that are people who are

00:24:36   like it's like I like your app but I

00:24:38   want it to be something else it's like

00:24:39   they really want your app to be a

00:24:40   different person to have a different

00:24:42   personality and you have to then build

00:24:45   this you know this whatever the like the

00:24:47   confidence even to say no this app is

00:24:50   about this like it's about simplicity

00:24:52   and focus and ease of use or it's about

00:24:55   you know maybe it is a really strong

00:24:57   like complicated advanced thing in which

00:24:59   case is like yeah let's we every feature

00:25:02   I can think of all the settings all the

00:25:04   options the more the better but you need

00:25:06   as a developer to have that confidence

00:25:08   to be able to say like this is what my

00:25:09   app is this is the way it should work

00:25:11   and to then just be able to go with that

00:25:13   and make that work sounds good alright

00:25:17   that's it for this week thank you very

00:25:19   much for listening please rate us and /

00:25:21   or please recommend us an overcast and

00:25:22   tell your friends about our show help us

00:25:24   grow and we'll talk to you next week bye