Build and Learn

In this episode, we talk about that subscription fatigue that is coming for us all. CJ has been working on some homesteading projects, including maple syrup harvesting and an AI birdspotting camera. Colin finally reveals what he's been working on at work: a new SDK!

What we're building
- CJ is homesteading: maple syrup
- Raspberry PI + camera + AI to detect birds in the yard
- Colin finally shares what he's been working on at work: documenting a new Discord SDK!

What we're learning
- Our lessons learned when buying (or not buying) a house

What is Build and Learn?

A podcast about software development and developing ourselves as software engineers. Hosted by CJ Avilla and Colin Loretz.

Colin: Welcome to build and learn.

My name is Colin.

CJ: and I'm CJ and we're back and
we're catching up on what we're

working on and what we're learning.

And the first thing we're going to jump
into is a notion block limit that we

just hit, we use notion to like manage
all of our notes for the podcast.

And if you create too many
lines of texts in notion,

basically they charge you money.

And it's like, ah, man, the paper cuts
of all the different subscriptions.

You've got Netflix and Disney
plus and notion and render and

all these different SAS products
for work, for play, for content.

And it.

It just weighs on you.

It's like, Oh, another thing
that wants to charge 10, a month.

And it's annoying and frustrating.

Colin: Yeah.

Are you using notion for
anything other than the podcast?

CJ: Just the podcast, like over,
over time, I've used it for lots of

different content type planning things.

And I have like had periods of
my life where I've journaled in

notion, but right now the only thing
I'm using it for is the podcast.

I,

Colin: we don't, we don't
want you paying for that then.

CJ: yeah, it's like, I don't know.

Maybe we can go back and delete
a bunch of blocks or something

like you said to make it work.

So,

Colin: it's interesting because
I started to think about that.

And then like, even though most of those
blocks are past episodes and we have them

live and the show notes are live, like
there's like a little bit of a, like, it's

kind of emotional to go and delete that

CJ: yeah,

Colin: It's like a emotional residue.

I'm like, do we want to keep this?

This is also probably why I have
too many things in my house.

But yeah, I, if we're only using it for
the podcasts, it would be interesting for

us to explore, like I was thinking about
obsidian with some sort of get back system

or maybe even we just go get hub projects
and make a repo for the podcast and kind

of walk the talk of, of being in public.

And and if you want to come on the show,
you can open an issue or a PR, you know,

CJ: Mm hmm.

Mm hmm.

Colin: slide into those get hub DMS.

CJ: Totally.

Yeah.

So help.

I have heard a lot of
people talk about obsidian.

I know it's like the second brain thing,
but it sounds like, is it file backed

or like, what is the database behind it?

And is it like a replacement for
notion or how are you using obsidian?

Colin: Yeah, obsidian.

I, it's more of an
aspirational thing for me.

I use it because it's in Markdown.

Like I can, I can write a lot of
docs there when I don't want to write

my docs straight into like my work
for, for doing work docs and stuff.

And then it's a little tricky cause I
think I think for some reason I'm not

certain, but I don't think transistors
like descriptions are exactly Markdown.

They're like Markdown adjacent.

And so I often write in Markdown anyway
and so obsidian works for me with that,

but I don't have a consistent habit.

There are a lot of obsidian plugins that
will give you things like can bands and

being able to do like Excalibur draw
and all that stuff inside of obsidian.

So like it becomes, it feels
a lot like notion in a way.

Okay.

I think it's more for yourself, but
I'm seeing on their website that they

also have a subscription now for team
plans and you can have syncing and

you know, if you're going to be using
obsidian, I love the design of it.

I love the icon, like the branding of it
is just really nice, but I totally get it.

Like Notion's trying to
make money to survive.

Obsidian's got to make money to survive.

But at the same time, like if we're
only using it for this podcast,

which we do not do to make money,
should we be spending money?

On those things, or should
we just be using free tools?

Because, you know, it's
mostly coordination.

We already do pay for things like
transistor and descript and all of that.

CJ: mhm, mhm.

Yeah, it's been on my mind too.

I have so many different little projects
floating around out there that are

I'm paying for hosting and I'm like
man I wish I could just like squish

them all into one giant Rails app
and host like one thing in one place.

So we'll talk about it in a little
bit but this project that we worked on

This past weekend with my son, I just
like shoehorned it into an existing

because I was like, I don't want
to spin anything else up, but yeah,

love the idea about GitHub project.

And they have like, GitHub
has been releasing a lot of

those community tools too.

So they have the discussions feature
and probably some other things too, in

there that we could take advantage of.

Colin: Yeah, I mean, it's also
you could run a community on

GitHub, which would be interesting.

CJ: Yeah.

And in terms of like the way that we use
this, it's really kind of like basically

a giant blob of text for the notes
that we're taking as we're recording.

And also like before we record,
and then there's a few different

statuses for whether an episode is
scheduled or published or in editing.

And then who like, basically we kind of
like round Robin, who's going to edit it.

And that's basically all
that we're using it for now.

Right?

Like.

Colin: It is, but I think I was
listening to Fairly Technical, and

they were talking about how every
podcaster has a flow like this,

CJ: Mm

Colin: And so it makes sense that, you
know, you don't necessarily want to

have a tool that's just this, but I'm
sure someone out there will go build it.

I think They had like a call for
like, someone go build this, please.

Or transistor, go put this in, you
know, just as part of your flow.

Especially if you're scheduling a bunch
of episodes, being able to see your

scheduled episodes, your on deck episodes,
things that are coming in the future

obviously, you, you know, something like
transistor is very good at like sticking

to its core and not adding a bunch of
feature bloat that every new feature you

add, you have to support and care for.

