PodSearch

Under the Radar

Under the Radar 106: Long Projects

 

00:00:00 ◼   ► welcome to under the radar a show but

00:00:02 ◼   ► independent iOS app development I'm mark

00:00:04 ◼   ► Worman and I'm David Smith under the

00:00:06 ◼   ► radar is never longer than 30 minutes so

00:00:08 ◼   ► let's get started so today I wanted to

00:00:12 ◼   ► talk through an experience I've been

00:00:13 ◼   ► having recently where I so it's very

00:00:18 ◼   ► fair to say I typically do lots and lots

00:00:20 ◼   ► of small little bursts of work on a

00:00:23 ◼   ► variety of my different apps like I have

00:00:25 ◼   ► a lot of different apps so I tend to

00:00:26 ◼   ► just like be like a little bee just

00:00:27 ◼   ► buzzing from flower to flower like

00:00:28 ◼   ► taking care of little things as they

00:00:31 ◼   ► come I never know and then I find myself

00:00:33 ◼   ► in a situation where instead I need to

00:00:36 ◼   ► kind of sit down and have a kind of a

00:00:38 ◼   ► long extended you know development

00:00:41 ◼   ► project to really push a product forward

00:00:43 ◼   ► and for me right now that's around

00:00:46 ◼   ► workouts plus plus which is my workout

00:00:49 ◼   ► management and configuration app for the

00:00:52 ◼   ► Apple watch and so usually I would say

00:00:55 ◼   ► the longest I work on a you know on a

00:00:58 ◼   ► particular update to an app is maybe a

00:01:00 ◼   ► week sometimes two at the most and at

00:01:02 ◼   ► this point I'm coming up on two months

00:01:04 ◼   ► working on this update for workouts plus

00:01:06 ◼   ► so it's a pretty substantial amount of

00:01:10 ◼   ► time and energy and investment that has

00:01:12 ◼   ► gone into this update and you know while

00:01:13 ◼   ► I've had to do bits and pieces from side

00:01:15 ◼   ► to side which I'll actually get into as

00:01:17 ◼   ► a topic it's a long time thing and I

00:01:20 ◼   ► think is it looking right now I'm aiming

00:01:22 ◼   ► to have the update out at the beginning

00:01:23 ◼   ► of December which would have meant that

00:01:26 ◼   ► we've been about three months of work

00:01:28 ◼   ► which is a substantial investment in him

00:01:30 ◼   ► for me in this case too and I also have

00:01:33 ◼   ► this vague sort of outside pressure that

00:01:36 ◼   ► I want the app to be out at the

00:01:37 ◼   ► beginning of December so that it can be

00:01:39 ◼   ► you know sort of nice and stable and out

00:01:42 ◼   ► and available for the new year when is

00:01:45 ◼   ► typically a good good time and a big

00:01:47 ◼   ► time for workout and health and fitness

00:01:49 ◼   ► related things

00:01:50 ◼   ► so as I've been going through this

00:01:53 ◼   ► process I've been trying to keep be

00:01:54 ◼   ► aware of kind of some of the things that

00:01:56 ◼   ► I've had to keep in mind and some of the

00:01:57 ◼   ► things that I've done as a result and it

00:02:00 ◼   ► seems like an interesting topic to talk

00:02:01 ◼   ► about through the show so like probably

00:02:04 ◼   ► best place to start it's just to kind of

00:02:05 ◼   ► unpack some of the things that I've

00:02:07 ◼   ► tried to make sure that I did before I

00:02:09 ◼   ► started and so use some of the questions

00:02:13 ◼   ► that I thought I needed

00:02:13 ◼   ► like it's like why am I doing this like

00:02:16 ◼   ► and you know why do I want to do this

00:02:17 ◼   ► update do I think this is actually a

00:02:18 ◼   ► good idea is it worth it like is this

00:02:21 ◼   ► going to be worth it either in terms of

00:02:23 ◼   ► me you know making the apps dramatically

00:02:25 ◼   ► better expanding my market making more

00:02:27 ◼   ► money or honoring the attention of press

00:02:30 ◼   ► or Apple like whatever it is it's like

00:02:32 ◼   ► trying to understand why I'm doing it

00:02:34 ◼   ► and if it's actually going to be worth

00:02:37 ◼   ► doing trying to understand what I'm

00:02:39 ◼   ► actually trying to accomplish most least

00:02:42 ◼   ► so that I can know when I'm done because

00:02:45 ◼   ► from experience I know that often

00:02:46 ◼   ► what'll happen is I will go into one of

00:02:48 ◼   ► these development projects where I'm

00:02:49 ◼   ► like okay I give myself permission to

00:02:51 ◼   ► kind of run wild and to not have it be

00:02:54 ◼   ► just a couple of weeks and then I can

00:02:57 ◼   ► just sort of end up aimlessly wandering

00:02:59 ◼   ► in the wilderness for weeks and weeks

00:03:01 ◼   ► because I don't really know where I'm

00:03:03 ◼   ► going and I'm just enjoying like the

00:03:04 ◼   ► development process which can be kind of

00:03:07 ◼   ► fun sometimes but can be really damaging

00:03:09 ◼   ► or problematic to getting other things

00:03:12 ◼   ► done if I just like to have this aimless

00:03:14 ◼   ► wanderer so trying to think about like

00:03:15 ◼   ► when will I know I'm done what are the

00:03:17 ◼   ► the core features what it's like my

00:03:19 ◼   ► basic it's almost like when you're

00:03:22 ◼   ► running a term paper or something and

00:03:24 ◼   ► you so if you try and write the

00:03:25 ◼   ► introduction and the conclusion and then

00:03:27 ◼   ► you fill in the middle it's like trying

00:03:28 ◼   ► to work out well what am I going to put

00:03:30 ◼   ► in my release notes when I submit this

00:03:33 ◼   ► to the app store and while that may

00:03:35 ◼   ► change you know how this development

