Under the Radar

61: Back to Work


00:00:00   Welcome to Under the Radar,

00:00:01   a show about independent iOS app development.

00:00:03   I'm Mark Orment.

00:00:05   - And I'm David Smith.

00:00:06   Under the Radar is never longer than 30 minutes,

00:00:08   so let's get started.

00:00:09   - Happy New Year, everybody.

00:00:11   - Happy New Year.

00:00:12   - We decided to talk about what it's like

00:00:15   to get back into work after a break,

00:00:17   like the New Year's break.

00:00:19   Just the kind of getting your brain back into that space,

00:00:22   into the pace of work.

00:00:23   And then once you finally get there,

00:00:26   how do you decide even what to tackle?

00:00:29   Because chances are, after a big vacation

00:00:32   or after the holiday break,

00:00:33   holidays are especially bad at it,

00:00:35   but after these things,

00:00:36   we tend to have a lot of stuff piled up,

00:00:38   a lot of things that we need to address,

00:00:41   work that accumulated while we were gone,

00:00:43   things that we should probably get going on.

00:00:45   And so there's a bit of a tricky question

00:00:47   about how do you prioritize those things.

00:00:50   And then once you get going with working,

00:00:51   like how do you get going?

00:00:54   How do you begin work?

00:00:57   And then after that, I think we wanna talk a little bit

00:00:59   about how do we plan kind of the first few months

00:01:03   of the year, you know,

00:01:04   that in the case of a New Year's break like this,

00:01:07   you know, we have,

00:01:09   there's a lot of things about the corporate world

00:01:11   that go by years, things like, you know,

00:01:13   ad budgets, PR needs, everything else.

00:01:15   We talked before about seasonality.

00:01:17   And so the first few months of the year

00:01:18   is an interesting time to plan for,

00:01:21   to get things done, to consider, you know,

00:01:24   what to work on, whether to release things,

00:01:26   and everything else.

00:01:27   We're gonna get into all of that.

00:01:29   Dave, are you back to work yet?

00:01:31   - Yes.

00:01:33   Only just.

00:01:34   I think I've essentially did,

00:01:36   I mean, it's kind of a strange end of the year

00:01:39   because I was launching a new app,

00:01:40   which I usually don't like to do that time of year.

00:01:43   But for this particular time,

00:01:46   like I'd hoped originally to launch Workouts++

00:01:49   in probably November or something,

00:01:50   but it just didn't end up working out.

00:01:52   Like the project took longer than I'd originally expected.

00:01:55   And so it was, you know, launched,

00:01:57   I think it was December 21st or something,

00:02:00   which is not advisable,

00:02:01   and especially because you kind of go through the process

00:02:04   of launching something, you get it out,

00:02:06   and then all of a sudden you have a lot of, you know,

00:02:10   delightful but just sort of distracting family obligations

00:02:14   and things such that, you know,

00:02:15   I really sort of put it,

00:02:17   so it's almost like I just took this app,

00:02:19   threw it over a wall into the world,

00:02:21   and then just like ran away for a couple days,

00:02:24   which is not exactly what you want.

00:02:26   And I did my best,

00:02:27   like I checked into the support thing every now and then,

00:02:29   and, you know, I hadn't,

00:02:31   there were a few little initial bug fixes

00:02:34   that you inevitably have.

00:02:36   I was able to get those put together,

00:02:37   and they're currently waiting in review.

00:02:40   But then you just kind of fall off the map in a good way.

00:02:42   And I think it's probably also good

00:02:44   to start this discussion off by saying that taking breaks

00:02:47   and having periods of time when you're not working

00:02:51   is desirable, is a good thing.

00:02:54   Like it's a bit of a problem

00:02:55   that we're kind of looking at it from the perspective now

00:02:57   of how do you deal with that when you come back to work?

00:03:00   But there's certainly an advantage

00:03:02   to having that separation,

00:03:04   to take some time away,

00:03:05   both in terms of your just mental health

00:03:08   and overall wellbeing,

00:03:10   and also probably just to build a little bit of perspective,

00:03:12   to come back to things and be like,

00:03:14   what do I actually want to work on?

00:03:15   What was I doing before that I was just doing

00:03:18   out of inertia rather than out of desire?

00:03:20   But for me, yeah, now I'm back working again

00:03:24   and kind of, it's especially weird for me right now

