Developing Perspective

#219: Accidental.


00:00:00   Hello and welcome to Developing Perspective. Developing Perspective is a

00:00:03   podcast discussing news of note and iOS development, Apple and the like. I'm your host

00:00:08   David Smith. I'm an independent developer based in Herndon, Virginia. This is show

00:00:11   number 219. Today is Thursday, May 14th. Developing Perspective is never longer

00:00:17   than 15 minutes, so let's get started. Alright, before I get into the main topic

00:00:21   again, just a quick reminder. If you would like a Developing Perspective

00:00:24   t-shirt. I think you have four days left to do it. The sale will end May 18th, which is

00:00:33   Monday, so about four days. So if you'd like one, please, by all means, do that every year.

00:00:38   Say someone always comes back after they close and be like, "Oh, I didn't know." Well, then

00:00:42   you should, I guess, have paid more attention. This is your warning.

00:00:46   All right. Today, I'm going to be talking about accidents and intentionality and how

00:00:53   they often are very different than we expect.

00:00:57   And the jumping off point for today's episode

00:01:00   is something that kind of exciting

00:01:02   that happened over this last weekend for me.

00:01:04   One of my applications, Pedalmator++,

00:01:07   hit one million downloads,

00:01:09   which is kind of remarkable for me.

00:01:12   It's not my largest downloaded application,

00:01:16   that's audiobooks, but to, in about 18 months,

00:01:19   go from zero downloads to a million downloads

00:01:21   is remarkable and something that I'm very proud of

00:01:24   and I think is really cool.

00:01:26   And I talked about that a little bit.

00:01:29   I wrote a blog post, I'll have a link in the show notes.

00:01:30   Just kind of the story of the app.

00:01:32   It's kind of an interesting story

00:01:33   and I'll be unpacking it for most of the episodes.

00:01:35   I won't rehash it there.

00:01:37   But in response to that,

00:01:39   I got, it was a really sweet article that Joe Chiplinski,

00:01:44   who was one of the, I guess, the co-hosts of Release Notes,

00:01:47   or you may know him from his applications,

00:01:49   or, you know, he's just really great guy,

00:01:51   wrote a post talking about outlining my approach

00:01:54   to building things and kind of talking it up,

00:01:56   which was incredibly sweet, incredibly kind.

00:01:58   And I loved hearing it, obviously,

00:02:01   because it was really encouraging.

00:02:05   But it had something that I thought was interesting

00:02:07   and worthwhile unpacking in it.

00:02:10   And so a lot of what he's doing is talking about

00:02:12   the importance of taking a different approach,

00:02:13   of having an open mind and doing things in different ways.

00:02:16   And he kind of tried to unpack my approach.

00:02:18   And in many ways he described exactly what my approach is,

00:02:22   or has been, but the way he does it,

00:02:24   it sounds very intentional, sounds very,

00:02:28   as though I have tremendous foresaw and planning

00:02:33   and strategy going into it.

00:02:35   Which the reality is kind of different.

00:02:39   The reality is many of the things and the choices

00:02:42   that I make are accidental or forced by circumstance,

00:02:46   or just sort of happen and are,

00:02:49   like the thing that ends up being important

00:02:50   isn't the thing that you thought was important

00:02:52   ahead of time.

00:02:54   And this is a pattern that I've seen happen

00:02:55   in my development life many, many, many times

00:02:59   where the things that are really genuinely intentional

00:03:04   don't end up actually being the things that happen

00:03:07   and are the things that I didn't think about ahead of time,

00:03:11   the things that were just kind of thrown together

00:03:13   or happened by accident or forced

00:03:15   can end up being really important.

00:03:17   And the reason I think this is an important topic

00:03:19   to kind of discuss on an episode

00:03:21   is that it is often so easy when you look at someone else

00:03:24   that you look up to.

00:03:26   And we all look up to people.

00:03:27   I mean, that's, I think, an incredibly powerful,

00:03:29   motivating, and important part of getting better

00:03:32   at what you do is looking up to people

00:03:36   who you think do what you want to do better

00:03:38   than you do it now, and look, and trying to emulate

00:03:41   and learn from their successes.

00:03:44   but it's often easy, and this is the real critical point,

00:03:48   it is often easy to ascribe intentionality

00:03:51   to the choices they make,

00:03:53   which in reality may not have been intentional.

00:03:55   And I'll say that again,

00:03:57   it is easy to ascribe intentionality

00:03:59   to choices other people make,

00:04:01   which may not have been intentional.

00:04:02   And the reason that is potentially problematic

00:04:05   is because then when you try to learn from their experience,

00:04:09   you are going to be trying to be,

00:04:12   sort of fighting the last war in some ways, you are going to be expecting that you are

00:04:17   going to have, you're going to be able to make those intentional choices ahead of time,

00:04:21   when in reality you may not.

00:04:23   When in reality things just happen and what you're learning is the big picture, the vague

00:04:28   strategy.

00:04:29   It's like the old statement that you often hear described to, you know, generals planning

