PodSearch

Under the Radar

179: Silent Updates

 

00:00:00 ◼   ► Welcome to Under the Radar, a show about independent iOS app development.

00:00:04 ◼   ► I'm Mark Orment.

00:00:06 ◼   ► And I'm David Smith. Under the Radar is never longer than 30 minutes, so let's get started.

00:00:10 ◼   ► So this last week, I ran a little experiment.

00:00:15 ◼   ► There's something that has always kind of been in the back of my mind.

00:00:18 ◼   ► It was something that I wanted to actually try.

00:00:22 ◼   ► And that is, how important is launch marketing publicity?

00:00:28 ◼   ► How important is that, specifically for updates?

00:00:33 ◼   ► Rather than necessarily, like, if we're launching something totally new,

00:00:38 ◼   ► there's clearly an element that you just need to get the word out that the thing exists.

00:00:42 ◼   ► But at a certain point, when a product is mature, how important is trying to do marketing, advertising,

00:00:49 ◼   ► reaching out to the press, etc., etc.?

00:00:51 ◼   ► How actually valuable is that to a product once it becomes mature?

00:00:55 ◼   ► And it's something that I've always kind of been curious about.

00:00:58 ◼   ► And so this last week, I launched a relative--well, the 4.0 update to C++,

00:01:05 ◼   ► which, you know, we've had episodes before about version numbering

00:01:08 ◼   ► and if it actually means anything or if it's important,

00:01:10 ◼   ► but I called it 4.0 because it felt like a big enough update.

00:01:14 ◼   ► And the primary focus for this update is around--

00:01:17 ◼   ► I have now a bunch of graphs and trends and ways to kind of visualize your data

00:01:23 ◼   ► in ways that you couldn't before, as well as a bunch of sort of quality of life features,

00:01:27 ◼   ► I think I would say that there's been a bunch of things that have been creeping up on me

00:01:30 ◼   ► that people have been asking for that I just sort of finally got around to finally doing.

00:01:34 ◼   ► Like, you can, for example, export your sleep data as a CSV file now,

00:01:38 ◼   ► which is something that, like, has been asked for, but I just had never quite gotten to.

00:01:41 ◼   ► And so it was a relatively sizable update, but it was something that I just submitted to the App Store.

00:01:46 ◼   ► I put in my release notes, and I hit, you know, release to the store,

00:01:49 ◼   ► just like I would if it was 3.4.2, and I was just curious how that would actually pan out

00:01:56 ◼   ► and what that would--sort of the impact that would have,

00:01:58 ◼   ► not to necessarily diminish the value and importance of the update,

00:02:02 ◼   ► but, you know, A, there's only so many times, I think, that you can sort of get attention,

00:02:08 ◼   ► but you only have so much of that capital to spend, and it's like,

00:02:12 ◼   ► "Was this the update that I wanted to spend?"

00:02:14 ◼   ► And I think, too, there's just something that increasingly I have this feeling

00:02:17 ◼   ► that the audience for this app is very much larger and more diverse than my own audience

00:02:22 ◼   ► or the audience that I could potentially reach through other avenues, you know,

00:02:27 ◼   ► through the various sort of Apple News blogs, I suppose.

00:02:31 ◼   ► Like, that's sort of the two primary ways.

00:02:33 ◼   ► And, I mean, in theory, there's maybe some overlap that if it becomes publicized

00:02:37 ◼   ► that it might get picked up more readily by the Apple editorial team,

00:02:42 ◼   ► which certainly has a more sort of specific and measurable impact.

00:02:46 ◼   ► But the interesting thing--so I take this out, I release this update,

00:02:50 ◼   ► and I put it in, I push it out, and it's in some ways unsurprising,

00:02:55 ◼   ► but the result is that the app continued to be sort of kept moving along

00:02:59 ◼   ► just like it had been prior to the update.

00:03:02 ◼   ► The download numbers were very similar.

00:03:04 ◼   ► The overall, like, the way that my source is and everything was about the same,

00:03:10 ◼   ► which is, like, in some ways unsurprising,

00:03:12 ◼   ► but it was also something that I think was useful to actually verify,

00:03:16 ◼   ► that, like, just putting out an update doesn't necessarily do anything

00:03:21 ◼   ► or accomplish something.

00:03:23 ◼   ► And so, like, now I have that data.

00:03:26 ◼   ► I'm not sure exactly if I would do this again in the future,

00:03:28 ◼   ► but it seems like that's interesting, that if I don't publicize it,

00:03:32 ◼   ► things just continue on, and it's not necessarily a bad thing.

00:03:35 ◼   ► Like, the app was in a good place before.

00:03:37 ◼   ► In theory, the app should be in a better place now that the app got better.

00:03:40 ◼   ► Like, the number that I'm really interested in looking at,

00:03:43 ◼   ► which I won't be able to see until probably, you know, about a month probably,

00:03:48 ◼   ► is the retention number, because that's the number that I think is going to be

00:03:51 ◼   ► more interesting, that in theory, if the app is getting better,

00:03:54 ◼   ► retention should be getting better.

00:03:56 ◼   ► But obviously you can't tell that right away.

00:03:58 ◼   ► But anyway, it was just kind of an interesting experiment that I wanted to run and see,

00:04:01 ◼   ► and I don't think it ended up costing me anything, that, you know, in theory,