00:03:37 ◼   ► goes it's like if I can't concisely

00:03:39 ◼   ► describe what it is I'm trying to do I'm

00:03:41 ◼   ► almost certainly going to get into

00:03:43 ◼   ► trouble then asking questions like is it

00:03:47 ◼   ► possible and if it's not how do I know

00:03:52 ◼   ► or if I'm not sure if something's

00:03:54 ◼   ► possible like in for example in this

00:03:56 ◼   ► update I've been working on a lot of

00:03:57 ◼   ► Apple watch audio playback stuff some of

00:04:01 ◼   ► that is like kind of possible some some

00:04:03 ◼   ► of it is completely impossible you're

00:04:05 ◼   ► being very kind we've talked about this

00:04:07 ◼   ► before I didn't in Kate detail but

00:04:11 ◼   ► finding that line between possible and

00:04:13 ◼   ► impossible was very important to find

00:04:15 ◼   ► out up front and to make sure before I

00:04:18 ◼   ► committed a lot of energy to the parts

00:04:21 ◼   ► of audio playback on the watch that are

00:04:24 ◼   ► the support of supporting stuff you have

00:04:26 ◼   ► to do you know

00:04:27 ◼   ► the easy part in some ways is that is

00:04:31 ◼   ► that core playback experience like the

00:04:33 ◼   ► hard part is all the other management

00:04:34 ◼   ► and file management and configuration

00:04:36 ◼   ► and syncing and stuff you have to do

00:04:38 ◼   ► it's like making sure I deal with that

00:04:39 ◼   ► first but it's kind of this process of

00:04:41 ◼   ► saying like is this possible am I sure I

00:04:43 ◼   ► can do it what do I want to do and then

00:04:46 ◼   ► why am i doing it and if I can answer

00:04:47 ◼   ► those questions that I'm probably in a

00:04:49 ◼   ► pretty good place to get started yeah I

00:04:52 ◼   ► this is an area the whole just like long

00:04:54 ◼   ► term update or new app management that

00:04:58 ◼   ► I'm just very bad at this I'm very very

00:05:01 ◼   ► bad like I I gave a talk a while ago to

00:05:03 ◼   ► NS conference about how I planned

00:05:06 ◼   ► overcast from a marketing perspective

00:05:07 ◼   ► like 404 1.08 for the initial app launch

00:05:10 ◼   ► and I I made this big document you know

00:05:12 ◼   ► similar to what you were just saying

00:05:13 ◼   ► about how you know how you you kind of

00:05:16 ◼   ► imagine the app store release notes as

00:05:19 ◼   ► like a goal and like what what what

00:05:20 ◼   ► should those say and how do I get there

00:05:22 ◼   ► I did I did a similar thing where like I

00:05:25 ◼   ► basically like laid out the the

00:05:27 ◼   ► marketing bullet points for overcast why

00:05:30 ◼   ► choose this over any other podcast app

00:05:32 ◼   ► and Latos had early on and did a bunch

00:05:35 ◼   ► of market research you know looking at

00:05:36 ◼   ► the other apps to see like it that were

00:05:37 ◼   ► in the that were competitive at the time

00:05:40 ◼   ► and saying like I well why would

00:05:41 ◼   ► somebody use overcast over app X and I

00:05:44 ◼   ► went through all the competitors at the

00:05:46 ◼   ► time big and small why should somebody

00:05:48 ◼   ► choose overcast over this app and that

00:05:50 ◼   ► kind of helped me plan my marketing you

00:05:53 ◼   ► know focus for the app it kind of helped

00:05:56 ◼   ► inform the the feature selection what to

00:05:59 ◼   ► focus on what what to not really focus

00:06:01 ◼   ► on certain markets that I would chose

00:06:04 ◼   ► just to not address I'll have my app do

00:06:07 ◼   ► XY and Z is you know things like smart

00:06:09 ◼   ► speed and voice boost and the main you

00:06:11 ◼   ► know the the reorder of a playlist stuff

00:06:13 ◼   ► and everything all that stuff that was

00:06:14 ◼   ► like my main marketing bullet point list

00:06:16 ◼   ► an app is so much more complicated than

00:06:18 ◼   ► that in practice there's so much more

00:06:21 ◼   ► you have to do those core features of

00:06:23 ◼   ► the app were done probably after three

00:06:28 ◼   ► or four months or at least close enough

00:06:29 ◼   ► to done and then during the beta I kind

00:06:31 ◼   ► of finish them but the app took me like

00:06:33 ◼   ► a year and a half or two years to make I

00:06:35 ◼   ► think so I forget exactly it's been a

00:06:37 ◼   ► while and so the entire rest of the time

00:06:40 ◼   ► was spent

00:06:41 ◼   ► things that were not on my planning list

00:06:43 ◼   ► you know just doing all the different

00:06:45 ◼   ► administrative screens and the backend

00:06:48 ◼   ► on the servers and all the different UI

00:06:51 ◼   ► details and I find that I'm very very

00:06:54 ◼   ► bad at time management and and I would

00:06:58 ◼   ► say completion estimation deadlines

00:07:00 ◼   ► estimation once I get into all that

00:07:03 ◼   ► nitty-gritty stuff of you know like the

00:07:06 ◼   ► main feature might be complete or close

00:07:08 ◼   ► to complete because the main feature

00:07:10 ◼   ► might be some cool technical thing that

00:07:12 ◼   ► I'm doing that you know that took maybe

00:07:14 ◼   ► a day or two or a month and in the worst

00:07:16 ◼   ► cases you know but then the entire rest

00:07:19 ◼   ► of the app around it that's so much more

00:07:22 ◼   ► complicated you know I had a major

00:07:24 ◼   ► problem with this this past summer when

00:07:26 ◼   ► the iOS 11 changes came in and and even

00:07:30 ◼   ► before I knew about the I out the the

00:07:32 ◼   ► iPhone 10 you know even when I when it

00:07:34 ◼   ► was just I was 11 and drag and drop and