00:03:27   'cause I'm coming back to edit

00:03:28   after essentially skewing all work on my side project,

00:03:32   on all my other apps except for Workouts++

00:03:35   for the last two or three months.

00:03:37   So I'd gotten all those apps into a pretty good state,

00:03:40   roughly with the launch of iOS 10.

00:03:43   Like I'd done a big update and then a bug fix update

00:03:47   for most of my apps around iOS 10.

00:03:50   They were all in a good place.

00:03:51   Then I go from work on Workouts++ for a couple of months.

00:03:54   And now I'm in a place where I have to look at all my work

00:03:57   and say, like, what do I actually want to work on next?

00:04:01   What should I work on next?

00:04:03   And I do find it really awkward and like tricky

00:04:07   when you end up kind of, it's the paradox of choice,

00:04:10   I think it's called, or just being overwhelmed

00:04:13   more and more simply, where you look at all of the universe

00:04:16   of things that you could do and having to try

00:04:19   and understand what the right thing to do.

00:04:22   And especially when you have to deal with these weird

00:04:25   tensions between like, what do I think is the best thing

00:04:28   financially for my business for me to do?

00:04:30   What thing would I enjoy most working on?

00:04:33   What thing do I think my customers are most expecting?

00:04:36   Where should I go in terms of what project

00:04:41   do I think I would learn the most from?

00:04:42   Like there's lots of different reasons.

00:04:43   And I, like my first day back, which I think was on,

00:04:47   I guess the day after New Year's Day,

00:04:49   whatever that is, January 2nd, January 3rd,

00:04:52   looking at, I just sat down and have like opened up

00:04:56   Omnifocus for the first time in a long time.

00:04:58   Because when I'm in a period where I'm working on an app

00:05:01   like Workout Plus Plus, like pretty focused manner,

00:05:03   if I come across any things in my other apps,

00:05:07   or I get feature requests or things that sound good,

00:05:08   I just kind of throw them all into there,

00:05:10   which I think is a sane system to just kind of,

00:05:12   rather than thinking about them and trying to manage them

00:05:14   as you go, just postpone that until it's time.

00:05:19   That meant that this week I've been having to sit down

00:05:22   and be like, filter through just page after page

00:05:25   of ideas, of thoughts, of things.

00:05:28   And in general, I think my approach to this kind of thing

00:05:31   is I just tend to latch on to one or two things

00:05:36   that I think I can reasonably make progress with.

00:05:40   And in some ways this kind of makes me think of,

00:05:43   like I used to run track in high school

00:05:44   and it's sort of like the warmup lab.

00:05:46   It's the before you actually can start working properly,

00:05:49   you have to go out and do a little bit of work,

00:05:53   but not really hard work, just a little bit of something

00:05:55   to get you back into the flow of things.

00:05:57   And so, like today I've been working on a little,

00:06:00   you know, it's like a minor feature in Pedometer Plus Plus

00:06:03   that I think is useful and good,

00:06:05   and isn't a particularly high stress or high risk feature,

00:06:09   but it's something that I think would be useful.

00:06:10   And I can kind of go through the process

00:06:12   of working on something again,

00:06:14   get, you know, sort of get back in the flow,

00:06:16   and then once I finish this little,

00:06:18   once I finish my warmup lab,

00:06:19   I expect to then dive into some of the bigger features

00:06:22   and some of the bigger tasks that I think are gonna take

00:06:26   more of my mental energy, take more of my focus,

00:06:29   and the kind of things that I don't really wanna do cold

00:06:32   after spending a week or two with very little work.

00:06:36   - One of the challenges I face in getting warmed up,

00:06:41   you know, as you put it, the warmup lab is great.

00:06:43   One of the big challenges I face is that

00:06:46   when you've been away from a project for a while,

00:06:48   whether that's just like, you know, a five day weekend

00:06:51   and where your mind's totally somewhere else,

00:06:53   or whether it's, you know, something like a big break

00:06:56   where you're working on something else for a little while

00:06:58   and you gotta like sideline something else,

00:07:00   one of the big challenges I have is

00:07:03   knowing where to even start,

00:07:04   because this is the kind of problem where,

00:07:07   like, you know, people like us who are indie developers

00:07:10   who don't really work with other people,

00:07:11   where basically the job of everything falls on us.

00:07:15   It's very easy to get lazy with your organizational system