In perpetuity, or you got to kill it.

And then people are angry.

Cause that's where, like in our case,
that's where our show notes are.

That's where our statuses are.

We also, I mean, we, I know
we're hitting the block limit

because we have a huge backlog of
potential guests and topics too.

So we could probably go put those
somewhere else and we've mostly gone away

from doing guests, but there's a pretty
good list of cool people here that we

should probably revisit having on the
show at some point and kind of figure out.

See what other people are learning.

CJ: Yeah.

Yeah.

I think the, the, like the ease of just
jumping on you and I and recording, it's

like so low touch that like that I think
is also like helping with consistency

is just like, okay, you know we show
up, we do our thing, we record, we edit

and we publish and it's good to go.

But yeah, I think like it would
be awesome to get to know a

lot of these different folks.

So yeah, stay tuned.

I think we'll probably have
someone in this year at some point.

Yeah.

Colin: So I think last episode
you talked a little bit about

your, your maple syrup trees.

So how, how's that going?

CJ: Oh my gosh.

Okay.

Yeah.

So we teased it a little bit.

We tapped some trees and I
tapped a lot of them incorrectly.

So it was so sad.

It was like, you went out, you go out in
the yard and it looks like there's just

like gunshot wounds and the trees are just
bleeding sap, like all down their side.

I'm like, I'm sorry, Mr.

Tree.

But we tapped one of them correctly.

And thankfully that was the
sugar maple, which is the one

that produced the most sap.

And it was kind of wild.

We, it was, it was really, really fun.

Like the anticipation of waiting and
then going and checking inside Some days

it would produce like nothing and other
days it would produce like three gallons

of sap, which is just like mind blowing.

And it comes out like
very much just like water.

And so my brother was in town visiting
and we built a like makeshift homemade

syrup evaporator in the backyard.

We just bought like a bunch of
cinder blocks and like used pieces

of the barbecue and got some, got got
built like a little chimney and had.

Our like wood fired evaporator.

So we had kind of like a, a catering dish
that we were able to pour several gallons

at a time into and just boil it off.

And we spent about four hours one
Sunday afternoon, just making s'mores

and hanging out and playing card
games while we watched the fire and.

Boiled off about six gallons of
syrup, which made like five cups or

six gallons of sap made about five
cups of syrup, like homemade syrup,

which was delicious and amazing.

And it was, it was like
tons and tons of fun.

So very much recommend trying it.

If you're, if you live somewhere that
has maple trees it's just like small

batch, you know, even if you make
like a little bit it's tons of fun.

Colin: And now we understand why
maple syrup costs what it does.

CJ: Oh my gosh.

It's so, yeah, I think we, we calculated
out that we're spending like $16.

Every two weeks on maple syrup.

Cause our kids eat waffles like every
single morning for for breakfast and

they just pile on the maple syrup.

And so our two growing boys are
eating tons and tons of syrup.

And this would the goal was
definitely not to cut into like

our maple syrup spend, but,

Colin: Right.

You have a, you have a bucket for that.

CJ: Yeah, exactly.

So yeah, it was, it was
surprisingly easy to get started.

You can buy the taps or the spiles,
the little like metal pieces on Amazon

for, you know 30 bucks or something,
or, and then you can buy, I bought

like five gallon food grade buckets
and a little kit and about like 30

worth of cinder blocks and just cut
some wood, some dead wood out of the

backyard and made our little evaporator.

So yeah, we're probably, we probably
spent like twice as much as we

spend on maple syrup on just like
supplies and getting it done.

But yeah, it's tons of fun.

Colin: you're homesteading now.

I think that's very similar to like
people making beer and things like that.

CJ: Yeah.

Have you, have you brewed beer?

Colin: I've done some like various ciders
and like making my own vinegar, things

like that, like fermented vinegars.

So a little bit less on the beer side.

CJ: That sounds like very, very up
the same, like crafty sort of home.

Yeah.

Homesteading type stuff, which
it's like so much fun, you know,

to just use this, the, I don't
know, use the stuff that earth is

giving you that's like around you.

So speaking of that, speaking of earth
and the stuff that's around you so

I, I think we may have mentioned it.

Maybe back in December, my son, Logan
was like very into getting a raspberry

pie for Christmas as like a a present.

And we're like, what is he going
to do with a raspberry pie?

We don't know.

So he got this little
single board raspberry pie.

And loaded a bunch of gate, like
gaming OS things onto it and was

playing just like simple games.

And the other day he and his brother got
really into like tracking down the birds.

Like the birds are all now coming
out now that like winter is

ending and spring is starting.

And so they're tracking all these
like birds of New Hampshire.

And.

And they wanted to build a tool
that would help them watch when

birds came to a certain feeder
that like, isn't easy to see.

And so like, amazingly in a
weekend, there's like so many cool

tools out there for raspberry pie.

And we got We got a little pie running
with a USB camera that is running.

I think it's called motion.

So anytime the camera detects motion,
it will start recording and then it

records for a certain number of frames.

And there's all these different like
things you can tune about the thresholds

of, you know, How much noise you allow
and like how much motion to detect or

whatever, and how many frames before to
record and after to record and everything.

And then it has all these nice hooks.

So like when, when it detects motion and
then when it stops detecting motion or

when it takes a picture or when it stops
taking a picture or a movie or whatever.

And so.

We wrote a little Python script that
takes the video recording and uploads it

to a rails app and then lets us and then
the rails app sends a slack notification

so that like anytime the bird comes to
the window, we get a slack notification.

And the next step here is that
we're going to ship it off to some.

AI model to ask like, which you know,
what is the species what is the genus

and species of this bird so that
we get these Slack notifications