00:07:36 ◼   ► all the new tableview mechanics and and

00:07:38 ◼   ► everything else I thought I would have

00:07:41 ◼   ► time for a major feature update this

00:07:43 ◼   ► fall as well as a UI update to iOS 11

00:07:47 ◼   ► and not only did I did I totally fail at

00:07:51 ◼   ► that but then at the very last minute

00:07:53 ◼   ► the iPhone 10 was announced and you know

00:07:57 ◼   ► we all knew it was rumored we and we

00:07:58 ◼   ► kind of knew that something like this

00:07:59 ◼   ► was coming but I don't think any of us

00:08:01 ◼   ► really knew how much work it would be

00:08:02 ◼   ► for apps to adopt it well my original

00:08:05 ◼   ► plan for my 4.0 update could contain so

00:08:09 ◼   ► much more than what I actually shipped

00:08:11 ◼   ► us 4.0 because the basics of it of just

00:08:14 ◼   ► like keeping up with Apple that took the

00:08:17 ◼   ► entire amount of time I had and the very

00:08:20 ◼   ► very small number of bullet point

00:08:22 ◼   ► features that actually made it out in

00:08:23 ◼   ► addition to those like though like the

00:08:25 ◼   ► new like contextual row actions where

00:08:27 ◼   ► you can pull across the whole road to

00:08:29 ◼   ► delete like mail I added those on the

00:08:31 ◼   ► very last day of the beta it took me

00:08:33 ◼   ► half a day I added them in the very last

00:08:35 ◼   ► build I think the entire rest of the

00:08:38 ◼   ► time was spent on yeah every on the

00:08:43 ◼   ► massive amount of work required to just

00:08:45 ◼   ► update the UI for these things and to to

00:08:47 ◼   ► pull out some of my old hacks and put it

00:08:49 ◼   ► in a couple of new hacks but try to keep

00:08:50 ◼   ► the new hacks at least fewer a number

00:08:53 ◼   ► that were severity than the old one

00:08:54 ◼   ► and I just completely mismanaged and

00:08:58 ◼   ► more importantly totally miss estimated

00:09:01 ◼   ► the entire project yes I feel like

00:09:04 ◼   ► through the thing that I sound similar

00:09:07 ◼   ► happened to you but I know happens to me

00:09:08 ◼   ► many times is not necessarily realizing

00:09:11 ◼   ► to how once you start embarking down the

00:09:15 ◼   ► road of a big update the awkward

00:09:17 ◼   ► position it finds you you find yourself

00:09:18 ◼   ► in is then like the app from a

00:09:20 ◼   ► user-facing perspective essentially

00:09:22 ◼   ► appears stalled then your note use all

00:09:27 ◼   ► of a sudden you stop getting small minor

00:09:29 ◼   ► like incremental updates that you know

00:09:32 ◼   ► like the things that just take a half a

00:09:34 ◼   ► day to work on to build an ad to the app

00:09:36 ◼   ► like all of a sudden they get sort of

00:09:38 ◼   ► stuck behind this dam of this big

00:09:41 ◼   ► feature that it feels really it's either

00:09:42 ◼   ► technically difficult to ship because

00:09:44 ◼   ► you end up with weird like version

00:09:46 ◼   ► control management stuff of like well I

00:09:48 ◼   ► could add it to the old version but the

00:09:51 ◼   ► old version is like massively gonna be

00:09:53 ◼   ► you know ripped apart and we put back

00:09:55 ◼   ► together or it's doing work that is

00:09:57 ◼   ► going to be you know replaced or have to

00:09:59 ◼   ► be repeated and you know in the actual

00:10:01 ◼   ► like the new for the new feature branch

00:10:03 ◼   ► or things like that like you end up in

00:10:05 ◼   ► these really awkward places where

00:10:06 ◼   ► suddenly the app just kind of gets stuck

00:10:09 ◼   ► and that's really awkward and I feel

00:10:11 ◼   ► like in some ways it's a good thing to

00:10:12 ◼   ► keep in the front of my mind that you

00:10:15 ◼   ► know right now all of my apps

00:10:16 ◼   ► except for workouts plus plus have been

00:10:19 ◼   ► updated for the iPhone 10 and that's

00:10:23 ◼   ► like that's good like that all those

00:10:25 ◼   ► update those updates are up but for

00:10:27 ◼   ► users of workouts plus plus as much as

00:10:30 ◼   ► it's nice for me be able to say oh

00:10:31 ◼   ► coming soon like awesome amazing update

00:10:34 ◼   ► that I think you're really going to love

00:10:35 ◼   ► it's kind of awkward to that it's you

00:10:39 ◼   ► know the app that I'm putting the most

00:10:40 ◼   ► effort into is the one that is falling

00:10:42 ◼   ► the most behind and so it's probably

00:10:45 ◼   ► worth making sure that as we're starting

00:10:46 ◼   ► on these projects it's like a sort of

00:10:48 ◼   ► timing them right like often I I think

00:10:51 ◼   ► we've talked about before in the show

00:10:52 ◼   ► where it's often good to do these types

00:10:53 ◼   ► of updates maybe in the sort of like

00:10:57 ◼   ► February to April time group timeframe

00:11:00 ◼   ► in sort of apples development cycle

00:11:02 ◼   ► where things tend to be fairly calm

00:11:04 ◼   ► before wEDC

00:11:05 ◼   ► which I didn't do this time

00:11:08 ◼   ► but in general it's just a weird thing

00:11:11 ◼   ► to keep in mind that like you have to

00:11:13 ◼   ► make sure that is undertaking this

00:11:15 ◼   ► project and pushing making putting the

00:11:16 ◼   ► app into this weird sort of hiatus state

00:11:19 ◼   ► like worth it and a good thing to do I'm

00:11:23 ◼   ► just otherwise you can just sort of you

00:11:25 ◼   ► could actually end up shooting yourself

00:11:26 ◼   ► in the foot by making the app get where

