264: Scaling Support
00:00:00
◼
►
Welcome to Under the Radar, a show about independent iOS app development.
00:00:04
◼
►
I'm Marco Arment.
00:00:05
◼
►
And I'm David Smith.
00:00:06
◼
►
Under the Radar is usually not longer than 30 minutes, so let's get started.
00:00:10
◼
►
You've reached quite some impressive milestones recently.
00:00:13
◼
►
So last episode we talked about your massive updates to Pedometer++, and then in the meantime
00:00:20
◼
►
you announced that WidgetSmith has had 100 million downloads?
00:00:27
◼
►
So first of all, congratulations on a massive scale,
00:00:32
◼
►
'cause that's awesome.
00:00:35
◼
►
- Thank you.
00:00:35
◼
►
- And you have earned every bit of your success,
00:00:39
◼
►
and I'm so happy for you.
00:00:41
◼
►
And second of all, that is a scale
00:00:46
◼
►
that I have never experienced, nothing even close to that.
00:00:50
◼
►
And so I'm wondering how that feels,
00:00:55
◼
►
how that affects some of the things you do,
00:00:58
◼
►
and one of the things we wanted to talk about this week
00:01:00
◼
►
is specifically how you deal with support email, feedback,
00:01:05
◼
►
that kind of stuff,
00:01:07
◼
►
like the various support and feedback channels.
00:01:10
◼
►
When you have a scale that big,
00:01:11
◼
►
I mean 100 million downloads,
00:01:14
◼
►
that ends up being quite some number of active users,
00:01:17
◼
►
quite some number of active installations,
00:01:19
◼
►
quite some number of even just crash reports
00:01:21
◼
►
that must be coming in,
00:01:22
◼
►
all the different weird edge case situations
00:01:25
◼
►
that you have to run in.
00:01:27
◼
►
I might have one user of Overcast
00:01:29
◼
►
in a particular odd combination of conditions
00:01:32
◼
►
that the app is running in,
00:01:33
◼
►
whereas you might have a thousand.
00:01:35
◼
►
So I'm really curious to know,
00:01:37
◼
►
how do all of your processes have to scale?
00:01:39
◼
►
Because I would imagine there are not many
00:01:43
◼
►
hundred million download apps that are run by one person.
00:01:47
◼
►
I think that's gonna be a very, very small number.
00:01:52
◼
►
And so this is a problem that most large apps
00:01:56
◼
►
would have to handle differently
00:01:58
◼
►
because they have larger staffs
00:01:59
◼
►
and they might make different choices.
00:02:01
◼
►
And most small developers wouldn't have this problem
00:02:05
◼
►
necessarily at your scale.
00:02:07
◼
►
But the reason I wanna ask is because
00:02:10
◼
►
even though I think it's fairly unlikely
00:02:13
◼
►
that I or any given listener out there
00:02:17
◼
►
would ever have this problem,
00:02:19
◼
►
there's a lot of value that we can get
00:02:21
◼
►
from learning how you do things,
00:02:22
◼
►
because if you get 100 emails on a topic,
00:02:25
◼
►
and I get 10, well, I still would love to get none.
00:02:31
◼
►
So even whatever strategies you're using
00:02:34
◼
►
still apply even to much smaller apps.
00:02:37
◼
►
And to some degree, you just have a larger testing pool,
00:02:39
◼
►
and so you're just getting better input,
00:02:41
◼
►
and better signal, and better data,
00:02:43
◼
►
but we can still learn a lot of those lessons,
00:02:45
◼
►
and apply them to our apps as well.
00:02:47
◼
►
So first of all, again, congratulations,
00:02:50
◼
►
that's awesome. And second of all, I don't know, where do you want to start here?
00:02:53
◼
►
Sure. I mean, I think, yeah, I think it's probably the best place to start is to think
00:02:58
◼
►
of—it's just like, thanks. And I think it's one of these things where it's a
00:03:01
◼
►
number that I feel some responsibility for, but not total responsibility for. Like, Widget
00:03:07
◼
►
Smith itself is a very specific situation that caught a particular moment, and while
00:03:13
◼
►
this is two and a half years on, that it's not just—it is still doing well, but it's—and
00:03:18
◼
►
feel like more responsible for the last two and a half years than I do for the first like
00:03:22
◼
►
25 days where it was like, oh, yeah, this whole other thing. But I think what the lesson
00:03:29
◼
►
that that has taught me that I think has been kind of more useful and more constructive
00:03:34
◼
►
is the sense that, a, I think something that I think is really cool is I think when it
00:03:38
◼
►
first happened when Widget Smith, you know, had its big, you know, moment when iOS 14
00:03:42
◼
►
launched, and it was going places, I definitely set like had this place where I was like,
00:03:47
◼
►
this something that an indie developer can still do? I had no reference frame for what
00:03:56
◼
►
this would look like, for how this would go, for if this was even possible. I had no idea.
00:04:02
◼
►
In the early days, when it was millions of downloads a day and you're starting to have
00:04:08
◼
►
this, it just doesn't compute. I've never dealt with anything like this. And I'm just
00:04:13
◼
►
know, a person had a couple people, you know, like, helping me with with Help Desk at that
00:04:16
◼
►
point. But it was, you know, kind of this like, well, what do I even, you know, where
00:04:21
◼
►
does this go? And I think I think the the broader lesson that I think I'm really sort
00:04:24
◼
►
of pleased about is, you know, two and a half years on from that is I think it is very viable
00:04:31
◼
►
to do, you know, like, sort of the indie app developer concept that, you know, we talked
00:04:37
◼
►
about on the show that I think you and I are both very proud to kind of be like the label
00:04:41
◼
►
that we apply to ourselves, that we're indie app developers, and in our case that means
00:04:45
◼
►
we're one programmer working on an app. Can that scale to a big project in terms of user
00:04:53
◼
►
base? And it's like, I have at least one bit of evidence to say yes, it does. That
00:04:59
◼
►
this isn't the kind of thing that if you decide to go down the indie path, you're
00:05:05
◼
►
cutting yourself off from broader popularity. Because in order to do that, you have to be
00:05:13
◼
►
a big company with lots of people and lots of funding and infrastructure and a marketing
00:05:18
◼
►
team and a support team and a QA team and teams all around. You don't. It's easier
00:05:26
◼
►
in some ways maybe if you have those things, but that's not essential. That's a choice
00:05:31
◼
►
you could choose to make. And if at this point, I had, you know, if two and a half years ago,
00:05:35
◼
►
I had decided that I wanted to go down that road, I definitely could have, you know, I
00:05:38
◼
►
could have hired a team of engineers, I could have hired a, you know, support staff in,
00:05:43
◼
►
you know, operations, people, all kinds of things, marketing, like, I could have gone
00:05:46
◼
►
down that road. But for me, I chose not to, and I chose not to, largely because I like
00:05:54
◼
►
the indie lifestyle, I like that I'm in control of my time and my attention and where I want
00:05:59
◼
►
to work and what I want to do, I have control over that. And even if I was the boss of a
00:06:04
◼
►
bigger company, as soon as you're the boss of other people and you're responsible for
00:06:09
◼
►
them, suddenly that choice becomes kind of lessened. And you have things that are other
00:06:14
◼
►
constraints and other things that you have to optimize for, rather than, in some ways,
00:06:19
◼
►
there's a certain selfishness about the indie developer lifestyle in a positive sense. That
00:06:23
◼
►
it's the positive kind of selfishness that I'm responsible for myself and my family,
00:06:28
◼
►
then I can make choices that are best for us rather than being best for a large group
00:06:34
◼
►
of people. And so I think the first thing I think is just—and I struggled a little
00:06:39
◼
►
bit with whether I should talk about Widget Smith reaching this milestone. And for a variety
00:06:45
◼
►
of kind of, you know, sort of, I don't want to be boastful or kind of come across in that
00:06:49
◼
►
way. That's not my style. But I think that the main thing that ultimately was I think
00:06:54
◼
►
very grateful for it. And also, I think as a proud indie developer, I wanted to say,
00:07:00
◼
►
this is possible. That if you as a developer who is trying to go down this road, I want you to have
00:07:08
◼
►
in your mind that 100 million is kind of the outside of what this looks like, rather than it
00:07:14
◼
►
being a million. Having a big, broad view on what is possible, I think is a helpful, motivating,
00:07:21
◼
►
hopefully encouraging thing. And so that's why I wanted to put that out there. But I think it has
00:07:27
◼
►
definitely been a journey in then understanding, "Well, okay, so the scale is something that is
00:07:34
◼
►
sort of a reality, but what do I need to change about my workflow and mindset to make that viable?"
00:07:42
◼
►
Because yes, the way that I ran my business three years ago before this happened wouldn't have
00:07:48
◼
►
have really scaled to the kind of widgetsmith level that I'm working at now because the
00:07:54
◼
►
stakes were so much lower, the volume was so much lower. Any kind of in you, because
00:07:58
◼
►
I think what happens with this kind of volume is any inefficiency or kind of issue with
00:08:06
◼
►
your workflow or system kind of just gets magnified. Like, you know, if the good things
00:08:10
◼
►
get magnified, the bad things get magnified. And you kind of have to then realize, "Okay,
00:08:15
◼
►
this is not going to scale. I need to do something different. I can't expect to respond to every
00:08:19
◼
►
person who emails me and do a couple back and forth with them. That's just not going to work.
00:08:24
◼
►
The volume of time in a day that that would take would be astronomical.
00:08:31
◼
►
And I'm not even sure productive, but I think what you end up with is a lot of these situations where
00:08:38
◼
►
anything that was kind of a one-to-one or that kind of a scenario very quickly becomes,
00:08:44
◼
►
it has to be a many-to-one. It has to be kind of find ways to apply leverage into whatever
00:08:51
◼
►
you're doing so that it can scale, so that it isn't going to take a lot of time, so that it is,
00:08:56
◼
►
you can do small bits of work that can kind of multiply up. And I think I can talk through a
00:09:02
◼
►
variety of those, but I think at its fundamental part, it's that sense that if you are planning
00:09:07
◼
►
for scale in that way, everything you do has to be efficient, and you have to let go of
00:09:13
◼
►
some amount of control and high touch that you may be able to do in a sustainable way
00:09:21
◼
►
at a lower scale.
00:09:23
◼
►
Yeah, that's really interesting. If you think of almost every part of the process,
00:09:31
◼
►
you'd have to consider that. When I look at stuff, I think of, first of all, the product
00:09:37
◼
►
That alone, it's like, if I had that large of a user base
00:09:41
◼
►
and I was by myself, I would be a lot more hesitant
00:09:44
◼
►
to touch anything.
00:09:46
◼
►
I would be so scared to change any of the code,
00:09:50
◼
►
to do anything server-side.
00:09:52
◼
►
And fortunately, so your setup is,
00:09:56
◼
►
I think parameter plus plus is also pretty big,
00:10:01
◼
►
and of course, WidgetSmith is the biggest,
00:10:02
◼
►
and neither of these really have meaningful
00:10:06
◼
►
server-side components, right?
00:10:08
◼
►
- Yes, and I think that is definitely helpful
00:10:10
◼
►
in that regard, that like, at this kind of scale,
00:10:14
◼
►
I intentionally don't do any feature that would require
00:10:18
◼
►
a meaningful server component, because scaling that,
00:10:23
◼
►
I'm benefiting from the fact that any new user
00:10:27
◼
►
brings with them the hardware necessary
00:10:30
◼
►
to support their use.
00:10:33
◼
►
- It scales linearly with the number of users,
00:10:36
◼
►
because, "Oh, new user, well I have a new iPhone."
00:10:39
◼
►
And it's almost like I had this data center
00:10:41
◼
►
that every time someone logs in,
00:10:42
◼
►
a new computer gets plugged in.
00:10:43
◼
►
And so I don't have to worry about that kind of scaling
00:10:47
◼
►
and dealing with that in a way
00:10:49
◼
►
that as soon as you start to centralize anything,
00:10:52
◼
►
it suddenly becomes a giant problem.
00:10:55
◼
►
And the only server-side component that I have
00:10:57
◼
►
is some very basic analytics stuff that I keep,
00:11:00
◼
►
just to have a sense of what's going on inside the apps.
00:11:02
◼
►
even with those, I even just made the decision early on that I only have the app report analytics
00:11:10
◼
►
to the app or to the server. I have a little random number generator and it only reports
00:11:16
◼
►
the analytics at 1% of the time because 1% of a large number is just as representative
00:11:21
◼
►
as long as it's a random sample. Even there, I'm running it on this tiny little server
00:11:28
◼
►
that doesn't even matter because I just scaled that. If that became too much for that
00:11:32
◼
►
server, I would just change it to like 1,000th of the users or whatever. Because in all these
00:11:39
◼
►
ways, I can just scale things down. But yeah, it's like the number one rule if you want
00:11:42
◼
►
an app that is going to scale from a kind of a broad perspective. It's like, don't
00:11:46
◼
►
anything that touches a server is a bad idea because it's just going to sort of be—that
00:11:52
◼
►
doesn't scale cheaply. It is possible to scale.
00:11:55
◼
►
- Sure doesn't.
00:11:56
◼
►
- It's like Amazon Web Services would love
00:11:58
◼
►
to take all your money, but as soon as you have
00:12:02
◼
►
this per user cost, then that scales literally.
00:12:06
◼
►
That's something that I avoid wherever I possibly can,
00:12:11
◼
►
and intentionally, anytime I have a feature
00:12:13
◼
►
that could have a server component,
00:12:16
◼
►
it's like, you know, maybe not.
00:12:18
◼
►
Maybe I'll just skip that feature
00:12:19
◼
►
and do everything I can to do it locally on the device.
00:12:22
◼
►
And if I can do it locally on the device, great.
00:12:24
◼
►
If not, I just move on and leave it as an opportunity for someone else.
00:12:29
◼
►
That is so, so wise.
00:12:31
◼
►
Painfully, painfully wise.
00:12:37
◼
►
We are brought to you this episode by Indeed.
00:12:40
◼
►
If you don't want to be a one-person shop anymore, well, what's better than finding
00:12:43
◼
►
quality job candidates?
00:12:45
◼
►
Finding them instantly.
00:12:46
◼
►
For a powerful hiring partner, you need Indeed.
00:12:49
◼
►
Indeed is the hiring platform where you can attract, interview, and hire all in one place.
00:12:54
◼
►
so you don't have to spend hours on multiple job sites
00:12:56
◼
►
looking for people with just the right skills
00:12:58
◼
►
when you can do it all with Indeed.
00:13:00
◼
►
Find top talent fast with Indeed's suite
00:13:03
◼
►
of powerful hiring tools like Indeed Instant Match,
00:13:05
◼
►
Assessments, and Virtual Interviews.
00:13:07
◼
►
And if you hate waiting, Indeed's US data
00:13:09
◼
►
shows over 80% of Indeed employers find quality candidates
00:13:13
◼
►
whose resume on Indeed matches their job description
00:13:15
◼
►
the moment they sponsor a job.
00:13:17
◼
►
Instant Match really is incredible.
00:13:20
◼
►
So sponsor a job and boom, Instant Match shows you candidates
00:13:23
◼
►
whose resumes on Indeed fit your description immediately after you post.
00:13:27
◼
►
Join more than 3 million businesses worldwide using Indeed to hire great talent fast.
00:13:33
◼
►
Indeed knows that when you're doing everything for your company, you can't afford to overspend
00:13:40
◼
►
Visit Indeed.com/undertheradar to start hiring now.
00:13:45
◼
►
That's Indeed.
00:13:47
◼
►
ed.com/undertheradar, indeed.com/undertheradar.
00:13:52
◼
►
Terms and conditions apply.
00:13:54
◼
►
Cost per application pricing not available for everyone.
00:13:57
◼
►
Need to hire?
00:13:58
◼
►
You need Indeed.
00:13:59
◼
►
Our thanks to Indeed for the support of this show
00:14:01
◼
►
and all of Relay FM.
00:14:04
◼
►
- So I think too, the reality of this kind of approach
00:14:08
◼
►
is then to start to think of other areas
00:14:11
◼
►
where you could introduce efficiency
00:14:13
◼
►
or you could kind of create these sort of multiplying
00:14:16
◼
►
leverage effects. And I think one that I found very helpful with the last pedometer update,
00:14:24
◼
►
kind of like changing from Widgetsmith into that, which is a lesson I learned from Widgetsmith,
00:14:30
◼
►
but it's something that I've been in this pedometer++ version 5 update, I've sort of
00:14:34
◼
►
applied and sort of reaped the benefits of it. And I think that's kind of the broader
00:14:38
◼
►
lesson why this potentially is hopefully a helpful topic for a broader audience, is like
00:14:42
◼
►
don't have to be at WidgetSmith scale for that to be something that's useful is I
00:14:47
◼
►
change the way that I do support to have this funnel shape to it. And this is something
00:14:54
◼
►
I learned from WidgetSmith was that I want to reduce the number of people who email me
00:15:01
◼
►
as much as I can because that's the highest cost, that's the least scalable part of
00:15:06
◼
►
what I do. And so instead, I want to find ways to answer people's questions or deal
00:15:10
◼
►
with their problems before they get to sending me an email, especially because if you've
00:15:14
◼
►
done any amount of customer support via email, it's very often very repetitive and very
00:15:20
◼
►
like there's only a few actual things that people run into that are just the realities
00:15:25
◼
►
of your app. And so if you can answer those questions, you can hopefully avoid them getting
00:15:31
◼
►
an email, which is both good for me in terms of it's not an email that I have to respond
00:15:34
◼
►
to. But I think it's also better for the user because they get an instantaneous answer
00:15:39
◼
►
to their problem. And so the first thing I did was I started doing dynamic frequently
00:15:47
◼
►
asked questions inside the apps. And this is just as simple as you can imagine. For
00:15:52
◼
►
me, I just do it as a website that's just a simple basic HTML page that I put on a web
00:15:58
◼
►
server and anytime a question is asked more than two or three times, I'll put the answer
00:16:03
◼
►
to it in the FAQs and I sort it from most frequently asked to least frequently asked
00:16:08
◼
►
on there in the hopes that when people open this page, that's where they'll see the answer,
00:16:15
◼
►
they'll get their answer, and they'll be able to move on. And I don't hide the "email
00:16:20
◼
►
me" link necessarily, but I would say I often put it at the bottom of that list. And
00:16:24
◼
►
so you have to have looked through the list, at least sort of notionally, in order for
00:16:31
◼
►
you to get to the place that you could email me, the place that I will expose the email
00:16:35
◼
►
address. Because I think previously I would have the frequently asked questions link,
00:16:38
◼
►
right below it in the settings area would be the "email me" link. And people just click the "email
00:16:42
◼
►
me" link because, sure, why not? That was just not the reality. So putting it behind the frequently
00:16:48
◼
►
asked questions made a big difference in terms of scale, too, because it meant that way more people
00:16:55
◼
►
would actually read it or actually find their answer in that. And I think I collected the data
00:17:01
◼
►
for my pedometer version 5 update. And it was like in the first six days of the launch,
00:17:07
◼
►
I received 259 emails, but I have some very basic analytics in the frequently asked questions,
00:17:13
◼
►
and 4,214 people got an answer from the FAQs. I don't know necessarily if it solved their problem,
00:17:20
◼
►
but that's the kind of order of magnitude we're talking about, which is almost like a 20 times
00:17:26
◼
►
multiplier there. So 20 times the number of people that got an answer from the FAQs then had to email
00:17:34
◼
►
me. So that was a huge win and definitely a great place to start in terms of whatever
00:17:39
◼
►
your current support load is, if you put it behind a frequently asked questions, maybe
00:17:42
◼
►
you could reduce your load by 20x, which is amazing.
00:17:46
◼
►
Yeah, that would be game-changing for almost anybody. I mean, even my support load is,
00:17:55
◼
►
I'm not getting hundreds of emails a day, or even necessarily tens of emails a day,
00:18:02
◼
►
but to have 20 times fewer of them would be significant.
00:18:08
◼
►
I might actually respond to more of them
00:18:10
◼
►
if there were fewer of them, you know?
00:18:13
◼
►
And this is something like,
00:18:14
◼
►
and I have a little bit of this in Overcast.
00:18:17
◼
►
I have the feedback page,
00:18:19
◼
►
and that is a dynamically loaded HTML thing
00:18:21
◼
►
shown on a web view, so I can change that server side.
00:18:24
◼
►
But in practice, I don't put much there,
00:18:27
◼
►
and I almost never change it after a version's release.
00:18:30
◼
►
I basically just say, you know, what's new in this version?
00:18:32
◼
►
And that's it, and I almost never touch them after that.
00:18:35
◼
►
So I think maybe you are inspiring me to do more
00:18:39
◼
►
with that kind of thing in the app.
00:18:40
◼
►
Maybe do some rearrangements too,
00:18:42
◼
►
of like what I show there and when,
00:18:45
◼
►
and how I phrase certain things.
00:18:48
◼
►
'Cause I would love to, you know,
00:18:49
◼
►
'cause it isn't just about minimizing email to you,
00:18:54
◼
►
it's also about serving your customers better.
00:18:56
◼
►
You know, 'cause like your customers
00:18:57
◼
►
don't like having to email you.
00:18:59
◼
►
I mean some do, some of them get pleasure out of that,
00:19:01
◼
►
but some of them just want to vent.
00:19:03
◼
►
But for the most part, if you can solve somebody's problem
00:19:06
◼
►
in eight seconds via looking at an FAQ page,
00:19:09
◼
►
instead of having them have to take a couple of minutes
00:19:11
◼
►
out of their day to try to email you
00:19:13
◼
►
and then hope for a response and then get all mad
00:19:15
◼
►
when you don't respond, I have some experience in this area.
00:19:17
◼
►
You're serving them better if they could just solve
00:19:22
◼
►
their own problem without emailing you at all.
00:19:24
◼
►
It's better for everyone, it's better for them,
00:19:25
◼
►
and it's better for you.
00:19:26
◼
►
So ideally, step one is ideally the app doesn't need support.
00:19:30
◼
►
Ideally you build and design things in such a way that people don't have questions,
00:19:35
◼
►
they can just figure it out.
00:19:37
◼
►
Next best from that is they can figure it out somehow else in the app like a help or
00:19:42
◼
►
a FAQ thing without having to email you.
00:19:46
◼
►
And then the worst step of this is they have to email you.
00:19:50
◼
►
That's because for all the people who email you, there are multiples of more of them that
00:19:56
◼
►
that said, "Ah, forget it," and just never solved the problem
00:19:59
◼
►
because they didn't want to email you,
00:20:01
◼
►
so they just dropped it on the floor and walked away,
00:20:04
◼
►
and that makes your numbers worse of your retention metrics.
00:20:07
◼
►
So ideally, you make ways for people to solve this themselves
00:20:11
◼
►
in the app because emailing you is a step
00:20:15
◼
►
that most of your customers don't want to take
00:20:17
◼
►
and you don't want them taking it.
00:20:19
◼
►
- Yeah, I think, too, it's that sense of,
00:20:21
◼
►
I think there was definitely something helpful
00:20:23
◼
►
in my mindset when I was thinking this through,
00:20:25
◼
►
it's like, rather than—my goal becomes, how can I help most people in the best way?
00:20:33
◼
►
I want to get you this answer. And some of these things are—no matter how well you
00:20:38
◼
►
design an app, there are going to be things that come up because your app has a certain
00:20:43
◼
►
amount of opinion to it. You're making assumptions or making defaults or structuring things in
00:20:49
◼
►
a particular way. As soon as you have a user base of any kind of size, you're going to
00:20:54
◼
►
people with different needs or different preferences or different backgrounds, other apps that
00:20:59
◼
►
they—what was the last app they used before yours that did something similar? And they're
00:21:03
◼
►
going to have a mental model that is based on those choices and how that was structured.
00:21:09
◼
►
That's just the reality. And so it's like the other thing that I think I found recently
00:21:13
◼
►
is I've been amazed by how many more people are able to get that answer, like to be communicated
00:21:21
◼
►
to them from video compared to text. For me, I think I come from a—the way my mind works,
00:21:30
◼
►
I very often prefer to be told rather than shown. I would rather read the manual than
00:21:37
◼
►
watch a video about how to do something. But the reality—and this is just proved in the same way
00:21:43
◼
►
in my data—is I see that so many more people are willing to click on a video that's a 60-second
00:21:50
◼
►
how to do something to answer a question, then would go through the FAQs and try and
00:21:57
◼
►
read it and find it in there. This is something I started doing in Widgetsmith and now did
00:22:02
◼
►
in Podometer where I have a bunch of these videos that are just very basic. These aren't
00:22:07
◼
►
high production. I think initially when I think of video, I think of, "Oh, that's
00:22:11
◼
►
going to take a long time and be something that's really intense and going to take
00:22:15
◼
►
this whole process." And it's like, "It really doesn't have to. It could. I could
00:22:18
◼
►
make these super glossy and fancy, but I have a bunch of videos that are basically, I do
00:22:23
◼
►
a screen recording in the simulator, and then I do a quick voiceover and kind of some very
00:22:28
◼
►
basic editing to just kind of tighten up or sometimes I'll make sure that things are aligned
00:22:34
◼
►
correctly and editing mistakes or issues I have in the demo. But maybe I can do one of
00:22:40
◼
►
these videos that's a two minute video that it takes me four or five hours to make. It's
00:22:45
◼
►
not something where there's this massive investment in time necessarily. And these
00:22:50
◼
►
are kind of almost another 20 times multiplier in terms of people's engagement with them
00:22:57
◼
►
and interest in viewing them. So in the same numbers that I was saying for Perometer, where
00:23:03
◼
►
I had 4,000 people read the FAQs, I had 80,000 people watch a video. And now I'm set this
00:23:13
◼
►
place where it's like 20 times 20, now I'm 400 times multiplier from my email volume
00:23:18
◼
►
in terms of people I'm able to reach to help to be able to work with. And it was
00:23:24
◼
►
something that I didn't really think about this—video didn't cross my mind until
00:23:28
◼
►
it became an issue in Widgetsmith where I just needed ways to communicate better. And
00:23:33
◼
►
it turns out video is amazing for this, that I can do these quick videos. And it's like
00:23:36
◼
►
in the same way that I have for doing a dynamically updating FAQ page, I have it set up that I
00:23:43
◼
►
dynamically add videos to Widgetsmith or Pedometer. It's a little bit more complicated than
00:23:48
◼
►
just a basic HTML page. It could be a basic HTML page, but I wrap it up a little bit nicer
00:23:53
◼
►
inside the app just because video playback, I want to give them a nice experience, but
00:23:59
◼
►
it's just a JSON file that I am hosting on a web server that happens to be driving
00:24:03
◼
►
the video player. That's been so well received and has such a—the benefit I get from that
00:24:12
◼
►
is so dramatic that I would highly recommend, you know, it's like, add a basic web page
00:24:17
◼
►
with FAQs in it. I think it's a great idea. Do a couple of videos for kind of just basic
00:24:21
◼
►
high-level walkthrough of your apps, and you'd be amazed at how many people will, you know,
00:24:26
◼
►
go through it, will watch it, and then be happier as a result, you know. So even, like,
00:24:31
◼
►
I think some of my most popular videos are things that are just like, you know, like
00:24:34
◼
►
WidgetSmith overview or Pedometer++ overview, and it's just like, in two minutes, let me
00:24:39
◼
►
just show you at a high level how it works. And it seems to clear up a lot of misconceptions,
00:24:46
◼
►
exposes people to different features that may be hard for them to discover or know what
00:24:50
◼
►
to do with otherwise, and it's just been super helpful. And these are super easy to
00:24:54
◼
►
host now. It's not like it's this big expensive thing that I'm dealing with, even
00:24:57
◼
►
at scale. There's lots of easy ways to host video that aren't crushingly expensive
00:25:04
◼
►
in a way that maybe ten years ago hosting video would have been a very complicated,
00:25:09
◼
►
expensive process. So that's the other thing I would say, highly recommend. It's another
00:25:12
◼
►
20 times scaling that you can do for your reducing your support and providing immediate
00:25:17
◼
►
education to your users.
00:25:19
◼
►
That's a really great, like I never, I have such like an old school mindset with app development.
00:25:24
◼
►
Like, yeah, you know, you have built in help, and it's all text. And, you know, maybe,
00:25:28
◼
►
maybe you have an FAQ, and I think that's it. I would never even thought to do video.
00:25:32
◼
►
But that like, you know, it's the kind of thing like, you don't think of but then
00:25:36
◼
►
when somebody like you does it, you're like, "Oh, oh, why didn't I think of that?"
00:25:40
◼
►
And it makes so much sense, and it's really good to hear that it's that effective, you
00:25:45
◼
►
know, like I am – and that it's now pretty cheap to host yourself. You don't have to
00:25:49
◼
►
like embed a YouTube thing or anything. You could put it behind, you know, Cloudflare
00:25:52
◼
►
or something, or you could just host the file yourself and it's not going to be that expensive,
00:25:55
◼
►
you know. But, you know, it's like a long time ago on core intuition, Daniel Jockett
00:26:01
◼
►
said something along the lines of that he does his own support in part because when
00:26:07
◼
►
all the email and stuff comes to him for his apps over at Red Sweater Software, he sees
00:26:12
◼
►
that as like a metric to be optimized. And so he feels the pain of answering all those
00:26:17
◼
►
emails rather than like, you know, shuttling it off to some support answering service.
00:26:21
◼
►
He feels that pain himself, so that encourages him to design the app in such a way to need
00:26:27
◼
►
need less support.
00:26:29
◼
►
And that stuck with me.
00:26:31
◼
►
He probably said that like eight or 10 years ago.
00:26:34
◼
►
But it stuck with me, and that's kinda how I've been
00:26:35
◼
►
doing Overcast this whole time.
00:26:38
◼
►
You know, 'cause I tried different things with Instapaper.
00:26:40
◼
►
I had some support services, I didn't really have
00:26:42
◼
►
great experiences with any of them, frankly.
00:26:45
◼
►
And so now I'm just like, I just want this app
00:26:48
◼
►
to not need support.
00:26:50
◼
►
And I've designed the app as much as I can to do that.
00:26:52
◼
►
And it sounds like, you know, these strategies you're using
00:26:54
◼
►
are really taking that into the next level.
00:26:57
◼
►
Like, you know, just really very well designing an app
00:27:01
◼
►
to not need support and doing a better and better job
00:27:05
◼
►
over time because this isn't something that you can
00:27:08
◼
►
just shuttle off to some answering service
00:27:10
◼
►
and have good outcomes because again,
00:27:12
◼
►
like if you shut a little off to some answering service,
00:27:14
◼
►
then, you know, every one of those support things that,
00:27:17
◼
►
first of all, you aren't even seeing it anymore,
00:27:19
◼
►
so you lose some degree of knowledge of what the problems
00:27:22
◼
►
than your app are, and then all those people
00:27:25
◼
►
who are not emailing support, they're just having
00:27:27
◼
►
failures of usage and they're dropping off and everything.
00:27:30
◼
►
And so it's better for everyone, as I said earlier,
00:27:33
◼
►
it's better for them and better for you
00:27:36
◼
►
if your app is designed in such a way
00:27:38
◼
►
to let people help themselves.
00:27:40
◼
►
And so I love that you've plowed forward in this area
00:27:44
◼
►
and broken new ground that a lot of indies like me
00:27:47
◼
►
who are a little old school in our thinking process
00:27:49
◼
►
would not have thought of.
00:27:51
◼
►
And so that's really cool.
00:27:53
◼
►
And I like, especially I think it's worth calling out
00:27:56
◼
►
what you said about the video not having to be
00:27:57
◼
►
really perfect or very high production value
00:27:59
◼
►
because video is such an endless pit of possible
00:28:04
◼
►
production value that you could do to make it nicer
00:28:07
◼
►
and it just gets so complicated and time consuming
00:28:10
◼
►
and expensive and it's diminishing returns.
00:28:13
◼
►
And so it helps to know, you know what,
00:28:15
◼
►
that really doesn't matter that much.
00:28:16
◼
►
If you just make a screen recording with a quick voiceover,
00:28:18
◼
►
that's enough and people are being helped
00:28:21
◼
►
and you're keeping them in your app
00:28:22
◼
►
and they're doing what they wanna do
00:28:25
◼
►
and they're not emailing you and they're not falling off.
00:28:26
◼
►
So that's a success.
00:28:29
◼
►
- Yeah, and I think the other thing too
00:28:31
◼
►
probably worth a place to close is the understanding
00:28:33
◼
►
that I think there is some value
00:28:35
◼
►
in what Daniel was saying there
00:28:36
◼
►
about kind of support-driven development
00:28:39
◼
►
that in terms of optimizing that as a value.
00:28:41
◼
►
But I think the danger in that,
00:28:42
◼
►
and this is the thing that I fell into myself often,
00:28:45
◼
►
is the proportion of people who will email you
00:28:48
◼
►
is relatively low compared to your actual user base. In my case, I do the math for Perimeter++,
00:28:55
◼
►
and it's like the number of people who email me is 0.5% of active users. That is not representative
00:29:02
◼
►
necessarily of the broader use case. Typically, it's going to either end of the spectrum. It's
00:29:07
◼
►
the people who are very happy or the people who are very unhappy are going to email.
00:29:12
◼
►
instead of optimizing for that 0.05%,
00:29:17
◼
►
focus on optimizing for the 99.95%
00:29:20
◼
►
in the main middle part of the app.
00:29:23
◼
►
It's like finding places and ways
00:29:25
◼
►
that we can make their life better
00:29:28
◼
►
with things like help videos, FAQs,
00:29:30
◼
►
being thoughtful in our design.
00:29:32
◼
►
That's where we get the real impact
00:29:34
◼
►
and the broader thing.
00:29:35
◼
►
It's like, optimize for that,
00:29:37
◼
►
and I think you're in a much, much better
00:29:38
◼
►
and more sustainable place at any scale.
00:29:39
◼
►
Thanks for listening everybody, and we'll talk to you in two weeks.