00:04:33   for war, that no plan survives contact with the enemy.

00:04:37   And that is something that is being said from someone who's professionally a strategist.

00:04:43   It is the understanding that you can have all the best strategies and high level things

00:04:47   that you could ever possibly want.

00:04:49   The reality is what is important is your ability to adapt to the situation you find yourself

00:04:53   in and how you react in that.

00:04:57   So the way I'm going to illustrate the story is by talking about the tip jar in Pedometer

00:05:03   And it's something that I've gotten a lot of credit for in terms of as it being an interesting

00:05:09   and potentially novel way of getting revenue in the modern app store.

00:05:14   And maybe it is, I'm not sure.

00:05:17   It's something that I have in pedometer++, which is a way that people can throw money

00:05:20   at me using a consumable in-app purchase.

00:05:24   It's easy to look at that at this point and say, wow, Dave did something really cool and

00:05:29   clever and look how it worked out for him.

00:05:31   Like that's great, right?

00:05:32   describing intentionality to it.

00:05:34   Here, and I don't think I've ever told

00:05:36   the full story of this before,

00:05:38   this is how that came to be.

00:05:40   So, when I first, and this is what I talked about

00:05:44   in the article, so if you want a bit more details

00:05:46   about the history of Podometer++,

00:05:48   the article in the show notes is a great place for it.

00:05:50   But Podometer++ started when I was watching the keynote

00:05:53   for the iPhone 5S, and in it,

00:05:55   Phil Schiller mentions that there's a,

00:05:57   you know, it was the M7 motion processor, co-processor,

00:06:00   that was added in the phone,

00:06:01   which was going to allow them to track

00:06:05   your basic activity data and collect things

00:06:08   like step counts on your phone.

00:06:10   And there was gonna be an API associated with that.

00:06:13   And the API did not exist in iOS 7,

00:06:17   when iOS 7 was released at WDDC,

00:06:19   it only appeared in that final GM, I think it was,

00:06:22   that was released right at the keynote.

00:06:24   And so it was just kind of this very short-term window

00:06:29   when I was like, well, I wonder if I could make

00:06:30   interesting application for that. I'm really curious about what that data looks like. And

00:06:34   so I went and kind of fiercely put together an application around it with the APIs as

00:06:40   best I understood them, discovered that there was really no way to test whether my application

00:06:45   was going to work because, you know, in order to, without actually having a 5S in my hand

00:06:50   because it required actually, you know, pulling data from a real chip. So that was interesting.

00:06:58   So I got up very early in the morning and went over to my local Apple store and sat

00:07:04   in line at 3 in the morning.

00:07:07   When the store opened, I get my 5S, I race back to my office and finish the application

00:07:10   and submit it to the App Store.

00:07:12   And the first version of Predometer++ was actually going to include ads.

00:07:17   And the reason it was going to do that is because this feature only exists on one particular

00:07:23   phone.

00:07:24   was gonna be in very short supply comparatively

00:07:27   'cause it was a brand new iPhone 5S,

00:07:30   I didn't feel like I could sell the application.

00:07:33   I would have preferred to probably,

00:07:35   but I couldn't feel like I could sell it

00:07:37   because the number of people who would buy it

00:07:39   expecting it would work on their phone and then not,

00:07:42   I think would just kind of get into a really vicious cycle.

00:07:44   And so I was like, "Oh, I gotta make it free."

00:07:46   And the app was ridiculously simple.

00:07:48   It was literally four labels, I think,

00:07:52   was the main UI of the application.

00:07:54   It just said like, you know, today's steps,

00:07:56   that had a step count,

00:07:57   and then last seven days steps, step count.

00:08:00   That was all the application was.

00:08:01   And so I didn't feel like I could have

00:08:04   some complicated in-app purchase or something in it.

00:08:06   And so I was like, oh, this is perfect.

00:08:08   I'll just throw an iad on the bottom of the application

00:08:11   and submit it to the store.

00:08:12   Like I said, this was all very rushed

00:08:14   because I was trying to be one of the first apps

00:08:16   that pulled data out of the M7.

00:08:19   And then I went, well, you know,

00:08:21   I submitted the app to the store.

00:08:22   About a week later it got approved and came out,

00:08:25   and it was one of the first applications

00:08:26   that took advantage of the M7.

00:08:29   The interesting thing though is I had forgotten

00:08:31   in iTunes Connect to turn on iAd for that application.

00:08:36   I had not enabled it, essentially.

00:08:39   So when the app launched,

00:08:41   initially it had absolutely no ads showing.

00:08:46   It had, you know, just, it was,

00:08:47   the app was just free in the store

00:08:49   with no monetization whatsoever, completely accidentally.

00:08:53   And this put me in kind of an odd situation.

00:08:57   Because, I mean, the app did well,

00:09:00   it had this huge uptake, and so immediately I was like,

00:09:02   okay, I'm gonna make this into a proper application,

00:09:04   not just for UI labels, I'm gonna make an actual application.

