Developing Perspective

#146: Get up, Get Moving.


00:00:00   Hello, and welcome to Developing Perspective.

00:00:02   Developing Perspective is a podcast discussing news of note in iOS development, Apple, and

00:00:06   the like.

00:00:07   I'm your host, David Smith.

00:00:08   I'm an independent iOS and Mac developer based in Herne, Virginia.

00:00:12   This is show number 146, and today is Friday, October 4th.

00:00:16   Developing Perspective is never longer than 15 minutes, so let's get started.

00:00:19   All right, first a couple of more, I guess, news and sundries at the beginning.

00:00:25   First, it's been lovely to see all the people who bought Developing Perspective t-shirts

00:00:29   and everybody's sending me pictures and telling me about wearing them or trying to explain

00:00:32   them to coworkers and friends.

00:00:34   So it's been lovely to hear.

00:00:36   Thank you for sending those notes.

00:00:37   I really appreciate it.

00:00:38   If you ordered one, you should probably have it unless you're outside of the US at this

00:00:41   point.

00:00:42   So if you haven't, there's probably something to follow up with with the Teespring.

00:00:45   And just something else, I wanted to first thank you everybody for the amazing response

00:00:49   to the previous episode.

00:00:51   And when we sat down, when I sat down with my wife to do an episode, it's kind of outside

00:00:56   of the norm, outside of something that I'm sort of used to doing, something that I've

00:00:58   I've done before.

00:00:59   And so there was certainly a little bit of apprehension about putting that out there.

00:01:02   And I was just blown away and really humbled and grateful for the response to that and

00:01:07   the kind words and the support that I got out of that.

00:01:11   And I think generally the discussion that sort of spurned has also been really interesting

00:01:16   and productive, I think.

00:01:17   I'm not going to get too much into it here.

00:01:20   I talked more about it on the prompt this week, which I'll have a link in the show notes

00:01:23   too if you want to hear some more of my thoughts about the current state of App Store pricing.

00:01:27   But it's something that kind of thing that we can always talk about because there's two

00:01:31   parts or two or three parts to what we do and one of them is always going to be the

00:01:35   business side of it.

00:01:36   The thing that enables us to have the time available to make interesting and amazing

00:01:41   products hopefully.

00:01:42   So that's just an interesting discussion and I just wanted to thank you all for that.

00:01:46   All right.

00:01:47   So now I'm going to get into the actual topic for today's show.

00:01:51   And actually there will really be two topics.

00:01:55   main topic and another mini topic.

00:01:58   The first I'm going to talk about is the,

00:02:01   so this is related to something I did this last week,

00:02:04   where I launched a very simple app called Pedometer++.

00:02:07   And Pedometer++ is basically just

00:02:10   an application that takes advantage of a new API

00:02:13   that Apple opened up in iOS 7, and more specifically

00:02:16   on the iPhone 5S with iOS 7.

00:02:19   And so that lets you basically query the data

00:02:22   query the data coming out of the M7 chip,

00:02:25   which is a new motion tracking thing,

00:02:27   very low power, battery, et cetera,

00:02:28   that runs on your iPhone now.

00:02:30   And it basically lets you-- the API

00:02:34   is structured such that it's very easy to use it

00:02:36   as a pedometer, because it tells you

00:02:38   how many steps a user takes between any given interval

00:02:41   time.

00:02:42   And so when I saw that, and I think--

00:02:44   I'm not entirely sure on this, but I

00:02:46   think it was actually introduced in the GM, which

00:02:50   and that happens very often, that I don't think necessarily

00:02:53   all these APIs were there.

00:02:54   And at least in the final state they were,

00:02:56   before they announced the iPhone 5S

00:02:58   and then launched iOS 7 with it.

00:03:01   And so they created a kind of interesting situation.

00:03:03   These have happened a couple of times

00:03:05   where the App Store as it is, in some ways you could call it

00:03:10   full.

00:03:12   It's not necessarily full in the sense

