8: Vacation
00:00:00
◼
►
Welcome to Under the Radar, a show about independent iOS development.
00:00:03
◼
►
I'm Marco Arment.
00:00:04
◼
►
And I'm David Smith.
00:00:06
◼
►
Under the Radar is never longer than 30 minutes, so let's get started.
00:00:10
◼
►
So today, somewhat tied into the time of year it is, we wanted to do an episode that was
00:00:15
◼
►
a bit more like the ergonomics episode that we talked about a couple of weeks back, and
00:00:22
◼
►
talk to us about something that's a bit less technical and a bit more about taking care
00:00:28
◼
►
of ourselves and making sure that we're doing things that will help us to do our best work.
00:00:33
◼
►
And to that end, I think today we're going to talk a little bit about rest, about vacation,
00:00:36
◼
►
as well as a few other details about what it's like to be on vacation and the things
00:00:40
◼
►
we have to do to make that work. But I know it's something that, over the course of my
00:00:44
◼
►
career, I have been thankfully, I think, getting better at, but it took a long time to get
00:00:50
◼
►
to a point where I could look at my work and say, "It's okay for me to rest. It's okay
00:00:55
◼
►
for me to take breaks, it's for me to take vacation. Because when I used to work for
00:01:00
◼
►
like a regular 9-to-5 job, I had vacation every year that I had to take or I'd lose,
00:01:05
◼
►
and it was a certain measured amount, like I get two weeks of vacation a year, and I
00:01:09
◼
►
would take it. Whereas once you're self-employed, once you're working for yourself, you have
00:01:16
◼
►
to impose that on yourself. And for a couple of years, I really didn't do a great job
00:01:20
◼
►
of that. It was really not good. And I would just kind of work and work. In some ways,
00:01:26
◼
►
I'd get into a cycle where I'd work as hard as I could, and then at some point,
00:01:29
◼
►
you kind of more sort of burn out, and then kind of have to be forced to take a break.
00:01:34
◼
►
And that was not a great pattern. And so it's something that I've had to learn for myself
00:01:39
◼
►
about the importance of and understand that in order for me to really work well, I need
00:01:44
◼
►
to make sure that I'm well rested, that I'm taking care of myself. And that's just
00:01:49
◼
►
something that I think we all have to learn is,
00:01:51
◼
►
have you gone down that path of getting burned out before?
00:01:54
◼
►
- I'm kind of getting burned out now.
00:01:57
◼
►
- There we go, it's timely.
00:01:58
◼
►
- Yeah, I mean, I've gone down that path
00:02:01
◼
►
here and there before.
00:02:03
◼
►
It's rarely on my own work.
00:02:05
◼
►
I was more like during the Tumblr times,
00:02:08
◼
►
you know, when I was there for four years,
00:02:11
◼
►
because it was growing so quickly and so aggressively,
00:02:15
◼
►
and because we were basically always in over our heads
00:02:18
◼
►
during those first four years.
00:02:21
◼
►
And we had no idea like how to scale the site next,
00:02:24
◼
►
how to keep it running, what are we gonna do
00:02:26
◼
►
when we have 20% more users next month?
00:02:29
◼
►
Like that's, how do we scale to that?
00:02:31
◼
►
And how do we match that?
00:02:32
◼
►
How do we keep it all going?
00:02:33
◼
►
That was incredibly stressful.
00:02:35
◼
►
And so I was getting burnt out quite badly on that.
00:02:39
◼
►
And I kept going 'cause I didn't really have much
00:02:41
◼
►
of a choice for most of that time until towards the end
00:02:44
◼
►
when we finally got a bigger staff.
00:02:46
◼
►
but really in those first few years,
00:02:50
◼
►
I kept going past the point of healthy burnout levels
00:02:55
◼
►
because I really didn't have a choice.
00:02:57
◼
►
There were only two of us there
00:02:58
◼
►
and we both were necessary all the time.
00:03:01
◼
►
So it made it hard to do things like take vacations
00:03:05
◼
►
because I would have to remain connected
00:03:09
◼
►
at all or most times.
00:03:12
◼
►
And the times that I would be somewhere
00:03:13
◼
►
without an internet connection,
00:03:16
◼
►
I would always be thinking about. I hope the site's okay. What if it's not? What if
00:03:23
◼
►
it's down now and next time I can get an interconnection it's 12 hours from now and
00:03:28
◼
►
I just have no idea? And it really didn't help that occasionally that did really happen.
00:03:35
◼
►
And so it was a problem every so often where David and I would both have been disconnected
00:03:41
◼
►
through coincidence like during a certain vacation day or something and the site would
00:03:45
◼
►
just you know have some problem, crash, go down, be overloaded, something would go wrong
00:03:50
◼
►
and it would just be down for like multiple hours and sometimes one of us would know about
00:03:56
◼
►
it usually but sometimes neither of us would even know for like an hour and then the monitoring
00:04:02
◼
►
system would finally reach one of us or somebody would reach it or like you know Rackspace
00:04:06
◼
►
would notice and try to call David or me or something. It was always this giant source
00:04:12
◼
►
of kind of this constant underlying stress because when you're running web services,
00:04:15
◼
►
which I'll get to, you're kind of always on call or somebody is always on call and
00:04:20
◼
►
you can make different decisions that reduce the likelihood that something will go wrong
00:04:26
◼
►
or you can design or choose things in such a way that you are not the one who's on
00:04:29
◼
►
call, but all these things have trade-offs of course. But running a web service combined
00:04:36
◼
►
with vacation is difficult I think to manage that the obligation level, the stress level,
00:04:42
◼
►
the burnout level, because you kind of always have to be on and responsible for it to some
00:04:49
◼
►
degree. And when you don't have an app that requires a web service, you still have stuff
00:04:55
◼
►
like support email that like someone has to be taking care of this probably unless you're
00:05:01
◼
►
mean you just ignore it but you know for everyone else in the world someone has to be answering
00:05:05
◼
►
support email somebody has to be dealing with like you know if you don't if you sell outside
00:05:09
◼
►
of an app store and so you sell direct somehow if there's like purchase support like if
00:05:15
◼
►
somebody gives you money and doesn't get a serial number or something like that's
00:05:18
◼
►
really important like you can't just ignore those you know it's like there's any kind
00:05:22
◼
►
of software business, there's probably something where you kind of have to be on call on a
00:05:28
◼
►
regular basis almost all the time or be able to put someone else in that role to cover
00:05:34
◼
►
for you while you're gone. And a lot of people don't or can't have a backup person
00:05:38
◼
►
like that. They can't have anyone else cover it or they don't have someone else covering
00:05:41
◼
►
it and so they kind of never get to turn themselves off and take a break fully and that can very
00:05:47
◼
►
easily lead to burnout. But a lot of times, like when I did the Tumblr, you just kind
00:05:50
◼
►
kind of work through it because it doesn't seem like you have any alternative at the
00:05:55
◼
►
Yeah, because the thing that I think I've come to realize or kind of understand about
00:06:00
◼
►
this is one of the most important things in general, both in terms of if you're working
00:06:05
◼
►
for yourself or you're working for someone else, is understanding sort of like what's
00:06:08
◼
►
for sale, personally. I mean, because there's always going to be some more. There's always
00:06:14
◼
►
going to be more things that you could do, that you think you should do, that you think
00:06:17
◼
►
might benefit your business, might benefit your career,
00:06:21
◼
►
there's always gonna be more things to do.
00:06:22
◼
►
And at a certain point, though, you have to understand
00:06:24
◼
►
that there's a limited, everything's coming at a trade-off.
00:06:28
◼
►
It's like your life is very, it's finite.
00:06:31
◼
►
It's not like you can magically add more time, more energy,
00:06:35
◼
►
more attention to your day.
00:06:36
◼
►
And so you have to decide, well, what's for sale?
00:06:38
◼
►
What am I going to be putting into my career, into my work,
00:06:42
◼
►
that I'm taking, sort of necessarily taking away
00:06:45
◼
►
from other things, whether that be
00:06:47
◼
►
family or relationships or your health or all kinds of other areas. And understanding
00:06:53
◼
►
that the things you're describing are definitely true. There are definitely things that would
00:06:59
◼
►
be bad if went wrong. So I run a variety of web services too. I have all kinds of things
00:07:05
◼
►
like that, lots of apps with lots of users. And the thing that I've had to work through
00:07:11
◼
►
though is how much of my constant cognitive load is for sale. How much of that can I really
00:07:19
◼
►
say, "Okay, I understand that if I miss something, if something goes wrong and goes down, that
00:07:25
◼
►
may impact me negatively in some tangible way, but is that worth it?" The worst things—and
00:07:31
◼
►
this is where I've run into burnout the most—are the instances when, like, if I'm kind of
00:07:37
◼
►
relentlessly working without it being a time-bound thing or without it being a conscious choice.
00:07:44
◼
►
When I launched Feed Wrangler about three years ago, I remember that there was a period
00:07:47
◼
►
when I was scaling it up that it was just on fire constantly. It was just sort of this
00:07:54
◼
►
thing where we decided, "You know what? I'm just going to try and make this work. I think
00:07:58
◼
►
this is a good opportunity for our business. I'm just going to run with it." And so for
00:08:02
◼
►
probably about a month, about two months maybe.
00:08:05
◼
►
I was just constantly,
00:08:06
◼
►
I'd be working crazy hours during the day
00:08:08
◼
►
and then waking up at two in the morning
00:08:10
◼
►
to roll out all the changes that I did during that day.
00:08:13
◼
►
And it was this really not good cycle.
00:08:16
◼
►
And ultimately it became a point where it's like,
00:08:18
◼
►
no, this is not gonna work, I don't like this.
00:08:21
◼
►
And we ended up deciding, well, what I'm gonna do
00:08:23
◼
►
is I'm just gonna throw money at the problem.
00:08:24
◼
►
And I ended up just massively over provisioning everything
00:08:27
◼
►
and deciding that I'd rather make less money
00:08:30
◼
►
from the service than to feel that way.
00:08:34
◼
►
The important thing there was the understanding
00:08:36
◼
►
of that it was always a choice.
00:08:37
◼
►
It didn't feel, taking ownership of it to the degree
00:08:41
◼
►
that if I let it just be its own thing,
00:08:44
◼
►
then that was where the problem came.
00:08:46
◼
►
That if I was just letting it feeling like
00:08:47
◼
►
these responsibilities were being pushed onto me,
00:08:50
◼
►
and that was where I really started to struggle.
00:08:53
◼
►
- Yeah, I mean, and that's a very good thing to realize,
00:08:56
◼
►
is this is at least partially within everyone's control.
00:09:00
◼
►
how much responsibility they take on,
00:09:02
◼
►
what kind of guarantees that you make to the world.
00:09:05
◼
►
And the world will impose its own opinions
00:09:08
◼
►
of what it deserves from you,
00:09:09
◼
►
what kind of lifetime it deserves from you,
00:09:11
◼
►
and what kind of response time to emails and stuff like that.
00:09:13
◼
►
But it is on you to accept or reject that.
00:09:18
◼
►
And within certain bounds,
00:09:22
◼
►
if you're on a web service and you just shut down
00:09:25
◼
►
for three hours a night
00:09:26
◼
►
because you don't wanna have to worry about it
00:09:28
◼
►
during those three hours a night,
00:09:29
◼
►
that will eventually become problematic for you
00:09:31
◼
►
because that's just not what people expect
00:09:32
◼
►
from web services.
00:09:33
◼
►
But if you were like a small software shop
00:09:36
◼
►
and you don't answer a support email for two days,
00:09:39
◼
►
is that really the end of the world?
00:09:40
◼
►
Probably not, unless somebody literally just gave you money
00:09:43
◼
►
and it went nowhere, then they'd be angry about that.
00:09:46
◼
►
But if they just wanna know how to use some feature,
00:09:48
◼
►
that can wait two days.
00:09:49
◼
►
There are bounds to what people consider
00:09:51
◼
►
the minimum acceptability,
00:09:53
◼
►
but going anything above and beyond that,
00:09:55
◼
►
you said you're kind of responsible
00:09:57
◼
►
for how much you go above that.
00:09:59
◼
►
and usually it's not worth it.
00:10:00
◼
►
Like going back to the web service example,
00:10:02
◼
►
like if you're running a web service,
00:10:04
◼
►
sometimes you might have downtime that is your fault.
00:10:06
◼
►
You know, you didn't get enough capacity
00:10:08
◼
►
or there's a bug or you know, your MySQL server
00:10:10
◼
►
is overloaded with some stupid query you wrote
00:10:13
◼
►
that you need to optimize better or something like that.
00:10:15
◼
►
Those are all your fault.
00:10:17
◼
►
But what if the data center that you're in,
00:10:19
◼
►
that you know, like suppose you're at a regular
00:10:21
◼
►
like dedicated host, so the data center you're in,
00:10:24
◼
►
you know, you're relying on their switches
00:10:26
◼
►
and their infrastructure and their connectivity
00:10:28
◼
►
and stuff like that, and if they just have
00:10:30
◼
►
a big network failure on their side,
00:10:32
◼
►
there is nothing you can do about that at all.
00:10:34
◼
►
That is totally out of your control,
00:10:36
◼
►
it's out of your hands, it is your problem,
00:10:38
◼
►
but it's not your fault, and there's basically
00:10:41
◼
►
nothing you can do except wait and make sure
00:10:44
◼
►
they know about it and then just wait for them to fix it.
00:10:46
◼
►
You will always hear from people when that happens,
00:10:49
◼
►
at least if you have a nerdy audience like I do,
00:10:51
◼
►
you will always hear from people who are like,
00:10:53
◼
►
well, you should have had this in multiple data centers,
00:10:55
◼
►
or you should have had more redundancy,
00:10:58
◼
►
you should have had a bigger system, you should have been prepared for this possible problem
00:11:02
◼
►
to happen to your web service in order to save me this hour of downtime or whatever.
00:11:09
◼
►
No matter what level you choose to have redundancy and resilience and everything, there's always
00:11:14
◼
►
another level you could be doing and there's always some failure that could happen that
00:11:18
◼
►
could take out your whole system. To go beyond to each successive level of additional redundancy,
00:11:24
◼
►
additional resilience, it is so costly and so complicated to go each level up, it just
00:11:32
◼
►
isn't worth it for most people. Like, you know, Overcast runs out of one data center
00:11:37
◼
►
and it's fine. I'm on one host, everything is in the same data center. If Linode has
00:11:42
◼
►
a switch problem that day, which occasionally has happened, you know, then I have issues
00:11:48
◼
►
with Overcast for a half hour and then they end and then it's fine. It's easy as programmers
00:11:55
◼
►
like us and as people who are in the moment, like, I was so stressed out at Tumblr because
00:12:00
◼
►
I knew that if I screwed up and if the site started serving error pages, it would serve
00:12:06
◼
►
11,000 error pages per second until I fixed it.
00:12:10
◼
►
That's a lot.
00:12:12
◼
►
Yeah, and to have that burden on you psychologically is tough to handle. That's, you know, that's
00:12:17
◼
►
Like you feel really, you feel guilt about that.
00:12:19
◼
►
And not to mention that, you know,
00:12:21
◼
►
if you have like a Twitter account or something,
00:12:22
◼
►
you're gonna have like everybody yelling at you on Twitter,
00:12:24
◼
►
when's it gonna be back up?
00:12:26
◼
►
This is terrible, you're stupid.
00:12:27
◼
►
But the reality is, at that moment,
00:12:29
◼
►
it seems like a really big deal.
00:12:31
◼
►
As soon as the site's back up, everybody forgets.
00:12:34
◼
►
Like it just, like the big problem that there was
00:12:38
◼
►
is just gone and also very quickly forgotten.
00:12:42
◼
►
Like I always think of the example,
00:12:43
◼
►
like back when, you know, in Tumblr's early days,
00:12:46
◼
►
there was once a weekend where Flickr, the big image service Flickr, was down for an
00:12:52
◼
►
entire weekend. Completely down. At the time it was probably the biggest photo site on
00:12:57
◼
►
the internet, completely down for two and a half days. Do you remember that?
00:13:04
◼
►
Right, exactly! Nobody remembers that. That was a huge deal. I'm sure if you were a Flickr
00:13:09
◼
►
engineer working on that problem, you would definitely remember that, but nobody else
00:13:14
◼
►
remembers it. Even later that same week nobody remembered it. That was like this massive
00:13:20
◼
►
downtime event. And so you know you do it's always a balance you have to strike. You know
00:13:25
◼
►
it seems like you need to prepare for every eventuality. It's kind of like packing for
00:13:30
◼
►
a trip. So go back to the vacation theme. It's kind of like packing for a trip. Like
00:13:34
◼
►
it's easy to overpack because you think well what if I what if the batteries in this
00:13:38
◼
►
thing die twice. So I need like, now I need like six AA batteries to pack in my bag whenever
00:13:45
◼
►
I go just in case the batteries die. Even though not only will the batteries probably
00:13:50
◼
►
not die, but the place you're going probably sells AA batteries. It's so easy to get
00:13:54
◼
►
caught up in the what ifs, what ifs, what ifs, and the stress about them. And then even
00:14:00
◼
►
when they do happen, it's easy to overblow in your head like how bad that was and how
00:14:07
◼
►
how much that mattered.
00:14:08
◼
►
And in reality, for what most of us are working on,
00:14:12
◼
►
it'd be different if you're running
00:14:13
◼
►
like a life support system,
00:14:15
◼
►
but for what most of us are working on,
00:14:17
◼
►
of like, well, if I screw up,
00:14:19
◼
►
people can't sync their new podcasts for a few minutes.
00:14:22
◼
►
It's not that big of a problem in life.
00:14:26
◼
►
It's not a huge deal.
00:14:28
◼
►
And honestly, that's part of one of the reasons
00:14:30
◼
►
I choose to work on the things that I choose to work on,
00:14:33
◼
►
rather than going to work for a hospital or a bank
00:14:36
◼
►
or something where the consequences of screwing up can be larger. Because I don't want that
00:14:41
◼
►
kind of stress in my life, and I respect people who do it. That's great. I'm really happy
00:14:44
◼
►
they do, so I don't have to. I'm really very happy to be working on consumer entertainment
00:14:50
◼
►
apps, basically.
00:14:51
◼
►
>> BRIAN KARDELL Yeah, and I think it is one thing that I know from my own experience,
00:14:54
◼
►
I always remember when I—it's similar to the way people forget if you have a web service
00:14:59
◼
►
that goes down. I remember when I had a normal office job, I'd always, whenever I was going
00:15:04
◼
►
on a long vacation, more than just a long weekend, I was going to be gone for a week
00:15:08
◼
►
or ten days or something like that. And I always remember this feeling of, "How are
00:15:12
◼
►
they going to survive without me?" essentially. I have all these things in my mind that, "Well,
00:15:17
◼
►
"Well, I'm the one who does that.
00:15:18
◼
►
"I'm the one who does that."
00:15:20
◼
►
And then you kind of, you go on vacation and you come back
00:15:22
◼
►
and you realize that they got along just fine without you.
00:15:25
◼
►
And it's like, it's good, it's humbling
00:15:27
◼
►
in a really constructive way, I always found,
00:15:30
◼
►
to realize that because you are in the middle of your world,
00:15:35
◼
►
you make all the things that you touch
00:15:37
◼
►
feel more important and valuable
00:15:39
◼
►
than they are probably in reality.
00:15:42
◼
►
And so that after a certain number of times
00:15:44
◼
►
of having that feeling of like,
00:15:45
◼
►
"Oh no, it's all gonna fall apart if I leave,"
00:15:48
◼
►
and then it didn't, it starts to be like,
00:15:51
◼
►
"Oh no, this is fine," and it's probably more important
00:15:54
◼
►
and beneficial and healthy for me
00:15:56
◼
►
to have a little bit of that perspective
00:15:58
◼
►
and distance from my work and to say,
00:16:00
◼
►
"It's okay for me to leave.
00:16:01
◼
►
"It's okay for things to not be perfect 100% of the time.
00:16:06
◼
►
"99% of the time is probably fine."
00:16:08
◼
►
And to then, as a result, have a better perspective
00:16:12
◼
►
of your work and be healthier about it,
00:16:14
◼
►
to not overdo it, to not get into a place that,
00:16:18
◼
►
like at a certain point you just can't work,
00:16:20
◼
►
or you're burned out to a degree that,
00:16:23
◼
►
at least in my experience, when you really get burned out,
00:16:26
◼
►
very often happens, by definition,
00:16:29
◼
►
at the least opportune time,
00:16:32
◼
►
because it's happening when you are most stressed,
00:16:35
◼
►
when you are most, things are really crunching,
00:16:39
◼
►
and then because it's crunching,
00:16:41
◼
►
if you haven't been taking care of yourself,
00:16:43
◼
►
suddenly you're gonna find that maybe you just can't work,
00:16:44
◼
►
You're gonna get, like, you'll get sick, or you'll get just worn out, and your work
00:16:48
◼
►
will suffer.
00:16:49
◼
►
And it's like it's happening at the least opportune time, and so you have to plan for
00:16:52
◼
►
it, like, at the quieter times, at the times that, like, building time into your schedule,
00:16:57
◼
►
building vacation into what you're doing, making sure that you're taking care of yourself
00:17:01
◼
►
in that way.
00:17:02
◼
►
Because if you don't, like, it's eventually it's gonna catch up with you.
00:17:05
◼
►
Like, we're all just human.
00:17:06
◼
►
And you can't just keep going forever.
00:17:08
◼
►
And so if you don't think about it ahead of time, it's just never gonna work.
00:17:13
◼
►
Our sponsor this week is Imageix once again.
00:17:16
◼
►
Imageix is basically an image processing CDN.
00:17:19
◼
►
You have some source of images
00:17:20
◼
►
and you want to serve them not only through a fast CDN
00:17:23
◼
►
'cause Imageix is themselves a very fast image serving CDN
00:17:26
◼
►
to save you on the bandwidth and the server load.
00:17:28
◼
►
And of course, have your clients load things way faster
00:17:31
◼
►
'cause everything's closer to them
00:17:32
◼
►
on these nodes and everything.
00:17:33
◼
►
But also with Imageix, right there in the URL
00:17:36
◼
►
that you provide your app or the website,
00:17:39
◼
►
you can do image processing operations.
00:17:40
◼
►
So you can do things like of course,
00:17:42
◼
►
simple resizes, rotations, cropping, stuff like that.
00:17:46
◼
►
And you can also do way more advanced stuff.
00:17:48
◼
►
Like you can adjust the color tone of an image,
00:17:50
◼
►
you can add blurs, you can add annotations,
00:17:52
◼
►
like little text things to it.
00:17:54
◼
►
I use ImageX myself.
00:17:55
◼
►
If you view overcast images in Tweetbot,
00:17:58
◼
►
I do a thing where Tweetbot images in many contexts
00:18:01
◼
►
have to be 16 by nine,
00:18:03
◼
►
and podcast artwork is always square.
00:18:05
◼
►
So I do the thing that the TV news people do
00:18:08
◼
►
when they have to show a portrait video
00:18:11
◼
►
in a landscape screen,
00:18:11
◼
►
where they show the portrait video in the middle.
00:18:14
◼
►
On the left and right, they have these kind of bars
00:18:16
◼
►
of a blurred version of that same video.
00:18:19
◼
►
I do a very similar version of that for podcast artwork
00:18:22
◼
►
in these 16 by nine contexts, all powered by image X.
00:18:25
◼
►
The main image in the middle, the square image,
00:18:27
◼
►
and then in the left and right bars,
00:18:29
◼
►
that would otherwise be black or opaque or whatever,
00:18:32
◼
►
I have a blurred version of the image
00:18:35
◼
►
in the background behind the real image.
00:18:38
◼
►
and it looks great and it totally fits
00:18:40
◼
►
into those 16 by nine context and all of that
00:18:43
◼
►
is powered by URL parameters that I pass ImageX.
00:18:46
◼
►
It's amazing like what you can do
00:18:48
◼
►
with just a few URL parameters.
00:18:50
◼
►
I don't have to do any of that myself on my server
00:18:52
◼
►
or anything like that and of course it loads quickly
00:18:54
◼
►
and honestly I find the pricing very reasonable as well.
00:18:56
◼
►
So check it out, ImageX.com, they have all sorts
00:18:59
◼
►
of easy to use examples, tutorials, documentation
00:19:01
◼
►
for all their URL parameters and everything you can do.
00:19:04
◼
►
They also have client libraries if you want another layer
00:19:06
◼
►
of abstraction, one of which is already available
00:19:09
◼
►
for Swift named Iris, which is put together
00:19:11
◼
►
by the developers of the watch site, Hodinkee.
00:19:14
◼
►
Check it out, imageix.com, imgix.com/utor
00:19:18
◼
►
for under the radar.
00:19:20
◼
►
Thank you very much to Imageix,
00:19:21
◼
►
the real-time image processing CDN,
00:19:23
◼
►
for sponsoring our show.
00:19:25
◼
►
So on that kind of context, I wanna talk about
00:19:29
◼
►
ways you can get things off of your plate
00:19:32
◼
►
for ongoing stress and just stress-wise.
00:19:36
◼
►
With web services, there's this whole spectrum
00:19:40
◼
►
of how much you want to be managing things
00:19:43
◼
►
from totally unmanaged stuff like you run your own servers
00:19:47
◼
►
co-located in a data center somewhere
00:19:49
◼
►
or out of your house or something like that,
00:19:51
◼
►
which I really don't recommend doing.
00:19:53
◼
►
- Sounds like a terrible idea.
00:19:55
◼
►
All the way through the dedicated host,
00:19:58
◼
►
through virtual private hosts like Linode, my favorite,
00:20:01
◼
►
all the way across to these kind of cloud manic services
00:20:04
◼
►
where you aren't even necessarily dealing with servers
00:20:07
◼
►
or even instances of servers,
00:20:09
◼
►
but you're dealing with higher level abstractions,
00:20:11
◼
►
like CloudKit is a great example,
00:20:14
◼
►
where you aren't dealing with the servers at all,
00:20:16
◼
►
or even some third-party services
00:20:18
◼
►
where you're kind of dealing with these abstract concepts.
00:20:20
◼
►
Like I think parse, is parse one of those?
00:20:22
◼
►
- Parse, yeah, or Azure does one.
00:20:24
◼
►
- Yeah, yeah.
00:20:25
◼
►
- A whole bunch of things like that, yeah.
00:20:26
◼
►
- Yeah, and there's stuff in the middle,
00:20:28
◼
►
there's Heroku and stuff like that,
00:20:30
◼
►
you're kind of like in the middle of the abstraction layer there. So there's all these systems
00:20:34
◼
►
on this big long spectrum of like how much do you want to be managing yourself? And there's
00:20:39
◼
►
trade-offs. You know, you might think from this episode that I would say have everything
00:20:44
◼
►
be managed by other people and go to the full abstract end of things. But that isn't necessarily
00:20:49
◼
►
always a win. I mean, first of all, you are usually paying way more for that. For the
00:20:54
◼
►
basic resources you are using, generally there's a pretty big markup if you're using one of
00:20:58
◼
►
these more abstract services, especially on bandwidth and occasionally on storage space
00:21:03
◼
►
and RAM as well. So you pay quite a premium for that. And that could really make the difference
00:21:08
◼
►
between whether something is profitable or not. I mean, the amount of compute power and
00:21:13
◼
►
of bandwidth that I get for Overcast at Linode running unmanaged VPSs, I'm putting the
00:21:20
◼
►
management load of that on myself for anything that's basically not hardware and network
00:21:25
◼
►
related. So any kind of software issue, updates, scaling issues, I basically have to do that
00:21:32
◼
►
myself in some way. Even if it's just as easy as telling Linode to clone a server four
00:21:38
◼
►
more times or to resize it to get more RAM, the process of doing it still falls on me.
00:21:43
◼
►
So that is usually way cheaper, it's usually much more in your control. Then on the other
00:21:48
◼
►
side you have the more managed services where, again, you don't have to really deal with
00:21:52
◼
►
anything. However, what I said earlier about if the data center that you're in
00:21:56
◼
►
has a network problem, it is not your fault but it is your problem because
00:22:01
◼
►
your customers don't know it's not your fault and your customers will still
00:22:04
◼
►
blame you. Even though when something is out of your hands it is not on you to
00:22:09
◼
►
fix it, it still is your problem in the sense that you have to accept that it's
00:22:13
◼
►
down and when it's out of your responsibility it's also out of your
00:22:17
◼
►
control. If something is just down for a while, not only do you not have to fix it, but you
00:22:24
◼
►
can't fix it even if you want to. And that is kind of a double-edged sword. Usually it's
00:22:29
◼
►
worth going more in that direction if there's no other major downsides, like if you can
00:22:32
◼
►
afford to, if it does what you need it to do, if it has enough capacity, whatever. But
00:22:37
◼
►
there is that little problem of like, you know, if something goes wrong with CloudKit,
00:22:41
◼
►
you're kind of just helpless. You can't really do anything about that.
00:22:45
◼
►
>> Yeah, and I think even there it's also understanding where,
00:22:49
◼
►
like as you're looking at the things that you're responsible for,
00:22:53
◼
►
the responsibilities that you're choosing to have, you have to think about it too from the
00:22:57
◼
►
perspective of like where do you personally add
00:23:01
◼
►
unique useful value? Is administering
00:23:05
◼
►
a Linux virtual private server something that you think
00:23:09
◼
►
you would do well, that you're good at, that you know how to do, a skill
00:23:13
◼
►
that if you're not great at it now that you think you'd benefit from being able to do.
00:23:17
◼
►
And if that's the case, then great, take that on and embrace it.
00:23:22
◼
►
But I think the important thing is to also be able to look at yourself and say, "Hmm,
00:23:27
◼
►
I really don't like SSHing into Linux boxes and running top and working out what's broken,
00:23:33
◼
►
and that's not for me."
00:23:35
◼
►
It's like, "Okay, so then go the next level up until you feel comfortable with where you
00:23:39
◼
►
you are, because trying to do something that you're actually not good at or isn't your
00:23:46
◼
►
forte is just very counterproductive.
00:23:49
◼
►
And the same thing applies to all kinds of things, like outsourcing your help desk.
00:23:52
◼
►
I don't do my first-year customer support anymore because I found that I'm not very
00:24:00
◼
►
It would make me—I'd have the problem of if you get 100 positive things and one negative
00:24:05
◼
►
thing, that one negative thing really sticks with you, and I was really counterproductive
00:24:08
◼
►
to my motivation, and so I decided, you know, I'm just gonna, I'm gonna outsource this.
00:24:12
◼
►
I'm gonna have someone else do it, someone else who's way better at it than I am.
00:24:15
◼
►
Like I need to look at myself and say like, "I'm not really good at writing emails.
00:24:19
◼
►
Like I'm good at writing code, and so I'm gonna outsource that out."
00:24:22
◼
►
And that can apply to all the whole spectrum of your things, because like at its core,
00:24:28
◼
►
you're gonna be like, it's like the old trite thing they always say, it's like, "If you
00:24:32
◼
►
love what you do, you never work a day in your life," which isn't really true, but at
00:24:37
◼
►
At the very least, the kernel in there that is true is that if you're doing work that
00:24:41
◼
►
you're really good at, that you really are able to feel like you're really doing an awesome
00:24:47
◼
►
job on, that it's right in your sweet spot in terms of your skill set and your challenge
00:24:51
◼
►
and your motivation, you're going to be much less worn out by it.
00:24:56
◼
►
You're going to enjoy it much more, and that's probably a better place to be than if you're
00:25:00
◼
►
just kind of forcing yourself to do stuff because you think you need to or because you
00:25:05
◼
►
feel like there's no other choice.
00:25:07
◼
►
and to find, looking at what you're doing,
00:25:08
◼
►
like, and finding those areas that you can say,
00:25:10
◼
►
okay, I'm gonna outsource this,
00:25:11
◼
►
I'm gonna take this, all this responsibility off my plate,
00:25:14
◼
►
is probably gonna increase your overall sense
00:25:16
◼
►
of restfulness, which is definitely a plus.
00:25:19
◼
►
- Absolutely.
00:25:22
◼
►
All right, with that, I think it's time to wrap up,
00:25:24
◼
►
and we are going on vacation.
00:25:26
◼
►
We will not have a show next week,
00:25:28
◼
►
because we're gonna take a break.
00:25:30
◼
►
We're gonna unwind from the massive amount of work
00:25:32
◼
►
that this show is every week. (laughs)
00:25:36
◼
►
We really are taking a break.
00:25:37
◼
►
We're gonna take the week off
00:25:39
◼
►
'cause we're gonna be traveling and everything,
00:25:40
◼
►
be with our families.
00:25:41
◼
►
So we will see you in January.
00:25:43
◼
►
And thank you very much for listening.
00:25:44
◼
►
Please recommend us, et cetera.
00:25:46
◼
►
And have a happy New Year, everybody,
00:25:48
◼
►
and we will see you next year.
00:25:51
◼
►
- Merry Christmas, happy New Year, see you in January.