00:04:05 ◼   ► maybe if I had made more of a fuss, things could have happened there,

00:04:09 ◼   ► but ultimately I feel pretty good about it.

00:04:11 ◼   ► And in this particular case, it was a good opportunity for it,

00:04:14 ◼   ► because it's an update that I've kind of been working on for a while,

00:04:16 ◼   ► and then I put it on pause because it seemed like Apple was about to release

00:04:19 ◼   ► their own sleep tracker, and I wanted to make sure I would be compliant with it,

00:04:23 ◼   ► and that didn't end up happening.

00:04:25 ◼   ► And so then it kind of got put on the shelf,

00:04:26 ◼   ► and then it was this thing on the shelf for a long time.

00:04:28 ◼   ► So anyway, those are kind of the reasons behind it.

00:04:30 ◼   ► But anyway, that was kind of what a little experiment I've been running,

00:04:33 ◼   ► and I was curious if you had any thoughts.

00:04:35 ◼   ► Yeah, it's really interesting, because if you think about, like, you know,

00:04:38 ◼   ► this kind of touches on a lot of different areas.

00:04:40 ◼   ► You know, there's the angle of, like, you know, business-wise,

00:04:44 ◼   ► like we've talked about before, if you have an app that, you know,

00:04:48 ◼   ► the sales are kind of just flat or that it's not succeeding financially

00:04:51 ◼   ► or it's not meeting your goals or whatever,

00:04:53 ◼   ► somehow it's, like, not working very well for you.

00:04:55 ◼   ► We've addressed the question before of, like,

00:04:58 ◼   ► should you work on a big update to that app to try to fix it,

00:05:02 ◼   ► or should you just do a completely new app instead

00:05:05 ◼   ► and kind of just leave that one on the back burner or abandon it?

00:05:08 ◼   ► And I think, and largely I think this supports the idea that, like,

00:05:12 ◼   ► the amount of effort that you put into updates

00:05:16 ◼   ► usually does not come with a commensurate boost in sales.

00:05:20 ◼   ► That doesn't mean you don't need to or shouldn't do updates,

00:05:24 ◼   ► but it does, it should inform, like, how much you put into them,

00:05:29 ◼   ► because I think most people, they just expect apps

00:05:34 ◼   ► to continue to be compatible with whatever the OSes and hardware are in the future,

00:05:38 ◼   ► and they expect apps to slowly get better

00:05:40 ◼   ► as the expectations of the market grow over time.

00:05:44 ◼   ► So, for instance, like, if you made a Notes app, you know,

00:05:47 ◼   ► ten years ago, it probably didn't have to sync,

00:05:50 ◼   ► but five years ago, it did have to sync,

00:05:53 ◼   ► and three years ago, it would have had to support, like, you know,

00:05:56 ◼   ► rich attachments and rich formatting and stuff like that,

00:05:58 ◼   ► like, because, you know, just the market has changed expectations over time,

00:06:02 ◼   ► and now, like, the baseline of what all Notes apps are expected to have

00:06:06 ◼   ► is higher than what it was, you know, years ago.

00:06:09 ◼   ► So you have to kind of keep up with that baseline

00:06:11 ◼   ► when you have an actively maintained app.

00:06:14 ◼   ► But beyond that, you don't really,

00:06:17 ◼   ► it's not really worth constantly investing lots into features for most apps,

00:06:21 ◼   ► because most apps are not judged that way,

00:06:23 ◼   ► and most apps are not promoted that way.

00:06:25 ◼   ► Like, you released a major new version with major new functionality,

00:06:29 ◼   ► but no one seemed to really notice.

00:06:32 ◼   ► And you can try to promote it in the press, and many of us do,

00:06:35 ◼   ► and I think you, it's kind of, this is kind of also like a little side diversion here,

00:06:39 ◼   ► for me, shocking, that, like, you and I both have enough attention

00:06:44 ◼   ► on the things that we announce from some of the, like, Apple bloggers,

00:06:49 ◼   ► because we're friends with a lot of them, just, we happen to be in the same circles,

00:06:53 ◼   ► and so anything that you and I do has a higher than normal chance

00:06:56 ◼   ► of being picked up anyway, even if we didn't really announce it.

00:07:00 ◼   ► So that, you know, that disclaimer aside,

00:07:04 ◼   ► there's been a lot of updates that I've done

00:07:07 ◼   ► that I have either not really promoted,

00:07:10 ◼   ► or that I've kind of underplayed in how I say,

00:07:12 ◼   ► like, I might just say on the Twitter account,

00:07:14 ◼   ► "Hey, there's this new update," and then, like, you know,

00:07:16 ◼   ► two lines of text of what's in it, and that's it.

00:07:18 ◼   ► You know, I don't, like, write big blog posts

00:07:20 ◼   ► and notify the press about, you know, most of my updates.

00:07:23 ◼   ► And some of them have, like, really major changes, like,

00:07:26 ◼   ► in a similar vein to your CSV export feature.

00:07:29 ◼   ► A couple of versions ago, I added per-podcast settings

00:07:33 ◼   ► for downloading and deleting, and that had been requested for years.

00:07:39 ◼   ► Since 1.0, people have been asking me for that feature,

00:07:42 ◼   ► and it was kind of a pain to do, but I finally did it,

00:07:45 ◼   ► and, like, no one noticed.

