Under the Radar

Under the Radar 78: Difficult Indulgences


  welcome to under the radar a show about

  independent iOS app development I'm

  Marco Arment and I'm David Smith under

  the radar is never longer than 30

  minutes so let's get started so you as

  the listener would probably not be aware

  of this but Marco and I have actually

  been doing a fair bit of traveling

  recently and so we've the you know we've

  been having an interesting cycle of

  recording shows slightly out of sequence

  or bunching them up but for me the most

  most recent thing was the last last week

  I went on a 110 mile Appalachian Trail

  like backpacking trip and did by myself

  and ended up with a lot of time too

  so I guess as I was wandering around to

  think about you know anything about

  think about my work think about whether

  the things I was making and as a result

  of that I think it came with it with a

  topic that would be interesting to

  discuss here I guess you could say I

  developed some perspective

  well I while I was out on my walk and

  specifically the something that I kept

  coming back to was this feeling that one

  of the things that is the biggest

  challenge I faced in in my work and I

  think as an independent is something

  that is a pretty common challenge to to

  deal with it's this feeling of how do

  you deal with like difficult hard often

  not particularly interesting problems

  that are necessary or are part of the

  you know the part of the work that you

  do because you know I was as I was

  walking along I was thinking about kind

  of like the tasks that I'd like to do in

  my apps you know what are the big

  features what are the things that I want

  to tackle and I noticed that almost

  everything on the list at this point you

  know for a lot of my apps are fairly

  mature the things that I run into now

  are these difficult hard problems that

  you know I know we're solvable it's not

  like I'm doing doing some kind of R&D

  thing where I'm junior I just want to

  like go and invent some crazy new thing

  it's like these aren't problems that I

  feel like ours should be in the realm of

  solvable but they're difficult

  but they're hard and being motivated to

  tackle them when it isn't the situation

  that I have you know have a boss who's

  assigning them to me like here's this

  feature that you must implement you know

  here's what you're going to work on for

  the next three weeks if that were the

  case that might be a little bit easier

  but you know when I have to choose to

  essentially I have to choose to

  undertake the pain that I know is going

  to be implementing that feature going

  down the road of you know lots of dead

  ends lots of features lots of you know

  false starts and you know it attempts at

  this particular solution that turns out

  to not work out being motivated to do

  that is something that I struggle with

  but in retrospect when I look at it I

  always yeah it's like some of the

  features that I'm most proud of tend to

  be you know features where I was able to

  get over that hump and actually start

  working actually get into it actually

  solve it you know and then I can look

  back and it's usually that's that's the

  cool stuff that's the stuff that

  separates my apps from you know my

  competitors are trying to tackle these

  features and one thing that I think and

  so as a surface a jumping in point for

  this I would wanted to say is I've

  always admired with you Marco that it

  seems like these are you kind of these

  are the features that you almost seem to

  relish in doing that going off on these

  several month like vision quests where

  you dive down into these really

  complicated low-level or hard to solve

  problems and then you know coming back

  with really cool solutions is something

  that you've done time and time again for

  all of the products that you've made and

  so as I was sitting there we're

  wandering around and being thinking

  about this I was like you know what I

  need to do I need to ask Marco like how

  do you motivate yourself to tackle those

  kinds of problems when you know they're

  going to be difficult to get started

  with I think it's a lot of like what's

  what satisfies you as a programmer like

  what do you most like to do and you know

  this is different for a lot of people

  typically you know what's what's fairly

  common among most programmers is that we

  like to generally work on new things at

  least you know so that's

  that's like one-one you know big gimme

  is like you know we are almost always

  motivated to to work on something new

  that's it that interests us for me one

  of those things is tricky low-level code

  some kind of like you know low-level

  dealing with bits or bytes or sound or

  algorithm type things that aren't too

  academically hard but that require like

  low-level messing around I always really

  enjoy that stuff so you know it in in

  overcast there's things like the audio

  engine you know all the effects the be

  smart speed of voice boost effects you

  know that that stuff always I just did

  enjoy it and when when there's something

  like that that I enjoy you know like

  most programmers I would I think I would

  rather work on the kind of thing I enjoy

  even if it means you know ignoring or

  procrastinating the more boring things

  that I probably should also do I think

  this is a problem most programmers have

  the only question is what those

  interesting things are I mean to me like

  here I was like writing this crazy you

  know watch offline transcoding engine

  and at the same time ice overcast is

  almost three years old and I've never

  had an email change form and my password

  resets are I think a little bit broken

  that that is totally backwards

  priorities like I really like I get

  emails from people I'd say almost every

  day saying hey is there a way for me to

  change my account email address and the

  answer is no there isn't and there

  really should be I should have done that

  like on week one or week two overcast

  almost three years ago but I haven't

  because it's it's never you know the

  idea of doing that is like you know

  terminally uninteresting to me to the

  point where anything else that I have to

  do with the app has taken priority over

  that for the last two two-and-a-half

  years and so for me like diving into

  these really hard tricky problems is you

  know it's often procrastination and it's

  off it's just it's what I like to do

  it's like

  anything I like to do for me like what's

  what's heavily motivating usually is

  either things that are things that make

  me money directly like like you know

  writing an ad system writing that system

  has actually been a lot more work than I

  expected it to be it's you know it's not

  I'm not like writing a whole network

  like Adsense or anything but just

  putting the parts in place to have a

  decent ad system that's that's but

  that's good for both me and the buyers

  of the ads and the users and you know

  and all the different like little

  management tools you need like the

  ability to like to monitor how they're

  doing and give people stats and issue

  refunds if necessary and things like

  that you know I I'm having to build all

  this stuff from scratch and I'm I've

  been mostly motivated to do that pretty

  well because it is directly related to

  how I'm making money and it's doing well

  so far so that that motivates me on that

  angle but also I get very heavily

  motivated by doing something cool with

  you know with low level stuff you know

  like this morning so we're doing were

  actually doing live shows we as we

  mentioned on this show I think a couple

  of weeks ago we are doing under the

  radar live at Cocoa conf at WBC that

  COCOMs running a conference called next

  door which is like literally next door

  down the block from the from Muska or

  from the San Jose Convention Center

  where WBC is being held and we will be

  doing this show live that week on the

  Tuesday because I think June 6th right

  at about 1:45 p.m. Pacific and and I'm

  also also doing ATP live the day before

  then the evening before at Coco Kampf

  I mean sorry adult conf rather and so

  we're doing these live shows and I

  thought you know it would be nice if I

  had a soundboard app for ATP and a timer

  app for this show and to show on my

  computer screen during the show so this

  morning I I spent this morning writing a

  sound board there are a million sound

  board apps out there but none of them

  were exactly what I wanted I wanted of

  course my own custom thing because I'm

  I'm picky like that and so I spent the

  morning writing a sound board I was

  woken up early by my allergies I

  couldn't breathe anymore so I figured

  let's get to programming it can't sleep

  anymore so let's get the program

  so so that was you know novel it was

  kind of dealing with audio stuff because

  of course I had to build in things like

  automatically detecting when the out

  when the output device becomes

  unavailable and putting up a little

  alert thing on the top so I don't you

  know so I noticed that if I'd happens

  during recording stuff I'm never gonna

  really need like I'm really glad that

  that makes no no sense I shouldn't have

  written my own soundboard app there's

  there's many of them in the App Store on

  the Mac App Store there's probably even

  more in iOS and there's probably eat

  there's even more of them outside of the

  App Store but I wrote it anyway because

  I had a few hours to kill I was

  delirious from waking up too early on

  allergy medicine and I decided you know

  what this is gonna be a fun thing to do

  and I approached the the watch offline

  playback thing with pretty much the same

  motivations - the allergy component

  because it was at the winter time and my

  motivation there was really like I I

  want to you know IIIi was I wanted to

  make this feature and why I wanted to

  make it I guess we can get into some

  other time or maybe later but I wanted

  to make this feature and I knew it was

  not going to be used by a lot of people

  but I thought if I'm going to do this

  feature I need to do it well and the

  biggest problem was you know on the like

  transferring files to the watch like

  there's no I couldn't do smart speed on

  the watch and the trend the file

  transfers were giant and too slow to

  chance to transfer so I decided let me

  see if I can write a transcoding engine

  because you know I I phones are pretty

  fast these days and so what this this

  was kind of like a like a perfect storm

  of motivations for me to do something

  which is that it was a hard technical

  challenge none of my competitors as far

  as I know were doing it and it

  accomplished something that I think most

  people thought wasn't possible or

  wouldn't have thought to do and I love

  that combination like to me that's a

  huge motivator and then to end it to

  also involve you know there's this

  low-level audio stuff that I enjoy so

  much was it was just the cherry on top

  and then of course up

  zatia trying to make the transcodes

  faster it's a fun game to play when

  you're a programmer of like hey you know

  if I if I change the way I do this it

  becomes 10 times faster let's see how

  many times I can do that and it it ends

  up just being very satisfying and this

  is this was one of the problems with

  being an indie and not having anybody

  like telling me what I need to be

  working on that often times these kind

  of deep dives into difficult technical

  features often times these are not a

  good idea often times they're not an

  efficient use of your time in fact I

  would say probably most of the time they

  aren't an efficient use of your time but

  because I define my own you know to-do

  list basically and that's one of the

  benefits of doing your own products

  because it I find my own to-do list I

  basically take the indulgence of doing

  cool things like this because it let's

  be honest it is largely an indulgence to

  be able to do stuff like this cuz you

  know a lot of times you're not gonna get

  paid back on I mean I did this entire

  watch offline playback feature and so

  far it's being used by something like

  0.2% of users every day it's it's very

  very low according to my awesome

  home-built analytics which I also built

  but there's actually isn't awesome it is

  home built analytics I would not

  describe it as awesome but so you know

  it's being used by very few people it

  probably isn't the best idea for

  business to have done it if I am honest

  with myself but it was a really hard

  problem that that satisfied me immensely

  while working on it it is right am I in

  my wheelhouse of like low-level audio

  stuff that I enjoy working on so much

  and it gave me a competitive advantage

  even though it's a very very small one

  but it gave me a competitive advantage

  at least for the time being and I'm you

  know I'm sure that won't last very long

  but for the time being it's there and so

  all those it just it forms motivation

  like when it has a combination like that

  whereas if you are somebody who doesn't

  like working on low level C code for

  dealing with core audio stuff or you

  know whatever it whatever your hard

  problem that's facing you might be if

  that doesn't interest you I totally get

  why you wouldn't want to do it or you

  know why you'd why you procrastinated or

  you know just try to find ways around

  doing it

  and there's lots of things like that for

  me just not this kind of thing yeah

  because I feel like what I'm hearing is

  it's the a it's like the first step is

  to kind of try and understand yourself

  and understand what things are going to

  mix you know what things are you going

  to enjoy building are you gonna be

  motivated to build what's the kind of

  thing you know what would be like Lola

  who audio stuff just sounds awful to me

  like my little experience with that has

  always been you know pain and suffering

  rather than you know joy and delight and

  so like for me you know it's like those

  probably aren't the directions to that

  you know would motivate me to go into

  and I think maybe there's something a

  interesting and understanding that you

  know in you and I in some ways are as

  similar at premium professionally as two

  people could be in some ways you know

  we've both been doing the same basically

  the same job for the last eight years

  you know we do it in fair in sort of

  fairly similar ways we make our living

  fairly similarly yeah but even there

  even still we have these varied I think

  very different preferences and things

  that we would act the parts of the job

  that we actually enjoy and so it's good

  to just I think be introspective

  probably first and understanding you

  know it when I see myself

  procrastinating I think one of the

  things that I've started to try and ask

  myself it's like why don't I want to do

  that because usually there's a reason

  and sometimes it's a good reason and

  sometimes you know it's a bad reason but

  you know the end up with lots of the but

  you end up with the you know this funny

  situation of at a certain point like

  either you know when you're independent

  you either will be in the situation

  where the thing just won't get done

  because there's not like there's someone

  else on the team who it can get punted

  to it's like it's you're you're going to

  do it or you're not and so trying to at

  least understand why you're not doing it

  you know there are many features and I

  mean I have whole apps that you know

  I've sort of I've half-heartedly built

  or I

  I didn't it's nice for some reason

  didn't catch my imagination I guess you

  could say it's like if it if it didn't

  if it doesn't have that getting can't

  get over that initial hump it'll just

  sit there and kind of languish and even

  when it might from a business

  perspective be a good idea or you know

  from a just in a utility to the world's

  perspective might be a good thing like

  theirs if it doesn't catch my attention

  I know I won't really be able to do it

  and so it is something that I don't but

  I think increasingly and this is where I

  was trying to think I'm sort of coming

  around to is well while I think that is

  how I've acted for for a long time now

  like I look at my board my business and

  I think you know like I think I'm by

  allowing myself to do the things that

  only the things that I enjoy I'm

  probably hurting the effectiveness of my

  of my business which is you know which

  is problematic in some ways but honestly

  like the more fundamental thing that I'm

  starting to worry about and I'm starting

  to think about a lot more is I'm not

  getting better at a very fast rate

  anymore that you know my skills and my

  abilities as I go down this would be you

  know as I keep doing the things that I'm

  good at and enjoy doing I get better I

  get incrementally better at doing those

  things but I don't tackle these bigger

  harder problems and you know it's like

  your example of like a password reset

  form or an email change form like it's

  not that that's a hard text problem to

  do but I know for myself

  I have all these features sort of in

  that vein that I haven't done

  and as a result like they're probably

  disproportionately more difficult to do

  than they should be because it shouldn't

  be that hard to do a lot some of these

  things they're fairly straightforward

  but if you put them off for long enough

  and you know at a certain point it

  actually does become difficult because

  you become very rusty at doing those

  kinds of things yeah I mean otherwise it

  would take a lot of rust to be too rusty

  to make an email change form but sure

  you know and there's a couple things

  there I want to unpack

  you know one of them the the getting

  better at new things and learning the

  things that I think we should we should

  come back to but also you know I think

  it's important that as I mentioned like

  one of the one of the benefits of

  working for yourself is being able to to

  look at a lot of the things that that

  the world wants you to do or that you

  think you're obligated to do and on some

  of those you can just say no and not all

  of them and you know some of them are

  more important than others some of them

  there's there's more ramifications if

  you if you don't do them you know that

  you should think about but you know like

  so many things I think there's a healthy

  balance to be found you know you're an

  indie you have the ability to not do

  stuff you don't want to do and you have

  the ability as I said earlier to to you

  know take the indulgence of working on

  something that might not be worth the

  time you're putting into it in pure

  business terms but that you might want

  to do anyway it's it's kind of like

  eating dessert well you know that's

  that's why I use I use the term

  indulgence because like you're allowed

  to give yourself that you're allowed to

  do these something cool that that it

  doesn't make sense for that from the

  business as long as you don't only do

  that as long as you don't you don't do

  that out of balance such that your

  business will suffer and you won't be

  able to do this anymore like and that's

  this is a balance that many many

  companies and Indies have a hard time

  striking you know everyone has like

  their pet project they would love to do

  or their their their preferred way of

  doing things and and if it's if it

  doesn't make sense business-wise to do


  you can still do it sometimes you know

  you can have fun with things you can

  have side projects you can you can you

  know take the the indulgence of doing

  some kind of like crazy ridiculous thing

  to make your app 1% better because you

  just wanted to do it that just can't be

  all you do and similarly you know the

  list of things that like it's a huge

  problem if you don't do them there are a

  few things on there that that's true for

  but that isn't true for the whole list

  and as an indie I feel like you should

  you should let yourself have that that's

  part you know we as Indies we do a lot

  of a lot more you know administration

  and management of stuff like taxes and

  accounting all stuff like we take on a

  lot of burdens there and we also take a

  huge risk compared

  people who work for other people and I

  think part of the reason we take that

  and part of the payoff of doing that is

  this ability to to you know miss spend

  some of our time because we can we can

  decide to do that as long as it doesn't

  cause problems for the business as a

  whole you know as long as we keep

  everything a balance this episode of

  under the radar is brought to you by a

  way your luggage shouldn't cost more

  than your plane ticket and that's why

  away makes premium suitcases with

  fantastic features for under $300 go to

  a way travel comma slash radar and you

  can peruse their entire collection of

  suitcases all made with premium German

  polycarbonate the interior of an away

  suitcase features a patent-pending

  compression system that is helpful in if

  you're an over-packer they have a

  four-wheel 360° spinner system that is

  awesome for navigating tight spaces a

  TSA combination lock a removable

  washable laundry bag and also a great

  feature which is a USB power brick

  integrated right into the case so when

  they sent one of me one of these to try

  out the thing that well I'm I loves to

  see that it's you know says that it can

  charge my phone up to five times when I

  was really curious to see is how that

  would work with something other than a

  phone and so I took my 12 inch macbook a

  USB a two USBC connector plugged it in

  and it reports itself as a 10 watt

  charger which is great you know you

  never know when you're gonna need to get

  some work done and your laptops running

  low and you don't have access to a plug

  now you could just plug right into your

  suitcase that's kind of cool

  we believe in the quality of their

  products this is why they offer a

  lifetime guarantee if anything breaks

  they'll fix it or replace it for life

  they also have a 100 day trial and free

  shipping on any order within the lower

  48 states you can live with it travel

  with it try it out and if at any point

  you decide it's not for you you can

  return it for a full refund no questions


  travel smarter with a suitcase that

  charges your phone or your macbook

  because I found out to find out more go

  to away travel comm slash radar and you

  can use the code radar at checkout to

  get $20 off any of their suitcases

  that's a way travel comm slash radar and

  use code radar at checkout for $20 off

  Thank You jewelry away for their support

  of this show and all of real afm all

  right so I think it is worth coming back

  a little bit to what you said earlier

  about you know that you're you aren't

  getting better as quickly as you used to

  or as quickly as you want to and that's

  so you know

  if you do like the indie indulgence I do

  it I want kind of thing like for too

  long then this this is a problem that

  like you will only do the things that

  you want to do and you won't get better

  other things and hi I have the same

  problem in in a lot of areas you know

  it's so you know for example things like

  I haven't really been pressured to learn

  Swift because why would I you know look

  as we've discussed like wait there's

  some reasons I'm kind of interested in

  it a little bit and everything but like

  when it comes down to you know what I

  actually do day to day there's nothing

  really pushing me to learn it right this

  second or to convert or anything or to

  write new code and Swift you know right


  there is no like you know big standard

  we also talked about how neither of us

  are very heavy unit testers

  there's nothing forcing us to become

  heavy unit testers but you know certain

  things do it bring new topics to us and

  new skills to us out of necessity so

  things like you know when when it when

  the AppStore economic landscape shifts

  around we're forced to do different

  types of business models are forced to

  try things like freemium and ads and

  things like that and and so I feel like

  just being in this ecosystem does push

  us into a few new things here and there

  but obviously not you know every kind of

  thing I'm wondering like is there is

  there a specific kind of area or example

  that that you feel like you you know

  should be getting better in but just are

  not being pressured to I mean I think

  the hardest thing about that question is

  that it's it falls a lot in the it's

  like the it's an unknown loss that it's

  like it's hard for me to know exactly if

  there's a particular area where I'm

  deficient because in some ways by the

  very nature of it being a deficiency

  being an area that I'm not exposed to

  being something that I'm not

  you know it's forcing myself to

  undertake I don't understand what I'm

  missing out on and so it's it's tricky

  like but I think about the situations

  where like I used to be really scared

  about dealing with low-level core

  graphic stuff like that was an area like

  doing animations or things like that

  that I used to think

  we're really it was it was just this

  whole this little black box that I never

  opened up that it was just terrifying to

  me and I read more recently like I've

  gotten used to that and like I in

  activity plus plus was in area where

  it's like I hit this wall where I was

  trying to make this animation and all of

  a sudden it's like the only way I'm

  going to be able to do this is if I drop

  down a level and so I it's like well I

  really liked this thought I had in my

  mind for what the animation would look

  like and so I dived I drove in and I

  really you know like learned all this

  crazy stuff and got it to work and it's

  like now I have this whole other tool

  set that I can you know as I'm looking

  at problems in you know my other apps

  are in new apps I have this whole tool

  set that I just completely didn't have

  before and these capabilities that I

  didn't even like I sort of

  intellectually knew probably existed but

  I didn't really understand what that

  meant and I think that is like that

  experience that you can sort of

  intellectually know that something is

  possible but until you've actually done

  it it can be really you don't really

  know what you're missing out on and I

  think when I the the thing that I was

  trying to sort of Chasen myself with in

  this experience or like in this thought

  process that I've been having recently

  is the I don't know what all those

  things are that I'm missing and but I

  know that they exist and I want to try

  and motivate myself to tackle problems

  that are difficult so that I can

  discover what those things are because

  you know the things that I do understand

  the things that I have a great handle on

  are the things that are easier are the

  things that came more naturally to me

  like another area that I think is

  something that I'm trying to think about

  more is having a better understanding

  around graphic design not necessarily in

  terms of like app design but in terms of

  you know like actual art type of things

  and having a better sense of that worry

  wreck right now with this big scary

  thing that like I could never do that

  but I guess history has shown me that

  all these things that I say oh I could

  never do that are probably just things

  that I haven't

  tried and applied myself too and it's

  it's an interesting reminder that you

  know that's the skills that I have now

  at some point probably look like they

  you know these other things look to me

  now do yeah that's fair but you know I

  think also like the life of an indie is

  its broad like they're they're you know

  like I think graphic design is a good

  example because like there are lots of

  things like deep Lilla programming

  things that that we won't need to know

  or shouldn't know because we have to be

  a little more broad and we have to also

  know about things like accounting and

  and business setup to some minor degree

  and things like graphic design a

  marketing like we like there is so much

  out there that we need to know that like

  you know you you might have already

  picked up lots of these things along the

  way but you might not be giving yourself

  credit for them like it you might you

  know it sounds like certain things that

  you perceive as like these big walls

  that that are intimidating to you in

  some way that those things count in

  professional development or betterment

  but that the the things that you that

  you pickable on the way of being an

  independent person and doing things the

  way that you do them especially like so

  thoroughly and and analytically you've

  built and picked up lots of skills along

  the way in that area that you probably

  don't even that you you probably just

  you know did it so gradually or so

  automatically or did it without thinking

  too much about you know how you were

  bettering yourself during that time that

  you aren't even giving yourself credit

  but that all counts like you were

  getting better you you've been getting

  better lots of things over time they

  just might not be like low-level API is

  sure and I mean maybe yeah I think

  you're it's you're probably true that

  I'm being oh I'm being too hard on

  myself with this this thought process

  but yeah I think maybe that may be the

  final takeaway to think about this it's

  just I think it is probably a good thing

  to be conscious of how we're approaching

  difficult problems to see if we're not

  doing them we're not approaching them

  for the right reasons

  because fair enough I'm never going to

  be as good of an icon designer as

  someone like Louie Mantia I mean to be

  fair enough very few people yeah

  right and so like it's not like my goal

  is to do that it's not that I'm trying

  to be everything and to accomplish all

  like to do everything all my own but

  just because I can't get to that end

  it's probably still good for me to look

  at something and say well what could I

  do you know what could I learn what's in

  what's one area that I can try and solve

  the difficult problem and by doing so

  make myself better and that is almost

  certainly going to be a productive

  exercise and with that we're out of time

  this week thank you everybody for

  listening and we'll talk to you next

  week right