00:09:07   And so I spent the rest of the week just pouring over,

00:09:10   getting this thing out and ready,

00:09:12   and a few days later, I think it was,

00:09:13   I had version 1.1, which was essentially a complete rewrite

00:09:17   and closer to what the app has now,

00:09:19   where it has goals, historical data,

00:09:21   and all this kind of stuff.

00:09:23   I put that out in the store,

00:09:25   but I had now, I have this funny question.

00:09:27   Should I re-enable ads or not?

00:09:32   And it was an awkward place for me

00:09:35   because the app had, at this point,

00:09:36   it had a fairly fair number of people using it,

00:09:39   and it felt a little funny at the time

00:09:41   to have ads magically appear

00:09:43   where people were used to not having them.

00:09:46   I had a lot of people talking very positively

00:09:48   about the application, and so I thought,

00:09:49   hmm, maybe I don't wanna turn on ads and annoy people,

00:09:53   so maybe I'll just do something like a tip jar.

00:09:55   And I didn't know if this was even gonna be allowed

00:09:57   in an app review or if something was gonna be possible,

00:09:59   but I was like, well, I'll try.

00:10:00   And so I just created a, wrote a little paragraph,

00:10:04   put three consumable in-app purchases,

00:10:06   like a small, medium, and large, in the app store,

00:10:09   and submitted it, and it kinda worked.

00:10:12   The tip jar itself, it's a squishy thing

00:10:16   for whether it's actually a good idea or not.

00:10:18   And I'm not completely convinced on it

00:10:20   because it has good dynamics and it has poor dynamics to it.

00:10:24   But the story of how it got there was entirely accidental.

00:10:28   The reason there's a tip jar in Pedometer++ today

00:10:31   is because I forgot to check a button in iTunes Connect

00:10:33   18 months ago.

00:10:35   And the reason I wanted to tell that story

00:10:37   is because it is, for me, when I hear those types of things,

00:10:42   When I hear how something that I look see in someone else

00:10:46   that is a success or something that is, you know,

00:10:48   they're known for or is a positive thing in them,

00:10:51   and they ascribe it, and they describe the actual process,

00:10:55   the actual day-to-day thinking and difficulties

00:10:59   and challenges that went into its creation,

00:11:01   I often see that the reality is people are just people,

00:11:05   right, there's nothing special

00:11:07   about me and my business process.

00:11:09   There's nothing special about the ways people are,

00:11:14   some people are able to do things and other people aren't.

00:11:16   We all have different advantages,

00:11:18   we all have different disadvantages,

00:11:20   but the reality is we can all sort of make choices

00:11:24   to do the things that we wanna do.

00:11:26   It isn't just because some people have

00:11:28   this amazing strategy and intentionality

00:11:30   that they can apply to their business

00:11:32   and everything works out.

00:11:33   More often than not, they are just adapting.

00:11:35   They are just trying to look at the situation

00:11:38   find themselves in, the mistakes they make and say, "How can I take this mistake and

00:11:42   I turn it into something interesting?

00:11:43   How can I turn it into something that is potentially positive and good?"

00:11:47   And that's what happened with the tip jar.

00:11:49   And the tip jar, you know, has gone on, been very successful.

00:11:52   Interesting, of course, that pedometer++ does actually have ads now.

00:11:56   I did enable them, you know, in, when I did last fall sometime.

00:12:00   I turned them back on as part of a thing where essentially the tip jar wasn't generating

00:12:05   a lot, as much revenue as I thought the app could do.

00:12:09   And so when I turned on ads and made it so that when you

00:12:12   do a tip, the ads go away,

00:12:14   revenue went up quite substantially.

00:12:16   And so I'm very glad I made that decision

00:12:18   and it worked better in that context

00:12:20   than it would have I think, or in the early days

00:12:22   when it would have felt a bit different for the,

00:12:25   that first big group of people who had used the application.

00:12:29   But it works.

00:12:30   And that's just, again, just another sort of

00:12:33   tactical adjustment as you go.

00:12:35   'Cause the reality is that's all running a business,

00:12:39   building an application, whatever it is.

00:12:40   Most of what you're doing is just a long series

00:12:43   of tactical adjustments.

00:12:44   And you just need to be keeping your eye out

00:12:46   for opportunities, keeping your eye out for ways

00:12:49   that you can do the thing that you wanna do.

00:12:51   And don't be careful, don't fall into the trap

00:12:54   of ascribing intentionality to what other people are doing

00:12:57   and making it somehow then feel fancy and impossible

00:13:00   and something that is out of reach for you.

00:13:03   because they're just muddling along just like you.

00:13:07   All right, that's it for today's show.

00:13:08   As always, questions, comments, concerns, or complaints,

00:13:11   you can find me on Twitter, I'm @_davidsmith there.

00:13:13   You can email me, david@developingperspective.com.

00:13:16   Otherwise, I hope you have a great weekend and great week.

00:13:18   Happy coding, and I will talk to you next week.