00:07:19   about things like your to-do list,

00:07:22   your, you know, tracking of what you have to do next,

00:07:25   and also like documentation of things like your code

00:07:29   and your app and what these things do,

00:07:31   what these different parts do.

00:07:33   It's very easy to fall into the trap of,

00:07:36   well, it's all in my head as I'm working on it,

00:07:38   and I can just remember these things,

00:07:40   so I don't need to write this down.

00:07:41   I don't need to document this code.

00:07:43   I don't need to manage a to-do list

00:07:46   because I know what I have to do, you know,

00:07:48   and I am guilty of this worse than anybody else.

00:07:51   Like, I hardly ever write anything down.

00:07:53   I keep only a very basic to-do list in task paper

00:07:58   of like, you know, things I want to do for this version,

00:08:01   and like the entire, like, Overcast 3.0 to-do list

00:08:04   is something like 20 lines long.

00:08:05   It's not, this is not like a very granular thing to do

00:08:10   most of the time,

00:08:11   and you know, towards the end,

00:08:12   I'll have like a bug puncture list basically

00:08:15   that's a little more granular,

00:08:16   but otherwise, you know, most of the time

00:08:18   I'm working on something, I don't have anything like that.

00:08:19   It's just kind of all in my head.

00:08:21   So when I'm facing this problem,

00:08:22   my biggest challenge is just like,

00:08:24   I know what I have to do.

00:08:25   I have to keep things more documented.

00:08:28   I have to keep my to-dos more organized,

00:08:30   but I don't usually do it,

00:08:32   or I do it to a very half-hearted degree,

00:08:34   and it's more of a challenge of personal discipline

00:08:37   than anything else of just like,

00:08:39   you know, when you're solo, it's so easy to not do things

00:08:44   the way that you have to,

00:08:45   like when you work in a job with other people,

00:08:48   you kind of always have to be writing things down

00:08:50   and coordinating to-dos and having a roadmap

00:08:53   because it's kind of impossible to work with the people

00:08:55   without having some degree of that,

00:08:57   and there's also usually like a well-working place

00:09:00   should usually be at least somewhat prepared

00:09:02   for somebody leaving or quitting

00:09:04   or getting fired at any time,

00:09:06   and other people being able to pick up their work

00:09:09   where they're left off,

00:09:10   and when you're a solo developer like us,

00:09:12   it's so easy to not have those kind of safeguards

00:09:15   'cause you think you don't need them,

00:09:16   but whenever you have to take any kind of break

00:09:19   or juggle multiple projects,

00:09:20   you really do need to think about

00:09:22   those exact same strategies.

00:09:24   - Yeah, I mean, and I actually was bit by exactly that

00:09:28   the last day or so where,

00:09:30   and this work that I've been doing on Podometer++,

00:09:32   so I haven't worked on the app for probably since October,

00:09:35   I think, so like two or three months,

00:09:36   and I sit down and I start using it,

00:09:39   and I notice something weird going on in my data system

00:09:42   where a certain iOS API call

00:09:44   wasn't returning the values that I expected it to,

00:09:47   and so I started looking into this,

00:09:48   and I was like, man, this is really weird.

00:09:51   It's one of these weird edge case bugs

00:09:53   where if I give a certain value to the HealthKit API,

00:09:57   I get no data back,

00:09:58   but if I do lots of other things, it works fine,

00:10:01   which is a really weird bug.

00:10:02   I'm like, man, this is strange,

00:10:04   and I spend about a half a day working on this bug

00:10:06   asking if I can find a workaround, if I can avoid it.

00:10:10   In the end, I found no solution,

00:10:13   and I was like, all right, well,

00:10:14   I should probably file a radar about this

00:10:16   just to make sure that Apple knows that this is a bug,

00:10:19   and I open up bugreport.apple.com,

00:10:22   go into my little account,

00:10:25   and one of the top radars in there

00:10:27   was me reporting this exact bug in August of last year,

00:10:31   which I think I was reporting it against

00:10:34   beta two or beta three in iOS 10.

00:10:37   Clearly, I had completely forgotten

00:10:40   that I had done this exact process before,

00:10:45   which is a great example, though,

00:10:46   of this I just wasted half a day

00:10:49   trying to track this thing down that a few months ago,

00:10:51   I did exactly the same thing,

00:10:53   and I suppose it is such a tricky thing, though,

