Programming Throwdown - The Art of Vacations
Episode Date: September 15, 2021We are sponsored by audible! http://www.audibletrial.com/programmingthrowdownWe are on Patreon! https://www.patreon.com/programmingthrowdownT-Shirts! http://www.cafepress.com/programmingthrow...down/13590693Join us on Discord! https://discord.gg/r4V2zpCThe Art of VacationsTaking a good vacation is as important as getting a good night's sleep (*very important*). It may sound silly on its face, but planning a vacation and planning around your vacation is extremely important to ensure that you are in the right headspace the rest of the year. This is especially true in the COVID era where many of us are working from home. In this episode, we dive into why vacations are so important, how to plan a relaxing vacation, and how to make sure that your team is supported while you are out.Intro topic: Virgin Galactic and Virgin Orbit and Blue OriginNews/Links:TextStyleBrush: Transfer of Text Aesthetics from a Single Examplehttps://deepai.org/publication/textstylebrush-transfer-of-text-aesthetics-from-a-single-exampleBerkshire Hathaway Stock Price integer overflowhttps://www.theregister.com/2021/05/07/bug_warren_buffett_rollover_nasdaq/LineageOShttps://lineageos.org/Crafting Interpreters is now an actual bookhttps://craftinginterpreters.com/Book of the ShowJason: How to lead in product managementhttps://amzn.to/2UcPzPKPatrick: Holy Sister (Book of the Ancestor #3) by Mark Lawrencehttps://amzn.to/3fVZscnAudible Plug http://www.audibletrial.com/programmingthrowdownPatreon Plug https://www.patreon.com/programmingthrowdown?ty=hTool of the ShowJason: 7 Billion HumansPatrick: Moss (Oculus VR, PC VR, PS VR)Topic: VacationsWhy7 types of rest https://ideas.ted.com/the-7-types-of-rest-that-every-person-needs/Gives you energy for the next crunchStepping back provides perspectivePreparing the team for unexpected absencesWhy notCan lose contextMissed opportunitiesSlipped deadlinesHow to set up the perfect vacationHanding off responsibilityDocumenting codeDecide how much to work on vacationHow to be on vacationPre-cationHandling crises / unexpected eventsPost-cationHow to come back from vacationCreate email filters / smart foldersSkim new pull requests / scrum documentsReview chat logs Types of vacations1-3 days: delay results1-2 weeks: Deputize3+ weeks: ReplaceIf you’ve enjoyed this episode, you can listen to more on Programming Throwdown’s website: https://www.programmingthrowdown.com/Reach out to us via email: programmingthrowdown@gmail.comYou can also follow Programming Throwdown on Facebook | Apple Podcasts | Spotify | Player.FM Join the discussion on our DiscordYou can also help support Programming Throwdown through our Patreon ★ Support this podcast on Patreon ★
Transcript
Discussion (0)
programming throwdown episode 119 the art of vacations take it away patrick well hopefully
uh all you listeners aren't going to be thinking you need a vacation after listening to this episode. No, wait, let's just really quick. I want to talk about just like
how important this episode is. Like people might see this title and think, wow, Patrick and Jason,
they've run out of programming languages or something, but no, this is super, super important.
We preempted all of our other show ideas to talk about this, especially with COVID and everything.
So, so stay tuned. You're going to learn a lot of good stuff i think a lot of people over i mean when we're recording this
now we're at like what 18 18 ish months 17 months of yeah you know kind of like work from home
covid all this stuff i think people are really burning out like i i the people i work with the
people like i talked i try to encourage them like take time off even if you are just going to stay
at home still like get away from your computer.
People have gone so long without taking vacations
or going anywhere.
And even if you're worried about health stuff or whatever,
I mean, just the mental...
We'll talk about it.
We'll talk about it.
I don't want to spoil all of that stuff.
But stay tuned.
It's really important.
Yes, thank you.
Don't change the channel.
We're showing our age.
The intro topic for this episode,
I wanted to talk about how cool it is.
It's been a somewhat recurring topic on the show,
talking about space technology and going to space.
And we've covered various topics over the years.
That feels weird to say.
And I want to say, since our last sort of duo episode,
there's been a bunch of really cool news.
And I'm not even going to really talk about any of the sort of SpaceX related news.
That's like highly covered by other people.
It's that super exciting.
But just like not SpaceX related space news,
there's been a lot of cool stuff happen.
So Virgin Galactic and had Richard Branson go to,
I guess now we have to put air quotes, space and air quotes.
There's a whole feud over that.
But I mean, like regardless,
the fact that they got to where they've been headed
for years.
Well, wait, real quick.
Was he weightless?
Because that's how I define space.
Okay, that counts as space to me.
I mean, I'm not an expert, but.
So there's a difference between like the US
and like other countries about where the launch.
So this wasn't intuitive to me i was
explaining it to someone and it's it's kind of weird but earth's atmosphere and i'm gonna get
it wrong but earth's atmosphere doesn't just like stop at some point right it's like a gradient and
it's dense by the surface and then as you go higher and higher and higher it gets less and
less and less less dense right but what where do you put the cutoff point because it's kind of like a probability thing like or a density so the density of atmosphere goes lower and lower but
it doesn't just stop at some point yeah that makes sense so you have to sort of arbitrarily kind of
define a line where it's like mostly you're out of the atmosphere um but even when you're sort of
in orbit and clearly what most people call space you're still experiencing drag and effects of the atmosphere and low earth orbit satellites still experience um actually quite
a bit of drag it's a it's a it's a pretty big problem for them to overcome um so yeah but going
weightless is one way to do it but you can go weightless in the what do they call the vomit
comet the you know jet passenger plane they stripped all the seats out and then it goes in a parabolic set of like sinusoidal uh up and
downs um yeah go weightless in that but you can see the curve of earth from where they went you
know it's by some definition space and then shortly after in somewhat of a like we can call it a race
um jeff bezos went on the blue origin rocket to to space, to the edge of space, whatever you want to call it.
There was even a kerfuffle about whether who and should or shouldn't be considered astronauts.
So that all got changed as well.
But I think both of those are really cool.
There's a separate Virgin company from Virgin Galactic, which is focused on basically space tourism. There's a separate one, Virgin Orbit, which has the ability
to actually go into an orbit and put small satellites into orbit. And so they also had
another, I think it was their second time, where they were deployed a bunch of these small satellites
into orbit. And it's a similar approach. They take a sort of airplane up and then they have a sort of
rocket underneath it, but they launch it from a much higher altitude because most of your fuel is spent getting up
into speed and through the thickest parts of the atmosphere. And so sort of these three things,
just excluding all of the normal NASA stuff and SpaceX stuff are incredibly exciting for me,
at least. I don't know, like I always felt this was, this was going to happen, space tourism,
space tourism. If you were, well, I guess you stopped to be a billionaire. But now it's on
a trajectory where like, you know, it'll come down in price over time. No idea how low it'll go.
But the amount and repeatability of people going to space is going to become much more common in
every day. Yeah, it's amazing. I think, so the idea is you have an airplane
that's carrying a rocket
and the airplane can kind of go,
like can climb slowly
because it's going at this like really flat angle.
And then at some point the rocket takes off.
Is that how it works?
Yeah, that's the Virgin approach.
That's not how the Blue Origin Jeff Bezos one does,
but that's how the Virgin Orbit and Virgin Galactic work.
Yeah, that seems cheaper on its face.
It seems like maybe they might be able to get the cost down.
You can also reuse the airplane that launched it.
I guess it's a big design space and there's many ways to tackle the problems and lots of trade-offs, but it's cool to see different private companies doing it with humans on board to see the, you know, ability
to iterate and explore the design space because not everyone's doing it exactly the same. Everyone
has a slightly different approach, which means we'll be able to learn much faster.
Yeah. It seems like this is really where, like, um think about about engineering sort of hitting mainstream
right this is one of those places where like everyone's hearing about these rockets um like
not everyone can can watch programming throw down although they should but but not everyone's
watching listening to programming throw down but but everyone can especially like you know children
can see this like this new space race and get really excited about engineering and tech and all of that.
Yeah, I agree. I mean, I think you can observe that it's very likely that the various space launches, even leaving the politics of it aside, but between the Soviet Union, the United States and going to space and both the funding that went into it, probably a big
contributor, but even just the like press and coverage on the news that, uh, that got you're
right, Jason, I think like it's fundamental for people to see like a very visual representation
of what a sometimes more abstract, you know, engineering career can be about.
Yeah, that makes sense. That's super cool. I think so. I think I asked you this before, but I don't remember the answer. It's like, when can we go to space for under, let's say, like i think around like a hundred thousand oh that's not far off they're selling tickets i i don't i'd
have to look it up i don't have in front of me but i believe that's right about where they're saying
and of course like for that it's like a luxury thing like he built this big if you haven't seen
it you should check out like this big space base and you go you can go you know astronaut training
and um you know they put you through some some sort of like practice stuff so you kind of what to expect. There's a whole like luxury lounge where like your family can, uh,
you know, wait while you do your flight or whatever, right. It's a whole, uh, like a luxury
vacation almost, uh, in the middle of the desert, uh, that culminates with you sort of going to
space. Wow. Wow. So it's, it's definitely getting there. Yeah. So I, yeah, a hundred thousand down
to 20,000 seems like we're on,
there's a path where you can see that.
The question that I have and people are debating is,
if this becomes cheaper and cheaper and stronger and better rockets,
then what does it mean for point-to-point travel,
like going from San Francisco to New York City
or going from China to Europe? And can you put passengers on a
rocket, fly them up and land them back on the other side in sort of like astonishingly small
amounts of time? Can that ever become safe enough? And can it become cheap enough for it to be like
a alternative to plane travel? Wow, That'll be wild. Yeah. Can you
imagine? That would be totally wild. It's like, uh, you take a family with your flight and at
some point everyone's weightless. So you have to like strap in and then, and then you get back down
to earth. That'd be wild. It's like every science fiction book ever. Yes. Yeah, it's true. Cool.
Yeah. That's, that's awesome. So how do you follow this stuff? Do you subscribe to a bunch of space blogs or is it?
There are some good YouTube channels.
So if you sort of go on YouTube, there's a community building,
especially with SpaceX doing so much out in the open and iteration.
I think it's built up a lot of interest in this.
So it's helped to kind of create enough
money in that in that area to have some sort of full-time coverage on on YouTube so you can check
out I don't want to pitch any specific people because then I'll forget others and people will
mock me for it but I guess like that's probably how I keep up to date on most of it yeah yeah
same here like I mean not not not with space but but the way i catch up on current events is mostly
through my youtube subscriptions which is which is a really odd way if you think about it to get
the news and so uh yeah it's it's that is really interesting i used to use flipboard but yeah i
just i i think what happened is i think like it's it's like a recommender it's an ai fail actually
flipboard i don't remember exactly.
Oh, yeah, here's what happened.
So, you know, I was looking up some articles about COVID, you know, way back, like more
than a year ago.
And then, you know, being AI and recommender systems, it just started inundating me with
like all these things about COVID and all these people are getting sick and everything.
And so it ruined the experience.
And so I just stopped using the app.
And so, yeah, really, you know, now it's like,
there's not really any place I go to for news
other than I just follow some YouTube folks.
I have this thing too, yeah.
Like sometimes I'll see an article that is evocative
and I will not click it because it's like,
if I click this, I'm going to get inundated with,
you know, whatever it may be.
Yeah. Um, you know, COVID conspiracy or celebrity news or whatever you see on it. And every time
you're like, ah, I'm bored. No, I'm not going to click it. Yeah. Yeah. You'll pay for it later.
Right. Oh man. All right. On to news. My news is a first news is textile brush which is a uh the title is transfer of text
aesthetics from a single example so this is a a summary of a research paper i couldn't find any
um implementation of it on github yet although i'm sure it'll it'll happen um but it's so cool
basically you um can take a picture that has some text on it and you can you can rewrite the text.
So if even if it's handwritten, it doesn't matter.
So imagine like you take a picture of a billboard somewhere and you could actually just change a text and make the billboard say whatever you want. And it handles like just from that one image, it will learn the style of the font
and it will guess what the letters that it doesn't have access to would look like.
And then it also figures out the pose of the text. And then you can, you know, magic erase that text
and then replace it with something else. And I thought that was remarkable.
It uses some technology called GANs, which is short for generative adversarial networks.
And so basically, I don't think I have too much in the weeds here, but the way it works is
you can imagine like if you have the font, right? So imagine like you have the font for something
and you go and type a bunch of letters
into a Google Doc or something like that.
And you take a picture of it.
You could, now you have,
let's say you have all the letters A through Z
and you know what they look like.
You could give half of them to a model,
a machine learning model,
and then ask it to draw the other half.
And you know the answer,
so you could tell it whether it's doing a good job or not. And so this is called self-supervision.
It's when, you know, you know the answer, but the identity of this data is the answer. So,
you know, if you hide the letter A and you ask the computer to regenerate it, you know exactly
what the answer is, but it's not
because you had a person go and label it and say, this is an A, this is a B. It's because you have a
generator that can create all of these things and all these different orientations, right?
So self-supervision is becoming like really, really hot right now. It's a really interesting area. It's also called contrastive learning. So imagine you have a picture and you delete, you know, a section of
the picture and ask the computer to regenerate it. And again, you have the exact answer. You don't
have to have a person go in and label it. But it's still like a challenge for the computer to try and
guess like what would have been there.
Now, imagine you have a picture of a house and you delete all the pixels of the windows.
Right. You're going to have these like really square shaped gaps right where a window should be.
And even just as a human, you can look at that and say, oh, yeah, there's probably a window there.
Right. And so you're basically training the AI to do that.
And because you you've subtracted the answer, you have the answer. You don't have to pay a human to go and label that's why there's no open source people are afraid to to to uh to make this and then unleash
pandora's box but but i thought it was a really really interesting research paper it covers it
in really good detail and uh you also check it out. It seems like, and I don't know exactly,
like we covered, what was it called?
GPT?
Yeah.
We covered like a variety of these topics.
I feel I'm starting to see like a lot more
kind of like applications, like plug and play,
not necessarily advancing state of the art alone.
I mean, that is also happening.
A lot more of like people doing
sort of very human level things,
like very visceral things like you're describing
with the technology of AI
rather than just like a research paper
or just some statistics or whatever,
but actually kind of doing stuff
that humans can sort of interact with and relate to.
I feel like there's like a groundswell going on there. I don't know where it'll go or where it'll lead. I'm sure you have sort of interact with and relate to. I feel like there's like a groundswell
going on there. I don't know where it'll go or where it'll lead. I'm sure you have, you know,
sort of thoughts on that, but it definitely seems like some corner got turned. Yeah. I mean,
I think that, that, um, yeah, the challenge for AI in the mainstream has been data and compute,
right? So like, if you look at Google, Google has so much data and so many computers
that they can do things like they can detect,
let's say dogs in an image
and they could do it really accurately.
For you to do that,
you would need to have a person go in
and say, this picture has a dog,
this picture doesn't have a dog.
And you'd have to do that millions of times
and you have to pay that person. And so just to make, this picture doesn't have a dog, and you'd have to do that millions of times and you have to pay that person. And so, you know, just to make, if you didn't have any
data, you have to create all the data sets yourself. But even like, imagine taking photos
of millions of dogs, right? Like you're talking about, like it would take you hundreds of thousands
of dollars to build a dog detector if you didn't, if you had to, you know, curate the data. And so
that has held most people back. I mean, the big companies are obviously doing it. They have the millions of dollars, but for, for most small and medium businesses, they just, it's just not an option. Right. And so, but then, yeah, if you look at people, right, like you could, with some very simple training, you could start to recognize different breeds of dogs. Like maybe
you do already. I mean, I personally know nothing about dogs, but I feel like if I was to spend a
few days, I could learn the most common breeds and I could start telling dogs apart, right?
So as people, we could do it. And so the question is, how do we build that sort of base of
intelligence where then someone doesn't need to spend so much money to do something? And so the question is, how do we build that sort of base of intelligence where then someone doesn't need to spend so much money to do something?
And so self-supervised learning seems to be the answer to that question.
I mean, the jury is still out, but that's where it's kind of leaning towards, which is super exciting because it's going to open a whole bunch of opportunities. And so, yeah, it turns out that playing this game of
guessing the missing thing ends up building a foundation. And then on top of that, you can do
other AI things without needing so much data. And so you're going to see more and more of this where
there'll be some enormous machine learning model that Google has trained on all of their images.
And you can start with that and then do your task on top of it.
I think that it's called transfer learning.
I think that is really starting to take off now.
That's fascinating.
Yeah, we'll see where it goes.
I mean, the whole appeal of deep learning was that transfer.
The whole premise of deep learning was that transfer learning doesn't work right people used to do people used to do um svd like singular value
decomposition right which or pca or one of these things so they would take an image and they would
crush it down to like 30 numbers right and then they would do machine learning on the 30 numbers
and and actually pat, we did this
when we were... Yeah, but I was just going to say, I remember doing this with you.
Yeah. I mean, we actually built these things that would take images and crush them down to like
either smaller images or sets of numbers. And then we would do machine learning in that small space.
And then deep learning killed all of that because it was just so much better. And it could just go from raw pixels to the answer without this in-between layer that
is doing something that's not aware of the problem, right?
And so now you're going back to that, where now you're going back to like, yeah, Google
gives you this model that they trained using self-supervision, not knowing anything about your task.
The real difference is now you can update the model.
So imagine if you started with doing SVD,
but then if the problem,
if two images are very similar,
but they're actually different labels,
like one's a dog and one's a cat, but they're just similar, the SVD will put them in the same space, but then your problem will pull them apart again.
And so as long as your problem can kind of modify the SVD, you're good.
That's a nice thing about doing the dimensionality reduction with neural nets is that you can always change the way that they're reducing later as you introduce like a real problem and so that's that's the gamble yeah go ahead
no i was gonna say is that so the idea there is that somehow like when google trains this model
on everything right it doesn't end up recording everything but it builds some the words are going
to get picky i guess but it builds some understanding about how to tell what
is or isn't in a picture and like tell pictures apart and like structure of images. So then when
you go to train it with a much smaller dataset custom to yours, like you're only sort of changing
how it interprets that structural understanding of the images. Yeah, pretty much. And the other
thing is there's an assumption here that, for example, symmetry is important. And so almost any image processing thing you're going to train is going to take advantage of that. counter example is if you had just random noise and the goal was to predict like the number of
white pixels, like so you have, so you have a random binary image that's just generated with
random numbers and you want to predict how many pixels are white. That is going to be really,
really hard to transfer learn, right? Because there's no symmetry, there's, there's, there's
nothing real there. And so it's going to be worse
actually than if you had just trained it from scratch. Right. But that is like, people don't
do that. Right. Like that's not useful. And so when you look at like the class of useful things
you can do with computer vision, almost all of them have like need those same building blocks.
And so that's, that's why it becomes useful man i think uh
we should definitely have some more episodes to hear you talk about this this is actually
uh very interesting actually yeah so spoiler alert we're actually we have a guest who's an
expert on exactly this on embeddings and transfer learning who i'm trying to schedule so so we
actually we are going to spend a whole episode on it.
So hopefully, actually, it's not confirmed yet.
I'm still trying to get them on the show.
But yeah, that's coming up.
So stay tuned.
I know something about embedded software, but I'm pretty sure that's not what you mean
by embedded.
But speaking of embedded software, I'll segue into my next topic, which has to do with integer
overflows.
So a little bit of a setup. There's a
guy named Warren Buffett, who's like pretty famous investor. He runs a company called Berkshire
Hathaway. And they do a variety of things. They actually own a lot of like household names. So
let's see, like, I think they own like Geico insurance. They own like Helzberg diamonds.
Oh, I didn't know they owned anything. I thought they
just bought their own stocks or something. So they do a little bit of everything. So they do
own some companies and continue to own them. I think Seas Candy as well. Oh, interesting.
There's like a variety. You can go, there's a list somewhere of all the like virtual Hathaway
companies where they sort of find companies, they sort of help them, you know, replace the
management. And then they have like a, oh gosh, a synergy between the companies.
Like one might throw out a lot of extra cash.
One, you may need a lot of cash on hand, like in an insurance case, in case you have to
do payouts.
So there's like reasons to have some of these companies together, which is one of the things
he sort of like, I don't want to say like pioneered, like got right.
But they also do temporarily like buy parts of Apple
and then sell it back without taking a controlling interest.
And there he has,
so there's a thing when your stock price
starts to get really high,
it becomes really hard for people to buy a share.
Recently things, a lot of stock brokerages
have allowed you to buy fractional shares,
which we won't talk about like how that implies like with voting rights, it gets into the whole thing.
But you can now buy fractional shares, but you didn't used to be able to buy a part of a share.
So as companies' stock price rose, it became so expensive that for an individual retail customer, they couldn't buy shares, or if they wanted to buy, like, I want to buy $1,000, but your stock is $750. There's like this $250 leftover, you would have bought of the company that you can't. So a lot of companies do stock splits to reduce their stock price and bring it
down lower. And there's a variety of reasons why that may or may not be a good idea. But Warren
Buffett has, like very famously said, he doesn't want to split his stock. He's not going to split his stock.
There is actually two classes of stock, Berkshire A and Berkshire B.
Berkshire Hathaway B actually trades at a lower price because it takes multiple of those
shares to equal one of the Berkshire A shares.
But Berkshire A has famously never split.
But it's continued to be a very successful company for many decades.
And it turns out that some of the exchanges, in this case, Berkshire Hathaway stock is traded on
the New York Stock Exchange, and they didn't have this issue. But NASDAQ Stock Exchange publishes
feeds of data that people use for, for instance, like the Yahoo or Google Finance, when you go
there and you look up a stock price, they use the NASDAQ feed of prices in order to show it to you,
even for things which aren't listed on NASDAQ. That's a whole other topic. And what happened is
Berkshire Hathaway stock got to a price where they had to actually delist it for a while,
some of the things that they were listing. And the reason why is not
that the stock price reached, what is it? So they were storing it as a 32-bit value in this NASDAQ
feed to keep it nice and compact. You don't normally use floats or doubles when you're
doing finance stuff because you can get sort of, well of well it's a whole other topic but how you get numerical stability you get sort of uh not exact representations of some fractions
so instead what they do is they use a you call it like a fixed point thing they represent hundreds
of cents in 32 bits so you have only what 4.3 billion so the stock price did not reach 4.3 billion. So the stock price did not reach 4.3 billion per share, but it did reach $435,000,
which if you represent times a hundred, so a penny would be what? Times 10 times, or times a hundred
times a hundred. So times 10,000 equals really close to 4.3 billion. So they had to preemptively
delist the stock from, I guess it
was like the price of the last sale and a couple of the other kinds of feeds that they have, not
the daily closing, which is what kind of most people see, but this sort of intraday, like what
is the last price that the stock has been exchanged at? They had to delist it from there because what
would have happened is once it reached the 32-bit representational max is it
would have wrapped around and it would have looked like the stock price was trading for fractions of
a penny and so that would have been awesome it would have been a really good deal bye bye there
was some pressure given which i don't know how you apply pressure to a very very rich person like
that but so they kind of asked warren bovin like, hey, could you just split it? Like maybe, but he wouldn't. So what they ended up having to
do is preemptively delist from some of these feeds. So actually, there are some crazy pictures
that you can find on the internet of like the Google stock ticker or like the Yahoo one where
it like kind of glitches out when it started hovering around that price. And even today,
I assume it's still related. If you go to Google and you search for Berkshire A, BRK.A, which is the one we've been talking about,
the daily, the sort of intraday trade price is just blank. It won't show it to you.
So if you click on like the month view or the year view where it's showing only the price at
the end of the day, you can see that. But the graph for what's happening within a day is just blank,
presumably because it's still not available because they're at such a high price.
Wow, that is wild. It actually looks very similar to the Theranos stock graph,
but for different reasons. It's not the same.
If someone offers you shares of Theranos it's probably not a good
idea to buy unless you really know something that no one else does yeah oh my gosh oh man
yeah that is wild so are they is are they still in a deadlock or is is somebody gonna budge there
i think i have to recode all of their stuff you know i have no idea i don't know how you do an update to like switch a bit width from 32 bits to 64 bits and this is like a feed that gets
published and you know paid for by like probably i don't even like hundreds thousands tens of
thousands of different institutions like yeah i guess you make a v2 of it and then you make that
one 64 bits and then you tell people you know they need they need to move to the V2 of the API.
I mean, that's a huge problem.
I remember when YouTube views hit 4 billion on a video
and that was a massive, massive problem.
And yeah, that's wild.
Yeah, I mean, it's so interesting that on one hand,
it's like, yeah, maybe this person should,
you know, just let them split. But on the other hand, it's like, yeah, maybe this person should, you know, just let them split.
But on the other hand, it's like, well, maybe they should fix their old code.
I mean, yeah, it seems like kind of a silly reason to split.
Like somebody assumed your stock price would never get this high and it did.
So like, do you mind making it lower?
I mean, it's probably great coverage, too, you know.
I don't think I don't think Warren Buffett and Berkshire Hathaway need more coverage, but yeah, potentially.
OK, yeah yeah, potentially. Okay. Yeah. Fair enough. Yeah. Everyone wants to see it break the stock market,
so they'll just buy it for that reason. Yeah. I guess I should mention the region
he doesn't want to split. I left that unsaid was that he actually doesn't want the churn that
comes with retail investors. So people who buy you know, buy it at a lower price,
kind of move in and out a lot more and it gets a lot more churn.
He doesn't want,
he wants people buying and sort of holding the stock and investing and
letting it go up over time. Um, so that, that's sort of his,
his theory there.
That makes sense. I could see that. Yeah. Yeah. It's really interesting.
Yeah. I have a whole, I mean, yeah, we won't go into the segue,
but the whole thing about public companies and effectively random people telling your company what to do is so strange to me.
But that would take a whole hour to talk about.
I'll jump into mine.
It's LineageOS.
I've gotten so many emails from folks about either the Pine phone or the, I think it's called Librem phone. So many people are interested in this, um, you
know, open source phones and, and totally, uh, free and open source software, uh, you know,
driven phones and open hardware phones. I looked into it. I thought about maybe doing, maybe we'll
still do a show on it, but I looked into it and I found that a lot of them are either very expensive.
Like, I think the Librem five is like $2,000 or something like that.
Or it just seems like a real homebrew thing that maybe you couldn't really rely on if there was
an emergency or something. And so this actually, in my opinion, seems like the way to go is,
I wouldn't say specifically LineageOS, there might be a better one, but it seems like, you know, getting an existing phone and just, and just rewriting the, the OS and you're relying on the quality control
of the hardware manufacturer seems like, you know, a safer option, especially if it's Android and
you're putting another Android, you know, fork of Android on there. And so LineageOS is one of
these where, you know, they have a list of approved devices that they on there. And so Lidige OS is one of these where, you know,
they have a list of approved devices that they've tested. And so you can go and buy like, say a
Pixel 3. I don't know if Pixel 3 is on there now, but you could buy, let's say a Pixel 3,
and they'll show you step-by-step how to install this open source OS. And then you get, you know,
everything now is totally open source. There's not really any
surprises or anything like that. And, and they have their own app store and, and everything
like that. And so this, you know, um, I have to really dive into this, but I know that folks who
listen to the show are super interested in this and I wanted to, to give my take on it based on
the research I've done so far and, and actually throw it back at, at folks out there.
So if you've emailed us about Pine phone and these things, you know, take a look, take a look at this
and then, and then, uh, feel free to opine and we can have a, have a discussion on it.
This sounds like something you've looked into, Patrick, have you looked into any of this like
tiny phone or any of this? Yeah. You know, I i have some but it's kind of the same i i love like playing with embedded stuff
but i guess i treat it as like not reliable things like my phone i'm kind of picky about i just for
various reasons i just want a phone that i know is going to work that i know like if i pick it up
and call a number it's going to like ring if i text someone yeah you know i don't i don't know
the few times my phone doesn't work or crashes,
we had this experience.
Actually, we went on vacation a couple of weeks ago and we had flown somewhere.
And when we landed,
neither my wife nor I's phone would work.
And it was incredibly hard to call the Uber
without like our phones being on the,
specifically the LTE wouldn't work.
And so we like tried like turning on airplane mode,
turning it off.
We eventually were able to go on like the airport wifi and like call the Uber.
But then when we walked out to like meet them,
like the phone stopped working and they weren't where they said they were.
And I had to go back inside. It was a huge mess.
And then it actually turned out to be a little embarrassing.
And when we got to the hotel, we're like, hey, does this, you know, cell provider not work?
They're like, no, no, it should work.
Have you tried restarting your phone?
Like, no, that doesn't do anything.
Restarted our phones, sure enough, like it came back.
And I was like, no, really?
Yes.
Wow.
And the same thing happened when we flew back here.
It wouldn't work until we rebooted our phones.
And it's just like that little glitch.
And it just like it was miserable trying to like get that Uber and like, yeah.
So anyways, phone's not working.
And like the monitor is just like,
we've come completely to depend on them.
So no, I've not spent a ton of time
in this particular pulling of the thread.
Yeah, I might.
Yeah, I agree with you.
I also have the same fear of things like,
I guess it would have to support the Play Store, right?
Because like if you couldn't,
you know, I'm sure Uber is not on this lineage OS store.
I mean, almost 100% sure.
So yeah, if you can't run one of the major app stores,
then it seems like that's a non-starter
or you have to carry two phones.
But yeah, I think there's the idea of going to open store. I mean, you know,
I don't know about you, but I run Linux at home. And so, you know, that's become just part of my
daily life. So I feel like it might just be a matter of time. Actually, I guess you're running
at least Unix. So yeah, that, there we go let's um that's what that's what
windows runs on top no i'm just oh my god actually wait is free bsd i'm totally gonna get so much
hate for this yeah yeah moving to the next topic yeah let's just move on my mine is actually a book
i guess i could use this for the book of the show but there is a website i'm following about building your own interpreter and sort of walking through scratch i saw my perpetual
like i have many things like this that i want to work um by a guy robert i think you say his name
nystrom and he previously wrote i think it was like game design patterns which i felt like was
a really good like approach to some design patterns under the guise of talking about
it as a game because people understand games lots of people want to build games and i think he came
from the the video game industry but he's been writing these blog posts you can still get them
for free and like the complete sort of like book in serialized form but he decided to make an actual
print book uh in a pdf and the reason why is one calling out that, like, hey, there's this cool resource,
you can check out about learning to write your own interpreters. But also, like, you know,
it's still in this day and age, like, it's somewhat of an accomplishment to be like,
I took what was blog posts, and like, did the proper sort of formatting and got it into a book
shape. And just the sort of like, how in some ways, even in my head,
like it kind of gets to something a blog never does,
like a finality.
Like he has the book.
That means it's kind of like done.
So even if I don't go read the book
and I go read it on his website,
there's some like indication that like it's been made.
It's a real thing.
It contains valuable information.
It's just this interesting observation that one,
like shout out to him, like that's super cool. And definitely go check out the material. The bits that I've
gone through are very well done. And I really liked it. But just this other thing that this
sort of pointing out that it's kind of interesting that it took sort of like formatting and producing
the book, even though I'll probably not read the book itself to kind of make it into this,
like it's done. Yeah, that's awesome. It's a great way to, I think, you know, I've seen similar
patterns followed by like XKCD and other folks where they get a print book. And I think, I think
it's a great idea. You know, just, it's a good like coffee table thing. All right. I think it's time for book of the show.
Book of the show. My book of the show is how to lead in product management. And so I'll tell you what inspired me to get this book. I, I, uh, a friend of mine or a colleague of mine who, uh, like the product manager for, um, our team is actually really knowledgeable about engineering, has sort of like an engineering
background. And it's just so easy to talk to this person. I mean, they get it. Pardon me. They get
it. They understand, you know, the challenges and, you know, they don't know as much about
machine learning and AI as somebody, an engineer on the team, but they know
a lot and it really helped them a lot. And it's also just kind of cool. It's like, oh, this person
gets it. They're one of us, right? And so I thought, oh, maybe I'll do this in the other direction
because I talked to a lot of product managers at work and I probably sound like a total dummy when it comes to building a
product or advancing a product. So I thought I would get this book and learn more about that
field. It's been really interesting. I think that there's something really nice about learning a new
area because you learn a lot very quickly, right? Like you're not hit with
this law of marginality, right? And yeah, I mean, just a couple of things I pulled out of the book
so far is there's this idea of having sort of shared goals and how to kind of get people aligned
around the same goal. It talks about, you know, what's the difference between a vision, which is sort of like a three-year plan, and then a, like a milestone, which is a six-month plan, and then a
sprint, which is like a two-week, one to two-week plan. And sort of how you, like, other than just
the timeline, like, what are the actual implications of having those different timelines and how do you
handle them differently? One thing I thought was really interesting is it talks about, because the book is How to Lead in
Product Management, it talks about how to have a coherent vision and still give autonomy to
individual product managers. And so I thought that was really interesting, right? Because people think about the stereotypical Steve Jobs, like throwing the phone across the room and like
upset because like the font, like the letter T isn't shaped the right way. Like these are like
the stories that are so outlandish that they become famous, right? But the reality is,
you know, all of these good product leaders
were extremely good about creating a system of autonomy and doing that and balancing that
against their own, you know, personal views and everything. So the book covers a lot of this stuff
and I found it fascinating. It's not a long book. It's only a, I think, five and a half hour
lesson on Audible, so if you're
interested in that, in that discipline, definitely pick it up. Yeah. That's, that's a great tip. I
liked your observation too, about like, what do you want to call it? Cross training, like
yeah. Running stuff outside of your, uh, specific job description. Uh, my book is
Holy sister by Mark Lawrence. This is a of the Book of the Ancestor trilogy.
And this is the third book.
We talked on the show a while ago.
I actually finished this book a while ago
about the first in the series, Red Sister.
Then there's Gray Sister and this is Holy Sister.
And this book is about, I always struggle with this.
I guess I could just read the back cover,
but since it's the third book, it's spoilers
if you haven't read the first book.
But basically there's, you know,
it's a fantasy book with sort of a magic system.
This book does, you know, I think pretty good.
It's always hard to wrap up a series,
like to finish the trilogy.
People can complain, you know, it wasn't expected.
You just, you end up either, you know,
leaving stuff out or not finishing it in three and going to four or five six and sort of getting
stuck like uh some authors i think have have sort of fallen prey to um but this trilogy is done at
the third book and it sort of comes to a conclusion but what i liked about it is there's like a magic
system that that's pretty different and there's some stuff about the world building and, um,
it doesn't go slow. Like the book,
each book is sort of like interesting and engaging and really moves stuff
forward. But then there is like kind of a slow burn, like world building.
There's other stuff that you're sort of aware of,
but you don't quite know that you're figuring out.
And just that sort of like a sense of discovery that I get by reading
some fiction, science fiction books, specifically, you know, or fantasy, I just really enjoy being
able to like go on that, that sort of journey. I guess some movies can do that too. And sometimes
it's like a plot twist. But I don't like ones that are just like, oh, there's this came out
of right field and wasn't really hinted at.
Or I guess out of left field, out of left field and wasn't really hinted at.
I like ones where the it was there if you knew where to look, right?
Like there were sort of nods and hints to it all along.
And if you were to rewatch it or like think back, you're like, oh, almost like, how did
I miss this?
Or, oh, wow, that's really cool.
That's why that thing that was left unsaid.
Those are some of my favorite kind of experiences.
And I thought this book did a good job
sort of capturing that in this trilogy.
And Mark Lawrence has some other series as well,
but I'm not going to talk about them
because they may be a future book of his shows.
Nice.
We were at a mall the other day,
like not a mall, but a plaza and there was a warhammer
40k store oh really a games workshop store oh yeah yeah i think that's right yeah and um and
there's a bunch of books and uh i was there with with uh my older son and he was he's checking out
the books and um do you have any experience with those like is is like
maybe like 40k universe like yeah right you're not talking about the game manuals you're talking
about just the fiction works right right like do you think that would be a good uh or like maybe
a better question is what what would you think would be a good book for like kids who are getting
into sci-fi you know that's that's
really interesting so ender's game is like a really classic oh yeah i've read that yep like
first first thing but i actually think this this one's a little tough like people especially kids
like you want them to be it's not a chore like if you tell them to read a book you're automatically
kind of like it's not good it it's something they need to
like you know maybe provide like a selection or like some guidance into like a certain you know
uh curated set that like hey like which of these seems interesting to you oh yeah like like
motivating kids to read until like some point um is more about like having them choose stuff that
they were interested in reading because even if you, yeah, that book ended up being dumb.
My kids have read some of those.
Like, wow, that book was not very good.
But like if they were interested,
they feel the sense of accomplishment of finding something they wanted to do
and then doing it.
Yeah, right.
I mean, I don't know.
No, I don't know anything specifically about the Warhammer 40K universe.
But whether good or bad. But yeah, I mean, I think
if it's something they're really into, then they're much more likely to coast through.
If there's like boring parts of the book or whatever, then if you sort of like recommend
a book and they get to some part and then they just like it's a chore to do the reading.
Yeah, yeah, totally makes sense. Cool. Yeah. And if you want to read any of these books,
or if you want your kids to read any of these books or if you want your kids to
read any of these books, they could do it on Audible or I guess listen to any of these books.
I'm still actually, I've gotten back into Audible and I'm not commuting anymore because of work from
home. But what I've started doing is listening to audio books in the evening or I've been going on walks.
The nice thing is I go on a walk
and the path that I take,
I actually lose cell phone reception
because I go through this kind of valley
that doesn't have good coverage.
And the nice thing about Audible
is I've downloaded the book
and so I can listen.
It doesn't cut out or anything like that
versus if I do anything streaming and I get halfway through my walk loaded the book. And so I can listen, you know, it doesn't cut out or anything like that. Um,
versus if I do anything streaming and I get halfway through my walk and it's, it's just
sputtering or sounding like a robot. So, so yeah, I've been actually getting back into audible for
that reason. And if you want to do that, um, you can go to audible trial.com slash programming
throwdown. We'll have a link in the, uh, in the show the show notes and uh that gives you a free month and also
helps to show it as well if you already have an audible subscription and you don't need another
one you can uh follow us on patreon patreon.com slash programming throwdown and uh you can go on
there we have super fast uh download sites there's a special site for patreon subscribers um who uh
special rss seed for those folks and uh yeah you should check that out i think it's time for tool
of the show my tool of the show is seven billion humans which is a video game a lot of people have
suggested over the years programming video games you know like
video games where you write computer programs as the game human resources yes wait what was that
i'm sorry that's one of those games i think it's human resources oh yeah yeah so this is actually
the sequel to that one oh okay oh human resource machine yeah that's right so so i've played so
many of them at the request of listeners.
And the only one I ever liked was Human Resource Machine.
Like all the other ones I just couldn't get into.
Like some of them it's like, oh, you have to read a manual first.
Oh, it is.
I didn't know this.
I spoiled your punch.
I'm sorry.
No, no, no.
And so I got to Human Resource Machine and someone, as I said, a listener recommended it.
And I was like, OK, this is simple. There's not that many instructions, but it's deceptively hard because they have these like stretch goals, like solve this in four instructions and stuff.
And that's and so I found it really, really engaging in a way that I didn't find the other ones.
And then and then I I somehow this, I, I somehow, I, this one,
I came about on my own. I don't remember exactly how, Oh yeah, it was, it's part of a humble bundle.
So I think the humble bundle will be expired by the time, uh, you're listening to this,
unfortunately, but, uh, I found out about this through a humble bundle. I ended up actually
not even getting the bundle because I wanted on Android and the bundle is for PC. So you're not missing
anything there, but it's awesome. So the way this SQL works is you actually, you control like many
different people with the same instructions, but you know, they can branch differently depending
on their environment. And so you use that trick to have a whole bunch of people do like a lot of
things at the same time to accomplish some bigger goal. So like, you know, the first level is very
simple. It's like, have everyone take a step to the right. And so you just put in one command,
step right. And all these people, there's like a whole army of people, they all just take a step
to the right. And so you kind of start to understand um you know what you're doing and then you start to see like oh okay this
person couldn't take a step to the right they bumped into the wall and now that person is now
shifted relative to everybody else and maybe you can use that to your advantage right so it's it's
a really really fun game and i highly recommend it i think of all the programming games this one and its
predecessor have been by far the most fun um i've tried to get my uh kids into it but uh i think it
still feels a bit too out of reach for them it's a little bit too uh it requires a bit too much up
front for for a for a six-year-old or whatever but actually now my son is older i might
try again but yeah i highly recommend it if you want a programming game a game that we're programming
is the game this one and the prequel are definitely the ones to start with nice i'm gonna i'm adding
this to my list i i did like the i think i got all the way to the end i didn't do all the challenges
but of human resource machine yeah actually it's the only
game I think I have 100% in my life yeah all right my game I have not 100% is moss so I actually
think this was a like normal game um like a normal pc game before like a first person game
a platformer but
i'm not i'm not 100 sure but this is i want to talk about the vr version the virtual reality
version um and i did look it up because i i knew i would want to say it and so i checked it's
available on oculus which is how i played it pc vr and the playstation vr so a variety of options there. Wait, real quick. What is PC VR? Oh, that just means like if you have like Oculus Rift
or is it the HTC Vive or the Valve Index
and you have it basically connected via like
your computer is doing all of the playing and rendering
and then your headset is basically like a fancy monitor
and like a gyroscope controller, it's feeding back oh interesting and so the
headset itself doesn't have the the game power versus like an um oculus quest that um is basically
like a cell phone doing all of the rendering and stuff uh in your headset i see so you're you're
tethered to the computer and and i didn't even
know about this so steam has has a vr headset yes wow well not steam a company that owns a valve
valve the oh valve okay got it got it okay cool but you can buy um steam has vr games on it and
like a interface for playing the vr games oculus for like the Rift has like a PC app that you run
that allows you to do it as well. And you can hook your Oculus Quest to your computer or Quest 2,
to your computer via like a really long USB-C cable with a whole bunch of caveats and actually
have your computer do the rendering and send it. Or now they even have it wireless where your
computer can do the rendering, which could be more powerful if you could find a GPU or already bought a GPU before they came impossible and super expensive.
That's right. And like wirelessly stream the, basically the graphics to your headset and the
controls from your headset back to the computer, which allows you to play games that wouldn't be
available natively or wouldn't be able to run. So stuff like Half-Life Alyx, you can play on
the Oculus if you play it on your computer and stream it to your headset.
Yeah, that I've actually done.
I bought on Amazon Prime Day, I bought a Wi-Fi extender.
And so what I do is I have this Wi-Fi extender, which has its own SSID.
And then the Wi-Fi extender is physically plugged into my desktop with a cat cable. And then I do the
AirLink on the Oculus Quest. But when I do the AirLink, it's on the extended network.
And so the Quest talks straight to the extender, which is like two feet away,
which is wired to the PC. And so with that whole setup, air link works amazing uh yes my problem is my pc does not have a vr
capable it's like the last generation before it was really like vr capable cards and then i went
to upgrade once i got one and then found out like oh yeah that was a bad timing oh man um okay
anyways moss so moss is a pretty interesting game and I actually play it
and we stream the like what I'm seeing
or what my kids are seeing to the TV.
So we sort of played as kind of like a family,
but it's like a platformer
where you're a little mouse like running around
and like going through sort of set pieces.
And so you as the,
I don't know how you describe this,
like you're controlling the animal,
but your headset is like a sort of third person
like set piece view so you're looking down on like a scene and you're controlling what happens
but then uh you know you're sort of like once you get to this sort of like exit of that scene then
it sort of like goes to the next scene kind of like what like a point and click adventures used to be okay okay yeah you like go to the edge of the screen and go to the next one
but each scene is like a set and then you're like moving through the set it's like that but like in
vr and it's a super cool and i don't like it's kind of nice like sometimes moving around and
like walking and like all that stuff in vr is really fun but also can be sort of like uh you
don't want to do that every time at least i
don't sometimes it's like it's nice to it even tells you like sit in a chair and um you know
just like have the cool visuals yeah yeah that's great so what is so is it literally a point and
click adventure like you're trying to solve little mini puzzles um i mean it's a not like a point
it's like a platformer oh okay got it got it so yeah
so trying to yeah and there's like puzzles that you need to do and interact with there's probably
a name for that kind of game but i it escapes me what genre that would be i think platformer yeah
i mean there's there's a metroidvania where you're you're have kind of like you need to go back to
previous ones yeah right yeah it's not like that.
Okay, got it.
Maybe it's just a straight platformer.
It's like, I think they call it a puzzle platformer.
Okay.
Where like a regular platformer is like Mario,
you're just stepping on things,
but this is more like a puzzle platformer.
Yeah, yeah, yeah.
Cool, yeah, I'll have to check that out.
I love those type of games.
Well, I don't know about you,
but I'm ready to take a, I mean, talk about vacation. Yeah, but I'm ready to talk about vacation.
Yeah, I'm totally ready to take a vacation.
We're going to take a vacation from the show, so I'll catch y'all.
But I think vacations are extremely, extremely important, especially now.
I think, Patrick, you'll probably echo this, but so many people on my team and at my company have maxed out their vacation and are literally
just losing vacation days and not taking them.
And I think there's this feeling like, well, I work from home.
I can do the laundry while I'm at work.
And so everything is kind of like a mix of, you know, working and not working.
And so I don't really need a vacation or maybe I'm going to wait until, you know, COVID is over.
But we're really starting to see the effects of that. And so I felt like it's a good time to
really talk about why we do vacations, how to take a good vacation, and what are sort of the
different kinds of vacations and how you have to act
differently when you're you know planning for one of those yeah i think company to company
vacation policies vary wildly between the united states and not united states europe asia like also
tons of variation in the expectations and culture around vacations but as yeah i'll echo it
as being said that like it's it
is important to not burn out to take time for yourself or your family to do something fun i
think a lot of people are saving it up right now under the current environment so they just want
to do something super fun and all the fun things seem like you can't do them right now like going
on the going on international flights or grand trips involves like a lot of extra, um, uh, we don't say like getting COVID checked and risks and people are just,
you know, not comfortable doing it. So I feel like people are saving up,
but I mean that what I always find, and I don't,
we don't have this called out to talk about as I was talking about now,
but like sometimes it's,
you don't think you need a vacation until it's too late.
Like by the time you realize like I really need a vacation, then you need to plan it. You know, you're going to like schedule your
time off. And then by the time you get there, you're like way past when you should have done it.
Yeah, yeah, exactly. Yeah. I think we can start it off with this article that I'll link to in
the show notes. It talks about the seven types of rest. And I really found this powerful. I read this a while back and
I was able to dig it up. The first type of rest is physical rest. I mean, that's what most people
think about. Like, you know, you run a few miles or something and then, okay, I need to rest.
The second type is mental rest. And so, you know, you can imagine this pretty easily too.
Like you do a chess tournament or something and then
afterwards you're really tired. Right. Debug my program. Yeah, yeah, exactly. Yeah. You,
you play a human resource machine and then you need to rest. The third type of rest is sensory
rest. This is really, really important. You know, I feel like, uh, um, and we'll talk about this in
more detail, but I feel like, especially with, um when I have a vacation, it's the opposite of sensory rest.
So for me to get sensory rest, I have to go back to work.
And that just means, sensory rest can mean different things to different people.
It could mean bright lights and the computer screen in your face.
That's one type of sensory overload. It could be just a lot of people around you all talking and having different conversations at the
same time. And you kind of trying to listen to all of them. But you know, all of that stuff can,
can fatigue you on, in that dimension. There's creative rest where, you know, you, you might
feel compelled to start a new project or invent something new. Like maybe your job right now is to
find the next big thing. And so you're just spending all your time trying to, um, figure
out like what was the right path and you can get burnt out in that way. Um, emotional rest and,
uh, spiritual rest. Um, so yeah, take a look at this article, but I felt like we can kind of use that to set the stage
for, you know, like, like, well, the biggest reason to go on vacation, which is to, to get that rest
so that you can, you know, come back with the energy you need to do the next thing.
Yeah, I mean, I think like I was mentioning before, like, but sometimes by the time you
need that rest, the sort of vacation, which I think is
a great opportunity. So some of those kinds of rest, you probably should be doing continuously.
But a vacation provides a time to step away. I think, you know, just put stuff on hold. And
I also, I think it's different. And taking a vacation, when other people are continuing to get the work done and you're
stepping away from it than like when like let's say at you know christmas time here in the united
states like maybe your company gives like a week off and everybody has off i think those two things
are actually slightly different and mentally how like it's good to allow other people to make
progress on something and come back and see like the world turns without you versus like everybody takes off and then you come back and everybody's starting up
again. Yeah. Yeah. That's so true. Yeah. I think, I think one of the sort of anti-patterns to a good
vacation is, is where, you know, you take the time off and you come back and you're two weeks behind.
Right. And it's like, you didn't really take a vacation. You just like procrastinated, right?
I mean, it's not a vacation.
I just need your deadlines to get closer.
Yeah, yeah, exactly.
So reasons, we should talk a little bit about reasons
to not take a vacation.
So, I mean, a lot of people aren't taking vacations.
And so we should talk about what those reasons are
because they are real.
I mean, they're rational.
If people feel like they can lose context,
you can miss an opportunity. Maybe there's a plan to have, let's say, an intern and you took a vacation when the intern applications went out. Or you took a vacation in the summer and
so your intern wouldn't have a manager, right? So you can miss opportunities to do things that
are seasonal or just maybe just serendipitous, but they just happen while
you're gone.
And you can slip on your deadline, right?
If you have a six-month goal and you take a month off, but you don't change the goal
or you don't plan around that, then you still have six months of work to do.
And so these are reasons that people will give for not taking a vacation.
And those are valid reasons, but I think with the right planning and the right mental model, you can ameliorate a lot of these issues.
Yeah. I mean, talking about planning, I mean, I think there is some stuff you should do. So,
you know, making sure that you've handed off responsibility for stuff you're going to do.
So like Jason mentioned, that it's not just like you deferred something for a week
and then everything is piling up,
you know, making sure other people
are able to help the work that you've done.
So if you're a manager,
that means something different
than if you're a director.
It means something different
if you're like a, you know,
individual contributor.
But, you know, making sure that people
kind of know what you are doing
and that's an important thing in general.
I'll say it here too.
I think people going on
vacation is important for preparing for unexpected absences. So sometimes someone can go on a
vacation and you can plan for it, but some people just get sick or have, you know, it'd be horrible,
but someone could be incapacitated from working for an extended amount of time or even pass away
or whatever. Right. And as like in the scale of that, obviously like your work stuff,
isn't that important, but like, I mean,
making sure that if someone has to step away unexpectedly,
that the team doesn't crumble while they're gone.
And part of that taking vacations is sort of like repeatedly making sure the
team knows how to cover or, Oh, while you were gone,
no one was able to log into that system.
So like we need you to make sure you have have the credentials put somewhere or other people have access.
Making sure your code is documented in a way that if someone else has to go in there and debug an issue,
that they're not screaming at you where you can hear them on your vacation.
And then also making sure that you, as bad as it is, like certain roles
and responsibilities, like Jason just mentioned these reasons why not.
Sometimes you need to decide like how available will you be to work while you're on your vacation
and different people decide differently about this.
Some people say, you know, if it's an emergency, you can call me.
Some people say, hey, let me know about X, Y, or Z or Z or I'm gonna check in each day or every other day some people are like I'm basically
dunking my phone in the ocean and like I'll buy a new one when I get back so
you know decide upfront like what the expectations are with your team about
how open you are to being thing but I it is important to my thing is like if
you're going on vacation it really should be you're not checking checking your chat rooms, you're not checking your emails every day.
But maybe if there really is a legitimate reason, someone could reach out to you and get a hold of you.
But also, do you take your work laptop if you have one or not?
If you don't take your work laptop, it may limit how much you could do. And so making sure that like lines are drawn around that with your
team, with your manager and getting all that settled up front.
Yeah. We should talk a little bit here about, you know, as personally, my view on this has
evolved over the years. I used, well, there was a time when we worked at a place where when you
were on vacation, you didn't have access to anything. And so that kind of made the decision for us. Back in the day. Back in my day. But now, you know, so starting from the time where we had control over
like how much we wanted to do on vacation, I used to kind of bring, yeah, bring my work laptop,
bring my work phone and just be totally plugged in on vacation. And then slowly I've been moving
away from that model. And I've gotten to the point now where I literally, I don't bring anything and I don't have any connection at all.
And what I found for myself is as I did less and less work while I was on vacation,
my work quality also went way down because I would have less context. And so I would just make
bad decisions and do bad things.
And so I realized at some point I was like, okay, I'm on vacation. And instead of working 100%,
I'm doing 10% work that is terrible and destructive. And so I got to the point where
I'm on vacation, I'm off the grid. And I give people my personal phone number
if there's something really urgent,
but in practice, it's almost never,
only a handful of times has it ever come up,
and that's kind of where I've evolved to,
but how have you evolved, Patrick?
Where are you at?
Yeah, I mean, I think it changes over time.
My current thing that works for me, I think,
is here's my phone number.
I mean, that's everyone's personal decision,
but here's my phone number. Look, if something comes up, where and I'm in a position where I,
you know, manage some people now, so there's a little bit different. Like, I tell them, like,
look, if there's a problem where it would really benefit from me being involved, like use your
discretion to the people on my team or to my manager, like call me, I'd rather handle an HR
issue or whatever, even if I'm on
vacation, then to come back and have it had been an issue for a week. And that being really
stressful to a person or the team or to whatever. And so I tell them like, look, you can text me or
you can call me, but I tell them otherwise, I'm not going to check my emails. If you send me an
email and just maybe he'll check it, I'm not going to. And so I don't, I don't check my email. I sign out of our chat app, you know, and if someone needs to SMS me
or needs to call me, like I tell them that they can, they've been respectful of that. Now that
could vary workplace to workplace. And some workplaces I know people do that and they would
get abused and it would just be constantly being called. And, um, you know, there's a lot more
context we should talk about there, but like that, that's my personal thing. Although I will say that, you know, while we're talking
about vacations, there's other kinds of things like if you, if someone were to pass away,
you're on bereavement leave, or you're on sick leave. For me personally, like when I'm doing
those things, if I'm unable to, like Jason said, do quality work, then I'll be off. But I have a
tendency, like if I'm just sick, I will check in on email or check my chats
just in case I could be helpful to someone.
I'm just not up to working a full day.
Yeah, that makes sense.
Yeah, I think I'm the same way.
When I'm sick, I usually work just,
I use the sick day to basically say,
look, I can't be 100%.
But there are some days, yeah, where I mark myself as sick, but I'm like 99% available.
But yeah, for vacation, I had a phase where I was like that, where I basically said,
here's my thing.
If there's some HR issue, let me know.
But then what I found is that while I'm on vacation, I kind of make bad decisions.
You know, it's like, it's like I'm there on the beach, you know, uh, drinking margaritas or
something. And then someone has some HR issue and then I have to make a decision right then and
there. And usually, you know, what happens when you're on vacation is people will, they'll only
reach you if there's an emergency. And so what you end up with is you
end up with just emergencies and it gives you like a really odd, uh, lens through which you
view your job because it just, it's just like, it's like weekly emergencies, but, but no context.
And so, uh, yeah. And then when I look back on how did I handle those emergencies and like,
you know, what actually transpired, I was like, yeah, I probably should have just like not handled it and do it, done nothing until I got back.
Um, but, but yeah, that's very small sample size. I mean, we only go on so many vacations a year,
right? So, but yeah, and that very small sample size I found. So, so I've gone this way. We'll
see how it goes. My most recent vacation,
which I just got back from, was a week. And I was totally off the grid for that week.
And so far, so good. But you still have a job and nothing burned down.
Came back, still have a job. I think if I took a long vacation and I came back and something
really went wrong and I just let it go wrong, I think then I'll have that perspective and I came back and something really went wrong and I, you know, just let it go wrong.
I think then I'll have that perspective and I'll have the full 360. I mean, I'll say here too,
some people may be thinking like, oh, it must be nice. I mean, I do know there are situations where
deciding you want to take a vacation is something you need to negotiate with your, you know, sort of
management. And there could be a crunch time time or could be something where you really feel you need to take a vacation and you just
can't and look those situations you know do happen I won't say that there aren't
times that I probably didn't take a vacation despite really needing or
wanting to because it just wasn't appropriate but like with everything I
mean you know your work-life balance is something that varies person to person.
And as Jason and I are alluding to, like, I mean, I think that over time, like how I've approached
work life balance, how I've approached these choices has changed, not just because I'm just
at a different place in my life, not because necessarily just work has changed, but I've
changed. Yeah, that's true, too. And so I think you got to make decisions
about vacation that are right for you, for your family, for your work. And if, and if you're like,
look, I can't take the vacations I really need to, and work won't let me. And, and you're being
honest with yourself, you know, maybe you got to find a new job, but I don't think just because
work says, you know, Oh, you know, that's not, we deny that vacation. Like that's a bad week. Can
you take it a few weeks later? I mean, there could be legitimate reasons for that. Yeah. Yeah. Totally
makes sense. Yeah. I think, uh, I mean, I've been in sort of research labs the whole time,
so I haven't really, it's been a long time since I was part of like a product cycle, but yeah,
that will, that will affect your, uh, you know, when you should take a vacation. And in general,
you know, if you have a good read on the ebb and flow of things, you know, when you should take a vacation and in general, you know, if you have a good read
on the ebb and flow of things, you know, it's obviously always best to take a vacation when
it's a slow time. But, uh, Oh, another thing is, is yeah, when I, I used to do crew in high school,
which we all don't know crew is very similar. It's just rowing a boat. So basically you all
start in the same place in a line and you all row a boat in a straight line.
It's like drag racing with a boat that you row with your hands.
And so you might think, well, oh, it's it's you just everyone just row the boat as fast as they can.
But actually in crew, you'd have these things called power 10 where you'd have 10 like really powerful strokes and everyone does a power 10 at the same time. That way you don't have one person
rowing really hard, encountering all sorts of resistance and the other people not. Right.
And so, you know, even in something where it only has one singular goal, which is to go in a
straight line as fast as possible, even then you have lulls, right? You have ebbs and flows. So,
you know, people have learned that that's sort of,
you end up getting to the goal faster if you have sort of those slow times and those power times.
And so, and so it's the same thing with work. I mean, you're going to be working for who knows,
20, 30 years, 40 years. And so, um, you know, you're going to need to take those breaks so
that you can have those like really powerful moments later on. It's all kind of, you know, even if you are
totally 100% type A, you know, career oriented, you still like having the right vacation is key
to, you know, getting to the finish line as quickly as possible. What about once you have
taken your vacation, which we shouldn't talk about all the awesome places we've all gone,
but now we're back. And then like you know when you get back you
gotta catch back up i think sometimes not going on vacation is just the dread of what's gonna
happen when you get back um yeah but i think actually the things you would do when you get back
and how it's like how bad but how much there is to do probably is something that tells you
like maybe there's stuff to change around like even in your day-to-day so
one thing like you come back and you have hundreds of unread emails you need to go through i mean
maybe that's your job maybe that's like something unavoidable but for me a lot of those emails are
stuff i probably never needed to know about not really and i don't need to know about when i get
back so having filters that put those into buckets that i can easily organize and skim through very
quickly for things that are like one thing i don't like about email or at least how our email is at filters that put those into buckets that I can easily organize and skim through very quickly
for things that are like, one thing I don't like about email, or at least how our email is at
work is like, things are just intermixed, right? So you're just getting like a personal question,
and then you're getting like an automated email, and then you're getting, you know, and it's just
the organization isn't good. Having rules or filters or searches you can do where you kind of
take care of everything related all at one time. Something you need to do to manage the bulk when you get back, but something you probably
should do all the time. Yeah. The nice thing about doing it when you get back from vacation is you
have a lot of unread emails. And so there's, there's like an incentive to filter things
because you don't have to read them. Whereas if you're reading like emails as they come in,
it's like, Oh, I've already read this. I'm not going to filter it. But it's like, yeah, if you have like 20 of these,
and I don't know, it might depend on the email app you use. But for my job, they use Outlook.
With Outlook, you can like control click several emails and then say filter like this. And it'll
come up with like various rules that capture all of those emails
without capturing too much.
And so, I mean, you could filter based on who sent it,
you could filter based on the subject.
And so that's like having a bunch of unread emails
gives you like an opportunity to set some rules
that are pretty comprehensive.
I mean, I think the other thing,
if you're a programmer,
which most of you probably are,
when you get back,
I think it's important to look through the code changes
that have happened while you're gone.
Catch up on what's changed.
If anyone was looking for feedback
or if you have any comments,
making sure that you sort of kind of know
what the state is of what you're walking back into.
If any design documents have come back out,
whatever planning has happened, making that you you talk to key people and sort of
figure out what's gone on since you've been there another thing is like more
recently especially with the at least that's from my company with with work
from home a lot more chats that happen and so trying to go back to the chats
and see like what got talked about was there anything that I I kind of missed
that I should follow up on and just getting through all of that that sort of like first day
back is uh important to getting back up to speed yeah that totally makes sense yeah i think um
um yeah another thing specific to work from home or maybe even maybe even not specific but
especially important when you work from home is, is, is getting that transition
right. You know, like, uh, almost like, like having some time, if you're going to, let's say,
go on a big family trip, then if you're working right up until, you know, 10 PM before the family
trip, and then 5 AM the next morning, you're in the car, like driving cross country, like you're
going to be really stressed out. Right. And so you almost, it's important to have like some type of buffer, you know, depending on your situation, maybe you
need to take an extra day or two off before the, before the vacation, or maybe you, um, you know,
do a half day or something, depending on how your circumstances are, but you want to be rested
before your vacation starts. And this gets back to that Ted talk, right? The vacation is
going to exhaust you in, in dimensions, in some dimensions and recharge you in others. And so,
I mean, and this depends too on the vacation. Like if you have a vacation where you just get
to stay home and play video games, that's awesome. That's the best. The staycation is amazing.
But if you have a, uh, like an adventure vacation, I don't know what you'd call it, but some kind of expedition.
If that's your vacation, maybe you're going to go skiing and it's going to really physically exhaust you or something. Right.
Like a lot of vacations are going to exhaust you in different ways. And so you actually need to kind of have a vacation from the vacation as well.
You kind of hit on it a little bit on like the types of vacation, like, you know, what you're
doing if you're just sitting on the beach or if you're climbing to the top of Kilimanjaro, like
maybe these aren't the same. I think another way that vacations are pretty different is kind of
like on the length. And so Jason and I talked about this
kind of like briefly before we got started, but like for a really short vacation, we were thinking,
you know, a couple of days, probably less than a week, then maybe people just sort of hold off
on things. Like if you had something, you know, no one's going to really work it.
If they have a question for you, they're going to just kind of wait till you get back.
You know, that sort of like short vacation. And it's good to take those sometimes you can do fun
stuff and for just a couple days for yourself personally. But from a work perspective, that
doesn't really serve the same sort of role as like taking a full like one to two weeks, then you need
people to like fill in for you, your work has to kind of like be taken over
yeah uh i guess it depends on the speed of stuff you're going in your your job situation but like
at that point too i think that's useful for your organization also there's something just like
jason was talking about the kinds of rest like the length of rest it takes a day or two when you're
in a place just to like realize you don't have to do work the next day. And then like, like the day for me, at least like the day before I go back, I'm kind of like
prepping myself mentally. So if you're only going on one to three days, you never fully check out.
But once you get up to like two weeks, especially, you know, you have a real opportunity to check out
and really focus on other things. Yeah. I mean, once you start hitting the one to two weeks,
then that's the time when people are just people who depend on you are just not going to tolerate. I mean, most most projects can't be stalled for two weeks. And so you're going to need to find some kind of deputy. Right. Like you're going to need to find somebody who can be your second in command for that particular task, right? If you are the expert on the data
processing pipeline for your team, you know, and you're gone for two weeks, like someone else is
going to have to be able to fix problems with the data processing pipeline. And so, so, so, you know,
before you can really take a two week vacation, like there needs to be redundancy. So that's sort of a, um, sort of like a prerequisite. Otherwise you're not going to
really be able to take a vacation. Um, you're going to have to be on call in some way, shape
or form. And so, yeah, it kind of, you know, it's kind of nice. Like, like, like forcing yourself
to take a two week vacation is also forcing yourself to train other people. And some people might say,
well, training other people just takes extra time and that person is not indebted to it, right? But
it's actually, it's going to get another person looking at this system. And maybe even when you
get back, that person can continue helping you. It's going to help build your sense of direction as an engineer.
So it's got a lot of positives beyond just being able to let you take a break.
And then if you could be so lucky as to be for a month or more,
sometimes I guess you stretch that and you call it a sabbatical.
Then I think, you know, that's the time when there really has to be a replacement for you.
It's not that you are not going to be able to come back to that work, but just there are goals
that you were doing, which will be accomplished by other people. There will be changes potentially
to your organization, to whatever. And when you come back, you really have been away.
And I think there's a certain value. So I've never been able to do this while working at a place.
But between jobs, I have taken three weeks off, four weeks off before.
I guess when I did my work gave me enough parental leave where I was able to take sort of four weeks off in one go when I had one of my children.
And I think there you get a true, you know, I'm away from work, I have to
not just be away from work and doing something, I need to figure out like how to organize my
non work life. Like, you know, you got to have structure to your time away, you got to have
things to do you get our non work routine. And I think that's a really like nice way to get
perspective on a lot of stuff. Yeah, Yeah, exactly. Yeah. I mean,
once you're gone for a month, then it's not just about maintaining your responsibility,
but someone else is going to have to advance them. Almost nothing can just sit still for a month.
And so, yeah, you're going to have to get replaced. And so, yeah. And then when you come back after being gone for several months, then that's a really interesting feeling because you've replaced yourself.
And so when you come back, it's like, do you displace those people or do you find something else to do?
I mean, there's a lot of questions there.
Those are ultimately very, very rewarding vacations when you can take a really long time. And I mean,
now we're getting to the point, as I was saying, with so many people maxing out their PTO,
and I don't remember what the max is. I think I want to say it is 10 weeks, I think.
I think it varies workplace to workplace. Yeah.
Well, yeah, that's definitely true. But I think where I work, it's 10 weeks,
maybe 10 and a half or something like that. And so, and so, yeah, I mean, if you could, I mean,
there's people, plenty of people who can take, uh, you know, two and a half months off. And so,
yeah, with that, you know, if someone does that, they, they could come back and their team could
be totally different. And so, um, which again is, is not a bad thing at all. Um, what is your take
on, on that? So let's say you have, I mean, parental leave is a bit different, right?
But let's say you have just a huge bank of PTO. Would you break it up and take, you know,
a week every month, or would you take a huge chunk of it at once? What would you do?
Oh man, that's a great question. I mean, I guess it kind of depends. Like I do not think I would take, I don't know, personally, whatever,
I guess it's true for like me financially, but as well, it's like, I just don't have like a zero
balance doesn't do it for me. So I don't think I would take it all, but I definitely would try
to take like a vacation to maybe another country or to something or
do some like project that I really wanted to focus on and do and really take a good chunk of it off
at one time I don't think I would go down to zero I'd probably go down I like having for my situation
I like having you know like a week available so that like I could always take a couple days and
then not be at zero and then take a couple days days again. Right. So I like going down to no more than sort of like one week in the like not having less than
a week left. So if I had 10 weeks, I'm going to I'm going to fantasize if I had 10 weeks off.
I think I would take at least a six week chunk and do something amazing.
Yeah. Yeah, that makes sense. I think my last big vacation was I did get a month sabbatical
through work. And the way it was set up, you had to take the whole month at once. You weren't given
an option. And so it was really nice. I mean, we drove cross country, but it definitely was
weird coming back. Actually, when I came back, there was a reorg. So when I came back, the organization
looked totally different. So this is a bit jarring. But yeah, I'm kind of with you, I think.
So actually, one thing to mention is neither one of us have maxed out our PTO. And so number one
piece of advice is to not do that and to please take your vacation for all these reasons we talked
about. But if for some reason I ended up with 10 weeks of PTO, yeah, I would probably take, yeah, probably two months. And yeah,
same kind of thing. Just focus or find something cool to do or take an international trip or
something. Yeah. Cool. All right. So yeah, folks out there, if you have any vacation tips,
we can make it the intro topic of the next show.
So give us your feedback on what you think constitutes a good vacation, vacation horror
stories, pretty much anything. You can send an email to programmingthrowdown at gmail.com.
And we always appreciate reading really cool stories. I got an email just to kind of close this out.
I got an email regarding a number of emails,
but one of them regarding our Hash Maps episode that just went live.
And someone, there's a really amazing article.
I'll have to go back and find it for next week,
for next show,
about how Google used like brute force
to kind of break some, some hashing.
So I'll share that to everybody,
but I really appreciate that and all the other emails and thanks everyone for
tuning in.
All right.
See you next time. music by eric barndollar programming throwdown is distributed under a creative commons attribution
share alike 2.0 license you're free to share copy distribute transmit the work to remix adapt the
work but you must provide an attribution
to Patrick and I, and share alike in kind.