that say, you know, the Mr.

Like the tifted titmouse or whatever,
the tufted titmouse is at the window,

like so super, super fun project and
like mind blowing how many tools there

are just to like throw things together.

So that was tons of fun.

Colin: That's cool.

Yeah there.

There's a bird feeder out there that
That will do this for you, but I love

that you guys made your own We've
gotten this for my girlfriend's parents

and it was one of those kickstarters
that was like three years late.

But it works like they get text messages.

It's like a, it's an iOS app and it's
almost like a Pokedex from Pokemon

where it's like you've, you've
captured this bird and this bird and

it identifies each individual bird.

And, and they've been having a lot
of fun with it, but I love that

you guys are pulling it together
yourselves and you can change it

up in terms of like what it does.

But having like a, a bird book that,
you know, these are all the birds that

we've seen recently would be pretty cool.

CJ: Yeah, that's 100 percent what
we're trying to do when we first

moved here their grandparents bought
them binoculars and like birds of New

Hampshire and walkie talkies to like go
outside and go like do outdoorsy stuff.

And so yeah, they're, they're super
into it, but, and they've been going

in the physical book and marking,
like, this is the month and year

that we saw this bird or whatever.

And so, yeah, we basically need to
build a Pokédex exactly like you said.

And this, this actually circles back
perfectly to the subscription fatigue

because we have nest cameras and we've
been paying like, I don't know, some

crazy amount every year just to have this
nest camera and like the, I feel like the

quality of the video and the quality of
the motion detection is not as good as our

like hacked together Raspberry Pi version.

So I don't know, we might be dumping
the nest here pretty soon, but.

Colin: that feels like one of those, like
how much time are you going to spend on

this versus that subscription on nest?

But also, I mean, I, I can yeah, a lot
of those cameras are not that good.

But if it's for fun, you know, I
don't know if I would trust it for

home security, but if you, if you
build something that's amazing, then

maybe Kickstarter on your hands.

CJ: Yeah, for our, for our use cases here,
it's almost all like wildlife detection.

We just want to see like, did,
was there a bear in the backyard?

Was there a deer in the front yard?

Are the

Colin: nest won't tell you, right.

That is it, does it tell
you if it's an animal?

CJ: It will tell you if it's a dog
bark, like it can detect the sound.

But like, other than that, I don't
think it tells you, it just says there

Colin: Yeah.

You're like, I want to know, especially
in Tahoe and stuff, like tell me if it's

a bear or a person, tell me if it's a car,
tell me, yeah, all these different things.

But this is also like where you
run into when we do a lot of those

captures of like click on all of
the dogs and all of the bikes.

And it's like your cameras
can also get things wrong.

But I I've been impressed with how well
the bird buddy has picked up like which

birds cause the camera doesn't look, okay.

That good in my opinion,

CJ: Mm hmm.

Yeah, so we got, we tried some early,
like some early tests, and we took the,

like, images of birds that we captured,
and I tried sending them to OpenAI

with GPT 4 vision, like the preview of
the vision model, and just said, like,

what bird is this, and it got it wrong.

Which like, whatever, like
it's not tuned for that.

It's just like probably telling us a
random story about a bird, but we like

on iOS, you know, that thing where
you can push the eye and it will give

you like the magic thing for plants
and whatever that works amazing.

Like you just take, we could just take
a screenshot of the video that was

happening and then click on the eye.

And it was like, Oh yeah,
this is a tufted titmouse.

And here's like a whole bunch of
information about it, the link to the

Wikipedia page and all this stuff.

So Yeah, we'll have to figure
out what Apple's running.

Colin: Yeah, there's been a lot of chat
about whether or not Apple's gonna have

like a big AI release at some point
that gives us access to that, because

I think all of that runs on device.

So being able to have it available,
it's like now, is there going to

be a web version that at least is
trained on the same type of thing and

you can use it, you know, similarly,
because I think open AI is making

quite a bit of money between chat GPT
subscriptions, more subscriptions.

Thanks.

And just open AI API credits.

And I think a lot of companies are
like, how can we get some of that?

You've got Anthropic and all these
other companies doing the same.

And we just need bird AI, right?

The best bird recognition
software that's out there.

CJ: Yeah.

And the fact that the Raspberry Pi is
able to run so much locally, like I, I

also am wondering if we could just run
like a small model locally on the pie.

Yeah.

Or like maybe there's even some
bird specific model that's available

on hugging face that we can just
put on there and say, you know.

Here's the picture.

Like, what is this?

And then include that in
the post request to rails.

It's like, here's the video and
here's the description based on

your model, like of what kind of
bird this is that'd be amazing.

So I don't know.

Colin: If there isn't one, you and
your kids can contribute your first

CJ: Yeah,

Colin: Hugging Face.

The preeminent bird AI.

CJ: yeah.

It's, it's fun.

It's tons of fun.

So

Colin: That's cool.

CJ: it looks like you've got
some stuff that you have been.

Sort of hinting at what details
can you share about what's going

on at work in stealth mode?

Colin: Yeah, so it's it's public now.

And by the time this episode
comes out, it'll probably have

been out for a little bit.

But yeah, well, the things
I've been working on at work

are slowly getting out there.

So we have GDC, the Game
Developer Conference, next week.

And the thing we've been working on
is allowing developers to build games.

Inside of discord.

So you can launch, you can build
a game as a developer, but then as

users, you can launch these games
and you can do that already today.

Like we have a bunch of games that we've
built and worked with some partners on.

So a lot of mini games, when you
think of like, You know, what

kind of game would you want to be
able to jump in and jump out of?

A lot of party games, things like that.

So my big project has been taking the SDK
and the docs that we use with partners