00:10:56   to want to document in great detail

00:11:00   all of the various these kinds of things

00:11:01   because it is so easy to rely on your own memory,

00:11:04   and I think in many ways, I find really,

00:11:07   one of the core skills of development is memory,

00:11:12   where I am at my most effective programming.

00:11:15   The more of an application I can hold in my head at once,

00:11:20   where I know where all the features are,

00:11:22   I know how they all interconnect,

00:11:24   and having that kind of loading all that information

00:11:27   into my brain is where it gets really efficient and helpful,

00:11:30   where I'm not constantly command-F-ing

00:11:33   all over the whole project,

00:11:35   trying to find the various things.

00:11:36   I just know where they are,

00:11:38   but if you take a few months off

00:11:41   and you come back to a project,

00:11:42   you can find yourself in these situations

00:11:44   where you just forgot that you've solved this problem

00:11:47   or you've gone through all of the work

00:11:49   to determine that no solution exists,

00:11:52   and in this case, it's like,

00:11:53   what I really should have done

00:11:54   when I solved this the first time,

00:11:55   I ran into this problem the first time,

00:11:57   is I should have just had a little comment in my code

00:11:59   that said, "This API fails in this way.

00:12:03   "Radar files, here's the radar number,"

00:12:06   for my own reference, just so that,

00:12:08   this morning, when I ran into this,

00:12:11   I could thank past Dave for going back there,

00:12:15   reporting this, short-circuiting this whole thing,

00:12:17   and knowing that, okay, yeah, it's a bug, it's filed,

00:12:19   Apple hasn't fixed it yet, but I can move on,

00:12:22   and don't need to worry about it,

00:12:25   or at least I already did worry about it.

00:12:27   But that discipline about that is, I think,

00:12:29   really hard, because, yeah, it doesn't feel like,

00:12:33   I think it's really difficult to judge

00:12:35   how far into the future you're going to need

00:12:39   to know where you are.

00:12:41   And on the flip side, obviously,

00:12:42   you could take the other extreme

00:12:43   and get really carried away,

00:12:45   and be documenting everything,

00:12:46   and all of your, everything is super detailed,

00:12:49   and you end up in a proper, a formal software model,

00:12:52   where you have the requirements,

00:12:53   and then you have the development,

00:12:54   and you have the testing documents,

00:12:56   and you can go way overblown as well,

00:12:58   but there is definitely something that experiences

00:13:02   like I had today definitely reinforces for me,

00:13:04   where like, I need to be a little bit more.

00:13:06   And honestly, it's probably the kind of thing

00:13:08   where just being like 10% more descriptive

00:13:12   in my Git commits, in my comments,

00:13:15   would have a disproportionate impact

00:13:17   in my ability to come back to work,

00:13:19   and to feel that I understand what's going on.

00:13:23   - It's almost like a hierarchy of caches, you know?

00:13:26   It's like, in programmer terminology,

00:13:28   it's like, you know, we all know that,

00:13:30   you know, as you said, like when you have

00:13:31   a whole bunch of the program in your head,

00:13:33   you are way more effective.

00:13:35   That's what we refer to when we're talking

00:13:37   about being in the zone as programmers.

00:13:39   Like, it's basically having a whole bunch

00:13:41   of the program in your head,

00:13:42   which is like the highest level cache,

00:13:44   like the L1 cache, or the registers.

00:13:46   And then, as things like, you know,

00:13:49   get evicted from either time or crowdedness,

00:13:53   you have to start, you know, relying on other things

00:13:58   to keep this stuff in your head,

00:14:00   or to refer to other resources to get it back in your head.

00:14:05   And, you know, a quick little comment in the code,

00:14:09   or good documentation of like the architecture of the code,

00:14:13   is way more effective at like,

00:14:16   when you have a cache miss in your brain,

00:14:18   and you have to go fetch it from this external resource,

00:14:20   that's way faster than like having to repeat

00:14:24   eight hours of coding only to make the same mistakes

00:14:26   over and over again, only to discover

00:14:28   the same eventual truth at the end

00:14:31   that you could've discovered with, you know,

00:14:32   a quick little comment in the code.

00:14:35   - And it's, in many ways, it reminds me of some advice

00:14:37   I remember hearing once about when you're like,

00:14:40   writing little to-dos for yourself,

00:14:42   like if you're capturing those kinds of thoughts,