00:11:28 ◼   ► feel sort of feel worse and worse to

00:11:29 ◼   ► your customers and by the time you

00:11:31 ◼   ► finish you arrive it's like you arrive

00:11:32 ◼   ► you arrive back and be like hey here's

00:11:34 ◼   ► this great new thing and they've all

00:11:35 ◼   ► left and that could be rather

00:11:37 ◼   ► problematic this episode is brought to

00:11:40 ◼   ► you by euro never think about Wi-Fi

00:11:43 ◼   ► again euro has created the dream Wi-Fi

00:11:46 ◼   ► set up a fast reliable connection

00:11:48 ◼   ► throughout your entire house even out

00:11:50 ◼   ► into your backyard if you want to and

00:11:52 ◼   ► now is the best time to get on board

00:11:53 ◼   ► with Euro is they've just released their

00:11:55 ◼   ► super slick second generation devices

00:11:56 ◼   ► era has have introduced their tribe and

00:11:59 ◼   ► second generation model along with the

00:12:01 ◼   ► EO beacon which allows you to build a

00:12:03 ◼   ► Wi-Fi system perfectly tailored to your

00:12:05 ◼   ► home the second generation arrow

00:12:06 ◼   ► includes a third five gigahertz radio

00:12:08 ◼   ► making it twice as fast as before this

00:12:11 ◼   ► lets you do more than ever whatever your

00:12:12 ◼   ► Wi-Fi needs zero has the power to

00:12:14 ◼   ► blanket your entire home in fast

00:12:16 ◼   ► reliable Wi-Fi it sits flat on any

00:12:19 ◼   ► surface just plug into the wall with the

00:12:20 ◼   ► included power adapter and you are ready

00:12:22 ◼   ► to connect your euro either with

00:12:23 ◼   ► Ethernet or wirelessly and the new arrow

00:12:26 ◼   ► also includes a new thread radio which

00:12:28 ◼   ► lets you connect a low-power devices

00:12:29 ◼   ► such as locked doorbells and more and

00:12:31 ◼   ► the new euro beacon is pretty cool the

00:12:34 ◼   ► Aero beacons you plug it into a wall and

00:12:35 ◼   ► it expands coverage into any room you

00:12:38 ◼   ► can add as many ear beacons as you want

00:12:40 ◼   ► as long as you have a base ear device

00:12:41 ◼   ► the for them to connect to and it even

00:12:43 ◼   ► includes a built-in LED night light with

00:12:45 ◼   ► an ambient night sensors the beacon is

00:12:47 ◼   ► super cool super slick plugs right in

00:12:49 ◼   ► sits flush against the wall you barely

00:12:50 ◼   ► even noticed there it's really great the

00:12:53 ◼   ► ero app also to manage your network from

00:12:54 ◼   ► the palm of your hand and you can also

00:12:56 ◼   ► easily create and share a guest Network

00:12:58 ◼   ► too they make it so easy to do all this

00:13:00 ◼   ► stuff and the ear accustomed ursa port

00:13:02 ◼   ► is great if you need any help the new

00:13:04 ◼   ► era system starts it's just 399 for one

00:13:06 ◼   ► second generation arrow and two beacons

00:13:08 ◼   ► and that is everything you need for I

00:13:10 ◼   ► would say almost any place if you need

00:13:12 ◼   ► more you can add more later but you

00:13:14 ◼   ► probably don't need more than that

00:13:15 ◼   ► listeners of this show can get free

00:13:17 ◼   ► overnight shipping to the US or Canada

00:13:18 ◼   ► when you head over to eurocom it's EER

00:13:21 ◼   ► Oh calm and use promo code radar that's

00:13:24 ◼   ► yo comm promo code radar for free

00:13:26 ◼   ► overnight shipping thank you to ero for

00:13:28 ◼   ► supporting this show so once you've

00:13:31 ◼   ► gotten through all that and you're

00:13:32 ◼   ► actually in the middle of building an

00:13:34 ◼   ► update the hardest things I find in a

00:13:37 ◼   ► lot of ways is keeping motivated keeping

00:13:40 ◼   ► keeping progress moving forward every

00:13:43 ◼   ► day because you know in a large port

00:13:46 ◼   ► like you an independent development

00:13:48 ◼   ► often feels you know fairly isolated or

00:13:51 ◼   ► lonely but I definitely feel is the most

00:13:53 ◼   ► isolated for me when I'm working on

00:13:56 ◼   ► features that take weeks and weeks or

00:13:57 ◼   ► months and months to work on because

00:13:59 ◼   ► it's just kind of like me often though

00:14:01 ◼   ► my own little world working on stuff one

00:14:04 ◼   ► thing I wanted to mention in the show is

00:14:07 ◼   ► over the years of doing this I've

00:14:09 ◼   ► developed a little like I don't know

00:14:11 ◼   ► like it's a little mental crutch that

00:14:13 ◼   ► for me helps me to stay motivated and to

00:14:16 ◼   ► feel like I'm continuing to move forward

00:14:18 ◼   ► because often what will happen you know

00:14:22 ◼   ► you is you can spend all day like a

00:14:25 ◼   ► definitely a focused hard-working day of

00:14:27 ◼   ► effort and you get to the end and you

00:14:30 ◼   ► don't feel like you accomplished

00:14:31 ◼   ► anything and that is just so motivate

00:14:34 ◼   ► demotivating so crushing like those days

00:14:37 ◼   ► are that like then make me start

00:14:39 ◼   ► questioning all kinds of things about

00:14:40 ◼   ► whether I should be working on this is

00:14:42 ◼   ► this good should I just completely drop

00:14:44 ◼   ► this app and like go do something else I

00:14:46 ◼   ► find a new career I'm terrible at this

00:14:47 ◼   ► like lots of lots of knock not

00:14:51 ◼   ► productive good things but you're lucky

00:14:52 ◼   ► if those are just days to I've had

00:14:53 ◼   ► months like that yeah but one thing that