that were pre me joining discord and
like making them publicly consumable.

All the information architecture.

And then like thinking through,
like as a developer, what do you

have to know to do all this stuff?

So, you know, kind of a cool thing.

Cause I didn't have to edit
a lot of our existing docs.

It was like a whole new section.

So a lot of free reign around, what
does it mean to like teach someone

what this is, how does it work?

How can you use it?

It's all developer preview.

So there's a bunch of limitations
right now, but like, just how do

we do all of that and, you know,
also release a TypeScript SDK that.

people can use to put in their apps.

So that will be available
for devs on Monday.

By the time this comes out,
it'll have been out so you

can go play around with it.

But, yeah, I've been very one track
mind, just focused on those docs

and samples and all that stuff for
what feels like a very long time.

CJ: Those greenfield
projects, those are amazing.

Those are like the, yeah,
those are super, super fun.

Colin: Yeah.

And I'm excited to go to GDC and just
like, see the engineering team that built

it, get to show it off and have some fun.

You know, they've been working really
hard on it for a long time too.

And just, you know, that, that last
5 percent that takes the longest,

the polish, the, you know, the
little things that we need to do.

And then, you know, there'll be some
GDC after parties and things that

where we get to celebrate all of
these little wins that we've had,

CJ: nice.

Is it, so help me understand
exactly like what this looks like.

I, in my mind, I'm sort of imagining,
you know, Well, the, the two things

that come to mind is the Shopify
sort of I forget what it's called.

They're like react component
based thing where you can build

your own stuff into Shopify.

And then also like,

Colin: like hydrogen and O2 and

CJ: yeah, exactly.

Colin: hydrogen and oxygen.

Yeah.

CJ: yeah.

And then also I guess, Stripe
apps where like, you can embed

your own thing into Stripe apps.

Is that like along the
same lines or how should we

Colin: I haven't looked
at the Shopify stuff.

They used to have something called
which I just discovered the other day.

That's called the exact same
thing called embedded app SDK.

And so we, ours is also called
the embedded app SDK and.

It's very similar to the Stripe apps.

And I can't fully remember if Stripe apps
were hosted by Stripe or by the company.

Cause in this case, you will host
your front end and backend, but

you need to use our, like your,
your app is being proxied by us.

And so there's a bunch of things
that you have to do in the SDK.

The SDK handles the communication
with discord and the actual client,

whether it's mobile or, or or.

Desktop.

So like authentication, a new person
joined the game, a person left,

someone's talking what guild are you in?

What server are you in?

What channel are you in?

All that kind of stuff.

You do still have to build a game, right?

So there is like, not really a
way to hand wave around that.

You're still going to be having
to know how to do full stack web

development, state management,
you know, all that kind of stuff.

We're just going to be
emitting those events to you.

And so it is then hosted
like in an iframe.

So very similar to Stripe apps.

And yeah, I think Stripe apps
was a very greenfield version of,

of that for, for them as well.

And, and I got to be in the,
like the beta for that probably.

Through you or somebody, I don't
remember, but it was cool to see,

or we, we had built one at orbit.

That was what we had done.

So yeah.

Yeah.

So I had worked on that a little
bit, so I had some of the like

end user experience of that.

But yeah, we, unlike the Stripe
one, we aren't like shipping

components for you to use.

So it's literally a blank
slate of, do you want a game?

Do you want to build a shared whiteboard?

Do you want to build a Kanban?

Like it doesn't have to be a game, but a
lot of people, you know, You know, expect

that there is a game behind that button.

So we're going to be largely
focused on games, but we have

one called jam space whiteboard.

That's kind of like kind of like
a figma fig jam style thing.

CJ: Very cool.

And then is it like one way to
think about it might be discord is

all of your like user management
and like player management stuff.

And then you just build like
the mechanics of the actual

game for some multiplayer thing.

Colin: yeah.

So, you know, yes, we'll tell you when
there's new users, you still probably

should keep track of what users are on
your end and all of that, and just kind

of get like the, the diff of someone
left, someone joined, give me all the

people who are here now, things like that.

And there's there's some scopes
and things you have to get around.

Like if you want access to people's
username and avatar to bring into

the game, you've got to opt with
us and let the user opt into that.

We're not just going
to give you that data.

So users are going to be.

As a developer, you're going to
have to find what data you want.

Users are going to have to opt into it.

And that happens today.

If you join any of the, the
existing activities, like we have

a really fun one called putt party
that, that was built at discord.

That is a really fun, like putt, putt
game that, you know, it's fun for like

doing standups and stuff and just playing
a game while you're doing a meeting.

And then the big one, I think is that
like over time, we hope to, you know,

Have more like persistence and things.

So when you leave a game and come
back, it's a new game, but being

able to keep persistence, if you
have like a long running chess game,

for example, that you don't have
to be there for the entire time.

It could be more async and say
like, Hey, it's your turn, CJ.

Hey, it's your turn, Colin.

And you'll get a message in discord,
you know, to, to take your next turn.

So

CJ: That's cool.

I like

Colin: yeah.

CJ: Yeah.

There's like a bunch of games that are
just like spiraling through my head

about things that we built just for
fun, like a little HTML five, you know

asteroids and like, you know, flying
a ship around, you like jump in, jump

into a multiplayer game with other
people's ships and some random spot.

And you're all just trying
to avoid the asteroids.

Or even like a type racer type game
where it's like, Oh, you know, like a

race is going to start in five minutes.

And it's just like, who's in
the room or whatever with you.

And then yeah, lots of fun stuff.

So is it the events that are being
emitted, are they all kind of like

JavaScript, like proper JavaScript events
that are bubbling up on the browser side?