00:03:14   that there's a limited space.

00:03:17   But there's very few new concepts.

00:03:18   There's very few things, times you'll

00:03:20   created now that is new and interesting in a way that is new in concept.

00:03:25   It can be new in implementation, new in aesthetic, new in a lot of different ways, but it's

00:03:29   very rarely new in concept.

00:03:31   That's just the nature of there being a million apps in the store and there only being so

00:03:34   many things that you can reasonably do with a phone that's four inches that you can hold

00:03:40   in your hand.

00:03:41   But every now and then there'll be these things that come out, that show, allow something

00:03:47   totally new that you really couldn't do before.

00:03:49   There were pedometers before, but most of them worked either in a way that would crush

00:03:53   your battery by following the accelerometer all the time, or would do kind of inference-related

00:03:59   things where they'd use significant location changes to roughly identify how much you were

00:04:06   moving around.

00:04:07   This was a new thing.

00:04:09   And whenever I see one of these, and this is just something I want to sort of put out

00:04:12   there and just as a developer, you kind of want to always be thinking about is, I think

00:04:16   I think these are always the interesting things, always

00:04:18   the interesting market opportunities, by far more

00:04:21   than necessarily re-implementing an application that's

00:04:23   been done many times, building another weather app,

00:04:25   building an RSS reader, building a calculator, whatever it is.

00:04:29   There's something that is-- honestly,

00:04:31   I want to say at this point it's building another podcast

00:04:33   client, it seems.

00:04:35   The reality is when you have these new opportunities

00:04:37   to build something completely new, completely from scratch,

00:04:40   I usually think it's a pretty good idea

00:04:42   to try and explore it at least, to understand

00:04:45   exactly what's going on there.

00:04:46   And the reason I do that is because suddenly you're

00:04:49   competing in a very much more narrow market.

00:04:51   And these types of opportunities often lend themselves

00:04:54   to experimentation.

00:04:55   And that's really what the goddess

00:04:56   of what I want to talk about now is experimentation

00:04:59   is the really important, I think,

00:05:01   part of being a successful developer,

00:05:02   that you want to be able to try new technologies,

00:05:04   both from a learning and experience perspective,

00:05:07   as well as giving yourself a bit of permission to try new things.

00:05:10   And so with pedometer, this app I put out,

00:05:13   very simple, surprisingly well received. I was very sort of, had no high expectations

00:05:20   for it necessarily, and I put it out there and it seemed very well received. And it's

00:05:24   kind of a funny story with it though, because I put it out and I had originally planned

00:05:28   to have it have iAds in it so that you'd, you know, it's a free app and I wanted,

00:05:32   it needed to make it free mostly because it only works on an iPhone 5S. And if you use

00:05:37   it on any other phone, you'll have no data and it'll be kind of useless. And so what

00:05:41   what I wanted to avoid is the situation where someone buys it and turns out doesn't work

00:05:44   on their phone and they're grumpy. So I was like, it has to be free. So okay, so what

00:05:48   do I do? So I'll put an ad in it. Okay, that's fine. I've done ads before, they pay pretty

00:05:51   well. Life is good. I submitted it to the App Store, it gets approved. I launch it,

00:05:56   everything's great. I realized though that ads aren't showing in the production version.

00:06:01   They were showing in my sandboxed like ad hoc bills, but they weren't showing in the

00:06:05   production version. And so it's surprising like, is I had Phil really low? What's going

00:06:09   on there. Turns out, I had actually not enabled iAd in the application in iTunes Connect,

00:06:16   which is just something that just, you know, I forgot in my checklist as I was going through

00:06:20   the submission process and, you know, something that I've done hundreds of times, I just had

00:06:24   forgotten that you had to enable it specifically for a version rather than otherwise. And turns

00:06:30   out you can't change that setting unless you submit a new binary and that binary gets updated.

00:06:35   So this first version, which has been pretty widely received, it's kind of had a fair bit