00:07:47 ◼   ► You know, like, I searched, I added search in a major update

00:07:51 ◼   ► a couple, like, a year ago now, something like that,

00:07:54 ◼   ► and no one really uses search, although I have a bug in search

00:07:58 ◼   ► in the current version, and I'm hearing about it from everyone.

00:08:02 ◼   ► Like, proportionally, it's a very small feature,

00:08:04 ◼   ► but it's like, these things, they matter,

00:08:07 ◼   ► and people do appreciate them, but it's so,

00:08:11 ◼   ► anything you do in an update so quickly becomes taken for granted

00:08:16 ◼   ► by the user base, or you do it, and they're just like,

00:08:18 ◼   ► "Oh, yeah, of course you would have that, finally," right?

00:08:21 ◼   ► And it's not really, like, you don't get, like,

00:08:24 ◼   ► patted on the back for having done it.

00:08:26 ◼   ► You often don't get a boost in sales.

00:08:27 ◼   ► The press often doesn't care.

00:08:29 ◼   ► So to have things out there in, you know,

00:08:32 ◼   ► in big or medium-sized updates that you don't really promote,

00:08:37 ◼   ► I feel like is actually just realizing to yourself

00:08:42 ◼   ► that most of the time updates you do to apps

00:08:45 ◼   ► aren't that big of a deal, and aren't that noteworthy

00:08:48 ◼   ► to the world at large, and that you do them

00:08:51 ◼   ► because you want the app to be better in those ways,

00:08:54 ◼   ► or because the expectations of the market

00:08:56 ◼   ► require it to be better in those ways,

00:08:59 ◼   ► but it's not really going to be a big attention-getter

00:09:01 ◼   ► most of the time.

00:09:02 ◼   ► - Yeah, and I think there is something, too, like,

00:09:05 ◼   ► it's, I think it is easy to, oh, either,

00:09:10 ◼   ► overvalue the importance of an update,

00:09:12 ◼   ► and, like, it's easy, like, you think it's really cool,

00:09:14 ◼   ► but is it really cool?

00:09:15 ◼   ► Like, that is just always a difficulty that we have

00:09:18 ◼   ► when we're making products that, you know,

00:09:20 ◼   ► we're close to things, and we're building things,

00:09:23 ◼   ► or we're hearing a very specific but loud area of feedback,

00:09:26 ◼   ► and so it seems like, well, everyone should be super excited

00:09:29 ◼   ► when this happens, but in reality, it's like,

00:09:32 ◼   ► there's so much of, I think, having a sustainable app

00:09:35 ◼   ► that is just about having an essential experience

00:09:38 ◼   ► that is solid, that solves people's, you know,

00:09:43 ◼   ► like, solves the job to be done by the application

00:09:47 ◼   ► in a competent way, and then having some mechanism

00:09:50 ◼   ► by which you are generating future downloads

00:09:56 ◼   ► that is, you know, that is a sustainable means,

00:09:58 ◼   ► that isn't something that is just based on press,

00:10:02 ◼   ► 'cause if you, and if you have those two things,

00:10:04 ◼   ► if you're having a situation where you're competently

00:10:08 ◼   ► solving the core problem, and you have some means,

00:10:11 ◼   ► and that could be a variety of things,

00:10:12 ◼   ► it could be search rank in the app store,

00:10:14 ◼   ► it could be having a reliable word of mouth

00:10:17 ◼   ► kind of aspect to it, it could have a, there's a,

00:10:19 ◼   ► you know, you could have a, imagine some kind of

00:10:21 ◼   ► virality component where you, the way you're sharing things,

00:10:24 ◼   ► or there's sort of those types of acquisition,

00:10:27 ◼   ► it could be advertising, if your advertising is sustainable,

00:10:30 ◼   ► in the sense that, you know, you spend less on advertising

00:10:33 ◼   ► than you get back from it, and so you have this kind of,

00:10:35 ◼   ► it's a virtuous cycle to it, but if you have those two things,

00:10:39 ◼   ► like ultimately, that is what's going to make

00:10:41 ◼   ► the product successful or not, that the individual importance

00:10:46 ◼   ► of a particular feature update, or a particular feature,

00:10:49 ◼   ► like addition to the core functionality,

00:10:51 ◼   ► is very unlikely to have that effect.

00:10:55 ◼   ► I mean, in many ways, I think even back to,

00:10:57 ◼   ► for this, for Sleep++, like, this is probably two years ago,

00:11:01 ◼   ► I added automatic sleep tracking, rather than just

00:11:03 ◼   ► the previous, it was this kind of interactive manual process,

00:11:06 ◼   ► which has definitely enhanced the experience

00:11:09 ◼   ► and made the app a lot better, and it was really cool

00:11:10 ◼   ► to build, interesting, but I think,

00:11:13 ◼   ► and while the app, like, the app is better,

00:11:16 ◼   ► I don't know if its downloads or its sales

00:11:19 ◼   ► actually improved, other than the initial spike,

00:11:22 ◼   ► kind of, you know, like, for two or three weeks,

00:11:25 ◼   ► downloads were great, but there was a little bit

00:11:27 ◼   ► of attention to it, but then it sort of settled back down

00:11:29 ◼   ► to the same place, and I'm not complaining,

00:11:31 ◼   ► it's a good place for it to settle down to,

00:11:33 ◼   ► but I think what it speaks to is, it's like,