Or is it like web like a web
sockets or something like client?

So they're all like client side
things that you're handling or.

Colin: In the client today and then
this kind of abstracts it and talks

to it, so it's, it's using something
called a post message protocol, so we're

doing RPC commands over post message
between the iframe and the client and

a lot of that, the SDK handles that.

So you're not going and building all
these like gateway listeners and RPC

listeners and commands and things.

The, the events, it's TypeScript,
so the events are typed.

We know, like when we, so you know
what to expect and all of that.

And I think that's where, like,
there's a lot of work that you have

to do to get the thing to load.

And then once you're loaded, then
you build the rest of the game.

And so my joke has been like the, the
draw the owl tutorial of, you know,

first you draw the two circles and
then you draw the rest of the owl.

Like we are not going
to build a game for you.

So like you do still have to have
experience in either a game engine.

The HTML ones are amazing and they're
like kind of what we're built for, but.

Things like unity and unreal and stuff are
technically possible as long as you can

compile to web things like Wasm and WebGL
and all that, there's a lot of tuning

that you have to do to make it work well.

Cause you're running in an iframe inside
of a, maybe a mobile app or a desktop.

So there's a lot of things there
that over time, we're going to

be making a bunch of tutorials.

I want to make a bunch of game tutorials
just because I think it'll be good for

our community to learn from as well.

it'd be fun to build.

CJ: the, a bunch of
stuff came to mind too.

One of them was that dragon
Ruby had, I feel like they had

a way to build for the web.

Maybe that was wrong.

Colin: It does say web.

CJ: Oh yeah, it does have WebAssembly.

So you could write like a game in Ruby,
compile in WebAssembly and I don't

know, maybe get something working.

The other, the other thing was
that I, I remembered that Repl.

it launched a game
framework called Kaboom.

js.

I don't know if you, have
you seen this at all?

Colin: I have not.

CJ: It is, I think it's a very basic
version that's similar to dragon

Ruby, but it's all like JavaScript
methods for just calling like simple,

simple things to interact with a,
I'm guessing it's just a bunch of

sprites on like a canvas or something.

But yes, very similar kind of
game mechanics to dragon Ruby or

some other similar, like simple.

Game framework,

Colin: Nice.

Yeah, I mean, if you've ever tried to
make a game in JavaScript by yourself,

you start to realize like, I need
scenes and players and I need to move.

That is not the stuff that
we're helping you with yet.

Right?

So like, I will definitely have to
look at this because doing it with

Dragon Ruby, we have an example that
is in Unity and all these other things,

you end up having to wrap your game.

In the iframe and then we, you now
need to pass all the messages that

we're sending you into your framework.

So like you have to have these
hooks into unity or hooks into,

you know, those other things.

If you're just using kaboom, you're in
JavaScript and so you can handle those

events and you can do those other things.

So we are going to work on tutorials for
like, you know, here's the unity hook ins.

Here's the unreal.

Here's kaboom, all that kind of stuff.

So I'll have to look at this one.

Looks fun.

CJ: Yeah.

It reminds me of what is it called?

The scratch, like that scratch
programming environment where kids

can kind of like use Blockly to drag
around stuff, to build simple games.

That's what Kaboom reminds me of too.

It's just like very simple, little.

Tools to build simple, simple stuff.

So very cool.

That's exciting.

That's like a long time, long time coming.

So

Colin: across the finish line.

We're excited.

So hopefully we'll get to talk about
more different things now that this

is getting put out into the world.

CJ: Well, we'll look at,
we'll look forward to that.

Yeah.

Why don't we jump into
what we're learning about?

I mean, obviously we're learning a ton
about the stuff that we're building, but

Colin: Always, always learning.

CJ: yeah lessons learned buying a house.

Colin: Yes, this was, I don't know.

This is, this is one of those things.

This is like the weird housing market that
we have right now, but I, I watch Redfin

like religiously and we found this house.

That's, it's hard to explain, but it's
just like so different than every house in

CJ: Mm

Colin: we're like, you know, we
want, I think we should buy it.

We were not pre qualified and
it was only on the market for

three days and had three offers.

And I was like, you know,
let's, we want to make an offer.

And they're like, yeah,
that's very, that's very cute.

But if this thing's going to
be closed in like an hour and

you guys are not pre qualified.

So we've learned that
like, you really shouldn't.

Even be looking at Redfin because or
like in our case we went and looked at

the house And we of course then fell in
love with it and we're like damn like

we are gonna miss this thing So being
able to have that I mean, I think when

you have an agent They're also going
to take you more seriously if you're

pre qualified like otherwise, they're
like, yeah We'll show you the house,

but we're not going to put a lot of
effort into selling you anything because

you're not You haven't done that step.

But it did send me down this rabbit
hole of like, you know, right now rates

are really high, but not historically,
but relative to the last four years.

And it started sending me down
this rabbit hole of like, does

it make, like, I've always been
taught to always do 20 percent down

CJ: Mm hmm.

Colin: a lot of that is because
of PMI or, you know, your property

mortgage insurance, because you
haven't hit that 20 percent equity.

Okay.

And I started looking at all
these different ways for us

to not do 20 percent down.

And I think if we had pulled the
trigger on this and put it in

an offer, we probably wouldn't
have done 20 percent down.

But like when you do first home buyer,
you can go all the way down to three, 3%.

And I can see how that gets a lot
of people locked in their house.

you know, being house poor, not being
able to technically afford their house.

So in a way it was like, yeah, we
missed the boat on this, but we saved

all the pictures so that we can have
inspiration for like, if we find a

house, cause it was a flip, like the
house did not look that nice before

these people took this one over.

It was definitely a flip.