00:14:44   of the importance of capturing complete thoughts,

00:14:47   not things that would just make sense at the time.

00:14:51   You know, so like if I record a little to-do that says,

00:14:53   you know, it's like table view height adjustment.

00:14:57   Like, at that moment, I may know exactly what that means,

00:15:01   and it sounds completely silly to be able to show you,

00:15:03   you know, like fully expanded out,

00:15:05   like table view height adjustment

00:15:07   in stat screen of pedometer plus plus.

00:15:09   Like, that, if I don't include all those other nouns,

00:15:14   I'm gonna come back to that later and be like,

00:15:16   what does this mean?

00:15:17   Like, it becomes just complete gibberish and garbage,

00:15:19   even though at the time,

00:15:20   it feels like completely unnecessary,

00:15:22   because I understand entirely the context.

00:15:25   And so, I think in the same way,

00:15:27   it's like when you're writing to-dos, it's important,

00:15:28   and then, you know, similarly with, you know,

00:15:31   in your code or your internal documentation,

00:15:34   and I mean, obviously, we have the benefit, though,

00:15:35   I will say, of we just have to write things

00:15:38   that make sense to us, that we know ourselves better,

00:15:42   that it's not like we're trying to write something

00:15:44   that anybody with any level of sophistication

00:15:47   or understanding would be of the project

00:15:49   or of programming in general would be able to pick up.

00:15:51   Like, we know ourselves, we know what, you know,

00:15:53   like what short hands and what terms and things

00:15:57   we can just use, but I think it's very important

00:15:59   to have that kind of perspective of like,

00:16:01   how can I be kind to my future self in my current self,

00:16:06   rather than just assuming that my future self

00:16:08   will like, kind of work it out?

00:16:09   - Oh yeah, because like, especially like, you know,

00:16:11   as the amount of time extends, you know,

00:16:14   if you're writing something for your future self

00:16:16   of four days from now, that's very different

00:16:19   from your future self of four months from now,

00:16:21   or four years from now.

00:16:23   And as, like, I think it very quickly gets to a point

00:16:27   that this is not like a slow progression.

00:16:29   I think even after a few weeks or a few months

00:16:32   of not working on something, you approach it

00:16:35   almost as if a stranger would approach it.

00:16:37   Like, your future self is way less familiar

00:16:42   with what you're working on right now

00:16:44   than your present self might realize.

00:16:46   And if you can kind of get that into your head

00:16:48   and internalize that and start remembering that

00:16:51   as you're doing this kind of documentation

00:16:53   or prep work or anything like that,

00:16:56   you can really save your future self a lot of hassle

00:16:59   because your future self is going to look

00:17:01   at your current code and projects

00:17:04   almost as if a stranger were looking at them.

00:17:07   Anyway, our sponsor this week is somebody

00:17:09   who never takes a break because they're a hosting company

00:17:11   and you want your hosting company to never take breaks.

00:17:14   It's Linode.

00:17:15   Linode gives you fast, powerful hosting for your projects

00:17:18   that you can set up in just seconds.

00:17:20   They have easy to understand tools

00:17:21   that let you choose your resource levels

00:17:23   and Linux distros, giving you the power

00:17:25   and flexibility you need.

00:17:26   And Linode plans start at just $10 a month

00:17:28   for a two gigabyte RAM Linux server in the Linode cloud.

00:17:32   Linode, I mean, this is the best stuff I've ever used

00:17:35   in the web hosting world, I'm telling you,

00:17:36   I've used a lot between all the different things

00:17:38   I've worked on, I've used a lot of web hosting.

00:17:40   I've used literally hundreds of servers in web hosting

00:17:43   and Linode is by far, by far my favorite.

00:17:48   And now, I think almost everything I have is there now.

00:17:51   The only things that aren't there are things

00:17:52   I just haven't gotten around to moving there yet

00:17:54   because moving things is a pain.

00:17:56   But if you're looking for a new web host

00:17:58   or if you're willing to go through the hassle

00:18:00   of moving to a new web host, I'm telling you,

00:18:02   you're not gonna be sorry with Linode.

00:18:04   It is amazing, their control panel is great,

00:18:06   their performance per dollar is, I think,

00:18:09   unmatched in the industry.

00:18:11   Highly, highly recommended.

00:18:13   Anyway, it's never been easier to launch a Linode cloud server

