Under the Radar 50: Checking the Weather for the Last Time
00:00:00
◼
►
welcome to under the radar a show but
00:00:02
◼
►
independent iOS app development I'm
00:00:04
◼
►
Marco Arment and I'm David Smith under
00:00:06
◼
►
the radar is never longer than 30
00:00:08
◼
►
minutes so let's get started so this
00:00:11
◼
►
week I had a sad thing happened to me
00:00:14
◼
►
that I wanted to unpack on the show so I
00:00:16
◼
►
had to retire one of my apps and one of
00:00:20
◼
►
the apps that obviously I have a lot of
00:00:21
◼
►
apps and I've quietly retired many of
00:00:24
◼
►
them in the past the ones that never had
00:00:26
◼
►
any downloads the ones that just didn't
00:00:28
◼
►
work out and you kind of just removed
00:00:30
◼
►
them from the store and that's that but
00:00:32
◼
►
I had one of them had removing out from
00:00:34
◼
►
the store that wasn't one of those apps
00:00:36
◼
►
that the had some success that was
00:00:38
◼
►
something I was proud of being out there
00:00:40
◼
►
I think this is actually the first app
00:00:42
◼
►
of yours that I've ever both heard of
00:00:44
◼
►
and downloaded that you're also now
00:00:46
◼
►
killing the hakko it comes full circle
00:00:49
◼
►
and the app was it's called check the
00:00:51
◼
►
weather and it is a weather app that at
00:00:56
◼
►
the time I launched it and I know
00:00:58
◼
►
exactly when I was it was for week four
00:01:00
◼
►
years ago as of last Monday the reason I
00:01:03
◼
►
and I and sort of publicly announced its
00:01:05
◼
►
end of life last Monday for that reason
00:01:07
◼
►
when I was planning this and scheduling
00:01:09
◼
►
it out and I looked at the schedule and
00:01:10
◼
►
I was like wait I think I launched it a
00:01:12
◼
►
wrestler or somewhere in middle of
00:01:14
◼
►
October and it turned out it was for you
00:01:17
◼
►
exactly four years ago so the app had a
00:01:19
◼
►
four year life oh and it's just a you
00:01:21
◼
►
know it's a weather app it's a strange
00:01:24
◼
►
thing in some ways to try and describe
00:01:26
◼
►
what it is or what it does what made it
00:01:27
◼
►
special because the weather I have is
00:01:29
◼
►
like they're all strange in the sense
00:01:31
◼
►
that they all have the same basic data
00:01:34
◼
►
and then the differences between all the
00:01:36
◼
►
apps are just you know questions of
00:01:38
◼
►
style of nuance but check the weather
00:01:43
◼
►
always has kind of a special place for
00:01:44
◼
►
me because it was the first app that I
00:01:47
◼
►
ever felt that I kind of did it right no
00:01:50
◼
►
you know it's it I started from the
00:01:52
◼
►
beginning and said you know what what
00:01:54
◼
►
happens if I take a run at a very
00:01:56
◼
►
well-established category doing
00:01:59
◼
►
everything right you know so doing
00:02:00
◼
►
having a proper actual marketing plan
00:02:02
◼
►
that was an actual thing that I did
00:02:04
◼
►
before either than just kind of throwing
00:02:05
◼
►
it over the wall or sending some blind
00:02:08
◼
►
and it was localized from day one it had
00:02:12
◼
►
great voiceover supported all the things
00:02:14
◼
►
that I kind of was about in my mind were
00:02:16
◼
►
always the things that you had to do to
00:02:19
◼
►
launch an app that was you know if
00:02:21
◼
►
you're gonna do it right if you're going
00:02:22
◼
►
to give it an honest chance and if
00:02:25
◼
►
you're curious if your listener to this
00:02:26
◼
►
show but you weren't a listener to the
00:02:28
◼
►
podcast I used to do called developing
00:02:30
◼
►
perspective I'll have links in the show
00:02:32
◼
►
notes to I did a whole series of
00:02:34
◼
►
episodes on developing perspective which
00:02:37
◼
►
rather than being 30 minutes long is
00:02:38
◼
►
only 15 minutes long so even though this
00:02:40
◼
►
is a lot of episodes it wouldn't take
00:02:42
◼
►
that long to catch up we're actually
00:02:43
◼
►
walked through at the in real time as I
00:02:45
◼
►
was building back in 2002
00:02:48
◼
►
back in 2012 I walked through the
00:02:51
◼
►
process of what went into this but
00:02:52
◼
►
anyway the long and the short of it is I
00:02:54
◼
►
had this app I launched it it did great
00:02:57
◼
►
it had a very big spiky launch I think
00:02:59
◼
►
it peaked at number three overall in the
00:03:02
◼
►
App Store which at the time for me was
00:03:05
◼
►
just you know mind-bending I actually
00:03:06
◼
►
have very warm and specific memories of
00:03:09
◼
►
that day when it launched just
00:03:11
◼
►
celebrating having my wife found someone
00:03:14
◼
►
to watch the kids and came into the
00:03:15
◼
►
office with I think even Chuck's like
00:03:19
◼
►
Chinese for dinner and a bottle of
00:03:20
◼
►
champagne and we you know actually
00:03:22
◼
►
celebrated exceda it all kind of worked
00:03:24
◼
►
and it kind of all worked out but that
00:03:27
◼
►
was four years ago
00:03:28
◼
►
that's a long time ago in App Store
00:03:31
◼
►
terms and so this week I now it will no
00:03:35
◼
►
longer be supported and for something
00:03:37
◼
►
like a weather app that means I'm
00:03:39
◼
►
turning off the API at the backend and
00:03:43
◼
►
that's kind of a sad thing but it was
00:03:46
◼
►
kind of inevitable because the tricky
00:03:48
◼
►
thing with someone Apple I checked the
00:03:49
◼
►
weather is that at least the way that I
00:03:51
◼
►
launched it is at the time we didn't
00:03:53
◼
►
really have a lot of this kind of
00:03:53
◼
►
subscription options you have we have
00:03:55
◼
►
now and so I was really more sort of
00:03:57
◼
►
like freer page where my options four
00:03:59
◼
►
years ago I could have sort of done
00:04:01
◼
►
subscriptions with some kind of you buy
00:04:03
◼
►
an in-app purchase and then you buy
00:04:05
◼
►
another one and then you buy another one
00:04:06
◼
►
but there was certainly wouldn't have
00:04:07
◼
►
been able to be Auto renewing so I made
00:04:09
◼
►
it a free app and or so I made it a paid
00:04:11
◼
►
app and I put that out in the air so I
00:04:14
◼
►
had a whole lot of people who gave me
00:04:16
◼
►
four years ago I think about a third of
00:04:18
◼
►
the users bought it the first day you
00:04:21
◼
►
know had a nice big
00:04:22
◼
►
like he launched but most of you they've
00:04:24
◼
►
never subsequently got it given me any
00:04:27
◼
►
revenue and ongoing costs are really
00:04:31
◼
►
rough especially when they aren't just
00:04:34
◼
►
you know two or three Linode boxes
00:04:36
◼
►
things like weather data and even fonts
00:04:39
◼
►
actually like I had some custom fonts in
00:04:41
◼
►
this application that had annual
00:04:43
◼
►
subscriptions that I have to pay that's
00:04:45
◼
►
the worst tell you one thing I mean like
00:04:48
◼
►
you know server costs like you kind of
00:04:50
◼
►
can't get around that but as somebody
00:04:52
◼
►
who has licensed a lot of fonts for apps
00:04:55
◼
►
over the years anything you can do to
00:04:57
◼
►
avoid ongoing recurring costs in your
00:05:00
◼
►
app you should do that and if you have a
00:05:02
◼
►
fancy font you know try it try to get
00:05:04
◼
►
one that you can license that for a flat
00:05:06
◼
►
fee especially you know these days you
00:05:09
◼
►
can often get decent fonts for either
00:05:11
◼
►
free or for maybe a few hundred dollars
00:05:13
◼
►
up front flat forever and that's if you
00:05:16
◼
►
can do that that's great
00:05:17
◼
►
sure because it's any of these things
00:05:20
◼
►
like it was always a strange thing
00:05:22
◼
►
because it forced me to every year I had
00:05:24
◼
►
to sit down and decide do I still want
00:05:26
◼
►
to pay for this font to this point the
00:05:28
◼
►
opposite kind of a I followed the usual
00:05:30
◼
►
trajectory like it had that big spike at
00:05:32
◼
►
the beginning and then all you know kind
00:05:33
◼
►
of felt almost nothing and it became
00:05:36
◼
►
kind of like a charity project because
00:05:38
◼
►
you know like I still used the app and I
00:05:40
◼
►
mean through this week I was still using
00:05:42
◼
►
the app but at some point I had to
00:05:44
◼
►
decide you know did every year when I
00:05:46
◼
►
get my email from font foundry and says
00:05:48
◼
►
hey you know would like to charge you
00:05:50
◼
►
another three or four hundred dollars
00:05:51
◼
►
it's like great and every month when I
00:05:54
◼
►
get my bills from the radar provider and
00:05:57
◼
►
the weather data provider it's like mm
00:05:59
◼
►
hmm you know this is fine I mean the
00:06:02
◼
►
costs involved weren't killer at least
00:06:04
◼
►
up until recently and that's part of why
00:06:06
◼
►
I have to shut it down now because the
00:06:09
◼
►
there's a change at pricing changed with
00:06:11
◼
►
my radar provider that means that it
00:06:12
◼
►
would just have gone from like oh it's
00:06:14
◼
►
kind of fun it's a little charity
00:06:15
◼
►
project to something that would have
00:06:18
◼
►
just been kind of absurd to keep going
00:06:20
◼
►
well I think I think ultimately the you
00:06:23
◼
►
need to think about like you know what
00:06:25
◼
►
and I think we'll get to this later like
00:06:26
◼
►
what do you owe your users because in my
00:06:28
◼
►
opinion the second you are losing money
00:06:31
◼
►
like there is no acceptable amount of
00:06:33
◼
►
money to be losing on and on
00:06:35
◼
►
gong basis four and a half like to me
00:06:38
◼
►
once you're losing money that's it it's
00:06:40
◼
►
it's gone sure and I definitely don't
00:06:42
◼
►
see you can see where you're coming from
00:06:43
◼
►
like it is such a hard thing though from
00:06:46
◼
►
the emotional perspective like what
00:06:48
◼
►
you're saying makes total sense that you
00:06:49
◼
►
know like if I'm running a business and
00:06:50
◼
►
I have a division of my business that is
00:06:54
◼
►
continue is making a loss with no
00:06:56
◼
►
prospect of turning that around the
00:06:59
◼
►
logical like good business move is to
00:07:02
◼
►
just shut it down and move on but it's
00:07:06
◼
►
hard when you kind of have something
00:07:07
◼
►
that you feel more emotionally invested
00:07:09
◼
►
in where it feels like oh no you know
00:07:12
◼
►
this is like with my losses for this app
00:07:14
◼
►
was my first big break like I want to
00:07:15
◼
►
you know I feel sad for it to go and so
00:07:19
◼
►
I think I definitely in this case I
00:07:21
◼
►
probably did let it go longer than in
00:07:23
◼
►
retrospect I should have and not
00:07:25
◼
►
necessarily even just for the money
00:07:26
◼
►
reasons so I think what you're saying
00:07:27
◼
►
makes sense but even just in retrospect
00:07:29
◼
►
as I think of the like the the burden it
00:07:33
◼
►
places on you cognitively when you have
00:07:35
◼
►
something that you're sort of you have
00:07:37
◼
►
this affinity for and you're kind of
00:07:39
◼
►
proud of but it isn't really going well
00:07:42
◼
►
and you know every time an iOS update
00:07:44
◼
►
comes out it's like mm should I do this
00:07:46
◼
►
to check the weather
00:07:47
◼
►
you know like Apple like the Apple watch
00:07:49
◼
►
came out and I was like oh there's some
00:07:50
◼
►
really cool things you could do for you
00:07:51
◼
►
know weather app on the Apple watch
00:07:53
◼
►
I was like man the app just doesn't make
00:07:55
◼
►
money like it just really isn't getting
00:07:57
◼
►
traction and I don't know if just
00:08:00
◼
►
putting more effort into it
00:08:01
◼
►
is we really going to get the outcome
00:08:02
◼
►
but then everyone every every time
00:08:04
◼
►
there's a big thing and have that that
00:08:06
◼
►
sense of doubt I feel like that's the
00:08:07
◼
►
kind of thing that honestly more than
00:08:09
◼
►
the money is a bit better an incentive
00:08:11
◼
►
to make sure that you know if when
00:08:13
◼
►
something is clearly not going anywhere
00:08:15
◼
►
that you just kind of say yep it's done
00:08:17
◼
►
and move on anyway so that is why I have
00:08:21
◼
►
gotten to the point that I had to pull
00:08:22
◼
►
check the weather from the store and
00:08:25
◼
►
it's probably worth mentioning a little
00:08:28
◼
►
bit about kind of what that process
00:08:30
◼
►
mechanically before we get into some of
00:08:33
◼
►
the kind of the implications and things
00:08:35
◼
►
that come out of that so when you decide
00:08:38
◼
►
that you want to pull an app from the
00:08:39
◼
►
App Store it's surprisingly easy to do
00:08:41
◼
►
you just go into iTunes Connect you
00:08:44
◼
►
click on the app there's no think it's
00:08:45
◼
►
availability and pricing is the area in
00:08:47
◼
►
the App Store that you can go into
00:08:49
◼
►
all right in iTunes Connect that you go
00:08:50
◼
►
to and say you know remove says you
00:08:51
◼
►
removed from sale you used to have to go
00:08:53
◼
►
in there and specifically select every
00:08:57
◼
►
country that you didn't want it in until
00:08:58
◼
►
use pet so let me select at the mall now
00:09:00
◼
►
you can just push a button I think that
00:09:02
◼
►
says remove some move from sale and that
00:09:05
◼
►
worked pretty well it was gone from the
00:09:07
◼
►
App Store and then you have the a more
00:09:10
◼
►
interesting question perhaps of how you
00:09:12
◼
►
communicate to your users so as most
00:09:15
◼
►
people who download your app don't know
00:09:17
◼
►
who you are they don't follow you on
00:09:19
◼
►
twitter they don't read your blog and I
00:09:22
◼
►
kind of struggled with this in this case
00:09:24
◼
►
like I've certainly done the I have a
00:09:25
◼
►
blog post mentioned on Twitter to kind
00:09:27
◼
►
of put it out as best I could for most
00:09:30
◼
►
of your users either you need to do a an
00:09:34
◼
►
app update and just mention this in the
00:09:36
◼
►
release notes that the app is going away
00:09:39
◼
►
or you would probably need to have some
00:09:42
◼
►
mechanism built into the application to
00:09:45
◼
►
reach out to them some kind of messaging
00:09:46
◼
►
scheme at this point the app has so few
00:09:49
◼
►
users that I didn't decide that
00:09:50
◼
►
something like that was worth doing of
00:09:53
◼
►
like building a special build of the app
00:09:54
◼
►
and putting it out there that popped up
00:09:56
◼
►
a window that said hey your app your
00:09:58
◼
►
data is gonna go away that's something
00:10:00
◼
►
that you'd kind of would have to do if
00:10:01
◼
►
you were you know if we're ever ayat e
00:10:04
◼
►
of reasons there a variety of reasons
00:10:05
◼
►
that you would have to turn something
00:10:06
◼
►
off and in this case it's turning it off
00:10:09
◼
►
because the user ship is fallen off
00:10:11
◼
►
dramatically but I've certainly have
00:10:13
◼
►
known have friends who ended having to
00:10:15
◼
►
end a product in some ways because it
00:10:18
◼
►
was too successful that it kind of had
00:10:20
◼
►
gotten ahead of itself in terms of
00:10:22
◼
►
but didn't have a revenue model to back
00:10:24
◼
►
it up and so a certain point they're
00:10:25
◼
►
just like well I just have to turn it
00:10:27
◼
►
off because the money is just kind of
00:10:29
◼
►
running away from me so in that case you
00:10:30
◼
►
probably have to build something into
00:10:31
◼
►
the app to turn it off and then you need
00:10:35
◼
►
some kind of mechanism to actually like
00:10:37
◼
►
physically turn it off in this case
00:10:39
◼
►
because I'm not hosting much myself
00:10:42
◼
►
there's not like I have servers an
00:10:43
◼
►
infrastructure that I have to physically
00:10:45
◼
►
unwind I'm mostly I'm just stopping
00:10:48
◼
►
paying for things and then the ultimate
00:10:51
◼
►
providers will turn it off but it is
00:10:53
◼
►
definitely something that I would say
00:10:55
◼
►
that I never really thought of when I'm
00:10:57
◼
►
you never cease e to not think about
00:10:58
◼
►
when you're making something but that
00:11:01
◼
►
what I would I would
00:11:02
◼
►
she'd do if I needed to turn this off
00:11:04
◼
►
you know like at some point if some of
00:11:06
◼
►
my other projects that have Web Services
00:11:07
◼
►
that I run were to go away it's kind of
00:11:10
◼
►
a tricky question to be like well what
00:11:12
◼
►
do I do with the data for example like
00:11:14
◼
►
how do I safely and securely turn
00:11:16
◼
►
everything off it's the kind of thing
00:11:19
◼
►
where it can so easily get away from you
00:11:20
◼
►
when you're developing like you can just
00:11:22
◼
►
add things like oh this will be fine
00:11:23
◼
►
this will be fine I just not even think
00:11:24
◼
►
about like all the different services
00:11:25
◼
►
you're starting up you know API
00:11:27
◼
►
memberships you're sorting all the
00:11:28
◼
►
different providers and everything and
00:11:30
◼
►
it can get away from you pretty fast oh
00:11:31
◼
►
sure I mean it's probably also worth
00:11:33
◼
►
saying that a lot of these same
00:11:34
◼
►
considerations come into play if you
00:11:36
◼
►
ever transfer an app oh yeah so if you
00:11:38
◼
►
ever sell an app it's something that's
00:11:40
◼
►
probably worth it's just sort of as a as
00:11:42
◼
►
a pro tip is keeping track in a document
00:11:44
◼
►
or somewhere it just at a high level all
00:11:47
◼
►
of the various things that you've ever
00:11:50
◼
►
paid for or bought associated with the
00:11:53
◼
►
development of an app in terms of yeah
00:11:55
◼
►
like keeping track of like there's a
00:11:57
◼
►
domain associated with this app you know
00:11:59
◼
►
if you go to check the weather dock oh I
00:12:01
◼
►
think it was like there's a domain and I
00:12:03
◼
►
would need to remember to go and turn
00:12:05
◼
►
off auto renew on that domain there's
00:12:08
◼
►
all you know that were I think there's
00:12:10
◼
►
three or four different weather data
00:12:12
◼
►
providers that I have a created accounts
00:12:15
◼
►
with at some point for this app and
00:12:16
◼
►
while as you know if in some ways the
00:12:19
◼
►
last some of them would just kind of
00:12:21
◼
►
turn off on their own if they're
00:12:22
◼
►
usership went to zero the reality is I
00:12:25
◼
►
also should probably go and actually you
00:12:28
◼
►
know terminate my account there so I'm
00:12:30
◼
►
not don't have all of these open these
00:12:32
◼
►
little open things in the future that
00:12:33
◼
►
could come back and bite me in some
00:12:36
◼
►
weird way and on the flip side on the
00:12:38
◼
►
positives say hey the Apple had been
00:12:39
◼
►
acquired and been shipped over to
00:12:40
◼
►
somebody you're gonna have to be able to
00:12:42
◼
►
give the new owner at the list of like
00:12:45
◼
►
here's all the things that I actually
00:12:46
◼
►
have to give you which is way more than
00:12:49
◼
►
just the source code to the app where's
00:12:52
◼
►
Pasha this week by Pingdom go to Pingdom
00:12:54
◼
►
comm slash radar to start monitoring
00:12:56
◼
►
your websites and servers today Kingdom
00:12:59
◼
►
offers a 14-day free trial and when you
00:13:00
◼
►
enter offer code radar at checkout you
00:13:02
◼
►
get 20% off your first invoice Pingdom
00:13:05
◼
►
is focused on making the web faster and
00:13:06
◼
►
more reliable for everyone who has a
00:13:08
◼
►
site or service they offer powerful
00:13:10
◼
►
easy-to-use monitoring tools and
00:13:13
◼
►
services so if you're opinio music you
00:13:14
◼
►
can monitor the availability and perform
00:13:16
◼
►
your servers databases websites all very
00:13:19
◼
►
very easily they take care of this by
00:13:21
◼
►
using more than 70 global test servers
00:13:23
◼
►
that emulate visits to your site they
00:13:25
◼
►
can check its availability often as
00:13:26
◼
►
every minute and they can a different
00:13:28
◼
►
test with that things like they can use
00:13:29
◼
►
a cookie to log in they can follow forms
00:13:31
◼
►
they can check for certain strings on
00:13:34
◼
►
the resulting page they can check for
00:13:36
◼
►
certain timeouts Pingdom is incredibly
00:13:38
◼
►
great I use it to monitor all my stuff
00:13:40
◼
►
and I've used it since the tumbler day
00:13:42
◼
►
is very very long time it goes since
00:13:43
◼
►
long before they were response here
00:13:44
◼
►
before I even started podcasting at all
00:13:46
◼
►
I've been using them for a very very
00:13:48
◼
►
long time and I have had nothing but
00:13:50
◼
►
great experiences with Pingdom that's
00:13:53
◼
►
why I can personally recommend them even
00:13:54
◼
►
they cannot pay me to say that I can
00:13:55
◼
►
actually say that directly they are
00:13:57
◼
►
awesome and you should be using them so
00:13:59
◼
►
payment makes it very very easy to
00:14:00
◼
►
monitor your sites all you need to do is
00:14:03
◼
►
give them a URL that you want to monitor
00:14:04
◼
►
and the various optional conditions you
00:14:06
◼
►
want to check for and they take care of
00:14:08
◼
►
the rest when they detect an outage you
00:14:10
◼
►
can be immediately alerted so you can
00:14:12
◼
►
fix the error before the downtime
00:14:14
◼
►
affects you you don't want to be caught
00:14:16
◼
►
with you know your site down and you
00:14:18
◼
►
don't even knowing it and people on
00:14:20
◼
►
Twitter telling you hey by the way you
00:14:21
◼
►
know your site's been down for the last
00:14:22
◼
►
couple hours no you want to be the first
00:14:24
◼
►
person to learn and with a Pingdom you
00:14:26
◼
►
will be the first person notified so you
00:14:27
◼
►
can fix it before anybody else really
00:14:29
◼
►
sees it go to Pingdom comm slash radar
00:14:32
◼
►
for a 14-day free trial and use offer
00:14:34
◼
►
code radar to get 20% off at checkout
00:14:37
◼
►
thank you very much - Pingdom response
00:14:38
◼
►
during our show so the other kind of
00:14:40
◼
►
consideration or thing that i Eve this
00:14:42
◼
►
is all this this process it made me
00:14:43
◼
►
think of because it's probably only sort
00:14:45
◼
►
of helpful to talk about the actual like
00:14:47
◼
►
this the instances of this app but if I
00:14:49
◼
►
take a step back and think about just in
00:14:52
◼
►
general as I'm developing an app are
00:14:54
◼
►
there lessons that I can learn from this
00:14:56
◼
►
that I think would be useful going
00:14:59
◼
►
forward and the first one that I was
00:15:01
◼
►
trying to think of and came up with was
00:15:02
◼
►
the importance of being careful about
00:15:05
◼
►
what I'm communicating or promising to
00:15:09
◼
►
my customers as I start out as I feel
00:15:14
◼
►
like it's easy when you're starting out
00:15:15
◼
►
and everything's kind of rosy and nice
00:15:18
◼
►
to get a little carried away and kind of
00:15:22
◼
►
make commitments that are down the road
00:15:24
◼
►
going to be more difficult for you to
00:15:26
◼
►
follow through on and you know it's a
00:15:29
◼
►
tricky thing maybe on this case
00:15:30
◼
►
the pricing where it's really not a
00:15:32
◼
►
sustainable business model for an app
00:15:33
◼
►
that has an ongoing cost to have a
00:15:35
◼
►
one-time purchase upfront but in the
00:15:38
◼
►
early days of the app I kind of gave the
00:15:40
◼
►
impression whether implied or actual
00:15:42
◼
►
enough to actually go back and look at
00:15:43
◼
►
my communication to see what I actually
00:15:45
◼
►
said but I kevin lee implied that you
00:15:47
◼
►
know you buy this app and you have
00:15:49
◼
►
weather data and there was no end date
00:15:52
◼
►
put on that and that creates some really
00:15:55
◼
►
awkward things that kind of kind of feel
00:15:57
◼
►
like they tie my hands whether
00:15:59
◼
►
necessarily or just because of the way
00:16:01
◼
►
that i feel going forward that kind of
00:16:04
◼
►
you know reduce my options because in
00:16:06
◼
►
this case you know i said about a third
00:16:07
◼
►
of the users bought it in one day so
00:16:10
◼
►
whatever i communicated to those people
00:16:12
◼
►
that first day when everything was
00:16:13
◼
►
cheerful and rosy and i was so
00:16:15
◼
►
optimistic about its future I kind of
00:16:19
◼
►
have to live with going forward and it
00:16:21
◼
►
definitely kind of makes me think of as
00:16:23
◼
►
I launch things now or as I move forward
00:16:26
◼
►
well there's also good for me to be
00:16:28
◼
►
thinking about you know this is
00:16:29
◼
►
sustainable and so on but it's even the
00:16:31
◼
►
importance of being careful about what I
00:16:33
◼
►
say that I'm not making pointers or
00:16:35
◼
►
promises into the future it's kind of
00:16:38
◼
►
like any time I see an accompanying that
00:16:40
◼
►
now says something's unlimited or even
00:16:44
◼
►
lifetime subscription or those types of
00:16:47
◼
►
words I am immediately skeptical I
00:16:50
◼
►
immediately think no that's you that
00:16:52
◼
►
can't be right
00:16:54
◼
►
you know you can't use those words with
00:16:56
◼
►
actual honesty because you can't give
00:16:59
◼
►
someone an unlimited something or a
00:17:01
◼
►
lifetime of something because you're
00:17:03
◼
►
making promises into the future that you
00:17:05
◼
►
really can't stand behind and that's
00:17:08
◼
►
probably a dangerous thing for me you
00:17:10
◼
►
know for especially a small developer to
00:17:11
◼
►
ever do well especially goes like when
00:17:13
◼
►
you're when you have a paid upfront app
00:17:14
◼
►
or you know any kind of and Wow however
00:17:16
◼
►
people are paying for it if somebody
00:17:17
◼
►
pays for your app there many people
00:17:20
◼
►
maybe I don't even meet maybe even most
00:17:22
◼
►
people have this expectation at the
00:17:24
◼
►
moment of payment that I am paying for
00:17:26
◼
►
this app for it to work forever and of
00:17:28
◼
►
course in reality that's you know that's
00:17:30
◼
►
not how anything in this industry works
00:17:32
◼
►
but that is kind of like the mindset and
00:17:34
◼
►
that's why people get so upset when an
00:17:37
◼
►
app that they paid for two years ago all
00:17:39
◼
►
of a sudden gets discontinued or
00:17:42
◼
►
requires a paid upgrade to keep working
00:17:44
◼
►
the newest whatever's you know people
00:17:46
◼
►
they when they pay upfront as something
00:17:49
◼
►
that's presented as a one-time fee they
00:17:51
◼
►
really do assume even if it's
00:17:54
◼
►
subconscious
00:17:55
◼
►
they see that purchase as a lifetime
00:17:58
◼
►
purchase when in fact that is impossible
00:18:00
◼
►
to sustain I mean you know people
00:18:02
◼
►
basically software needs ongoing revenue
00:18:06
◼
►
streams because people expect ongoing
00:18:10
◼
►
updates ongoing service ongoing
00:18:13
◼
►
compatibility fixes and even ongoing
00:18:15
◼
►
improvements and yet they pay once
00:18:18
◼
►
upfront and and they and they expect all
00:18:20
◼
►
those things to come for free forever so
00:18:22
◼
►
like some kind of recurring subscription
00:18:24
◼
►
or recurring revenue model but you know
00:18:26
◼
►
whether its description or ads or other
00:18:27
◼
►
other things the reason why this is so
00:18:30
◼
►
helpful is because like that matches up
00:18:31
◼
►
more to people's expectations of what
00:18:33
◼
►
the product will do for them and how the
00:18:34
◼
►
product will keep moving but you have
00:18:36
◼
►
something like you had to check the
00:18:37
◼
►
weather because it was about like three
00:18:38
◼
►
or four bucks up front I think it was
00:18:40
◼
►
yeah yeah so it was like you know
00:18:42
◼
►
whatever it is three or four bucks up
00:18:42
◼
►
front then you know people who pay three
00:18:45
◼
►
or four bucks two three years ago you
00:18:47
◼
►
know they're gonna expect that app to
00:18:49
◼
►
still be working now if they're still
00:18:50
◼
►
using it and you're going to get some
00:18:52
◼
►
people who are very upset about this
00:18:54
◼
►
discontinuation but I don't really see
00:18:56
◼
►
how you could have kept it going
00:18:58
◼
►
otherwise I mean if you had I mean we
00:19:01
◼
►
could talk about different business
00:19:01
◼
►
models and stuff but you know if it was
00:19:03
◼
►
subscription funded from the very
00:19:05
◼
►
beginning that would be another thing if
00:19:06
◼
►
it were ad funded then you know it would
00:19:09
◼
►
it would just kind of keep making money
00:19:11
◼
►
through usage hopefully enough to cover
00:19:13
◼
►
it but that's not even a guarantee and
00:19:16
◼
►
you know so if there was ongoing revenue
00:19:18
◼
►
you could you could possibly sustain it
00:19:20
◼
►
more but people really do you know when
00:19:23
◼
►
it comes to you know you know geeks like
00:19:25
◼
►
us know to to doubt claims of unlimited
00:19:28
◼
►
or a lifetime but when you have paid
00:19:31
◼
►
upfront that is literally what people
00:19:32
◼
►
expect they expect it to be a lifetime
00:19:34
◼
►
purchase even though they might not care
00:19:36
◼
►
in a year or two but the ones who still
00:19:39
◼
►
use it they will care sure and I think
00:19:42
◼
►
beyond even just the consideration of
00:19:44
◼
►
like what's the best business model and
00:19:46
◼
►
obviously like in retrospect I think of
00:19:48
◼
►
myself four years ago being very naive
00:19:50
◼
►
that this kind of would have worked
00:19:53
◼
►
and I think the important thing there is
00:19:55
◼
►
- it's a to think it through but like I
00:19:58
◼
►
got so caught up in the actual process
00:20:00
◼
►
of building it and thinking that it was
00:20:01
◼
►
cool I don't think I thought four years
00:20:04
◼
►
into the future about what would happen
00:20:06
◼
►
and then me even if you don't have a
00:20:09
◼
►
good alternative for the business model
00:20:11
◼
►
like even if I'd still launched the app
00:20:12
◼
►
you know paid up front app I likely
00:20:14
◼
►
should have given some thought to how I
00:20:19
◼
►
talked about it and how kind of the
00:20:21
◼
►
expectations that I said yeah maybe I
00:20:22
◼
►
should have said you know the app
00:20:24
◼
►
includes weather data for two years and
00:20:26
◼
►
maybe I don't have a good answer for
00:20:27
◼
►
what happens in two years but they're
00:20:31
◼
►
sort of the expectation that maybe down
00:20:33
◼
►
the road there will be some more money
00:20:34
◼
►
that you'll have to pay pay for me to
00:20:36
◼
►
keep doing it and communicating that
00:20:38
◼
►
rather than kind of if you don't say
00:20:40
◼
►
anything like you're saying the
00:20:43
◼
►
customers expectation is that it's like
00:20:45
◼
►
well I make one payment and then it's
00:20:46
◼
►
the rest of my life for as long as I
00:20:48
◼
►
want to use it you know I will be
00:20:49
◼
►
sitting there ready for them to help
00:20:51
◼
►
them as however that goes well and for a
00:20:54
◼
►
while that actually works for a lot of
00:20:57
◼
►
apps like especially in the earlier days
00:20:58
◼
►
of the apps were like four years ago and
00:21:00
◼
►
you long says that was a totally
00:21:01
◼
►
reasonable thing to do like when I
00:21:02
◼
►
launched instapaper and you know day one
00:21:04
◼
►
be Happ store in 2008 well it was more
00:21:07
◼
►
like day 3 whatever doesn't hate it was
00:21:11
◼
►
just an upfront paid app it was first 10
00:21:14
◼
►
bucks then about a year later lowered it
00:21:16
◼
►
to 5 bucks and stay that way for a long
00:21:18
◼
►
time and the idea you know I was running
00:21:20
◼
►
this big expensive web service behind it
00:21:22
◼
►
but every month I just kept selling more
00:21:24
◼
►
copies of the app and so the growth was
00:21:27
◼
►
just funding it like just the additional
00:21:29
◼
►
new copies that were selling every month
00:21:31
◼
►
wasn't you know that was enough to fund
00:21:33
◼
►
the app and overcast first year I did
00:21:35
◼
►
the same thing with you know with with
00:21:37
◼
►
the five dollar one-time on and I
00:21:38
◼
►
purchased to unlock the the you know the
00:21:40
◼
►
good features the same thing and it
00:21:42
◼
►
worked fine for a little while but as
00:21:45
◼
►
the App Store has gone on that that
00:21:47
◼
►
incredible growth that we had in the
00:21:48
◼
►
earlier years is harder and harder to
00:21:51
◼
►
come by and the money you're getting
00:21:53
◼
►
from each person is like is often going
00:21:55
◼
►
down as we've had to you know lower
00:21:57
◼
►
prices to be more competitive in the
00:21:58
◼
►
market and so now you you really have to
00:22:02
◼
►
think from the beginning how am I going
00:22:04
◼
►
to get ongoing revenue from this whereas
00:22:06
◼
►
as recent as four years ago when you
00:22:09
◼
►
launched this we really didn't have to
00:22:10
◼
►
think about that it wasn't you being
00:22:11
◼
►
naive it was actually the conditions of
00:22:13
◼
►
the market at the time you could just
00:22:16
◼
►
fund an app entirely by its own growth
00:22:18
◼
►
sure and you know it's how the good old
00:22:22
◼
►
days but I mean never nevertheless like
00:22:24
◼
►
the reality is it's something that I
00:22:26
◼
►
mentioned here as a cautionary tale both
00:22:29
◼
►
for myself and others that if you don't
00:22:32
◼
►
think about this upfront eventually
00:22:35
◼
►
you're going to have to deal with it I
00:22:37
◼
►
mean it reminds me in a weird way of
00:22:38
◼
►
like contract negotiation where I
00:22:40
◼
►
remember getting the best advice I've
00:22:42
◼
►
sung to a guy who was well he was my
00:22:43
◼
►
lawyer but in this case he wasn't acting
00:22:45
◼
►
as my lawyer because he's you know a
00:22:46
◼
►
lawyer he was telling me like the reason
00:22:48
◼
►
he likes doing contracts for developers
00:22:52
◼
►
is his job he felt was to think through
00:22:56
◼
►
all of the worst-case scenarios for them
00:22:59
◼
►
that they don't want to think about that
00:23:01
◼
►
they're sitting down with the client and
00:23:02
◼
►
they're super excited like it's the
00:23:05
◼
►
first big client they've ever gotten or
00:23:07
◼
►
whatever and they're really excited
00:23:08
◼
►
about it and they can talk about all the
00:23:10
◼
►
fun things they're gonna do and the
00:23:11
◼
►
awesome work they're gonna you know be
00:23:12
◼
►
able to do and collaborate together and
00:23:15
◼
►
you just don't think about these things
00:23:17
◼
►
that what do we do do you know in in the
00:23:20
◼
►
sense of a contract like what happens to
00:23:22
◼
►
the code at the end of this project what
00:23:23
◼
►
happens if you're sick and unable to
00:23:25
◼
►
continue working what happens if you
00:23:28
◼
►
just have massive disagreements and
00:23:30
◼
►
don't get along like those kinds of
00:23:32
◼
►
contingencies those kinds of things that
00:23:34
◼
►
are you hope you never really hope for
00:23:36
◼
►
you just hope it is always going to be
00:23:38
◼
►
the best case you know in this case with
00:23:39
◼
►
check the mother if the sales had just
00:23:40
◼
►
kept going forever it would the Apple
00:23:43
◼
►
just keep going forever but if you force
00:23:45
◼
►
yourself to think about the weird
00:23:47
◼
►
not-so-great things up front you can
00:23:51
◼
►
just plan for them or at least have some
00:23:52
◼
►
sense of what you might do and it
00:23:55
◼
►
probably would have helped in this case
00:23:56
◼
►
would have helped me avoid kind of it
00:23:58
◼
►
feels a bit awkward and it feels a bit
00:24:00
◼
►
more like I'm letting people down and
00:24:02
◼
►
generally people have been really
00:24:03
◼
►
gracious about it I think the nice thing
00:24:04
◼
►
about a third of the users buying it in
00:24:06
◼
►
the first day and probably about half of
00:24:09
◼
►
the users buying it in the first month
00:24:11
◼
►
is that that was all four years ago and
00:24:13
◼
►
so I think they've stopped using the app
00:24:15
◼
►
or if they have used it they've been
00:24:16
◼
►
using it for four years and paying you
00:24:18
◼
►
know less than a dollar a year is
00:24:20
◼
►
some reasonable to them but if anything
00:24:23
◼
►
it's just the cautionary tale of think
00:24:25
◼
►
about these things think about what's
00:24:27
◼
►
what this would look like down the road
00:24:28
◼
►
and have if not a plan in specifics at
00:24:31
◼
►
least a plan in general for how you're
00:24:33
◼
►
gonna deal with it the other thing that
00:24:36
◼
►
I've kind of been running into as I've
00:24:38
◼
►
been unraveling it that it's kind of a
00:24:39
◼
►
lesson that that would be worth talking
00:24:42
◼
►
about is as much as I feel like I think
00:24:45
◼
►
of the AppStore and the way people use
00:24:47
◼
►
my app as only ever using the latest app
00:24:50
◼
►
on the latest version of the OS which is
00:24:53
◼
►
in general like surprisingly true as
00:24:56
◼
►
I've been kind of unwinding this app and
00:24:59
◼
►
working out what I need to turn off I
00:25:00
◼
►
always went back and looked at old users
00:25:04
◼
►
of the application and this is where
00:25:05
◼
►
things get funny and why like I've
00:25:07
◼
►
changed data providers for example and
00:25:09
◼
►
I'm not sure and I need to make sure
00:25:12
◼
►
that I go and turn off those first
00:25:13
◼
►
accounts that I used to get weather data
00:25:15
◼
►
from because people are still using the
00:25:17
◼
►
app that hasn't you know really really
00:25:20
◼
►
really old versions like I went and
00:25:22
◼
►
looked in my analytics and I have people
00:25:23
◼
►
who are using the app that was published
00:25:25
◼
►
in 2013 still like as of a couple of
00:25:30
◼
►
days ago I was you know still having
00:25:32
◼
►
people who are using like hitting my
00:25:33
◼
►
server hitting my web services with that
00:25:36
◼
►
you know with that version string is
00:25:37
◼
►
this like from people who using really
00:25:39
◼
►
old iOS versions yes
00:25:41
◼
►
it's usually it's if that's that is
00:25:43
◼
►
usually the situation that it's like
00:25:44
◼
►
somebody has an old iPod Touch or a an
00:25:49
◼
►
old iPhone that can't be upgraded beyond
00:25:51
◼
►
a certain point and I think like the
00:25:53
◼
►
version they were using there was like
00:25:55
◼
►
it's the last version that worked with
00:25:57
◼
►
iOS 6 or with iOS 5 even like I mean
00:25:59
◼
►
it's getting really far back in time and
00:26:03
◼
►
so they're just stuck using that version
00:26:04
◼
►
and if they're still using it
00:26:06
◼
►
like in some ways you know good for them
00:26:07
◼
►
that's that's fine but in yeah I usually
00:26:11
◼
►
don't worry about those people in terms
00:26:13
◼
►
of new development but when you turn
00:26:14
◼
►
things off it is definitely something
00:26:17
◼
►
that I felt like I have to think through
00:26:19
◼
►
now is are there any things that old old
00:26:23
◼
►
versions of the app do that I need to
00:26:26
◼
►
think about now and in a weird way it
00:26:30
◼
►
gives me thought to being careful
00:26:33
◼
►
being thoughtful as I develop about what
00:26:35
◼
►
I wear I put things in the app and
00:26:37
◼
►
reminds me there's like physical feature
00:26:38
◼
►
there's a mechanism in check the weather
00:26:40
◼
►
to dynamically change some of the API
00:26:45
◼
►
keys inside of the application so that
00:26:48
◼
►
if I you know had a problem with where
00:26:50
◼
►
the weather provider I could some in
00:26:52
◼
►
some ways kind of switch things around
00:26:54
◼
►
dynamically and it does that you know
00:26:56
◼
►
through a web service and I'm glad it
00:26:59
◼
►
I've definitely used that a few times
00:27:00
◼
►
and especially for this is a good
00:27:02
◼
►
reminder for me of building mechanisms
00:27:05
◼
►
like that into our apps is probably a
00:27:06
◼
►
good idea to at least to some degree
00:27:08
◼
►
because you can't always rely on the App
00:27:12
◼
►
Store updates being the way you change
00:27:14
◼
►
that you know if something breaks I have
00:27:15
◼
►
to go and submit it and even though app
00:27:17
◼
►
review is amazing like recently I had an
00:27:19
◼
►
up I had an update yesterday where I
00:27:21
◼
►
submitted it in the morning in about
00:27:23
◼
►
three hours later it was approved which
00:27:24
◼
►
is crazy and awesome but that's only
00:27:27
◼
►
ever gonna capture like 90 percent of
00:27:29
◼
►
users and so at least give some thought
00:27:31
◼
►
to what happens that ten percent of
00:27:33
◼
►
users yeah it's also really nice to have
00:27:35
◼
►
from day one a mechanism server-side to
00:27:38
◼
►
to show a a message like show an alert
00:27:41
◼
►
box to everybody with with server-side
00:27:43
◼
►
provide a text I'm and you could have it
00:27:45
◼
►
be like you know every time or just a
00:27:47
◼
►
one time showing but somehow have
00:27:49
◼
►
something in the in there in your apps
00:27:51
◼
►
so that you could you know you know at
00:27:53
◼
►
this point rather than have it you know
00:27:54
◼
►
once everything shuts down rather than
00:27:56
◼
►
the app just launching and erroring out
00:27:58
◼
►
with some kind of server error that it
00:28:00
◼
►
like you know and no internet connection
00:28:01
◼
►
anything that's like that's not really
00:28:02
◼
►
right you know then to have to have a
00:28:05
◼
►
different method where you couldn't you
00:28:07
◼
►
can like put a file and s3 somewhere
00:28:08
◼
►
that basically that the app checks and
00:28:10
◼
►
says are and then you can show a box
00:28:11
◼
►
that says like sorry we've had to shut
00:28:13
◼
►
down this app because of what blah blah
00:28:14
◼
►
blah you know it's something that I have
00:28:17
◼
►
occasionally built into my apps and I've
00:28:19
◼
►
been very thankful every time I have I
00:28:21
◼
►
think the last thing is the thought I
00:28:22
◼
►
have is the as I finish up this app it's
00:28:26
◼
►
a weird thing because I still have ideas
00:28:30
◼
►
for what a cool weather app could be and
00:28:32
◼
►
do and I had to go navigate a little bit
00:28:36
◼
►
the thought of if I made another one
00:28:37
◼
►
would it make people mad or feel like
00:28:39
◼
►
they've I've cheated them out of
00:28:41
◼
►
something or I should have just put that
00:28:42
◼
►
into the app that they've already paid
00:28:44
◼
►
but obviously the reality is and this is
00:28:46
◼
►
the sort of the end of the
00:28:47
◼
►
that I came to is you know if I decide
00:28:51
◼
►
to make a weather app again it'll just
00:28:54
◼
►
be a new thing and hopefully I may if
00:28:55
◼
►
the reality is I just need to take the
00:28:57
◼
►
lessons I learned from this put it into
00:28:59
◼
►
it you know and that will be okay and
00:29:02
◼
►
it's being careful of not making choices
00:29:06
◼
►
just to avoid people being mad at you
00:29:08
◼
►
because people are always gonna be mad
00:29:10
◼
►
at you for something yeah and so in this
00:29:13
◼
►
case I was having thought like you know
00:29:14
◼
►
I don't know why I was part of why I
00:29:16
◼
►
didn't pull check the weather is that at
00:29:18
◼
►
some point I've always thought maybe a
00:29:19
◼
►
you know I have these cool ideas for
00:29:21
◼
►
weather app maybe I'll put them in to
00:29:22
◼
►
check the weather and then I sort of
00:29:24
◼
►
keep it around just to avoid people
00:29:26
◼
►
being mad the reality is if I have those
00:29:28
◼
►
ideas and I did some point down the road
00:29:30
◼
►
I want to do it I should just do it and
00:29:32
◼
►
if people are mad they're mad but I
00:29:34
◼
►
won't be I'll be happy and I'll be glad
00:29:35
◼
►
and I'll be making something that I'm
00:29:37
◼
►
excited about and so that's just still
00:29:40
◼
►
an encouraging thought that I get gave
00:29:42
◼
►
myself this thing of this week is I went
00:29:44
◼
►
in and had to hit the button to say you
00:29:46
◼
►
know it's it's it's finally time to put
00:29:48
◼
►
this to bed next time use a free font
00:29:50
◼
►
there you go alright thanks for
00:29:52
◼
►
listening everybody and we'll talk to
00:29:53
◼
►
you next week