So also you're like, what didn't we know?

Like, was it flipped?

Well, is there secrets that they
painted over things like that?

So in terms of that, it was definitely
like a developer who was buying up houses

and, and cause I, the other one we looked
at as we walked in, we're like, I think

this house, It's owned by the same people
just based on the finishings and stuff.

And then we walked around and we're like,
yeah, this is totally the same people.

So whatever, whoever these people
are, they have an aesthetic

that I apparently enjoy.

But yeah, so a lot of lessons learned.

We went on a rollercoaster of emotions of
like, Oh, we're going to look at a house.

Oh, we're going to put an offer.

Oh, you guys don't have them.

Your prequalification.

So sorry, this house is going to be
gone before you wake up tomorrow.

CJ: So were there any other houses
or this was like the only one so far?

Colin: This was the only one,
and I'll send a link to you.

I'm not going to put it in the show
notes, but it is remarkably different.

And it's just interesting.

Like it feels a little bit more like a
Palm Springs home, like in the style.

And now that I look at all the
other houses in town, I'm like,

these are all just houses.

Like none of these speak to me at all.

And if we're going to spend a
bunch of money on a house, I want.

You know, to have, it's like, it's
like watching those house hunters

show where they're like, what are,
what are their two, what are your

jobs and what are you looking for?

And you know, I feel unreasonable
attachment to this house,

CJ: Mm hmm.

Colin: it's just a house.

And I do think we are in the longterm
going to wait and make sure we

have the 20 percent down because
the math worked, but it was dumb

how much more expensive it was.

If you don't put down 20%, especially
with 7 percent interest rates right now.

CJ: Yeah.

So lots of good learnings, I think.

Yeah when we bought our first
house, we made so many mistakes.

So you've learned a lot of the same
stuff that we learned, but also or

like, and things to look out for.

So we tried to buy a house in 2008 and
we put in we went down, it was like in

a, in a place where it had, you know,
the model home and there's like real

estate agents just kind of like sitting
there waiting for you to walk in.

We went in, put in an offer,
offer got accepted, and we went

through the whole process of
like prequalifying and whatever.

Right.

We got to the point where.

We were trying to get ready to move
out of the place we were renting

and our lease was going to end.

And so we like had already ended our
lease and we had like other people

coming in and like moving in behind us.

And so we had like a pretty
hard date to get out.

And escrow was supposed to
close at a certain time.

And so we're like, okay Let's see if
the seller will like, let us just move

in temporarily and we can like rent it
would be like a rent back or whatever,

or like, there's different terms for it,
but sometimes you sell your house and

then you stay in it and then you rent it
from the new owner before you move out.

I think that's called a rent back
different, similar thing where like in

this case we moved in before we closed
and then like the 2008 crash happened.

Colin: no.

CJ: That week that we're in the house and
all of the subcontractors for the GC that

built the house came calling for their
cash, like, which doesn't usually happen.

Usually the GC can like
float a bunch of money.

And like, as things are closing,
they can pay the framer.

You know, for the, the, the house that
just closed and they can pay the, the

drywall people, they can drive the
paint, pay the painters and the pavers

and the whatever, like the roofers.

But when the market crashed, what
happened was the GC's like bank

was one of the banks that failed.

And so that triggered this
opportunity for all of the subs

to renegotiate their contracts.

And when they renegotiated, they
were like, Oh, we want our money now.

And so that meant that the
contractor didn't have enough money

to pay all the subcontractors.

Colin: Right.

It cascaded all the way

CJ: yeah, it just like,
just came crashing down.

And long story short,
we never got to close.

So we moved into this house.

And it, the, the loan, like the
actual thing never closed escrow.

And so we were in this wild situation
where like, we're living in this house.

We don't own, but like the seller, which
was like the contractor, like just let

us live there basically indefinitely
until we could find another house.

And so what was kind of crazy is like,
we had bought like washer and dryer and

had them installed like up the stairs
and like all this stuff, like we were

in it, like in it and living in it.

And it was like our, you know, our new
place, but it never, it never technically

closed and it was never really ours.

And I think we also got very attached.

To that house.

And that ended up totally being like
silver lining blessing in disguise

because as the market crashed, the
price of everything went way down.

And so we ended up getting in or
like yeah, over, over the next

several months, we, we probably
saw like 80 different properties.

So we went and looked at like a
billion foreclosures and it was crazy.

Like in 2008, people were like, Getting
evicted or they're foreclosing and

they're just would leave with like the
cabinets and like all the furniture

and like the windows and like just
stuff that like, you're not supposed to

take out of the house when you leave.

And so we'd go into these
foreclosures that were just gutted.

So it was kind of wild, but we ended
up finding a S a separate place and

landing there, but yeah, I guess
the learning in this case is don't

move in before you actually close.

Colin: That, yeah, I was like, I
didn't even think about 2008, but

even just doing that before you
close has all sorts of implications.

But, wow.

Yeah, I mean, just the idea
that your value might go down

in putting you underwater.

You know, even today is a, is a concern.

It was good because we both put
down like a pro con of this specific

house, which then, and then like, how
would we, you know if we, we, there's

like a bunch of weird things that
we have to do, like sequencing that

would not have made sense, like we
actually want to sell Chanel's place.

First.

But like we were being, we were
acting out of like, was this scarcity?

Was this FOMO?

Like we were not coming from
a place of strength and power.

So like we would rather have it
pre qualified know that the other

property is sold first, or at least
we have it on the market even.

And then we also have some health
issues and things that, that

we're trying to tackle right now.

So not exactly the best time, but we
were, we were kind of given into the FOMO.

So I shared a link in the chat here of
the house, but it definitely is just so