00:18:16   where they offer the fastest hardware network

00:18:18   with fantastic customer support behind it all

00:18:20   if you need it, even on the holidays,

00:18:23   even on Christmas Day, New Year's Day,

00:18:24   they are working, they are there.

00:18:26   Linode guarantees 99.9% uptime for serverability.

00:18:29   Once your server is up, they intend to keep it that way.

00:18:32   And Linode, you know, this is great for things like

00:18:34   running your own private Git servers,

00:18:36   hosting a large database, running mail servers,

00:18:38   hosting an entire web app like what David and I do,

00:18:41   and so much more.

00:18:42   So as a listener of this show,

00:18:43   if you sign up at linode.com/radar,

00:18:46   you will not only be supporting us,

00:18:47   but you also get $20 towards any Linode plan.

00:18:50   And with a seven day money back guarantee,

00:18:51   there's nothing to lose.

00:18:52   So go to linode.com/radar to learn more,

00:18:56   sign up, and take advantage of that $20 credit,

00:18:58   or use the promo code radar2017,

00:19:00   that's radar2017, at checkout.

00:19:03   Thank you so much to Linode for supporting this show.

00:19:06   - So I think it's also probably fair,

00:19:08   now that we've kind of come back into our work,

00:19:11   to discuss and work through a little bit of

00:19:13   what makes sense to plan out for the first part of the year.

00:19:17   'Cause we've talked about it before,

00:19:19   where like iOS development has a schedule and a cadence

00:19:23   kind of dictated to it somewhat externally,

00:19:25   where, you know, starting around June 1st or so,

00:19:30   you know, we get into the new stuff cycle,

00:19:32   where from June until about September,

00:19:34   we'll have new iOS betas, new devices,

00:19:37   new whatevers that are gonna be announced.

00:19:41   The fall is the kind of fallout from that period

00:19:44   where we start to, you know,

00:19:47   all these things actually go out into the wild,

00:19:48   and we get to see how they get used in practice.

00:19:51   And then we kind of get into this next phase,

00:19:53   which I think is, in some ways,

00:19:55   my most enjoyable part of the cycle,

00:19:57   where, you know, from roughly now,

00:19:59   you know, we've gotten through Christmas and New Year's.

00:20:03   So from now until June, we have about six months

00:20:05   to just work on whatever we want in a lot of ways.

00:20:09   And I tend to like this time of year for polishing,

00:20:14   doing a lot of like 0.1, 0.2 releases,

00:20:17   working on a lot of things that, you know,

00:20:20   didn't make sense to try and squeeze in

00:20:23   with a major iOS update, things like that,

00:20:27   where I can sit down and I can spend, you know,

00:20:30   a significant amount of time

00:20:31   without quite the same time pressure as I would

00:20:34   if I was doing it over the summer or in the fall,

00:20:37   you know, where now I can kind of,

00:20:38   if it ends up taking an extra couple weeks, it's fine.

00:20:41   There's no external constraints

00:20:43   or things that I'm trying to fight around.

00:20:46   And so I tend to look at it,

00:20:47   and that's kind of like what my planning right now

00:20:49   for all of my apps, you know, it's like,

00:20:50   essentially, I'm just gonna be sitting there

00:20:52   making out these kind of big point releases for all my apps.

00:20:56   You know, I have taken these kind of nice features

00:20:58   that I think are value adds.

00:21:00   And honestly, even a lot of what ends up happening with me

00:21:03   is I, as I have so many apps,

00:21:05   but they're all kind of related, you know,

00:21:07   all my plus plus apps are health and fitness oriented.

00:21:11   And so what I've started to do too is

00:21:13   I'll end up doing something in one of them

00:21:15   that I feel like will make sense

00:21:17   to kind of incorporate back into the other ones.

00:21:20   And so I expect to be doing a lot of that this,

00:21:23   sort of, I guess, what we're gonna call this period,

00:21:25   like in the new year slash through the spring,

00:21:29   where I can go through and kind of just get everything

00:21:31   in a nice, solid, robust, kind of like making

00:21:35   these features a little bit deeper.

00:21:37   Like, maybe that's a good way to think of it too.

00:21:39   Like in the summer and fall, I tend to think of it

00:21:42   as kind of widening the apps,

00:21:44   making them incorporate these new features,

00:21:47   incorporating these new platforms, whatever makes sense.