00:14:57 ◼   ► I have found to be helpful for me

00:14:59 ◼   ► personally is to try and every day have

00:15:05 ◼   ► something one thing that I did that day

00:15:08 ◼   ► that I can point to which is can be as

00:15:13 ◼   ► small as Paul can be big whatever it is

00:15:16 ◼   ► but I try and structure my work such

00:15:20 ◼   ► that at the end of the day I have

00:15:22 ◼   ► something that one thing that I can

00:15:24 ◼   ► point to and say like that's what I did

00:15:26 ◼   ► that little feature that thing and it's

00:15:29 ◼   ► a concrete tangible example and

00:15:31 ◼   ► sometimes you can't do this you know

00:15:32 ◼   ► some some projects will just

00:15:34 ◼   ► you're do you're doing some deep model

00:15:36 ◼   ► layer work that takes a few days and

00:15:38 ◼   ► like okay but once you've done it like

00:15:40 ◼   ► then that becomes your thing for the

00:15:42 ◼   ► land those three days but I found that

00:15:45 ◼   ► to be a really and then at the end of

00:15:47 ◼   ► every day I consciously make the that I

00:15:51 ◼   ► consciously make the decision to think

00:15:52 ◼   ► about what I did and to like remind

00:15:54 ◼   ► myself of what I of that thing that I

00:15:56 ◼   ► accomplished even if it is just one

00:15:58 ◼   ► thing and typically it is just one thing

00:15:59 ◼   ► and that I found doing that over and

00:16:04 ◼   ► over again kind of that this that keeps

00:16:07 ◼   ► me honest in terms of keeps me from

00:16:10 ◼   ► getting sucked down rabbit holes that

00:16:12 ◼   ► are sort of unproductive and I'm not

00:16:14 ◼   ► actually getting anywhere in you know

00:16:16 ◼   ► it's like if I have nothing to show for

00:16:17 ◼   ► the end of the day and that happens like

00:16:20 ◼   ► two or three days in a row like maybe

00:16:22 ◼   ► something's wrong maybe I'm doing

00:16:23 ◼   ► something that I really shouldn't be

00:16:25 ◼   ► doing and it gives me that that that

00:16:29 ◼   ► awareness and on the flip side it helps

00:16:32 ◼   ► me to just be aware of that and say like

00:16:35 ◼   ► yes like I did that I did this and if

00:16:37 ◼   ► you and I what I found is like it's

00:16:39 ◼   ► somewhat obvious but like if you string

00:16:40 ◼   ► together enough days where you

00:16:42 ◼   ► accomplish something tangible every day

00:16:43 ◼   ► you make genuine progress and so I don't

00:16:46 ◼   ► that's just like it looks like silly

00:16:47 ◼   ► trick that I've found for tricking

00:16:49 ◼   ► myself and to feel into making progress

00:16:50 ◼   ► especially in the midst of things that

00:16:53 ◼   ► can take a long time yeah it also you

00:16:56 ◼   ► know for me like you know as I mentioned

00:16:57 ◼   ► them a few minutes ago do my little

00:16:59 ◼   ► swipe actions thing in half a day at the

00:17:01 ◼   ► end it made me feel a lot better about

00:17:03 ◼   ► the release like it made me you know I

00:17:06 ◼   ► was having so much doubt during the

00:17:08 ◼   ► development cycle of my for of like am i

00:17:11 ◼   ► doing enough here that customers will

00:17:13 ◼   ► actually care about like if this is

00:17:14 ◼   ► taking you know I'm spending as we

00:17:16 ◼   ► talked before - I'm spending months on

00:17:19 ◼   ► this update and is this actually

00:17:22 ◼   ► including anything that my customers

00:17:23 ◼   ► will get excited about or is it just

00:17:25 ◼   ► changing things or just keeping up with

00:17:28 ◼   ► iOS and new phones like that's just a

00:17:30 ◼   ► bare minimum of what I should be doing

00:17:32 ◼   ► is just keeping up you know ideally I'm

00:17:34 ◼   ► also making things better and so I

00:17:36 ◼   ► started to look for features that were

00:17:38 ◼   ► fairly low complexity to implement that

00:17:42 ◼   ► people have been asking for and just try

00:17:44 ◼   ► to knock some of those out in in like

00:17:46 ◼   ► the last few days that I had

00:17:47 ◼   ► and that really helped a lot not only

00:17:50 ◼   ► for making the update better but for

00:17:52 ◼   ► making me feel like I had spent all this

00:17:55 ◼   ► time - for a for like a sum total

00:17:58 ◼   ► product here of something that was

00:18:00 ◼   ► actually worth that time even though the

00:18:03 ◼   ► distribution within that of how I spent

00:18:05 ◼   ► that time versus those meaningful

00:18:06 ◼   ► features might not have been ideal yeah

00:18:10 ◼   ► and I think the important thing there is

00:18:11 ◼   ► even it almost makes me wonder if you

00:18:12 ◼   ► would have been well served to do those

00:18:15 ◼   ► small little features in the middle of

00:18:17 ◼   ► your development cycle as best as you

00:18:18 ◼   ► could to try and like have these little

00:18:22 ◼   ► rewards or these little like

00:18:25 ◼   ► psychological perks clean Oh for myself

00:18:29 ◼   ► like I love having every now and then

00:18:30 ◼   ► I'll often ends up happening like this

00:18:32 ◼   ► on a Friday but I'll just kind of like

00:18:34 ◼   ► have a day where I just allow myself

00:18:35 ◼   ► like the thing I'm going to do is try

00:18:39 ◼   ► something kind of crazy and I enjoy that

00:18:43 ◼   ► and it's like it's a motivating thing

00:18:44 ◼   ► and an encouraging thing and it allowing

00:18:48 ◼   ► myself kind of a conscious decision to

00:18:50 ◼   ► do that it allows me to make progress in

00:18:53 ◼   ► the like that the kind of the meat and