00:06:40   of traffic and interest, suddenly has no monetization in it whatsoever.

00:06:45   And it's a bit unfortunate, a bit funny.

00:06:48   You know, it's one of these things like, "Whoops, what am I going to do?"

00:06:51   Do I just kind of like rush out an update to turn on ads?

00:06:55   But that seems a little lame.

00:06:58   And also I've created this expectation in some ways that people who are using the app

00:07:01   aren't, you know, if I do an update to introduce ads now, it'll kind of feel a little negative.

00:07:07   Because ads aren't a great thing. I generally, I make a lot of money from them for some of

00:07:11   my apps, but I don't really like ads as a mechanism. And so then this is where I started

00:07:17   to think and thought it'd be kind of an interesting experiment. And I love experimenting. This

00:07:21   is, I think, if anything, I think both sort of patience and persistence as a concept and

00:07:27   a willingness to experiment are probably the two biggest things you need to have to be

00:07:31   a successful independent, and to have

00:07:32   that tolerance for failure.

00:07:35   But so I ended up doing-- and this

00:07:37   is an update that's currently in review in the store right now.

00:07:40   I kind of had a broader vision for the application.

00:07:43   And I submitted it intentionally minimalistic,

00:07:45   because I had no idea if Apple would even approve it.

00:07:48   Whenever Apple does this, the risk is there's this new API.

00:07:50   There's this new thing going on.

00:07:52   But it's hard to know what they're actually

00:07:53   intending that to do.

00:07:55   And so I submitted it and actually had a lot of back

00:07:57   and forth with Apple in App Review

00:07:59   before this actually got approved.

00:08:01   And so I kind of feel a bit justified in making sure

00:08:04   that version one was very simple, very stripped down

00:08:08   and streamlined in that way.

00:08:12   But so version 1.1 that's currently in review,

00:08:16   or maybe even available once you listen to this,

00:08:19   is something that's kind of interesting,

00:08:21   because I expanded the functionality a lot,

00:08:22   made it a bit more richly featured.

00:08:24   And then I had to decide what I wanted

00:08:26   to do about monetization.

00:08:28   And I'm trying something new here.

00:08:29   And I look forward to, over the next couple of weeks,

00:08:31   being able to report back on exactly how it works.

00:08:34   But what I've done-- and we'll even see if it gets approved.

00:08:36   It may not.

00:08:37   But I figured I'd talk about it here

00:08:39   to kind of have the beginning, middle, and end of the story

00:08:42   out there.

00:08:44   I have in the new version a section

00:08:46   of the app in the Settings area.

00:08:48   But I have a tip jar.

00:08:50   And essentially, the application has a little message saying,

00:08:55   hey, essentially, the support and development of Podometer

00:08:58   or plus plus is made possible by your support.

00:09:03   If you find it useful, if you find it motivating,

00:09:06   if you find it healthy, or if you find it helps your health,

00:09:08   please consider supporting the app by giving a tip below.

00:09:11   And I have a couple of tiers and a couple of different options

00:09:15   for an app purchase where you can just give a tip.

00:09:18   And I intentionally chose this model

00:09:21   to see how that would play out,

00:09:24   to see how customers broadly would react

00:09:24   kind of a more direct appeal to them, rather than charging for features, rather than charging

00:09:29   for functionality in the way that you typically do with a free in-app purchase.

00:09:34   I was like, what if I just ask for people to support me directly and just trust that if it's useful,

00:09:39   that enough people will put a few coins in the tip jar,

00:09:44   that it will be worthwhile and interesting. And if it doesn't, well, I can always go back on that and try other options.

00:09:49   options.

00:09:50   Or it could be successful.

00:09:51   And I think that could be a very interesting and a very

00:09:54   compelling option for developers who

00:09:55   want to make an application that's free and fully featured

00:10:00   and accessible to as broad an audience as possible,

00:10:02   but then still also be able to make money from it.

00:10:04   So we'll see.

00:10:05   It's in a slightly gray area in terms of in-app purchase