00:11:35 ◼   ► the previous version, the manual sleep tracking version,

00:11:37 ◼   ► was still a competent implementation of the core problem

00:11:40 ◼   ► that people were coming to the app trying to solve,

00:11:42 ◼   ► the new version is better, and maybe that has

00:11:45 ◼   ► a marginal increase in, in sort of these other

00:11:48 ◼   ► intangible ways, and, you know, there's this kind of broad,

00:11:51 ◼   ► it'll boost the user base and the downloads, you know,

00:11:56 ◼   ► in ways, because there's a little bit more word of mouth,

00:11:58 ◼   ► there's a little bit more retention.

00:12:01 ◼   ► - Yeah, but I feel like that's like getting paid in exposure.

00:12:03 ◼   ► It's like, it's not really a thing.

00:12:05 ◼   ► - It's not tangible, like, the core, like,

00:12:09 ◼   ► is this business operating in the black?

00:12:12 ◼   ► Like, is it sustainable, is it continuing to go?

00:12:15 ◼   ► Is entirely based on, if you competently solve the problem,

00:12:19 ◼   ► and then have some way of getting new people,

00:12:22 ◼   ► or a way of generating revenue such that

00:12:25 ◼   ► it doesn't vary wildly, then you have a going concern

00:12:30 ◼   ► and you're good to go, and updates and things from there

00:12:34 ◼   ► are primarily about, they're slightly defensive, I think,

00:12:38 ◼   ► and they're slightly just things that you kind of,

00:12:41 ◼   ► just make sure that you don't get left behind.

00:12:43 ◼   ► When someone, like, the biggest risk is someone else comes in

00:12:46 ◼   ► and sort of assumes your position because they're solving

00:12:51 ◼   ► the problem in a more competent way than you were,

00:12:55 ◼   ► like, that's, they're like defensive in that way,

00:12:58 ◼   ► rather than necessarily like an actual productive thing

00:13:01 ◼   ► in and of themselves.

00:13:02 ◼   ► - Right, exactly, and I like your points about, like,

00:13:05 ◼   ► the visibility of certain updates, because, like,

00:13:09 ◼   ► you know, some of the things that we do,

00:13:12 ◼   ► like, to give an example with Overcast, like,

00:13:14 ◼   ► I did clip sharing last fall sometime,

00:13:17 ◼   ► I don't even remember when, and it was a very quick feature,

00:13:20 ◼   ► like, I did it in, you know, or in the springtime,

00:13:23 ◼   ► I did it in, like, a week, and it was pretty much done,

00:13:26 ◼   ► and it got a ton of attention, and it wasn't on my roadmap,

00:13:29 ◼   ► nobody was asking for it, I didn't plan it,

00:13:31 ◼   ► I just felt like doing it one day, and I just did it,

00:13:33 ◼   ► and it got tons of attention, and meanwhile,

00:13:37 ◼   ► I've been working on Voice Boost 2 for about a year,

00:13:41 ◼   ► and it's like, it's a huge effort, tons of work,

00:13:45 ◼   ► tons of, like, deep, difficult coding and low-level stuff,

00:13:50 ◼   ► and research and algorithms and all sorts of crazy stuff

00:13:53 ◼   ► to do what I'm doing there, and when I finally get

00:13:56 ◼   ► to release that, almost no one's gonna notice,

00:13:59 ◼   ► like, they might notice that, like, oh,

00:14:01 ◼   ► we now have a couple more features in the audio settings,

00:14:03 ◼   ► or maybe it sounds a bit better, but,

00:14:06 ◼   ► nobody notices sound quality, who am I kidding?

00:14:08 ◼   ► And so, like, you know, I will have worked on that feature

00:14:12 ◼   ► for, like, a year, and it means a lot to me,

00:14:15 ◼   ► but I'm under no, you know, delusions that it's gonna be

00:14:19 ◼   ► a big deal marketing-wise, it's also gonna probably

00:14:22 ◼   ► come with AirPlay 2, again, same kind of thing,

00:14:25 ◼   ► like, AirPlay 2 is just, people expect all apps

00:14:28 ◼   ► to be nicely working with their home pods now,

00:14:31 ◼   ► if they have one, and it's kind of like a defensive

00:14:34 ◼   ► or maintenance feature, it's like, I kinda just have

00:14:36 ◼   ► to support AirPlay 2, and it'll start becoming a problem

00:14:39 ◼   ► after not too much time if I don't, so I kinda need it,

00:14:43 ◼   ► but, like, no one's gonna give me a big pat on the back

00:14:45 ◼   ► for that when the time comes, you know, compared to,

00:14:48 ◼   ► and these are two, like, huge, difficult, time-consuming,

00:14:51 ◼   ► you know, fairly expensive to develop features

00:14:53 ◼   ► that are gonna get almost no congratulations

00:14:57 ◼   ► and market recognition at all, because most people

00:14:59 ◼   ► will notice, and I think this plays on something bigger,

00:15:01 ◼   ► which I'll get to in a moment, but first,

00:15:03 ◼   ► we are sponsored this week by Linode.

00:15:06 ◼   ► With Linode, you can instantly deploy and manage

00:15:09 ◼   ► an SSD server in the Linode cloud.

00:15:11 ◼   ► You can get a server running in just seconds

00:15:13 ◼   ► with your choice of Linux distro, resources,