different compared to a lot of the houses.

And I do think like, again, it gives
us a good sense of like what we'd

like to achieve, like in our own.

And maybe similar to the, how the
flipper did it, like they bought

this house for like four 50 yeah.

And they were selling it for 600.

So like, maybe we find a
similarly structured house

somewhere that we want to be.

And I'm curious, like how much is the,
of the neighborhood is important to you?

Right.

Cause you can't change the neighborhood
and like the neighborhood was not perfect.

The house was good.

We were, we were clearly making some some
justifications for why we should do this.

CJ: Yeah, the neighborhood matters
so much, like, for us at least,

like, it's such a massive thing.

I think also, like, if you can
figure out who the flipper was, like,

you might be able to go and work
directly with them and say, like,

Colin: Yeah.

Who's your contractors?

Yeah.

CJ: to the contractor.

Cause they want to do like, they want to
do different kinds of deals or whatever.

And they're probably, there's
actually really interesting

techniques that I was learning about.

And I think there's only like a handful
of like really big flippers in Reno that

do like hundreds of houses a year where
they'll buy flips, you know, sell, and

they've got the same crews and whatever.

But one of the things that I learned
about was like, And this is actually

applicable to Kraftwerk too, is that
when you or I just go down to Home Depot

and we see some fixture or some flooring
or something, there is a certain price.

And that price is marked up an insane
amount to be like the, like B to C cost

of some amount of flooring or whatever.

And there's so much that goes into
that for them to not, like, so

much goes into the markup for them
to have, you know, the stores and

employees and all this other stuff.

Whereas some of these like really intense
flippers, they'll buy like shipping

containers full of just like the same
flooring or shipping containers full

of, you know, all of the same cabinets
and then they go into a house, they

flip it, they just like put in the same
stuff like in the whole house and they

have, they're just using like their own
wholesale Like purchase straight from

China, like whatever materials that end
up being exactly the same as whatever

they would be from the big box store.

But, um, interesting, interesting
considerations, like maybe find the,

find the flipper and see if you can work
directly with them or, you know, friends

of the flipper or whatever sometimes.

Colin: I have found them and
they, they are both, they were

the seller and the brokerage.

So they're also a brokerage.

So I'm going to probably
have to go chat with them.

Yeah, I mean, what you're talking about
is like, there's like a contract rate

and quantity rate that you can get.

And so, yeah, I mean, if someone,
you're watching these YouTube videos

of people redoing a house or so it's
like, you're going to pay more if

you're going straight to Home Depot.

Even for the coworking space, we
have like a Home Depot pro account.

Like I, we just.

And it's like, here's
your contractor discount.

And also you pick it up on the
other side of the home Depot and

we're going to take it out to you.

And it's like, okay, that's, that's like,
that's how the other side lives, CJ.

CJ: Yeah.

Also like I guess a secret is
that they don't confirm or they

didn't at least when I was doing it
like that you are actually a pro.

You can just say like, Oh yeah, the PO
for this is whatever, like my address,

you know, and like often, well, like as
a veteran, I get better discounts, like

through veteran discounts at Home Depot
and Lowe's, but yeah, I think you can

just go in and sign up as like, yes, I'm a
pro and I want the pro extra discount and

all the pro perks, but really it's just

Colin: Yeah.

CJ: yeah.

Colin: And there's also in, in
most cities, there is the Habitat

for Humanity has like the re share
resupply stores that are really

cool to restore something like that.

I think it's restore.

So it's a lot of like things that
some of them are super janky and

some of them are super nice, but
they're just donated to be sold.

It's like, you know, extra appliances,
extra fixtures, all sorts of stuff.

So.

CJ: Interesting.

Yeah.

It's lots, lots of different lots of
different lessons to be learned there.

I, I am curious, like, well, one, one
of the things that I found interesting

as I'm chatting with a bunch of
folks who are in the market to buy

right now is how much PMI costs.

Like when we bought, I think
PMI was like less than a percent

or something of the mortgage.

And now it seems to be
like way more than that.

And it just makes the, the
actual total monthly cost is.

So much more.

So what?

Yeah.

Like, was that something
that, I mean, yeah.

So PMI is like your mortgage insurance.

And if you own less than 80%, Or like
if you own less than 20 percent or

something of the equity in your house,
then you have to pay for this insurance.

And the insurance is
not like a fixed thing.

It's like variable rate, right.

Or like it's variable.

And then when you get your
mortgage, it's locked in at a

certain amount or something.

Colin: I'm not sure how they calculate it.

It's probably based on
the size of the loan.

So like, again, like the less you put
down, the more PMI there's going to be.

Cause it's insurance on
you not paying your loan.

But in our case, like if we only
put three or five, which FHA loans

allow you to do, you're going to be
owning only 3 percent of the equity.

And so the amount of one, your
mortgage payment will be higher.

Your PMI will be higher.

So the cost of shelter will be higher.

Right.

And then when you think of it,
I like to think of renting and

buying, like buying the floor is
your mortgage, your insurance, your

PMI, all the things all in, that's
the minimum you will ever spend.

Right.

It's not the maximum because there's
utilities and maintenance and things

are going to blow up and all that with
rents all in with utilities and rent.

That is the maximum that
you will ever spent.

And so there's a lot of risk there.

Obviously you're not getting
equity and renting and things,

but it is very interesting.

And it's still also blows my mind that
like rent does not contribute to credit.

Scores whatsoever, but paying a mortgage
does, you know, it's, it's pretty crazy.

So I know there's some people out
there who are trying to change

that too, with different kinds of
credit cards that you can pay your

rent with and stuff like that, but

CJ: Yeah, it's interesting.

The other thing too about PMI is that
like, say you buy today and you put