00:21:50   And then, you know, sort of the first half of the year

00:21:52   is more about taking those things

00:21:54   and kind of digging them deeper

00:21:55   and adding all those little touches

00:21:58   that make the app richer that you didn't quite,

00:22:01   didn't quite have time to do in the first place.

00:22:06   - Yeah, because you know, the fall is,

00:22:07   we spend so much of the fall, just,

00:22:09   and the summer even, just like adapting new things,

00:22:13   or adopting new things,

00:22:14   and keeping up with all of Apple's new stuff.

00:22:16   And you know, from January through June,

00:22:19   Apple's pretty quiet usually.

00:22:20   And so, yeah, it's a great time,

00:22:23   as you said, to work on quality,

00:22:26   to broaden your feature base.

00:22:28   I would say it's a great time to address things

00:22:30   like user requests, like feature requests

00:22:33   from people that are very common.

00:22:34   'Cause you don't have anything else,

00:22:36   for the most part, competing with this time.

00:22:39   Most of the rest of the year,

00:22:40   you have like external pressure

00:22:42   of things you need to be keeping up with

00:22:44   or doing or planning for right now.

00:22:46   This part of the year is basically like,

00:22:48   work on the core, make the app better,

00:22:50   make your stuff better, try, you know,

00:22:52   if you wanna start experimenting with brand new features

00:22:56   or start planning what your next big release might be,

00:22:59   this is a good time for that.

00:23:00   Of course, I'm following none of this advice myself.

00:23:02   I'm actually preparing to launch my 3.0 now.

00:23:06   But that's not because it was planned this way,

00:23:07   it's because it took too long.

00:23:09   I wanted to launch it in the fall and I just didn't.

00:23:11   But, you know, this is,

00:23:14   and honestly, this is not a bad time to release a big point,

00:23:16   you know, a big point 0 update.

00:23:18   Because there's not a lot else going on.

00:23:22   And there is some concern there that, you know,

00:23:25   you need to be aware of things like the PR seasons

00:23:29   and calendar and advertising and everything like that.

00:23:32   One of the good things is that, well,

00:23:35   a good thing if you're looking to buy ads

00:23:39   or, you know, things like App Store search ads,

00:23:41   you know, or ads on people's podcasts

00:23:43   or ads on websites or whatever else, Facebook ads,

00:23:45   usually ad inventory is pretty low

00:23:49   in January and February.

00:23:51   And this is a terrible thing if you make your money via ads,

00:23:55   as you taught me and you were right,

00:23:58   that basically your ad revenue tends to drop pretty sharply

00:24:01   in the first few days of January

00:24:03   compared to the year before and, you know,

00:24:05   compared to the week before, even like in December.

00:24:08   And sometimes it takes big corporate ad budgets

00:24:12   a little while to get organized

00:24:13   and start buying things for the new year.

00:24:15   And so if you are an indie, making money via ads,

00:24:19   you know, I think it's important not to freak out

00:24:20   too much about that 'cause it's temporary.

00:24:22   And if you are buying ads,

00:24:24   this is kind of an awesome time to buy ads if you're an indie

00:24:27   'cause you don't have to work on the annual corporate budget

00:24:29   and get approval from a bunch of different departments.

00:24:31   You can just buy the ads right now.

00:24:33   And so you actually might be able to get

00:24:35   a pretty good deal on ad inventory

00:24:37   where things are a little bit cheaper

00:24:38   than they normally would be.

00:24:40   So that's also worth considering.

00:24:41   But for the most part, I think you mainly have to

00:24:45   be aware of like, you know, not releasing things

00:24:48   too close to a holiday or a slow time or a slow weekend.

00:24:52   But I think we're mostly past that now.

00:24:53   You know, as we talk about this, it's January 4th,

00:24:57   probably coming out on the 5th.

00:24:58   So, you know, we're past New Year's Day

00:25:00   and like the day or two after.

00:25:02   I think pretty much any time now, from now forward,

00:25:04   is okay to release things without too much trouble.

00:25:07   - Yeah, and it's just a good, like, in some ways,

00:25:11   it's just a good time to get back to work,

00:25:15   like in a good way.

00:25:15   Like I always find that the fall just feels

00:25:19   just so disjointed for me.

00:25:22   Like it's really hard to really get stuck into things

00:25:25   'cause there's just so many things going on externally,