00:15:15 ◼   ► and node location.

00:15:17 ◼   ► It doesn't matter if you're working on your first server

00:15:19 ◼   ► or deploying a big, complex system, like what Overcast has.

00:15:22 ◼   ► Linode is where you should go.

00:15:24 ◼   ► They have the fastest hardware and network,

00:15:26 ◼   ► outstanding customer support if you ever need any help,

00:15:28 ◼   ► and it's super easy to launch a Linode cloud server.

00:15:31 ◼   ► They now have block storage available also

00:15:33 ◼   ► in Newark, Fremont, Dallas, Atlanta, Frankfurt,

00:15:35 ◼   ► London, and Singapore, soon to be released in Tokyo,

00:15:37 ◼   ► and by the way, that's just a small section

00:15:39 ◼   ► of their massive list of data centers,

00:15:41 ◼   ► where you can host your nodes in all sorts

00:15:43 ◼   ► of different countries for various needs

00:15:45 ◼   ► or performance or whatever else, and they also now have

00:15:47 ◼   ► version 4 of their API out of beta

00:15:49 ◼   ► and an officially supported Python CLI

00:15:52 ◼   ► for nice automation tasks, and Linode is hiring right now,

00:15:55 ◼   ► so if you want to learn more and see what they're looking for,

00:15:57 ◼   ► go to linode.com/careers.

00:16:00 ◼   ► Now, of course, for their hosting,

00:16:02 ◼   ► I've been hosting all my stuff there

00:16:03 ◼   ► for about eight or nine years now.

00:16:05 ◼   ► I love Linode. It's such a good host,

00:16:07 ◼   ► by far my favorite host, and a fantastic value.

00:16:10 ◼   ► Their pricing options can suit everyone.

00:16:12 ◼   ► Plans start at one gig of RAM servers

00:16:15 ◼   ► for just $5 a month, and they have all sorts of stuff

00:16:18 ◼   ► above that for various needs, including specialty needs

00:16:20 ◼   ► like high memory plans, and they have a special offer for you.

00:16:24 ◼   ► As listener of the show, you can go to linode.com/radar

00:16:28 ◼   ► and use promo code RADAR2019 to get $20 towards any Linode plan.

00:16:33 ◼   ► Now, on that one gig plan, that could be four months for free,

00:16:35 ◼   ► and with a seven-day money-back guarantee,

00:16:37 ◼   ► you have nothing to lose, so give Linode a try today

00:16:40 ◼   ► at linode.com/radar, promo code RADAR2019.

00:16:44 ◼   ► Learn more, sign up, and make the most of that $20 credit.

00:16:47 ◼   ► Our thanks to Linode for their support of this show,

00:16:49 ◼   ► all of my servers, and Relay FM.

00:16:52 ◼   ► So I think one of the other key dynamics

00:16:56 ◼   ► of the effectiveness of promoting or not promoting app updates

00:16:59 ◼   ► is it's easy to assume incorrectly

00:17:05 ◼   ► that a large portion of the customer base of App Store apps

00:17:10 ◼   ► is familiar with and follows the press about apps,

00:17:14 ◼   ► and that's not actually a safe assumption.

00:17:17 ◼   ► The audience that looks at--

00:17:20 ◼   ► Assuming you made the biggest deal in the world of your update,

00:17:24 ◼   ► if you wrote about it somewhere,

00:17:26 ◼   ► if somebody like Mac Stories or Daring Fireball

00:17:28 ◼   ► picked it up and linked to it, or they did their own reviews,

00:17:31 ◼   ► whatever you can imagine of big success of press,

00:17:35 ◼   ► of promotion of an update,

00:17:37 ◼   ► you post it on your Twitter account,

00:17:39 ◼   ► whatever, the app's email list, whatever it is,

00:17:42 ◼   ► that's all going to be still a very small percentage

00:17:46 ◼   ► of the people who are out there every day

00:17:48 ◼   ► going to the App Store and finding apps,

00:17:50 ◼   ► or the people who have your app

00:17:52 ◼   ► and are thinking about whether to buy the in-app purchase

00:17:54 ◼   ► or whatever it is.

00:17:55 ◼   ► However you succeed,

00:17:56 ◼   ► the audience for all that press is a small percentage.

00:18:00 ◼   ► Even if you get featured in the App Store,

00:18:02 ◼   ► the audience of people who browse the editorial sections

00:18:05 ◼   ► of the App Store is a small fraction of App Store people, too.

00:18:09 ◼   ► So the reality is most people don't follow the Apple press.

00:18:13 ◼   ► Most people don't look at the App Store features

00:18:15 ◼   ► or just browse the App Store casually every day,

00:18:17 ◼   ► most people go to the App Store when they have a need

00:18:20 ◼   ► and they search using generic keywords

00:18:22 ◼   ► or the name of your app,

00:18:23 ◼   ► and then they find whatever's there that looks free

00:18:26 ◼   ► and is well rated and they download it and that's it.

00:18:28 ◼   ► So all the promotion that you could do

00:18:31 ◼   ► is actually really only reaching a very small percentage.

00:18:35 ◼   ► I've seen this myself, too.

00:18:37 ◼   ► I have my overcast Twitter account,

00:18:39 ◼   ► I have my own Twitter account,

00:18:40 ◼   ► I can write stuff on my blog that can get press

