· 46:43
Colin: Welcome to build and learn.
My name is Colin.
CJ: And I'm CJ and we're back again,
just catching up on what we're
working on, what we're learning.
And we thought we might kick this
one off with a little fitness update.
So I, yeah, I mean, we, we talked
about this a while ago and you
as the listeners are holding us
accountable to some fitness goals here.
So Colin, you want to, yeah, why don't you
give us a quick update on your fitness?
Colin: Yeah, for me, I'm trying
to do the James Clear consistency
over you know, doing like these
Herculean effort type things.
So I have a plan, a training plan from
Hal Higdon marathon training plan.
So I'm gearing up for
just it's a 30 week plan.
So it's not like one of those, like do
a marathon in 12 weeks type of thing.
It's very slow burn gets you back
into just like, Knocking off the
runs and then you'll start getting
into the more marathon training plan.
So I'm hoping to do a marathon in
September with a friend of the show one
of our friends Calvin, up in Washington.
And and then potentially
one in December in Honolulu.
CJ: Ooh, nice.
Colin: be my first time down to Hawaii.
So that's the plan and just trying
to get into the habit of it, have the
rhythm of it, you know, even if it's,
if it's a three mile run, it doesn't
need to be a fast three mile run.
It just needs to be done.
So
CJ: hmm.
Mm hmm.
Colin: that.
CJ: And what are the long runs in the
first couple of weeks for that program?
Colin: My first long run this last
weekend was going to be seven miles.
So
it's, you know, you still do the
long run on Sundays, the whole
church of the long run type
thing.
And so it'll ramp up to eventually,
usually you do like, eventually
you get up to like 20 miles.
a few, maybe four weeks before
the actual marathon, and then you
taper off into the actual thing.
And so you don't need to have run a
marathon before you go do the marathon.
But yeah, just getting into that and
trying to weave in a little bit of
things like kettlebells and strength.
A lot of working on the knees.
They don't work like they used to.
So making sure that they have the
strength that they need to support
myself through that whole run.
CJ: Very cool.
Is the, the marathon that's in
Washington in November, is it,
is it in Washington in November?
I think I
Colin: September.
Yeah.
CJ: or September.
Okay.
And is that one like a qualifying
one for Honolulu or can you just go
to Honolulu even if like, no, okay.
Colin: Yeah.
Yeah.
They're separate.
This one's just, you know, my
brother wants to do the Honolulu one.
So I'm training with him and then
Calvin wants to do the one up by him.
So I'm training with him for that one.
And, and for me, their accountability.
You know, once you pay for a race, once
you have it in your calendar, you, you
can't just be like in the 11th hour,
decide like, Oh, I guess I should
get ready for that, which is a good
way to think of like a lot of goals.
Like if you want to try to like write
a book, you're not going to be like.
Oh, I procrastinated until the 11th
hour and then I wrote the whole book.
Like it just doesn't work like that.
So it's good.
You know, I could just do things like
there's the Spartan races and, you
know, all those kinds of races and
things, but it'll be good to like,
keep myself accountable, keep them
accountable and have it on the calendar.
CJ: Nice.
Yeah.
I think the destination marathons are
the ones that are most interesting and
attractive to me because it's like,
you've got, not only do you have like
this big thing that you're planning for
and you're prepping for, and you have
it on the horizon, but all of that, like
anticipation of like, Oh, it's going
to be so cool to like fly there and be
there and be in like a different place
and experience like Hawaii after like
all of this hard work and everything.
So that seems.
Like it would be awesome.
On there's a instructor on Peloton
that I really like Matt Wilpers.
And he often talks about like, you
know, plan out your year and make
your trips like fitness related,
or like have some thing that you're
going to do fitness wise on a trip.
And then even if you're not like
going to do a race or something,
you can still make it, you know,
interrelated with your vacationing.
And then you kind of like build your
lifestyle around, like, you know,
these healthy habits and things.
And I don't know.
It definitely, definitely
seems attractive.
So
Colin: I think when you go on trips, they
try to like, you know, depending on where
you're going, there's all these like
excursion options and like side things.
And, you know, honestly going on hikes,
even if they're like with guides or you
know, doing some back country stuff, like
it's a great way to see those places.
They tend to be less touristy.
They tend to be not super
expensive to see, like kind of
more of the local take of it.
When we went on the offsite in Portugal
for orbit, it was funny because like,
We were with this like outdoor adventure
team that was taking us on this thing.
And like, it was very apparent that we
all sit at a desk and work inside all day.
Like some people are super stoked
to be outside and doing things.
And others were like are we there yet?
We're done.
We're
ready to sit on the beach.
So yeah.
How about your update?
How's things going for you?
CJ: Things are going well.
We've got our our accountability crew.
We are in week seven of eight weeks.
So we're doing like an eight week
session and we're trucking along.
We keep posting updates of every
single meal and You know, our exercise
routines and things like that.
I think we've missed a
couple here and there.
And you always just trying to catch
back up and get back on the train.
So I am this past weekend.
I waited in like two 16, which was
down from like two 50 in the summer.
So making tons of progress.
And it's all just like consistency.
Like you've got to kind of just show up
and eat the right things every single day.
And, I think that I've kind of found
a pretty high protein diet that is
sustainable, like relatively sustainable,
which has been working really well
for me, kind of just like it took
me a while of like looking at every
single thing I was eating and trying
to figure out, you know, is this, or
what is the protein content of this?
What is the fat?
Like, what are the macros of each meal or
each like part of the meal and is there
something I can swap out or swap in for
something that's like a higher protein?
And as a result, like yeah, I've kind
of like narrowed in on a few dishes
that I never would have had before.
Like one is I'll have like Greek yogurt.
In the morning, I'll have Greek yogurt
with like scoops of protein powder, like
plant based protein powder and flax seed
and I just stir it all up and it sounds
gross, but it's so good and it's just like
become this, like, super high protein,
like 30, it's like 35 grams of protein,
very little net carbs, very little other
stuff in it and it's really filling and
so satiety is very high so doing that and
then On the, like the exercise front doing
a power zone challenge with on the bike.
So we have like two 45 minute rides
and then a long ride on the weekend.
That's like between 60 and 120 minutes.
And then five days a week I've been
doing like a barbell, like dumbbell type
strength training, just like a really
low key, 30 minute a day, five day split.
And, yeah, all of that seems to
be working really, really well and
yeah, feeling pretty strong and
I'm really happy with the progress.
So yeah,
continue to
Colin: I've been seeing
your, your updates on Strava.
So I can see you're out there doing it.
CJ: nice.
Nice.
Yeah, I, I, it's like automatically
hooked up to Peloton, which I love
because it sends the rides along.
And you know, like when you do
like a strength workout, but I also
use Peloton a lot for meditation
and that like Postman's drama too.
It's like, all right, CJ
couldn't sleep that night.
Obviously he did, like three
meditations and like yeah.
Colin: noticed, I mean, I've noticed
that they were on there, but I'm not, I
haven't, didn't notice what times they
were posted, but, you know, it also shows
the Strava TriHards that you're out
there stretching and out there taking
walks and out there, you
know, it's not always maximum
efforts, like, oh, I just did
this super long bike ride or bike,
you know, run, things like that.
So
it's another tool, another
accountability thing.
Which can help.
So, and I think like, you know,
we're, we're, we're talking about
this fitness stuff to kind of also
hold each other accountable too.
And like diet, nutrition
fitness is all super individual.
So I'm glad that you found some things
that you like that work for you.
It's not going to work for
everyone who's listening.
It's, we're not a fitness podcast,
but.
We pretend to be one on TV.
CJ: Yeah.
And I think what's what does
maybe resonate more with listeners
is that it wasn't like clear.
The answer wasn't clear for
what to try or what to do.
It was all very much like experimentation
and learning and watching videos and
trying to figure out which fitness
influencers I believe and trust and
you know, like reading these books
about you know, And you know, white
papers about different, like new
research that's coming out about muscle
protein synthesis and creatine and
you know, should you take TRT or not?
And like all these different
things, you know, like so yeah,
Colin: There's a lot of that right now.
A lot.
CJ: tons.
There's tons.
Yeah, totally.
So yeah, one that's definitely on my
list to research too, is like, what
are the impacts of Ozempic and all of
these like GLP one or whatever drugs
that are supposed to be like You know,
you get a shot and then you magically
lose a bunch of weight and yeah, just
trying to see how, how that's affecting
people's like stomach longterm,
you know, is it is it, you know,
damaging their digestion or whatever.
So yeah, lots of stuff
to research and learn.
And yeah, it's kind of like
building your own health or
something, but yeah, fun stuff.
Colin: Yeah.
Well, this is kind of around the
consistency and like what we do every
day kind of like defines what, where
we spend our time and our identity.
And this thing that keeps coming up in
the podcasts I listen to and some videos
I've been watching has been this like
concepts that I'd be curious to get your
take on of if you're busy creating things.
You should spend less time consuming
things or vice versa, like in a way it
almost I think now that I said it out loud
like casts like consuming as bad and like
when you hear like mindless consumption
or like doom scrolling and Instagram
and tick tock like they want your time
and attention, which means that you're
probably not going out and making your own
things, whether it's content or code or.
Working out or whatever it is, right?
It's, it's time and attention.
I'd be curious, like, what do you
think about that in terms of like,
do the things that you consume
help you to be a better creator?
Are they kind of like the yin and yang of
like, you know, inspiration and creation
or, or like, Oh, too busy, too busy
creating things in a little vacuum over
here that you know, it can't be bothered.
CJ: I, I need to think a lot more about
this, but I, my gut reaction is that
you have to consume a little to build
like taste and it's important to see
like what other people are doing to
consider whether or not that's something
you want to incorporate into your own.
I don't think mindlessly scrolling is
good or beneficial for like, for creation.
I think if you go into it and you open
up TikTok and you look at it and you
say to yourself, I'm going to look
at these TikToks because I want to
see what they're doing to go viral.
That is like a very different intention
when you open the app than like, I'm
bored or I'm tired or I'm anxious
or I'm like, you know, like other
reasons why you might like reach for a
dopamine hit through through tick talk.
And like it, those things are
not good for you for sure.
Right.
Like the just mindless scrolling.
But I think, yeah, if you can, if you're
consuming intentionally to become a better
creator, then I could see that, that
would be totally positive and, and there's
like absolutely a good way to do it.
That said, I don't think anyone, or
like, I would say most people are not
mindfully consuming TikTok, Instagram,
YouTube Shorts, or any of the,
like, algorithmic feeds of anything.
And yeah, personally, I have definitely
fallen into a really unhealthy pattern
of consuming mindlessly at night and
like all the algorithms just want
to show me like political shit now,
and I'm like I'm very, very over it.
Like I don't want to hear about political
news and I just get sucked into it like
on a daily basis where every time I open
up any of the, these apps, it's just
showing me like all of this junk like
political propaganda stuff basically.
And so it's definitely not good.
And I'm also like.
Trying to be better about when I
open any of the social media apps.
Like, what do I want to learn or
what do I, like, how do I want to
like grow from this experience?
And so yeah, I'm trying to be a little
bit better about it, but yeah, just
throwing yourself off of the cliff
into the algorithm is is definitely
not, not the right way to go for sure.
Colin: Yeah, and I think like with most
things, I mean, you can use them as
entertainment, like we don't need to open
them every time with like, I must get
something out of it, like that's useful
in my work or whatever, but tends to be
that like, if you mindfully say I'm going
to watch a show or like, I think A lot of
people are moving to watching things on
YouTube that and like it used to be that
YouTube videos were super long and they
became shorter and shorter and shorter.
And now some creators that I follow
are like creating series of like
pretty like 30, 40 minute, you know,
adventure videos and things like that.
And I watch those like I would watch.
Like a tv show and I'll watch one
and then walk away from it and not
necessarily Get pulled into the
the algorithm or the next video.
I think watching YouTube on like a tv
you don't have that sidebar as much
of like next videos It still kind of
happens, but it's it's not I don't think
they spend as much time on that Like how
do we get you to click on the next one
as much as they've done it on the web?
Or probably even But yeah, I hear you.
I mean, it's really easy to fall into.
I think the whole Senate hearing thing
that happened recently, some, a lot of
that was like kangaroo court around.
They already had soundbites that they
wanted to, you know, tell tick tock
and meta and all these, but there is
a lot of truth in the fact that they.
want you to use it more.
And so their, their motivations are
not always aligned with like what
our goals are for what we use those
apps for, or like what's the job
to be done with Instagram, right?
It's a lot of it is ads now, which are
very, very good and very targeted ads.
But I've been wondering myself, like,
how would I feel Less of an urge to
buy things if I wasn't on social.
And now I like witness the, like, Oh,
this thing's easy to buy right now.
If I want it, I'll write it
down and see if I still want it.
And usually if it comes from
the internet, it's probably
not, not something that I need.
Yeah, so that's, that's a good one.
I think something for everyone
to think about at home, just.
How much are you consuming?
Do you want to be creating more?
It doesn't have to be a public thing.
It might even be a thing for yourself.
Just kind of time, time and attention.
CJ: Yeah.
We've been, it's, it's, it's interesting
too, when we try to help our kids
learn how to be like thoughtful
consumers and productive creators.
Not like you don't, YouTube famous
or anything, but like trying to
help them understand that playing.
Or like, yeah, consuming social media
right now for them at their age,
completely off limits, but there's also
like a difference for them between playing
certain games and watching, you know,
documentaries and, and then like creating.
And so we've tried to like
carve up screen time into these.
Different sort of scopes, maybe where if
they are spending time on the computer to
make a podcast or a video or a stop motion
animation or to write a story or to draw
or something like that, we feel much more
comfortable with being like, yeah, sure.
Like go be creative, use the
tools, go 3D print stuff, go
print things out, whatever.
But if you want to just go on the
computer and scroll through YouTube
and watch people play video games.
That in our opinion is like way
less healthy than like, even
if they were to just go and
play the video game themselves.
Right.
Like they're at least like a little bit
more engaged, but yeah, both like the
yeah, just kind of garbage entertainment.
That's trying to get them to buy
stuff versus a little bit more
thoughtful, like, okay, let's watch a
documentary about space or something
that we as parents have somehow
deemed more valuable for their future.
But yeah, I don't know.
It's it's an interesting balance for sure.
So,
Colin: Yeah.
Well, speaking of building things, what
have you been working on building lately?
CJ: Oh my gosh.
So at work, we are we're building
out a bunch of tools for calculating
gross margin on projects.
Lots of different calculators and
estimators and caching data in certain
places so that things render quickly.
Also continuing to work on our
messaging release for Twilio,
which is coming along pretty well.
And so we've been experimenting with
like recording calls and routing calls
and building all that kind of stuff.
And then yeah, on the side, continuing
to hack on buckets here and there.
So buckets.
cjav.
dev, if folks are interested, it's going
to be a little personal finance app.
And yeah, like we, you and I chatted about
this in all the different data providers.
And it's funny watching Josh
Pigford on Twitter, like just
raging about how the data providers
for all this financial data.
There's like not one good one that will
give you all the connections to all the
banks and mortgage companies and you
know, brokerage accounts and bank accounts
and credit cards and all these things.
And so went through the whole cycle
of trying to integrate lots of
different ones and then came full
circle back to, back to Stripe.
And it's still like,
none of them are perfect.
But it's been, it's been fun to hack on.
So.
Colin: Yeah, I've got it.
Running on my machine too and I've
been playing around with figuring out
where I can be useful and what we can
add to it and I think it's funny that,
you know, as you've been tweeting
about it, so many people are like,
just use maybe just use Josh's thing.
It's like, well, we have our own
little thing going on over here.
CJ: Yeah.
Yeah.
Yeah.
It's partly, I mean, it's fun to scratch
your own itch and it's also fun to have
full control over it, you know, instead
of it being like this open source thing
where I definitely feel like Josh is going
after like a global solution that has
recently he's been talking a lot about
like currency conversion and all these
different features that will support a
global solution, which I think is awesome.
It's a great use case for, Open source and
all these things to scratch our own itch.
Like, I don't, I don't know about you, but
I only have US dollars , so like currency
conversion feature that can wait for
you know, scale or something like that.
So it's like,
Colin: Well, and some people have
been poking him on that about
like, should you not make a fully
complete system for USD first
before you start going wide?
And I, I actually think like
following the journey of lunch
money which is a budgeting tool,
like they were digital nomads.
Jen from from lunch money.
It's built by one person and she was
moving around the world being digital meds
and it needed to be multi currency first.
Like it's
really hard to go back in and be
like, let's tack on multi currency.
Like it doesn't work well.
So I think they're probably
right in starting it first.
But there was a lot of really
interesting conversations around.
I don't want you to convert it.
the other currencies into my
money, I want you to keep them
in the currency that they're in
because they're in that currency.
And you lose little tiny
amounts of rounding errors and
things when you do conversions.
And if it's sitting in another account
in France, you know, in another currency,
like keep it in that currency and just
keep the balances going in that currency.
And sure, you could do like a total
net worth in USD or whatever you want.
With my like a lot of my interest in
personal finance, it's so interesting
to think about like how easy and
like for us it is to just think in U.
S.
Dollars.
But like most people in other
countries have to be thinking
multilingual, multi currency, right?
They have a lot of them
have investments in U.
S.
Dollars in the U.
S.
Stock Exchange as well as
their home countries or others
a little bit more diversified.
So it's a wild world.
CJ: Totally.
Yeah, I think yeah, maybe to paint a
picture to like the initial idea was I,
I mean, we both used mint for a long time
to just like track balances and stuff.
And we both use a different
app for budgeting.
So I use YNAB and you
you're using co pilot.
Shout out if they want to give
us a affiliate link or something.
Or yeah, we'll share, we'll
share links to affiliate things.
I'm sure we'll find them.
So you can, you can try those out
based on the show notes, but those
are, those are great budgeting apps.
I don't think what like we're trying to
build as a budgeting app by any means.
It's like, how can we look at our
entire like financial wellbeing and
make suggestions or adjustments or
plans based on kind of where we're at.
as a whole.
And so, yeah, the idea of buckets is
like you can put your, you can kind of
like assign the money that's in different
accounts into these buckets that you
can track the balance of over time.
So maybe you have an emergency
fund and you have some goal
for that emergency fund.
So you can associate one of your
accounts with an emergency fund and
then see that in the dashboard as
like your emergency fund bucket.
Or maybe you have one that's like
retirement and you have in your
mind some number that you need for
retirement that you want to retire
early or whatever, like you can.
have your retirement accounts
roll up to and aggregate some
balance over time for retirement.
Same thing with real estate.
And then all of that, obviously rolling
up into some net worth calculation.
One component of that is when you're
tracking real estate assets over time,
you want to try to get like, what is the.
Estimated value.
If you were to like sell this house
today and Zillow has like a really
legit data science team with pretty
good estimates called Zestimates.
It's like their little internal
estimation thing or whatever.
Yeah.
Zesty.
So Submitted we submitted some paperwork
to try to like get access to their API.
I have not heard back after
the first kind of like back and
forth with their support team.
So if any, if we know anyone
that works at Zillow, like
let
Colin: to say, we might need to
like flex our DevRel muscle here.
CJ: yeah,
Colin: Who's the Zillow DevRel?
CJ: videos and some shared content here.
Colin: Just,
CJ: But yeah, the rent cast.
So rent cast is another API.
We I think it was just bought by
RealtyMole or RealtyMole bought
rent cast or something like that.
And we are using rent cast or we're
using the RealtyMole API at Craftwork.
And so I was like, Oh, like
we can use that for now.
And then I put in my own, like
a couple of my own addresses and
the property estimates were just
like way off, like twice as much
as I think they're probably worth.
And so we'll have to figure that
out, but yeah, you don't want your
Colin: multiply them all by two.
CJ: Yeah, exactly.
Just, just double it.
Just whatever, you know, like,
Colin: Yeah.
I think we've been, we've
been thinking too small here.
I think we should just get
Zillow to sponsor the podcast.
I think
CJ: great idea.
There you go.
There you go.
Colin: house Zillow.
CJ: Didn't they do something like that?
Or was that a different company?
Redfin maybe?
Or there was like some
real estate property.
It was Zillow.
Colin: I don't know.
I'm, I'm a Redfin fan myself.
I
do like that.
I don't know why their app is just.
Less cartoony feeling to me than
Zillow, so I'm not sure why, I
don't know if it's the colors or
what, but yeah, Redfin, Zillow,
give us access to your APIs, please.
CJ: Yeah.
I feel like there was a company,
like one of those companies went
out and bought a bunch of properties
and then they couldn't unload them.
like
the, and they were like stuck with a
Colin: They both did that.
They both became like the I buyer type
thing where they were the very thing that
they realized that like the hell is data.
So we could arbitrage and buy
houses and then sell them.
You can still list your house with Redfin.
So it like, it's like using.
But Redfin is your agent and they get like
a special marking on the UI that's like
listed by Redfin and they probably have
like lower fees or something like that.
Man, but like in 2007 I worked on
building out and this is before a
lot of these APIs existed on this.
There was this idea to build a website.
You could sell your house to like,
if you needed to move tomorrow, you
could just get like kind of what
you've done with craftwork, like
get inspections and get all these
different things done in one place.
And there's so many steps when you
buy and sell a house from inspections
and escrow and all that kind of stuff.
And unfortunately, this was like before.
Any of these things, Zillow, Redfin,
and it was just too far ahead of its
time because we were trying to figure
out, like, how do we send a text message
to these people who only take text
messages and phone calls and fax machines
and like, just automate it via paper,
but with texts and facts and stuff
like that, and you know, and that's
very much what Redfin and Zillow did.
And then they, like you said, they
found it really hard to actually,
they were stuck with a lot of
inventory and couldn't actually make.
Money on those houses, even though
houses have gone up in crazy value.
So yeah, it turns out pure technology
is, has more margins there.
CJ: Yeah.
Interesting.
Interesting.
So yeah, maybe the someone needs
to make a bad ass course about
how to buy and sell houses.
Speaking of bad ass courses,
you see that transition,
Colin: all the segues today.
CJ: your segues were on point.
I had to make like a,
just as the cheesiest one.
Colin: Yeah, so I've, I've been
binging a lot of course creation,
dev rel, docs type content.
So back that maybe that was where the
consuming versus creating kind of came in.
I'm sure it was mentioned multiple
times, but one that stuck out to
me was badass courses with Joel
hooks really good podcast for
course creators and course builders.
And I actually think the podcast is
called course builders with Greg rogue
it's, I think it's their first episode,
raising the bar for online learning.
And what I really liked about
the episode was they both are
video course creators and.
platform creators as well.
Like they both, both Joel and Greg
run their own course platforms.
Greg actually runs two two different
ones, two different code bases.
And the really big question that
they posed at the top of it was how
do you actually approach sitting
down to learn a new complex topic?
So they both are video course creators.
And I think their answer was kind
of interesting that both of them
are actually, they learn by reading.
And so their, their, their own
favorite method of learning
is a little bit different than
the stuff that they put out.
So yeah, I'd be curious just
to hear what your approach is
to sitting down to a new thing.
CJ: I'm jealous because I, I wish that
reading was my like priority version
of learning, but usually it's video.
And so it like, that basically means
that like the videos that I make are just
like lower quality versions of the other
videos I've seen online or something, you
know, like a collection of other videos.
Yeah, no, I think like, first
of all, learning by learning
a topic by reading is.
Obviously going to be very, very important
for any career because most content will
be available as written word, right?
Like if there's documentation about an
API, it will be written documentation.
There's probably 2 percent or less
of information available about how to
use an API is going to be available.
And so when, yeah, like learning a complex
topic I guess like most of my experience
in this case comes through Stripe.
A lot of it would be.
Read through the docs with a super
fine toothed comb because Docs writers
often try to be as concise as possible.
And so there might be one sentence on
a giant docs page that has the answer
for something that you're looking for.
So yeah, just trying to be like
really, really thorough when
you're reading through things.
And then second is like trying stuff out.
So just getting really quick at
trying quick starts, following
instructions and tutorials.
And then also like.
Yeah, I think I, I guess like
recently too, I've been kind of like
leaning a lot on chat GBT where I'll
say like, okay, here's the pieces
that I think I understand what,
where, where are my blind spots?
And then how would you do this?
And then give me some alternatives
to how you would do it.
And then trying to like think through the
implications of those has kind of been a,
a little bit of a new approach, but yeah.
What about you?
How are you approaching
these kinds of things?
huh.
Colin: Yeah, I think, they brought up
that it really depends on the thing that
you're learning, which I would agree with.
And part of that would be, like you
said, what's available to learn with.
ChatsDBT is definitely a new part for me.
Not just telling it what I know or
having it explain it, but I'll sometimes
take, like, if it's extremely technical,
I'll copy technical documentation
and say, Okay, explain this.
in a different way.
Like I'll say, explain it like I'm 10
which is always funny when you, if you
do the explain it like you're five, they
like comes up with like very kid focused
like metaphors and analogies and things.
But you know, that can
help to break it down.
Tragedy is also really good at
summarizing things and like, say
like, give me steps or bullet points.
And I don't know how much when you
tell it to do that, how much it's
still trying to pull from the outside.
Right.
And versus what it's been given.
So that you always got to take that
with a grain of salt and make sure it's
not hallucinating and things like that.
But for me, I would say like, I
definitely like to go find a video like
you do and just being able to do it.
I think learning by doing is, is like,
if there's a sample project, a quick
start guide, pull down the tutorial,
get clone, whatever it needs to be.
And I just need to like, get
it running and then maybe
change some things to get it.
to fail or break and then put
it back and just kind of poke at
the edges to see what's possible.
I've been doing that a lot with the
thing that I'm documenting right now
because it's like the team that built
it, we still can't talk about it.
The, the team that built it.
It knows it in and out, but I need
to know it in and out to document it.
And so I'm using it, breaking it,
fixing it, thinking like, okay, all
these things that I already know,
do they still apply to this thing?
Or is this like a new
thing that I need to think
about?
And to your point, you know, how do we
avoid having one very crucial, important
line buried in the bottom of the docs
instead of like, these are the things
you should know before you start.
So, that's been interesting and in
a, I think like an episode or two
from now, we'll actually get to
talk about the thing, which will be
CJ: Nice.
Yeah.
So when you're thinking about these
complex topics and yeah, I guess learning
a complex topic, like saying complex topic
to me is what is throwing me a little
bit because a lot of like a lot of the
stuff that we're working with, a lot of
the API clients, a lot of the like SDKs
and things, they're not that complex.
It's when they're like, Yeah.
For me, at least it's when they
explode out into like bigger domains.
So for one example would
be like Stripe Connect.
When you start like trying to facilitate
payments on behalf of other people, and
you know, as a platform like Lyft or
Airbnb or whatever that kind of a topic
where like, okay, using the SDKs is fine,
but you also need to know like, here's
all these different concepts and hold
them in your head, like as you're going.
And.
Yeah, I guess in, in, in that sense,
oftentimes, like when you're reading a
book, right, like you can kind of get the
main points as you go, or like you can
be entertained as you go, but at the end,
you're not going to get a quiz on it.
Right.
And when you read through technical
documentation, and there's lots of
different concepts, you almost need to
like, Sometimes I, I definitely need
to go back and like reread it several
different times to just build in my head.
Like what is the mental model for
all these different components
and where do they fit in?
And like, what step in the flow
are they involved in and trying
to draw analogs to other things.
So great, like couple great examples, the
Twilio conversations API, like they have
this conversation, the concept of the
conversation, which is a set of messages
between multiple different parties.
And those are all
conversation participants.
So you have to like make API calls
to create the conversation to create
the conversation participants.
But as a separate thing, you can
create a conversation user Which can
be a participant in a conversation
user represents like, Oh, I'm a
salesperson or a support person that
works at the company that is going to
like, you know, Act on behalf of the
company in certain ways or whatever.
And so those can also have roles
and like all these different things.
And it took me a long time going through
the docs over and over and over and being
like, why can't I just use conversations
and conversation participants?
Why do I need this like, other thing?
And yeah, so I guess for me, maybe
that's because I'm reading isn't my
primary, it's like just I have to
go over it over and over and over.
So, yeah.
I
Colin: Did they have any
diagrams and things, or
models
CJ: I did not see diagrams, but that
probably would have been helpful.
Yeah.
Colin: Yeah, I think the other thing
to think about is that we've been
doing this for so long too that
like I realized the other day Do
you remember when Oath was hard?
Or is
CJ: Right.
Right.
Right.
Right.
Colin: It kind of still can be
because there's so many flavors of it But
CJ: Right.
Yeah.
Colin: I was working on
something in one step.
It was like step step five do
Oath and someone was like What?
Like, this is like the, this is
like the draw a circle and now draw
the rest of the owl, and you're
like, no, no, no, to me, doing the
OAuth was only one step, but to
them, like, that's its own guide.
And I'm like, yeah, you're, you're right.
And we have a guide on that.
But for this, it is the tiniest,
this is the beginning point.
Like, if you
do not, it's a prerequisite to
understand OAuth to do this next thing.
And so we do have to remember not to
take, you know, into account like our, the
curse of knowledge that we have when we
think about these things, but there was, I
remember having to like have this picture
of a lot in my head and like this happens
and then there's this handshake and
where do I keep this thing and now it's
very automatic or like a lot of the SDKs.
Do it for you now,
but it's important to know how it
works because when it breaks, you
need to understand how it works.
So that's something I've just been
trying to remind myself more about
is that, like, how do we keep the
beginner's minds when you're learning?
And then now when you learn the next
thing, you're not starting from zero,
you're starting from a new starting place.
CJ: hmm.
Yeah.
I guess another thing that comes to mind
sort of is using friction logging as
yeah, as a way to start conversations
about how things should work.
So especially when you're on a
DevRel team and you're providing
product feedback to the product team.
One way to do that is in these things
called friction logs, where you
just like write out your stream of
consciousness of you trying to solve a
problem with the tool that was built.
And sometimes as you go through that,
the product team will be like, Oh,
whoa, like we, this is not what we
expected people to think about that
part of the documentation or that
part of the API or SDK or whatever.
And so let's have a conversation
about that and try to make the
developer experience better.
Sometimes it's also like,
Oh, I was just being.
Like dumb and I missed or like
completely misunderstood how
that was supposed to work.
But yeah, it can, yeah, writing a stream
of consciousness to try to explain what
you were thinking when you're trying to
build something and then show it to the
person, like the team responsible for
building that can, it can also lead to
some fruitful conversations and learning.
Colin: Totally.
CJ: Yeah.
Colin: All right.
Well, I think we can tease this
one for next time, but we can
talk about it a little bit.
There's been a lot of conversation
about Campfire and the kind of one
time, once business model of Campfire.
We talked about it a few episodes
ago and like, we're curious to
see how it went and it went live.
It got sold.
The numbers that were
kind of thrown around.
A few weeks ago was that it had only
sold, had only, in quotes, sold like a
thousand copies or so, that's probably
more now, but some people have just
been, you know, armchair experting about
whether or not that was a success or not.
Basecamp is You know, such a big
company and being able to release this.
It's like kind of what, what
is the motivation for this?
Do they think it's the
true business model?
Ultimately it seems like a lot of
people bought it just to see the code.
and we went ahead and bought it
so that we could see the code.
So we'll definitely, we're
going to be looking at it.
And then we'll talk about it in a,
in the next episode, but yeah, I
mean, what do you think about this?
Do you think that people actually
want to host this themselves?
Do you think that there's like
this appetite that you want
to have a server somewhere?
CJ: I don't think anyone, well, I
mean, I'm sure there's going to be some
people, but I, I would guess that the
majority of people who've bought it so
far are just interested in looking at
the code that DHH wrote, or was kind of
like responsible for in, in some way.
And I, I'm really excited that
this is available and also like.
In the same way, watching the maybe code
base evolve and, you know, getting to
read this, getting to read the jumpstart
pro source, getting to read you know,
there's, there's a few other like open
source rails projects that have been
kicking off that seem really interesting.
And so I'm, I'm just really
excited that there's more.
And then there are full rails applications
that are going to be available some
for free and some for money that you
can go and read and see how other
people are approaching problems.
Because I think for a long time there,
there really weren't any, right.
It was like, you could see some toy
apps online or, you know, some read
blog posts, but you couldn't really
dig into a full application source.
Some company had used to actually run
and execute their entire business.
Maybe there, maybe there are some
but yeah, I think that's like
the most exciting part about it.
Colin: Yeah.
Well, and whoever bought it, I
think it already, it happened once.
I'm not sure if there's plans to do
it again, but DHH did a walkthrough
of the code for anyone who bought it.
And I, some people were saying like, If
you want to think of this as a course,
like it's cheaper than some courses.
It's code written by DHH
and team who created Rails.
Now, you know, obviously now Rails is more
than just DHH and it's a community effort.
But if you want to see how,
you know, DHH thinks about some
of these things, that's what's
motivating a lot of people to do it.
I think they're doing a walkthrough
around the CSS and design with
one of their designers coming up.
So it's, it's interesting.
It'd be almost.
Very.
I would be curious to get recordings of
those now that I have a copy of the code.
And it could be sold as a course
if and people can still host it
themselves the way that it comes.
It comes with an install
script that installs docker.
And downloads the code and all of that
onto the server that it's meant for.
And they're using like license
keys and things like that.
I'm mostly interested in, in looking at
the hotwire and stimulus side of things.
I don't think that there's like
a mobile version necessarily,
like using like hotwire and
turbo native and all that stuff.
But I could see that becoming
a thing in the future.
Two.
My first pass of the code, there is a
bunch of stuff in there for bots, and
I remember the OG campfire had bots.
Like it was, it was ahead of the time,
you know, it was people were leaving
IRC to go to campfire before Slack and
before teams and all these other tools.
So I think those things might happen.
I just don't know because they're not
getting recurring revenue and they're
not gonna be able to resell like, hey.
Here's a DLC like is there gonna be like
a 20 add on to get bots and integrations,
but a lot of people use integrations
with slack and you're not going to go
see like can't fire show up in Zapier
for instance, you know, you're gonna have
to make some HTTP requests to your own
API, but we'll have to dig into the code.
I haven't looked to see
like, is there an API?
I imagine That there is, or at
least like some sort of webhook
ingest or something like that.
CJ: And is it that they just kind
of like took a snapshot in time and
they're selling it as is at a certain
version or is it getting updates?
Like, how does that work?
Colin: From what I've seen, they've
mentioned that it's major version.
So you'll probably get whatever
versions come from this, but they could
potentially say like Campfire 2 is ready.
And we redid the whole thing.
And to be clear, this is not the
original Campfire that they packaged
up from 2008 and threw over the fence.
Like it was rebuilt.
There's some things that.
You know, I wonder, I'm sure they
use it internally because they're a
decent sized team with like having
been in large communities in Slack
and then now working at discord.
I'd be curious to see like some of
their design choices around like having.
Avatars and who's in the
server, like going horizontally.
If you have over even a hundred
people, like scrolling sideways,
a hundred times is, is rough.
What does pagination look like when you
have thousands of people in a campfire?
What do rooms look like when you have
that many people and notifications
and all that kind of stuff?
So yeah, chat apps are challenging, like
you've got persistence and you've got,
you know, I think one of the benefits of
this is that you don't have the problem
that you have with slack where you can't,
if you're on free slack, you don't get
more than 30 days of message retention.
So if you're really wanting to have
a quote unquote free, as long as you
maintain it solution, it does seem like
a pretty cool thing that you can run.
And if you're a fan of.
37 signals, then you have
another thing to look at.
CJ: it's interesting because we are
building internally, we're building
like this customer support interface
that is very much a chat app.
It's just, well, like customers will
receive the messages as SMS or as email,
but internally it has like, you know Like
bot integration, where we're generating
responses with different AI tools and
then being able to like auto complete.
And we have like our own little
mini co pilot thing going on.
And the, as a team, we decided to
build a lot of that and react just
because it was like a little bit
more interactive on the front end.
And so looking, I'm kind of
curious to see, you know, inside
of campfire, how are they solving
all these things without react?
And they're just kind of using
stimulus and hotwire and.
They're able to build a world class sort
of solution without too much JavaScript or
so it sounds like, yeah, be cool to see.
Colin: Totally.
I'm excited to dig into it.
It sounds like even for some of those
like bot things it might be interesting
to look at for you guys to see if
there's any, anything to inspire there.
And you know, I'm, I'm still curious
to see how all these things Work
with, I don't think this project uses
tailwind because they don't want to
use all the dependencies and things,
but like, I'm always curious to see
like the front end, both design and
JavaScript or lack of JavaScript.
If not needed to do like these live
updates and refreshes and HTML over
the wire and all that kind of stuff.
So stoked to dig in.
CJ: Totally.
That's probably a good spot
to wrap it up as always.
You can head over to build and learn.
dev to check out all the links
and resources in the show notes.
And we will yeah, drop some
affiliate links to budgeting
tools you can go sign up for.
So,
Colin: All right.
We'll see you next time.
CJ: All right.
Bye friends.
Listen to Build and Learn using one of many popular podcasting apps or directories.