00:25:28   both professionally as well as personally,

00:25:30   that I kind of like the thought of like,

00:25:34   nothing's really gonna happen for the next couple of months.

00:25:37   And so getting into a normal rhythm,

00:25:39   getting into a, you know, kind of starting some new habits,

00:25:42   not necessarily like in the like,

00:25:43   have New Year's resolutions perspective,

00:25:45   but just by benefit of there not being things

00:25:48   that are gonna be messing with your schedule,

00:25:50   you know, it's kind of a nice time to be able to look at that

00:25:54   and to hopefully, you know, like I really enjoy this process

00:25:57   of sitting down and being like, what do I wanna work on?

00:26:00   You know, what is actually going to be

00:26:02   an interesting thing to build?

00:26:04   What's, you know, what would I enjoy in that?

00:26:07   And so it's a good time to be thoughtful about that

00:26:10   and to kind of think that, you know,

00:26:11   what is something that's maybe like,

00:26:13   the level of difficulty might be a little higher,

00:26:16   you know, 'cause this is a good time too,

00:26:17   maybe to try and fail.

00:26:19   You know, you try something that's a bit risky

00:26:20   that might not work out.

00:26:22   Like it's a better time to do that now

00:26:24   than, you know, maybe later in the year

00:26:27   or when things are a bit more high pressure.

00:26:30   You know, like I've, I think it was like two or three

00:26:33   Christmases ago, back when the Christmas bump

00:26:36   was just dramatic.

00:26:37   Like I remember the early days of the App Store,

00:26:40   I would, you know, the Christmas day

00:26:42   and the day after Christmas were something like 8% or 10%

00:26:45   of my yearly revenue.

00:26:46   Like it was huge and dramatic.

00:26:48   - Oh yeah.

00:26:49   - Thankfully that's kind of settled down a bit.

00:26:51   Like as cool as it was to make that much money,

00:26:53   like it was a bit terrifying.

00:26:54   'Cause I remember a couple years ago,

00:26:56   I had a bug in my main app that I released

00:27:01   like, I think it was about five, six days before Christmas.

00:27:05   I released it and it turned out the bug,

00:27:08   like the app worked completely fine,

00:27:10   except for all of the in-app purchases didn't work.

00:27:14   (laughing)

00:27:15   - It worked fine, so I couldn't make any money.

00:27:17   - Exactly.

00:27:18   So that was a bit terrifying.

00:27:19   And I, you know, did the bug,

00:27:21   it was one of these like trivial things

00:27:23   that there's a bit of debug logic that I had to flip over.

00:27:25   And then, you know, resubmitted to Apple,

00:27:27   did the expedited request.

00:27:29   And in the end it was fine.

00:27:32   Like the app was, you know, working in a functional way

00:27:34   on Christmas day, which was super important.

00:27:37   But I love that we're sort of past some of these things

00:27:41   where you have that high stakes, that high stress,

00:27:43   that if that app had been broken on Christmas day,

00:27:45   it would have had a dramatic impact.

00:27:47   And so I love this kind of time of the year

00:27:50   where if something gets busted, if something gets broken,

00:27:53   like the stakes are much lower.

00:27:54   Like it's still impactful.

00:27:56   It's not like I said, I wanna just be cavalier about things.

00:27:58   But it's nice to kind of have that pressure

00:28:00   taken off a little bit, and to be able to kind of

00:28:02   really dive into some bigger projects in that way.

00:28:06   - Oh yeah, I mean, and what you said earlier,

00:28:08   I mean, like about how this is such a great work time,

00:28:10   'cause like there's no interruptions.

00:28:12   Like I love this time of year.

00:28:13   I mean, I hate winter in general,

00:28:15   'cause I can't go outside, because the outside world

00:28:17   just hates me, but I'm a huge fan of the amount of work

00:28:21   I can get done during this time.

00:28:23   Because yeah, there's no holidays, there's no,

00:28:25   well there's very few holidays,

00:28:27   there's no like family needs really.

00:28:29   It's just a solid like couple of months really

00:28:32   where there's nothing else to do but work.

00:28:35   And I kinda like it.

00:28:37   So anyway, thank you everybody for listening.

00:28:39   Good luck getting back to work yourselves.

00:28:41   And we'll talk to you next week.

00:28:43   - Bye.

00:28:44   [BLANK_AUDIO]