00:18:42 ◼   ► if I really put a lot of effort into it

00:18:44 ◼   ► and if it's really worth it,

00:18:45 ◼   ► but I also do a lot of updates

00:18:47 ◼   ► where I don't really say anything.

00:18:49 ◼   ► (laughs)

00:18:50 ◼   ► I just put it out there 'cause I get lazy or I forget

00:18:53 ◼   ► or I don't think it's really worth tons of promotion

00:18:55 ◼   ► 'cause it's not super high profile features.

00:18:59 ◼   ► And it tends to not really matter.

00:19:01 ◼   ► (laughs)

00:19:02 ◼   ► I don't really see a huge difference

00:19:04 ◼   ► between those two approaches in performance

00:19:06 ◼   ► of how well the app does,

00:19:08 ◼   ► do I get a big boost in sales or anything.

00:19:10 ◼   ► It almost doesn't matter,

00:19:12 ◼   ► or rather it matters a lot less than you would assume.

00:19:16 ◼   ► - And I think what's tricky too is it matters,

00:19:19 ◼   ► like when you do those things,

00:19:21 ◼   ► when you aggressively market or you try and really promote,

00:19:24 ◼   ► it'll almost, well, assuming you're at all successful

00:19:28 ◼   ► with that process, you will likely be,

00:19:31 ◼   ► you will receive some types of positive reinforcement

00:19:35 ◼   ► that people will talk about it or link to it

00:19:39 ◼   ► or those types of things,

00:19:40 ◼   ► and any time that happens, it feels awesome.

00:19:43 ◼   ► Like it's still a thrill 11 years into doing this job

00:19:47 ◼   ► when someone links to an app that I made

00:19:49 ◼   ► and says that they like it.

00:19:51 ◼   ► That is still at a human level,

00:19:52 ◼   ► something that I just, you know, like I love.

00:19:54 ◼   ► It's great.

00:19:56 ◼   ► And I think what's tricky,

00:19:57 ◼   ► and I think this is like the slightly nuanced thing there

00:20:01 ◼   ► is like doing a big feature update

00:20:04 ◼   ► for me to be able to get that feeling

00:20:06 ◼   ► is a really poor reason for me

00:20:08 ◼   ► to be implementing a feature or doing work on something.

00:20:11 ◼   ► And where the reality is, it is primarily a benefit for me,

00:20:17 ◼   ► and there's some amount of reaching out

00:20:21 ◼   ► into a very particular niche of my user base,

00:20:25 ◼   ► that if my user base is only those people,

00:20:28 ◼   ► then maybe that would make sense,

00:20:29 ◼   ► but if you're doing a general purpose app

00:20:31 ◼   ► that's trying to have a big wide audience,

00:20:33 ◼   ► necessarily this is gonna be such a small sort of sliver

00:20:36 ◼   ► of your people.

00:20:37 ◼   ► And so it's just, yeah,

00:20:39 ◼   ► it's tricky to make sure that you don't get stuck

00:20:43 ◼   ► in how like it feels good to be well received

00:20:47 ◼   ► and you've done all this work

00:20:48 ◼   ► and you want it to feel like other people care

00:20:50 ◼   ► and that other people are paying attention to you

00:20:53 ◼   ► and like that you want to have those positive reinforcements

00:20:57 ◼   ► for all this work that you've just done.

00:20:59 ◼   ► When the reality is, it's like it might just be

00:21:01 ◼   ► like that was work that you had to do

00:21:02 ◼   ► because that was work you had to do

00:21:04 ◼   ► or work that you was, is defensive

00:21:08 ◼   ► or work that maybe you actually didn't need to do

00:21:11 ◼   ► and you just thought it was a good idea

00:21:12 ◼   ► and you may live to regret it down the road.

00:21:15 ◼   ► Like these are all just as likely

00:21:17 ◼   ► or just as probable outcomes of something

00:21:20 ◼   ► and like I don't know,

00:21:21 ◼   ► I think that having a clear mind about this kind of stuff,

00:21:25 ◼   ► I think it's just a wise place to position yourself,

00:21:28 ◼   ► to not get too stuck in like those types of like,

00:21:33 ◼   ► it's so easy to want the accolades

00:21:36 ◼   ► or to want someone to say something to you

00:21:38 ◼   ► but the reality, like I think the more,

00:21:40 ◼   ► especially on things like the class,

00:21:42 ◼   ► like things that are slightly measurable

00:21:44 ◼   ► are especially problematic for this

00:21:46 ◼   ► where you have things like Twitter

00:21:47 ◼   ► is probably the best example for this

00:21:49 ◼   ► where it's like something where it is giving you

00:21:53 ◼   ► numerical reinforcement, like you said something

00:21:56 ◼   ► and then six people liked it and then seven people liked it

00:21:59 ◼   ► and then eight people liked it

00:22:00 ◼   ► and you can check that number

00:22:01 ◼   ► and you can see it and like it can make you feel good

00:22:05 ◼   ► but it's kind of ultimately, like I think increasingly

00:22:07 ◼   ► and I'm very much like, I try very hard

00:22:09 ◼   ► to sort of push myself away from social media

00:22:11 ◼   ► at least right now because I feel like it's creating,

00:22:16 ◼   ► it's creating these reinforcement cycles

00:22:18 ◼   ► that aren't actually related to my apps,