down 3%, if something wild happens
and the market goes crazy, and it

pops, and it goes up to whatever,
let's just say everything doubles in

value, then, Like next month you can
reach out to the lender and say like,

Hey, the equity in my home is higher.

I would like to have the PMI removed.

And then they might say, okay,
you need to get a an appraisal.

And then I think you have to go re you
have to re go through the appraisal

process, but you might end up spending.

200 to 500 to get it
reappraised a month later.

And then they immediately remove
the PMI from the mortgage for

like the rest of the mortgage.

And then there are, there were some
new rules that were enacted after 2008,

I think, where it's like the mortgage
company must remove it automatically

after you have a certain amount of equity.

So yeah.

There's like a couple of different
triggers where you can like, I don't

know if you buy, there's also like
some really fancy things you can do.

Like get a a, like get
two different loans.

Like one is a HELOC and
one is like the mortgage.

And you can do like put 5
percent down, get a 15 percent

HELOC and a 80 percent loan.

Now you don't have to pay a PMI, but
you have like this other HELOC loan

that might have, like, you have to put
in like a higher amount or something.

Colin: Yeah.

You've read all the same things I have.

Those are the 80, 10, 80, 10,
10s, eight, eight, 80, 15, five.

Like you can avoid PMI, but
you have two closing costs.

There's all these things
that can happen there.

And the other thing right now is
that everyone's talking about if

you buy, then you're just going
to refile when rates go down.

That also assumes rates will go down.

And historically rates have gone higher.

And I think we're on the
trend that they will go lower.

Yeah.

And the argument is if you can
buy today, demand and like,

other than this house, right?

Like most houses are sitting
on the market for longer and

so there's less competition.

You're not getting these all cash
offers that are jumping ahead of you.

And that you can, if you can afford
it and you're not going to be house

poor, you can get more house for your
dollar today because when rates go

down, demand is going to go back up
and prices will likely go back up.

And, you know, you'll have a lower rate,
but you're going to be buying less house.

So the problem is when you refi,
you're going to have to do closing

costs and reset the timer and
all that stuff all over again.

So this is why millennials
don't have houses.

CJ: Yeah, there's another like really
fancy thing that I learned about recently

that might be interesting to think about
and that is that like if you can find

someone who's motivated to sell and
they have an existing mortgage that's at

like some very desirable rate, like 2.

7 percent or something, right?

You can like buy the mortgage off of them.

And somehow they like transfer the
mortgage to you and you like take it over.

Obviously you, you'd have to like pay the
different, like pay them their equity and

probably a little bit of like incentive.

But then you end up with a mortgage
that has like a crazy low rate and

maybe only 25 years left or something.

But yeah, there's some
like really interesting.

Tricks that you can do there.

It's been on my mind too, because we
have, we have like some older mortgages

that are locked in at low, low rates,
but I want the optionality of being

able to sell, but I don't want to
sell and get rid of this mortgage.

So it's like, okay, maybe we can sell
it, like sell the mortgage and the

house and get a kickback from the
buyer because they're going to get

locked in at some super low rate.

And depending on like how long, it like,
it comes, yeah, it comes down to one

of the main factors is like, how long
do you plan on staying in the house?

Like if you're going to stay for 10
years or more, then like, yeah, it

makes sense to just like be super
aggressive to get a crazy rate.

But if you're, if it's going to be a
stepping stone type situation where

maybe you'll be there three years and
maybe you'll rent it after that, or maybe

you'll be there three years and then
you'll want to like sell and buy up or

whatever, then you might not want to like.

Or it might not matter as much,
like how, how hard you fight

for the rate or something.

I don't know.

Lots of different, like weird mental
gymnastics to go through to try to

figure out like what makes sense.

But,

Colin: Yeah.

Well, unlike most personal finance thing,
I mean, it's this, this whole thing has

made me think a lot more about buckets.

And I've got some ideas for things
that I want to play around with.

Cause I was doing a lot of mental
gymnastics with money buckets.

And I'm like, this is what
buckets should do, right?

Like when you're going to make a decision.

Help have it help you make that
decision and show you like why you

can't touch this money, you know,
or, or you can't touch this money,

but this is the penalty, right?

Like if you're because you can take 10
grand from a Roth IRA for a first time

home purchase, but like, should you?

Like, it's gonna be interest free,
and if you keep it in, can you

get 10 grand from somewhere else?

Can you wait?

Can you save?

Don't touch, ideally,
don't touch your Roth IRA.

But, you know, I was starting to
look at it because this house, this

house made us do dumb things, so.

CJ: Yeah.

Colin: Yeah,

CJ: It's, it's so interesting.

Like, yeah, the psychology of money
is very, very it's hard, it's hard

to fight against, especially when you
fall in love with a place like you did.

And that place looks dope.

I'm looking at it right now
on Redfin and this thing looks

amazing, like super sick backyard.

Like all, yeah, every obvious, obviously
like the flipper went through and like

modernized every single piece of it.

So it looks like super

Colin: And of course there were
some things like the, the, the,

the door to get into the garage
was like a foot higher than the

bottom of the door, like the floor.

There was a few weird things from
like, this was definitely a flip.

So it was not perfect.

You know, it's, this is like,
I don't know, you get, you fall

in love with something and you,
you ignore the red flags too.

But cool.

Well, I guess we, we talked
a lot about housing stuff.

Do you want to save
this for the next time?

Or do you want to chat
about some, some metabolism?

CJ: Very cool.

Well, as always, you can
head over to buildandlearn.

dev and check out all the links and
resources in the show notes there.

Thanks for listening.

And yeah, that's it for this episode.

Colin: Bye, friends.