00:18:55 ◼   ► potatoes part of the app where it's

00:18:57 ◼   ► maybe not quite as fun or not quite as

00:18:59 ◼   ► interesting it's like well once I've

00:19:00 ◼   ► done this then I can work on that cool

00:19:02 ◼   ► thing that I know I'm gonna feel good

00:19:03 ◼   ► about even though even if it mazey might

00:19:06 ◼   ► may be just a teeny little detail or

00:19:07 ◼   ► something that most users will never

00:19:09 ◼   ► notice like I remember when I was

00:19:12 ◼   ► working on the achievement system in

00:19:14 ◼   ► pedometer plus plus where you can earn

00:19:16 ◼   ► badges if you work on them like I

00:19:19 ◼   ► allowed myself a day where I was just

00:19:21 ◼   ► gonna work on making the badges sparkle

00:19:24 ◼   ► when you earn them that's so cool which

00:19:27 ◼   ► was just like a totally silly idea like

00:19:29 ◼   ► it's it's I love that this I love it in

00:19:31 ◼   ► the app I think it works really well and

00:19:32 ◼   ► like it's you know the the menu bar

00:19:35 ◼   ► button at the top that opens the badge

00:19:37 ◼   ► page sparkles too with the same effect

00:19:39 ◼   ► when you have you know have you when you

00:19:42 ◼   ► earn a new badge and things and like

00:19:43 ◼   ► it's great but it was like it was a

00:19:45 ◼   ► reward for a lot of the other hard work

00:19:47 ◼   ► of doing like some ridiculously or so

00:19:51 ◼   ► maybe surprisingly hard and logic

00:19:53 ◼   ► computation to work out you know how you

00:19:56 ◼   ► how you calculate how long your streak

00:19:58 ◼   ► is and what the longest streak you have

00:19:59 ◼   ► is and like there's a really

00:20:01 ◼   ► nasty work you have to do to make that

00:20:03 ◼   ► make that happen but it's like having

00:20:06 ◼   ► these little these little checkpoints

00:20:07 ◼   ► along the way and I thought it was so

00:20:08 ◼   ► fun on that day too the thickness for my

00:20:10 ◼   ► one thing to be like cool sparkly pixie

00:20:13 ◼   ► dust like that was great and it's just

00:20:16 ◼   ► being okay with the fact that like it's

00:20:17 ◼   ► if it sounds a little silly that like

00:20:19 ◼   ► you know I'm a grown professional but

00:20:21 ◼   ► like these are the things I have to do

00:20:23 ◼   ► to make to keep myself motivated be

00:20:25 ◼   ► understanding that if I if I'm

00:20:26 ◼   ► unmotivated if I'm not working

00:20:28 ◼   ► effectively like I'm not making progress

00:20:32 ◼   ► like it's not like oh yeah it's like I

00:20:35 ◼   ► should just intrinsically be motivated

00:20:37 ◼   ► to always work at maximal efficiency

00:20:39 ◼   ► it's like no I have to trick myself and

00:20:41 ◼   ► I have to do things that get you allow

00:20:44 ◼   ► me to get around the fact that I'll get

00:20:46 ◼   ► stuck and I'll get demotivated and then

00:20:48 ◼   ► my productivity overall will drop

00:20:50 ◼   ► precipitously as a result well that you

00:20:53 ◼   ► know you're human like you know you

00:20:54 ◼   ► can't you can't blame yourself or feel

00:20:56 ◼   ► bad for being human and like nobody

00:20:58 ◼   ► likes working tirelessly day after day

00:21:01 ◼   ► on on a project that feel like it's

00:21:03 ◼   ► going nowhere and a lot of people don't

00:21:05 ◼   ► have the choice in the matter you know

00:21:06 ◼   ► they they just have to do that because

00:21:08 ◼   ► their job is you know not very

00:21:10 ◼   ► fulfilling or not being managed well we

00:21:12 ◼   ► as Indies have the freedom we're lucky

00:21:14 ◼   ► that we have the freedom that we can

00:21:17 ◼   ► actually take a day in the middle of a

00:21:19 ◼   ► giant slog of trying to figure out UI

00:21:21 ◼   ► tableview x' new crazy behavior or

00:21:22 ◼   ► something like that or some weird bug or

00:21:24 ◼   ► trying to implement some really tedious

00:21:26 ◼   ► new thing we can take a break in the

00:21:28 ◼   ► middle of that and do something for an

00:21:31 ◼   ► afternoon or a day that that is

00:21:33 ◼   ► fulfilling that we can complete in that

00:21:36 ◼   ► time and that can work that can you know

00:21:38 ◼   ► the whole reason that we that many of us

00:21:41 ◼   ► that I should say but certainly for me

00:21:43 ◼   ► the you know one of the reasons why I

00:21:45 ◼   ► love programming so much and one of the

00:21:46 ◼   ► reasons why I became first a self-taught

00:21:49 ◼   ► and then eventually a more formally

00:21:51 ◼   ► taught programmer is that you know when

00:21:54 ◼   ► when normal people I you know I say I

00:21:56 ◼   ► say loosely attempt to program or do

00:22:00 ◼   ► something else that they don't really

00:22:01 ◼   ► enjoy doing like it may be a certain

00:22:03 ◼   ► subject in school growing up when they

00:22:06 ◼   ► succeed they might not get any kind of

00:22:09 ◼   ► satisfaction out of that

00:22:10 ◼   ► the people who stick with programming

00:22:12 ◼   ► are the ones who can make it through all

00:22:14 ◼   ► the incredibly

00:22:15 ◼   ► tedious and frustrating parts of it

00:22:17 ◼   ► which there are many because they are

00:22:20 ◼   ► motivated so much by the satisfaction

00:22:23 ◼   ► when you make something when something

00:22:26 ◼   ► works when you build something you know

00:22:29 ◼   ► programmers who really get into it are

00:22:32 ◼   ► the ones who like that little hit of