00:22:20 ◼   ► that aren't actually related to the day-to-day operation

00:22:22 ◼   ► of things, that aren't related to what will make my app better.

00:22:26 ◼   ► That in many ways, like I work even

00:22:28 ◼   ► like in this particular feature,

00:22:29 ◼   ► like there's a whole bunch of quality of life updates

00:22:32 ◼   ► that I did are probably gonna be the things

00:22:34 ◼   ► that make my average user averagely more happy

00:22:38 ◼   ► rather than like niche features

00:22:40 ◼   ► or things that would do well in a press release

00:22:42 ◼   ► or show off well in a review.

00:22:47 ◼   ► Like ultimately, that's what I should be focused on

00:22:50 ◼   ► and I think in some ways, part of me,

00:22:52 ◼   ► I think as I'm talking this through

00:22:53 ◼   ► is just like part of why I wanted to do this experiment now

00:22:57 ◼   ► is to try and keep myself more focused

00:23:01 ◼   ► on those core experiences

00:23:03 ◼   ► rather than the things that are shiny

00:23:05 ◼   ► and the things that might be able to give,

00:23:07 ◼   ► sort of make me feel good because people are like, ooh, ah.

00:23:11 ◼   ► And that's great and that's like wonderful for a day or two,

00:23:14 ◼   ► but that's not a sustainable, like years and years of,

00:23:18 ◼   ► you know, day after day getting sufficient downloads

00:23:21 ◼   ► and getting sufficient, you know, usership of your app.

00:23:24 ◼   ► Like those are the things that are actually gonna be important

00:23:26 ◼   ► for making this into a sustainable thing.

00:23:29 ◼   ► - Yeah, that's a really good point that you just brought up.

00:23:31 ◼   ► So like, you know, a lot of updates,

00:23:33 ◼   ► like the difference between what matters in a press sense

00:23:37 ◼   ► in an update and what matters to your users

00:23:40 ◼   ► is often not the same thing.

00:23:43 ◼   ► Like there's often a significant difference there.

00:23:45 ◼   ► Like another example here, like, you know,

00:23:47 ◼   ► I could make some big feature like clip sharing

00:23:49 ◼   ► and overcast and that got a lot of press,

00:23:52 ◼   ► but it actually is used by a very small percentage

00:23:55 ◼   ► of the user base, very, very small, way small.

00:23:57 ◼   ► Like had I known how small the user base usage

00:24:00 ◼   ► of it would have been, I might not have done it.

00:24:02 ◼   ► It's that small.

00:24:03 ◼   ► So that feature is mattered a lot to the press,

00:24:06 ◼   ► but not a lot to the user base.

00:24:08 ◼   ► Whereas in my last update, I totally changed

00:24:12 ◼   ► the way accounts are managed in the login screen

00:24:15 ◼   ► to really heavily address the issue of people

00:24:19 ◼   ► basically losing their account, like losing track

00:24:21 ◼   ► of an anonymous account without an email address,

00:24:23 ◼   ► not being able to log back into it.

00:24:25 ◼   ► I completely changed how those are stored,

00:24:27 ◼   ► how the authentication works.

00:24:29 ◼   ► I gave people the option to log into a list

00:24:32 ◼   ► of all their previous accounts through CloudKit.

00:24:34 ◼   ► Like it was a huge change, but that changed

00:24:36 ◼   ► to the login screen, which is not only boring

00:24:39 ◼   ► to begin with, but if you didn't log out of overcast,

00:24:43 ◼   ► you haven't even seen it yet, right?

00:24:45 ◼   ► So it's a screen that most people, all people see it,

00:24:48 ◼   ► but most people don't see it frequently,

00:24:51 ◼   ► and it's such a boring maintenance task.

00:24:53 ◼   ► No one cares if you make your login screen better.

00:24:55 ◼   ► There was never any chance of me getting press

00:24:58 ◼   ► for that update, but it was one of the most important

00:25:01 ◼   ► things I could have done because this was a huge

00:25:03 ◼   ► pain point for a significant slice of my user base,

00:25:06 ◼   ► and I changed it to be significantly better

00:25:09 ◼   ► in a way that no one cares about.

00:25:12 ◼   ► No one cares that my login screen now prevents

00:25:14 ◼   ► account loss in a very significant way,

00:25:18 ◼   ► and is easier for people who have edge case

00:25:20 ◼   ► account conditions.

00:25:21 ◼   ► No one cares.

00:25:23 ◼   ► But I had to do it, and it was a major change,

00:25:25 ◼   ► and it made my app a lot better.

00:25:27 ◼   ► But I have to pat myself on the back for that.

00:25:29 ◼   ► I can't depend on external validation for that.

00:25:32 ◼   ► - Yeah, and that's a kind of fix too.

00:25:34 ◼   ► It's like what you're solving there is a problem

00:25:36 ◼   ► that the person who needs that solution

00:25:39 ◼   ► is the person who got a new phone,

00:25:42 ◼   ► or for some reason is reinstalling,

00:25:45 ◼   ► or maybe, hey, I used to listen to podcasts.

00:25:47 ◼   ► I don't listen to them anymore.

00:25:48 ◼   ► Maybe I'll go back to that.

00:25:49 ◼   ► They download the app, and then if their initial

00:25:53 ◼   ► experience is like where's all my stuff,

