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: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: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: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: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: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