00:22:33 ◼   ► satisfaction or adrenaline or whatever

00:22:36 ◼   ► it is it motivates us through the rest

00:22:38 ◼   ► so you have to find ways if if you're if

00:22:42 ◼   ► you are that kind of person like I am

00:22:43 ◼   ► you have to find ways to keep that

00:22:46 ◼   ► motivation going even when you have to

00:22:49 ◼   ► go through a very very long slog and I

00:22:52 ◼   ► was very bad at that this summer found

00:22:55 ◼   ► it very very hard to to keep myself

00:22:58 ◼   ► motivated and to work hard and to make

00:23:00 ◼   ► forward progress that have just banging

00:23:02 ◼   ► my head against the wall and I think one

00:23:04 ◼   ► thing to this I have found to be very

00:23:06 ◼   ► helpful is trying to involve other

00:23:10 ◼   ► people in the process as best as you can

00:23:12 ◼   ► is another thing that I find really

00:23:14 ◼   ► helps for these kind of these long slogs

00:23:15 ◼   ► and so you know often it's having a very

00:23:18 ◼   ► small there's not even really a beta

00:23:21 ◼   ► group but just other people who are

00:23:23 ◼   ► using the app who can then be giving you

00:23:27 ◼   ► feedback giving you suggestions giving

00:23:29 ◼   ► you reactions and even just giving you

00:23:31 ◼   ► that sense of like you know you ship

00:23:33 ◼   ► something that they enjoy or they like

00:23:34 ◼   ► and they can tell you they like it like

00:23:36 ◼   ► that's encouraging and motivating and

00:23:39 ◼   ► this is well before you'd get into the

00:23:40 ◼   ► you know kind of a broader beta test or

00:23:43 ◼   ► something but just to try and make it so

00:23:44 ◼   ► that it's not just you you know even if

00:23:47 ◼   ► it's just you and a couple of friends or

00:23:48 ◼   ► you and your spouse or whoever it is but

00:23:52 ◼   ► just making it so that it's not just

00:23:53 ◼   ► like if you can make that a little bit

00:23:55 ◼   ► bigger I find this really helpful and

00:23:57 ◼   ► it's also probably helpful in making

00:23:58 ◼   ► sure that you're actually making

00:23:59 ◼   ► progress that you know you can get some

00:24:02 ◼   ► prick you can have some perspective

00:24:03 ◼   ► shared perspective on like is the app

00:24:05 ◼   ► better now with this update than it was

00:24:07 ◼   ► before or not because you can easily

00:24:10 ◼   ► sort of find yourself sucked down into

00:24:11 ◼   ► the rabbit hole where you are doing

00:24:14 ◼   ► something because it's what you've been

00:24:16 ◼   ► working on for a long time but you may

00:24:18 ◼   ► be kind of losing the forest for the

00:24:19 ◼   ► trees at a certain point so it's

00:24:22 ◼   ► definitely helpful to kind of spread

00:24:24 ◼   ► that out a little bit if you have the

00:24:26 ◼   ► ability to do that

00:24:27 ◼   ► yes one of the reasons why I took the

00:24:30 ◼   ► somewhat I think unusual step of

00:24:32 ◼   ► developing the 4.0 UI kind of in the

00:24:35 ◼   ► open I did a lot of like Twitter

00:24:37 ◼   ► development he's clear I'd like post

00:24:39 ◼   ► screenshots on Twitter and say hey what

00:24:41 ◼   ► do you think of this or it's kind of

00:24:42 ◼   ► weird or which of these four options you

00:24:44 ◼   ► think would be best or work well or

00:24:45 ◼   ► whatever else taking kind of a lot of

00:24:46 ◼   ► like informal Twitter polls basically

00:24:48 ◼   ► and normally I would do all this

00:24:51 ◼   ► development in secret and then just

00:24:52 ◼   ► really you know really support the final

00:24:54 ◼   ► product and you know try to make a big

00:24:55 ◼   ► splash or whatever else then and try to

00:24:57 ◼   ► keep everything secret the whole time

00:24:58 ◼   ► which is very stressful and difficult

00:24:59 ◼   ► especially if you want to do a large

00:25:01 ◼   ► beta and this time I just I decided to

00:25:04 ◼   ► just do it in the open in part because I

00:25:07 ◼   ► was tired of keeping things secret but

00:25:09 ◼   ► also in part because I wanted a little

00:25:11 ◼   ► bit more of that validation of that

00:25:13 ◼   ► testing and it actually made a better

00:25:15 ◼   ► product in the end

00:25:16 ◼   ► like having public feedback on it and

00:25:19 ◼   ► you know I know that it's a luxury not

00:25:20 ◼   ► everyone has you know the audience size

00:25:22 ◼   ► to do but you know everyone has

00:25:24 ◼   ► something like that like you know

00:25:26 ◼   ► whatever your you know abilities or

00:25:29 ◼   ► resources are use them you know even if

00:25:32 ◼   ► it isn't you know a bunch of people on

00:25:34 ◼   ► Twitter like it can be friends in real

00:25:36 ◼   ► life it can be you know other testers it

00:25:37 ◼   ► could be people whose opinion you trust

00:25:39 ◼   ► who can take a look at something and can

00:25:41 ◼   ► give you feedback on it like that's

00:25:43 ◼   ► incredibly valuable for not only the

00:25:45 ◼   ► quality of the product which of course

00:25:47 ◼   ► is the ultimate goal at the end but also

00:25:49 ◼   ► you know this mode this motivation

00:25:50 ◼   ► factor in the middle when you're just

00:25:52 ◼   ► slogging through it's nice to know that

00:25:53 ◼   ► you're working on something that people

00:25:55 ◼   ► actually are going to like and probably

00:25:59 ◼   ► the last thing that seems like worth

00:26:01 ◼   ► talking about through is it's like how

00:26:02 ◼   ► to wrap up kind of a big project like

00:26:04 ◼   ► this in terms of some of the little like