00:25:55 ◼   ► or they can't get back into it,

00:25:57 ◼   ► they're gonna go somewhere else,

00:25:58 ◼   ► or they're not gonna do it.

00:25:59 ◼   ► It's a feature that actually would have a tangible,

00:26:02 ◼   ► there is going to be people for whom that fix,

00:26:06 ◼   ► that change made the difference between them

00:26:10 ◼   ► continuing to use the app and not,

00:26:12 ◼   ► whereas many of your other,

00:26:14 ◼   ► like when you get into more minor or niche,

00:26:16 ◼   ► or these sort of more showy features,

00:26:18 ◼   ► they're not gonna likely,

00:26:20 ◼   ► that's unlikely to be the make or break.

00:26:22 ◼   ► Oh, this app doesn't include per podcast download settings.

00:26:27 ◼   ► Okay, if that's really important to you,

00:26:30 ◼   ► more power to you, but probably that's unlikely

00:26:33 ◼   ► to be the thing that's gonna be it,

00:26:36 ◼   ► or search, or many of these things.

00:26:38 ◼   ► It's interesting how the grunt work

00:26:42 ◼   ► is probably the more important work

00:26:44 ◼   ► in the sense of keeping the app really,

00:26:49 ◼   ► keeping things moving forward.

00:26:51 ◼   ► I spent, in Xcode 11, we got all these great new tools

00:26:56 ◼   ► for launch time optimization that they announced at W3C,

00:27:00 ◼   ► which is super cool, by the way.

00:27:01 ◼   ► I love seeing this and seeing how it,

00:27:05 ◼   ► in a really detailed way,

00:27:08 ◼   ► I can understand the launching of my app,

00:27:11 ◼   ► and I did a whole bunch of work with that,

00:27:13 ◼   ► and it made half to my app launch time in Pedometer++.

00:27:17 ◼   ► Hopefully no one ever notices.

00:27:19 ◼   ► Hopefully, from their perspective,

00:27:20 ◼   ► it's like, the app's just better.

00:27:22 ◼   ► And I'm not sure if I'll,

00:27:23 ◼   ► there's no accolades for that,

00:27:25 ◼   ► but that's a useful update.

00:27:27 ◼   ► So, I don't know.

00:27:29 ◼   ► Those are the kinds of things

00:27:31 ◼   ► that I think increasingly I'm trying to focus on,

00:27:33 ◼   ► that it's like, I wanna polish and refine,

00:27:35 ◼   ► and then be okay with just letting something

00:27:38 ◼   ► hang out for a little while,

00:27:39 ◼   ► and not feel like I have to constantly be

00:27:41 ◼   ► thinking of grand, new, big features

00:27:44 ◼   ► that I need to work on,

00:27:45 ◼   ► that I can just get things in a good quality way,

00:27:49 ◼   ► do the maintenance as I need to,

00:27:51 ◼   ► and then focus on other things,

00:27:53 ◼   ► other things in my life, or other apps,

00:27:55 ◼   ► or whatever that might be,

00:27:56 ◼   ► but don't just be chasing accolades

00:27:59 ◼   ► by making flashy features.

00:28:01 ◼   ► - Yeah, almost like, in some ways,

00:28:03 ◼   ► I feel like there's actually almost an inverse correlation

00:28:06 ◼   ► between how flashy a feature is

00:28:08 ◼   ► versus how much you should probably do it.

00:28:10 ◼   ► (laughs)

00:28:11 ◼   ► I mean, sometimes they line up,

00:28:13 ◼   ► sometimes you get something that is flashy,

00:28:15 ◼   ► but also gives you new customers on a sustained basis,

00:28:17 ◼   ► or keeps your existing customers much happier for longer,

00:28:20 ◼   ► but most of the time, people don't care,

00:28:22 ◼   ► and they just want your app to be continually updated

00:28:25 ◼   ► with stuff that they don't even think to ask for,

00:28:28 ◼   ► or they don't think they need to ask for,

00:28:29 ◼   ► like OS compatibility updates,

00:28:31 ◼   ► and just move on with their lives,

00:28:33 ◼   ► and the fact that you are asking for publicity,

00:28:37 ◼   ► or yelling about how great your compatibility update is,

00:28:42 ◼   ► it's almost like, it's just so, I guess, antithetical

00:28:47 ◼   ► to what people actually want and expect.

00:28:51 ◼   ► - Yeah, and they just want the app to work,

00:28:53 ◼   ► and to, in many ways, probably not think about it.

00:28:56 ◼   ► Like, the best kind of design

00:28:57 ◼   ► is the kind of design you don't notice,

00:28:59 ◼   ► that it's just exactly what you expect,

00:29:01 ◼   ► exactly where you would expect it,

00:29:03 ◼   ► and it just works, and if you can accomplish that,

00:29:06 ◼   ► that's a great goal, and that's something that is worth being,

00:29:11 ◼   ► is worth setting as your desire, I think.

00:29:14 ◼   ► - Yeah, exactly.

00:29:15 ◼   ► All right, well, thank you for listening, everybody,

00:29:17 ◼   ► and have a wonderful Thanksgiving,

00:29:19 ◼   ► if you're in the US here,

00:29:20 ◼   ► and we will talk to you in two weeks.

00:29:22 ◼   ► - Bye.

00:29:23 ◼   ► [BLANK_AUDIO]