00:10:08   and the review guidelines.

00:10:10   But I think it's OK to charge this kind of thing,

00:10:12   because it's not a donation to a nonprofit or some

00:10:14   of the other places where they get into app review rules.

00:10:19   But it will be interesting to see.

00:10:21   And it will be interesting to report back there.

00:10:23   But anyway, I just wanted to talk

00:10:25   through that story of pedometer, because it's

00:10:27   an interesting experiment that I've been doing.

00:10:30   And I just encourage a lot of people to just try things.

00:10:33   So I always think it's funny when-- since a lot of people

00:10:36   think it's funny, I have the number of apps that I have.

00:10:38   And that's a kind of a running joke that I have too many.

00:10:41   But I think the reality is having so many applications,

00:10:46   having tried so many things, has allowed me to make enough mistakes

00:10:50   that I can hopefully make a lot of better choices.

00:10:53   And then another thing, the last thing related to that

00:10:56   that I wanted to loop back on, this is a topic I've mentioned

00:10:58   a couple of times in the development perspective,

00:11:00   is about developer health and about developer well-being.

00:11:03   And it's something that is kind of funny developing a pedometer app,

00:11:07   which is an application about health and fitness and activity.

00:11:09   when in a typical day when I'm developing on it,

00:11:11   and I'm working on it, and I'm testing it,

00:11:13   and it's running on my phone, my actual phone.

00:11:16   And I look at it, and I'm barely cracking 2,000 steps in a day.

00:11:21   And then I start looking at research,

00:11:22   and trying to understand pedometers,

00:11:24   and understanding what a good activity is, and so on.

00:11:26   And I see just how bad that is, just how kind of awful

00:11:30   it is that I really am not out and about.

00:11:32   I'm really not up and active.

00:11:34   And it's been kind of sobering in some ways to look at that.

00:11:38   And it's kind of a nice thing where I finally have an app that actually is motivating for

00:11:42   myself in that way, where I look at it and actually I did a thing where it badges the

00:11:48   app icon with your step total, which is funny because after a certain size it'll actually

00:11:53   truncate and have little ellipses in the middle.

00:11:55   But the reality is once you're above that number of count, you're probably good to go.

00:11:59   But what I find is when I put it on my phone and I badge it there, there's this guilt that

00:12:04   that I have during the day that is actually slowly, I think,

00:12:08   pushing me into slightly better habits.

00:12:09   I think that's just an encouraging thing

00:12:11   that I wanted to mention is if you're a developer

00:12:13   and you spend your entire life sitting down,

00:12:15   looking in front of a computer, that is probably not

00:12:17   a healthy thing.

00:12:18   I've talked on episodes previously about ergonomics

00:12:20   and those types of health things.

00:12:22   But just one thing I wanted to mention here

00:12:25   that was made so apparent to me when

00:12:27   I'm starting to work on a pedometer is just

00:12:29   how inactive, how sedentary my lifestyle typically

00:12:33   is if I don't proactively make choices to the contrary.

00:12:37   All right, so that's it for today's show.

00:12:38   As always, if you have questions, comments, concerns, or complaints, go on Twitter @_DavidSmith,

00:12:43   email me, david@divangprospective.com.

00:12:46   Next week, and actually the next two weeks, my schedule might be a little bit off and

00:12:49   a little bit atypical just because I'm going to be traveling.

00:12:53   First is the Singleton symposium in Montreal, so if you're there, definitely reach out to

00:12:58   me, let me know.

00:12:59   I'd love to meet you.

00:13:00   hear from somebody who's been listening to the show and I'll be traveling a bit

00:13:03   more with other stuff later on in October. So my schedule will be a little

00:13:07   bit off. I'll still try and get one episode a week exactly what that looks

00:13:10   like. I don't know and maybe I'll skip a week we'll see but hopefully I'll try

00:13:14   keep with it. Alright I hope you have a great weekend. Talk to you later. Bye.