00:26:07 ◼   ► I don't know mistakes I've made in the

00:26:09 ◼   ► past that I try and avoid now as I was

00:26:11 ◼   ► thinking about that like one thing that

00:26:13 ◼   ► I do I've never found that like having

00:26:17 ◼   ► an external to-do list management for

00:26:19 ◼   ► code level issues or questions like

00:26:22 ◼   ► never really it just doesn't work with

00:26:24 ◼   ► it great for me but one thing I have

00:26:25 ◼   ► found to be really helpful is to leave

00:26:28 ◼   ► little like bread crumbs in my code that

00:26:31 ◼   ► help me keep track of things that I need

00:26:33 ◼   ► to take care of before I wrap up and

00:26:36 ◼   ► before I ship and so an objective-c I do

00:26:38 ◼   ► these with the pound the warning

00:26:42 ◼   ► I don't know what you call it like

00:26:44 ◼   ► direct declaration where you can

00:26:47 ◼   ► anywhere in Objective C if you just say

00:26:49 ◼   ► pound warning and then you write some

00:26:50 ◼   ► straight write some text that'll show up

00:26:52 ◼   ► when in 8 anytime you build you'll get a

00:26:55 ◼   ► list of those sort of and they're almost

00:26:56 ◼   ► like to do Zoar things that I need to

00:26:58 ◼   ► make sure I check in Swift you don't

00:27:01 ◼   ► have quite the same ability but I would

00:27:02 ◼   ► have taken 2 there which is kind of a

00:27:04 ◼   ► horrible hack but it works is I just say

00:27:07 ◼   ► let warning equal and then a string that

00:27:10 ◼   ► is what needs to be fixed or taken care

00:27:13 ◼   ► of

00:27:13 ◼   ► so then Swift complains that that that

00:27:15 ◼   ► variable is unused and should instead be

00:27:17 ◼   ► assigned to underscore which works just

00:27:20 ◼   ► as well

00:27:21 ◼   ► but for easyacc it works though like

00:27:25 ◼   ► it's it's Swift does not like variables

00:27:27 ◼   ► that are unused so that it that's how I

00:27:29 ◼   ► do it now these are great because these

00:27:32 ◼   ► are usually these are little details

00:27:34 ◼   ► they're like things I need to check or

00:27:37 ◼   ► because you know but I don't want to do

00:27:39 ◼   ► well in developing is like half that

00:27:41 ◼   ► feel like I need to take care of every

00:27:42 ◼   ► little detail as I'm going along because

00:27:45 ◼   ► I made it but wasting a lot of energy on

00:27:46 ◼   ► stuff that ends up not getting into the

00:27:48 ◼   ► final version so these tend to be little

00:27:50 ◼   ► things that like you know it's like make

00:27:51 ◼   ► sure this works in like sometimes it's

00:27:54 ◼   ► localization stuff or you know different

00:27:56 ◼   ► units or it could just be you know trim

00:27:59 ◼   ► it's like make sure this actually works

00:28:00 ◼   ► on the you know the iPhone 5s whatever

00:28:02 ◼   ► the slowest devices or like lieu of

00:28:04 ◼   ► reminders and hints it's like a great

00:28:06 ◼   ► way to kind of do it and then has like

00:28:07 ◼   ► you know as I once I do my final build

00:28:10 ◼   ► for the App Store hey you know if

00:28:11 ◼   ► there's no warnings then I've taken care

00:28:13 ◼   ► of all of those so that's a useful

00:28:15 ◼   ► little trick one thing I always do is I

00:28:18 ◼   ► do a get diff from the last ship version

00:28:21 ◼   ► to the current version that I'm about to

00:28:22 ◼   ► ship and just look through it like it

00:28:24 ◼   ► sometimes it'll be a little tedious and

00:28:26 ◼   ► it'll take a little while but I've got

00:28:29 ◼   ► weird bugs or issues that way and it

00:28:31 ◼   ► also is just really helpful as I'm

00:28:33 ◼   ► preparing my marketing material to

00:28:35 ◼   ► actually like remember all of the things

00:28:37 ◼   ► that have changed and so I don't forget

00:28:39 ◼   ► like cool little you know nuggets or

00:28:41 ◼   ► features and things that I added because

00:28:43 ◼   ► just you know in the scope of the size

00:28:46 ◼   ► of the update I may have missed it so

00:28:47 ◼   ► it's usually a worthwhile like you know

00:28:49 ◼   ► just spend an hour going through that

00:28:50 ◼   ► diff and just kind of getting a sense of

00:28:52 ◼   ► all those changes that you made

00:28:55 ◼   ► and then lastly it's probably a assume

00:28:57 ◼   ► that I have been bitten behind many

00:28:59 ◼   ► times by not doing and so now I'm very I

00:29:01 ◼   ► try to be very regimented about is

00:29:03 ◼   ► making sure that you do it clean or App

00:29:05 ◼   ► Store install of the app onto a via onto

00:29:08 ◼   ► a fresh device use it for a little while

00:29:09 ◼   ► get it set up and then test the update

00:29:12 ◼   ► process to Europe you know to this big

00:29:14 ◼   ► update because the number of times you

00:29:16 ◼   ► kind of forget about things that way you

00:29:19 ◼   ► know even back to bite you it can be

00:29:21 ◼   ► awful so always make sure that you do

00:29:23 ◼   ► that to just catch any weird migration

00:29:25 ◼   ► issues or just things that become really

00:29:27 ◼   ► confusing because if I've you know I

00:29:30 ◼   ► have not been haven't been using the App

00:29:32 ◼   ► Store version of my app for months at

00:29:34 ◼   ► this point so it's important for me to

00:29:36 ◼   ► be reminded of where my customers are

00:29:37 ◼   ► coming from and it should feel really

00:29:39 ◼   ► old when you see it ideally all right

00:29:43 ◼   ► thanks listening everybody I'm going to

00:29:45 ◼   ► talk to you next week bye