· 40:23
Colin: Welcome to build and learn.
My name is Colin.
CJ: And I'm CJ.
And we're catching up again today
about what we're working on, what
we're learning, what we're building.
We'll have a few little bits and
pieces about Vim and also money
and what we're using to manage our
money because mint is going away.
So if you haven't already migrated,
I want to start thinking about that.
Colin: That's right.
Yeah.
We, we talked about that
on a show, I think, right?
I didn't hallucinate that.
CJ: Yeah, I think so.
And by the time this goes
out, it'll already be sunset.
So yeah, hopefully you
already have ducks in a row.
Colin: to Mint.
It was a long run.
It's, it's the holiday time.
It'll be like end of January when this
comes out, but it's kind of like that
year end wrap up variety show for us.
It's really quiet in the office
today, both digitally and in person.
There's like three people
in the co working space.
PTO for Christmas things.
But we're here,
CJ: Does your team have like a support
rotation where you have to be on, like
some people are on shift next week,
or is it mostly just like everything
is shut down until the new year?
Mm
Colin: We have like an emergency on
point, I think, but this is, I think,
probably one of the bigger advantages
of going into DevRel is that I no
longer have scheduled rotations.
CJ: hmm.
Mm
Colin: There are, there are not
that many emergencies with the
docs, which I, which I love.
CJ: totally.
Yeah, we today are starting
our first code freeze.
So it's like, okay, hey, the
holidays are happening, people
are going to be in and out.
And let's just be careful
and prudent and not merge to
production for the next week or so.
So we are all kind of continuing to
work on stuff just in, you know, draft.
PRs and draft branches on GitHub.
And then when January rolls around,
we'll sit down and review everything.
And once we have a nice fresh cup of
coffee and a fresh face for 2024, we'll
go through and make sure that code
is crisp and clean and ready to rock.
And yeah, we'll merge it, but
I think it's going to be a good
stress mitigation tactic for the
holidays to not have stuff going out.
So.
Colin: that sounds like a 2024 problem.
CJ: exactly.
Yeah, yeah, yeah.
So I was looking around the, I
use mint for a couple of things.
I'm curious what you use it for to
for me, I have spreadsheets with the
rental properties and just general
income from, we have like so many weird
streams of income from YouTube and
different projects throughout the years.
And so I try to use a spreadsheet for
like a high level, you know, Tracker
of like profit and loss and expenses
so that when it comes time for taxes,
I don't have to like go and track
down every single little transaction.
But throughout the year, the way that
I do that is I look at mint and I
search for transit transactions with,
statement descriptors that I remember
and memorize like, Oh yeah, the statement
descriptor for the power company
for the Kings beach house is this.
And then I can just like quickly
find all the different power bills
and how much was spent on those and
then add that into the spreadsheet.
So I.
Am bummed that will that will no
longer be a thing So we'll have to like
figure out where those transactions
are actually happening Whether that's
on a credit card statement or you know
bank statements or whatever and then
the other thing I use it for is just
general like account health like you
know, snapshot bird's eye view of Like
okay are all of the checking accounts?
You know, above zero
Colin: Yeah.
CJ: like is there any movement
that needs to happen to make sure
that things can float or whatever?
So like yeah, those are kind of
the two use cases that I have.
I don't so much use it for managing
investments other than just
like looking at them, but yeah.
What are, what are some stuff that
you were using it for in the past?
Colin: Yeah.
I mean, Mint is my more passive one.
I haven't really been a big user cause
I never really liked it very much.
Like I liked the monthly summaries and
things, but the amount of ads and pushing
of credit cards and stuff I just didn't
like and certain accounts would fall
off and disconnect and just, it was
never a really good source of truth.
But it's, it's more of a
internet nostalgia for me.
Like Mint.
Just the story of it.
And we talked about it in a past episode.
It's just one of those things that
I just enjoyed seeing it, using it.
I'm now using co pilot money.
And I really do think that these tools
are like all the different to do list
apps out there, like the best one is
the one that you just use, you can.
find pros and cons in all of them.
But if you can build the habit to use
one period, it's the best one for you.
Right.
And you might have some needs for
like a spouse or something for
like shared accounts and stuff.
But for me, I really liked Copilot cause
it's got a Mac app and an iPhone app.
It feels like it is a native app, I think.
So.
But I can still see it on my
phone and things like that.
And I am still trying to figure
out how best to label things, but
I now have a podcast expense label.
I have arena collective expense label
because sometimes I accidentally pay
for things on my card, or if I need to
float something, I'll, you know, if I'm
at the store and buying something that.
I'll pay for it with my card
and try to expense it later.
But like the podcast, we
don't make money doing this.
So it's just more of, I would like to know
how much money I'm spending on this show.
And a lot of things that we
spend on the show, it's because
it just makes our lives easier.
It makes it easier to edit, easier to
record remotely, all of that stuff.
But the other tag that I have been
paying attention to is I have a
hosting tag and I have a domains tag.
Because those are two things that.
are very invisible to me usually.
Like I think I have like a card
on an Amazon thing somewhere
that gets billed like a dollar a
CJ: Mm hmm.
Colin: or something.
But I want to know if that's like suddenly
a thousand dollars, those kinds of things.
So so I have those tagged and
I'm still trying to figure out
like, what do those look like?
Cause in Copilot, you can have it
like a, I don't know if it's infinite.
But you can have tags under tags
under tags, and so you can kind
of roll up a certain type of
expense and things like that.
CJ: Lots of like, segmentation and,
yeah taxonomy that you can build out.
Is Copilot money free or paid?
Colin: It is paid.
There is a trial and we can
probably throw out a link too.
I think I have a link that like gets me
free months and gets you free months if
you're listening and you want to try it.
CJ: Yeah, okay.
Colin: But I've liked it so far.
I, what I like is that it also
has investments and debt and
things like that in there too.
So you get a true bird's eye view.
I've used things like personal
capital and some of the other
tools for those in the past.
But I think they, like, I feel
pretty good that Copilot's not
sending, selling my data to anybody.
Whereas some of these other ones,
you know, I think they all get
into that business at some point.
But do you use YNAB?
Do I remember that from
CJ: So, yes, we used YNAB really actively
for the first half of this year ish,
and then we just kind of like fell off.
It's a lot to keep up with.
And for that one, you like
really have to stay on top of it.
I want to say it uses like a zero.
Based like a zero balance approach
or something like that, where you
basically like allocate every single
dollar before the month even starts.
And then you kind of go into it, which
for us works really, really well.
It's kind of like.
You know, a calorie tracker in
a way where you're like, okay, I
have 2000 calories to spend today.
How, how do I want to spend them
instead of like working backwards?
But there are so many, I, I like Googled
around and I was looking at Reddit and
some Facebook posts about alternatives
to mint and where people are going.
And someone on Reddit created a Google
sheet that literally has like a hundred.
Different options for like, is it
copilot money or is it monarch or
personal capital or credit karma or
like all of these different things.
And so I, I feel like pretty overwhelmed
with the number of options for replacing
this and the ones that people seem
to promote the most are also paid.
So I think it's going to end up being
one of those things where like, okay,
obviously mint was too good to be true.
It couldn't sustain without a paid model.
And so like maybe the paid.
Paid option is the way to go.
Especially if it's going to be
something that really is useful.
Colin: This is kind of like the
social network problem, right?
Though, is that if you aren't paying for
it, you are somehow paying for it and.
I don't think, like, Twitter
becoming X and having a paid option
was not a paid social network.
It was a way to try to pay
down Elon's debt, right?
It gives you half ads
or something like that.
It's like, literally, like, I
would pay to have an ad free social
network where I am not the customer.
The product being sold to advertisers.
Same with Monarch, Copilot,
some of these apps.
It's just a more sustainable thing
that if this is valuable to you, you're
going to, you're going to pay for it.
YNAB wasn't free either, was it?
CJ: it's not, no.
Yeah.
Yeah.
I kind of see YNAB is like a
different use case too, for us.
Like it's, I feel like YNAB is purely
for the budgeting side and it's really
good at that In our experience the
mint budgeting we tried it for a while,
but it didn't it didn't stick and
like there's a lot of I don't know.
There were like bugs in the categorization
process where it would like auto
categorize incorrectly and things so we
didn't end up going that route too much.
But yeah, YNAB is paid.
I think I I want to try out copilot
money I started signing up for monarch
and I'm also like, I really want it
to work with all of our accounts.
And we have so many weird, like little
things, like, is it going to connect
to the equity platform that where my
Stripe stock is, or is it going to like
connect to this weird, like mortgage
company that we have, like a mortgage?
On this house on that
didn't even connect to mint.
So like, who knows like
what the chances are.
And then if it doesn't connect, then
how, what does it look like for like the
manual, like to manually manage those
assets and how they change over time.
So,
Colin: Yeah.
And I would say for some of those,
if they don't affect your budgeting,
like if you plan on using YNAB for
budgeting, then it's okay to have
those other things somewhere else.
For me, it's kind of nice to see
the net worth calculator, but a
lot of it's like based on stocks,
which that thing goes up and down.
And you know, it's almost nicer to
just not look at that stuff and just
be like, what is net worth in cash?
And maybe your debts or something
like that so that you have
priorities of getting credit
cards loans, things like that off.
Whereas your stocks, you know, are
better for having those in some
sort of like market account or
something that you can go look at.
Same for, you know, equity, things
like that, that you might have.
We are not certified financial
professionals, so go talk to your, go
talk to your person if you need to.
If you don't have someone, I, I mean
that's, that's also an interesting thing,
like I've, I've had the idea of starting
one of these many finance apps and I'm
glad that I haven't because it's, it's
just kind of hard and I don't think that
people necessarily want to pay for it.
Which is a common theme with most of the
ideas of things that I want to build.
Anyways, it's like people want it,
but they don't want to pay for it.
But again, I think it helps to
not be the product and being sold
to credit card companies too.
CJ: Yeah, yeah, totally.
I yeah, we also started with like,
we started the migration over to
Credit Karma just because it was
the like path of least resistance,
but we'll see how long that lasts.
And again, yeah, they're just going to
sell all of our stuff to credit card
companies to try to get us whatever deals.
Colin: I mean, and they're owned by
Intuit, and Intuit's, at least in
Nevada, they're exploring a way for,
I think it's the state is offering
a way to file your taxes instead of
having to go through Intuit and stuff
like that which would be nice if that
was a federal thing, but I think it's
because we don't have state income tax.
Actually, yeah, I don't know.
Ours is just simpler, so
we'll see how that goes.
I think most of that stuff
goes out the window for me.
Because I have a K 1 through an LLC and
it's like my taxes are never just like do
your W 2 and you're and be done with it.
But we'll see how that goes.
So I think the big thing here is
just like paying attention to the
money we are spending on this show.
I think we were talking about, you
know, you you pay for Notion I'm
paying for Zencaster like at some
point all these little things add up
to death by a thousand paper cuts.
So
CJ: Yeah, if you're listening, and
you love the show, and you want it to
continue, maybe consider sponsoring.
I don't know, like, we gotta figure
out how to, figure out how to set up
some sponsorships or something just
to get It would also be cool to have
the editing paid for, too, right?
Like, if we could I think the,
like, rough rule of thumb is like
100 an episode for editing, which
isn't You know, astronomical plus
hosting plus the tools or whatever.
Yeah, it doesn't seem impossible
to get that covered by sponsors.
So,
Colin: yeah, I think the like
developer tools companies would be
really cool for us, like a century,
a honey badger, something like that.
So something we'll have to
explore in the new 2024.
CJ: Yeah, that might be a
good, good good goal in 2024.
Colin: Yeah,
CJ: So, I saw your tweet about
annotating websites, like and then I
dropped a comment about Rap Genius.
I think it's not even
called Rap Genius anymore.
This is like 20,
Colin: just genius.
CJ: Just Genius now?
Okay.
Colin: Yeah, they at some point, they made
it so you could annotate the whole web.
But then I went to genius.
com.
And it was not what I was expecting.
It was like still a rap
website, which is fine.
But I wouldn't, I couldn't figure out
how to use it, what to do with it.
didn't even see the old
Rap Genius on there.
Like, I remember using Rap Genius
and being able to hover over, like,
lyrics and stuff, and it was cool.
CJ: Yeah.
So for those following along at home,
if you didn't go to the website, rap
genius, when, you know, in the 20
2010s, there was this, this this website
where you could go and see lyrics from
songs, rap songs, and then you could
hover over parts of the lyrics and.
You could see user generated
comments about those lyrics, like
that specific word or whatever.
And so you could also highlight and
select a part of the lyric and then add
your own comment in the same way that you
would expect in like Google docs or in
notion or whatever, you can kind of like
highlight sections and drop in comments.
But it let you do it for, yeah,
it was just like for song lyrics.
The reason why I remember it so
well is that a lot of App Academy
students would make rap genius
clones as their final project.
Yeah.
This was like a very 2012 thing to, yeah.
I mean, and it's, it's
a, it's an amazing idea.
And also I wanted it forever for the
Stripe Docs because I, I, there's
like so many cool use cases, right?
You could imagine, oh, I.
I am planning to do a Stripe integration
and I'm working with my team and I
want to annotate the docs and say
like this part is relevant for us.
This part is not.
Hey, let's like investigate
this parameter or something.
And then you could have just a stream
of comments that are on the right.
Maybe that's just for your team.
Or you could also have like a public
version, which, yeah, exactly.
Yeah.
So, so anyone could come in and
add their own sort of editorial
comments about something.
And and it would be related to the text
in line where that gets sorta gnarly.
I don't actually know what
use case you're going for.
Like what, yeah.
Like what is kind of like
Colin: very similar to Docs.
Like, so we have our existing
Docs, and I wanted to annotate
them and, like, even tag.
each page as like a certain type.
So I could start, I was doing a lot
of information architecture stuff,
basically, but I didn't want to
do it in Figma because I couldn't
just like move things around.
And, you know, I wanted to use like
notion like comments or like Figma style
comments where you can have them in line
and have a conversation with your team.
And I think this is, this feels
like what you just mentioned feels
like another business idea that is
hard to make money at, unless it's.
targeted at teams, right?
Where that team collaboration
across the web is amazing.
But if it was like a free consumer
use thing, like no one probably
really wants to pay for it unless
they're like a superpower user.
Because they're having those like
Kindle, like highlights and Kindle
notes and stuff is one of the I
actually enjoy that when I'm reading.
I have a feeling we would get feature
requests in yet another place that
I do not want feature requests.
Hey, this doesn't seem like it's working.
I'd say, okay, can you not report
bugs in the docs in the annotations?
But maybe that would
be a cool way to do it.
I don't know.
CJ: Yeah, or people will ask questions.
Like it's not a place for support
necessarily, but people, I could see
people being like, how does this like,
or, you know, even worse, like where's
my money kind of things like so.
Yeah, I don't know, scoping it
to a team makes a lot of sense.
There's this tool called frame.
io that we used at Stripe and this
is for video editing where we would
like edit a video, put it up in frame
and Brad would like send me a link
and say, Hey, can you review this cut?
And then as you're going through at any.
Yeah, at any point in the video,
you can leave a comment that gets
tagged like at that time marker.
And then you can have a stream of
comments on the side and you can even
like highlight a region of the video or
like put arrows kind of like you're doing
like a sketch you know, making sketch
comments or whatever about a screenshot.
That was killer.
It was so useful for video, like
collaborative video editing.
So it's, it's for sure
something that's valuable.
Colin: Skitch is a name I
haven't heard in a minute either.
CJ: Oh my gosh, that's a tool.
I don't know.
Yeah.
I don't know if a lot of people use that.
It's just something that it has
become like a default install.
When I like jump onto a machine, it's
like an, an old Evernote tool for putting
air, like pointing arrows at things.
And
Colin: Evernote, like
this is all the old web.
CJ: I'm showing, I'm
Colin: We've got
CJ: My gray beard right now.
Colin: yeah, Mintz, Evernote,
Skitch, and Rap Genius.
Those are your go to apps from 2012.
CJ: Yeah.
Colin: mean, we don't, we don't pay
for the Descript version that lets
us edit episodes together, but you
can also do collaborative editing
and comments in Descript, too.
So, I think this
collaborative thing is huge.
It would be almost cool to take those
annotations and have integrations to
GitHub and others and say, like, Turn
this annotation into a GitHub issue.
Turn this into a linear ticket
or a JIRA ticket or whatever.
And it almost makes it more
transparent and you know, you can
make this all get backed or something.
It'd be kind of interesting.
So there's, there's some ideas for people.
CJ: Yeah.
So yeah, that's, is that something
that you're building or you're
just like had the idea and you're
like, I wonder if this exists.
Colin: Yeah, I was just like frustrated
because I'm in, I'm actually doing
the IA for navigation in Notion, but
like now that I'm saying it out loud,
I probably should do it in some sort
of get backed thing because I'm just
doing like lots of versions of it.
In terms of like sorting it by topic
and then resorting it by getting started
and tutorials and guides and explainers,
kind of like we talked about in the past.
So I'm doing like a bunch of different
perspectives and trying to show it to
people and say, if you were trying to do
this, where would you think you would go?
And we're going to do that even with the
existing docs, because I guarantee right
now, if I say, how do you build a bot?
You will not know where to
go, and that's a problem.
So, we're trying to fix that kind of
stuff, and just having annotations,
I think would be really helpful from
like a writing and doc perspective.
CJ: Got it.
Yeah, sorry.
I missed that the first time.
The, one of the things that we did
at Stripe was we had these meetings
called docs review and when a product
was about to launch, they would bring
their new product documentation to
docs review and it would be developer
advocate, developer support engineer.
A salesperson a docs writer, a
docs editor, and like a lot of the
conversation often ended up being
around IA, like where in the navigation
should this live and how should, like,
how are you going to find this thing?
And how does it flow from the previous
thing to this thing, to the next thing?
And yeah, so it's a, it's
a really hard problem.
I don't know how to fix it,
but yeah, I think annotations
would be killer for that.
Colin: Definitely not another thing I
want to build, because that's a topic
that we'll talk about in a second.
It's something that I've learned
about myself, but what else
are you working on right now?
CJ: It's been a lot of little
API integration work this week
where we have a big Twilio.
We're doing a big Twilio integration.
And I was like exploring, what does
it look like to integrate directly
with the messages API to send messages
versus the conversations API, which
is kind of like a higher level thing.
And, they're kind of really
two different use cases.
So went down that path and got
messaging working with photos
and images and whatever this
week, which was kind of sweet.
And then post hog is a tool that
we use for product analytics.
It's kind of you know, like
for funnel tracking and things.
And so we added a little
integration there that will fetch
some marketing traffic data.
so Put up a video about that.
And then yeah, segment.
And then we use deputy for
like shift management and like
crew scheduling and planning.
And so we have a couple of hooks
into their API where we are updating
internal project information and
building relationships and associations
based on some, some web hooks there.
So tons of fun stuff.
This is the kind of work that
I love with rails, just like
building out the data model.
Building some API integrations, making
sure that everything is going to sync
well and be robust and like not fall
over and you know, automate away a
lot of manual things where people are,
you know, they've got two tabs open
or they've got two windows in their
browser open and they're jumping between
the two copying and pasting things.
So,
Colin: Nice.
CJ: yeah, it's been fun.
Colin: Are most of these like schedule
job type things, or are they like
ingest webhooks and things like that?
CJ: A little bit of both.
We're using the same webhook pattern
that you talked about at RailsConf.
So yeah, we get the inbound webhooks
for, all of these or different.
Yeah, there's like different
triggers, but mostly it's webhooks.
And then we'll sometimes we'll go like
turn around and refetch some data and
then update that in the, in the database.
The one that I'm working through
right now is so sidekick.
Has this concept of a scheduled set.
So when you schedule jobs and sidekick
to be performed later, like you can say,
Oh, do this job in five minutes from now.
So start the job in five minutes from now.
And that has the scheduled set.
And so I'm building like a module.
Cause I didn't, I didn't find it anywhere.
That will debounce those requests
because we might get like five or six
different webhook post requests that
are all related to like the shifts.
For a certain project.
And I want to just like go and get all
the shifts for the project and update
the data at once from the from the API.
But I don't want to do that every
single time we get hit with a webhook.
So I want to like schedule the
job and then look at sidekicks
scheduled set and see Did I already
schedule this same exact job?
And if I did, then like cancel
one of them so that we only end up
running it once like kind of the
same way that you would debounce if
you were doing auto, like building
your own autocomplete in JavaScript.
So like you, someone, as someone is
typing, like every, every time they
type it cancels the fetch request.
Unless they haven't typed for like 300
milliseconds and then it'll like actually
fire the request to go do the thing.
sO something similar to that, but
instead of keys being pressed, it's
going to be webhooks coming in and
then we'll eventually go out and
fire the job, the underlying job.
So,
Colin: Nice.
CJ: yeah, it's pretty, pretty fun stuff.
So, Hmm.
Colin: That reminds me of, there's,
I went down this rabbit hole when
I was at Orbit there's this new
language called Ballerina, which is
an integration specific language,
like for building integrations.
And what's cool about it is
that if you go to ballerina.
io, and you write the code, the
code will actually generate a
sequence diagram and vice versa.
So like you can then see the, where
the requests are and the gets and what
happens with the data and stuff like that.
But what's really cool, and I'm going
to butcher this a little bit, maybe
we'll talk about this in a future
episode, is that it has the ability
to keep track of requests over time.
So you almost have like a lookup.
like table so that if you're like ticket
master and you're getting a whole bunch of
requests within a certain amount of time,
you can always check to see how many of
the same requests have been made recently.
Or like in this case, it's
the same job, the same deputy
schedule, whatever it might be.
And so you're.
Not necessarily having to keep track
of that yourself and go query and see
what happened, but like It allows you
to query through time is the way it's
like a little time machine Of being able
to be like, okay, we're going to keep
track of this as we go And then we can
at any point be like, okay, we're going
to use it as a rate limiter for example,
or whatever You know ddos protection
or in your case wait till we get all
the things that we expect That we might
get something for the next five or ten
minutes Which is kind of promise like too,
where it's like we expect something, and
then once it's done, then we resolve it.
But, yeah, I really like this.
This was like a programming, it was
like an integration company that built
like an IDE for integrations, but then
they're like, you know what, people
don't want to use our proprietary
software, let's give them a language.
You end up with like a single executable
type thing that can then two integrations.
And I think it's probably
too niche for most people.
I don't think most companies are gonna
be like, yeah, let's use a brand new
language that I've never heard of before.
But doing things, especially
webhooks that can come in out of
order and all those issues that
come up it's pretty interesting.
CJ: Yeah, this looks like a
really interesting language.
It's almost like JavaScripty, but
it's, or maybe TypeScripty but it's
definitely also maybe Swift flavored too.
I don't know.
There's like definitely some interesting,
some interesting stuff in here.
It looks cool.
Colin: yeah, I'll have to play around
with it and report back, but I, I
secretly want to do like a discord
bot in this just to do it and then
have the, the little language diagram
or the, the process flow diagram that
gets automatically generated and as you
move it, you can see all that stuff.
CJ: totally.
Yeah, that'd be cool.
So you you've got something on here,
learning something about yourself.
What have you learned about
yourself this week, Colin?
Colin: Yeah, I'm not learning any new
things right now because even in this
episode, I already now have like so
many other things I want to build now.
Including annotations of the web.
So, and this isn't to make
light of like real, you know in
things that people deal with.
But I, I, I would not be surprised
if this is like undiagnosed ADHD.
In that I do start things, I'm very
easy to, to want to start new things and
then not quite finish them and before
I move on to the next thing, and, and
this applies to offline things too, so
I've got, you know, half started wood
projects and, you know, crafts and leather
projects and all sorts of stuff, so
There was this really big popular thing.
And like, again, 10 years ago it was
really popular called startup weekend.
And I think some people
including like, Indie Hall is a
coworking space out of Philly.
They used to host finish weekends,
which was just like pick a
project and like finish it.
Or maybe you put it to rest,
like whatever that looks like.
Maybe it doesn't need to be
finished, but at least now you
don't have this open ended thread
running in your brain forever.
And I dunno, right now with the holidays
and things being a little bit more
chill, I'm just like more aware that I
have a lot of like, Running processes
in my brain, and we need to like go
in and just be like, okay, that either
doesn't serve me anymore, it can go away.
Or I really want to do that still.
So let's write it down
and get it out of my head.
CJ: hmm.
Colin: but I definitely, you know,
maybe this is a screen thing.
Maybe it's a chronically online thing.
I'm not sure, but I can, it's,
it's taking its toll and it's time
to, time to wind some things down
before starting some new things.
CJ: Was there, was there a
particular like day or something
that you started recognizing this?
Was there something like a breaking
point where you're like, oh, okay,
like shit, like I have too much
going on or was it just kind of
like a gradual realization or yeah.
Colin: No it's been pretty gradual.
Like, I mean, even this morning I
walked to work to try to just like, you
know, wake up early, didn't even wake
up an alarm, which was kind of nice.
And then I like go to like go
on my walk and I have like.
10 unfinished audible books, right?
And so it's like, just like
everywhere in my life, there's
just this, like a bunch of things.
There's not just one book
to listen to an audible.
There's 10.
And this is obviously like, you know, they
don't have to be finished by any date.
They're just for fun.
Things like that.
So it's just more of like, I would
like to finish some of these things.
And before I either buy more
books, start new projects, It's
just a good time for reflection.
So I'm sure a lot of people out there
probably resonate with this too.
It's the same thing with buying
more domains or, you know, getting
excited about new annotation projects
or building a competitor to mint.
So
CJ: Yeah.
I, I, Totally, totally
feel you like 1000%.
And I think it definitely
contributes to burnout too.
Like when I, I mean Stripe and at my
VR, I remember long running projects and
long running to dues or responsibilities
that just never had a clear.
You know, point where there was a
bow put on them and they kind of just
were constantly requiring attention
and energy and effort to keep them,
keep the ball in the air basically.
And there was no point where it was
like, okay, now I'm either passing the
ball to somebody else or I'm letting the
ball go on the ground and that's okay.
And like, we're going
to move on from that.
And yeah, even now, like as we
wrap up today and head into code
freeze week, there are two tickets
that have been on my, like.
In progress list that I've been
working on for months and months.
And I'm just like, I'm at the, I finished
the first 90 percent and I just have the
last 90 percent to go, you know, like
Colin: Which is always the case, right?
The last
CJ: yeah, totally.
Yeah.
It's yeah.
I, so I 100 percent feel ya
and, yeah, the, another thing
too, that I found was that I was
making a lot of goals most years.
So around this time I would go through
and be like, all right, next year
I'm going to read 35 books and I'm
going to, you know, lose all this
weight and I'm going to do this.
I'm going to do that.
And then I kept those so front and
center that I kind of like lost sight of.
Some relationships that were really
important to me and maybe sleep or,
you know, like there's other things
that are actually important, but you
might not put them on your goal list.
And so like you start to, or
I, I started to like, yeah.
Have have a rough time those years.
And so I think it was maybe last year.
My goal was have no goals or I don't know
if it was the year before, but there was
a year where I was like, I'm going to
explicitly not have any goals this year.
And there was also like
a year where I said.
Instead of tracking, like,
okay, I finished this book.
I'm going to read as much as I want or
listen to as much as I want of the book.
And if I don't finish it, that means
that it wasn't good enough for it to
like, keep my attention past that point.
I'm still going to market as like, I
read it because like, I got to a point
where like, I got out of it, whatever I
needed to get out of it and I'm, you know,
moving on and I think that should be okay.
Right.
Like just picking up a book and getting
what you need out of it at that moment.
And then yeah, I don't know.
Colin: Yeah.
Well, and since this comes out in January,
I think I'll, I'll make that statement
for myself, which is no, no new goals or
rather like no new projects in 2024, like.
I think it's going to be a season
of winding down some things.
And we talked about it in a few episodes
ago about the coworking space and that's
still going, still very involved in that.
We have some, some good glimmers of hope
there that it's not as draining as it was
a few episodes ago, which is probably a
few months ago once this comes out, but
So, I think, yeah, not being afraid of
quitting things, even if it's a book, and
still counting it, is like, yeah, maybe
you're not going to recommend that book
to anyone else, but you gave it a shot.
CJ: Yep.
Yep.
Totally.
Colin: yeah, so more reflective than
anything, but realizing I don't need
to go learn a bunch of new things just
because we have some time off, either.
CJ: Absolutely.
So, the other day, I was scrolling
through Reddit, and this post popped
up that's, was about the missing
semester of computer science from MIT.
I don't know if you've seen
this or heard about this, this
was like, brand new to me.
It's like a bunch of topics that you don't
end up talking about in normal classes
in at MIT in your CS program, I guess.
And one of them, the third edition
is about editors and the instructors
teach, they all like use Vim.
And so they teach Vim.
And I was like, Oh, this
is super interesting.
Let me watch the, watch the talk and
see kind of like what they get into.
And there were a couple of features
and like tools, like high level core
fundamental tools that I had just
never used or never like thought about.
And so even though, yeah, I
guess I've been using them for.
Almost 20 years now.
And I like look at it and I'm like, holy
moly, like there's still so much to learn.
So like this, this week I, yeah,
I like have been practicing
using this this command called
global, like the global command.
So colon G in your editor.
So yeah, like it is.
It's just like mind blowing to me how
you can use a tool for a really long
time and, you know, you think you've,
you think you've got it and there's
just so much, so much more depth to it.
I feel like there's, you know this
is like unlocking an entire new
mode of editing that like, I didn't
even know about or like think about.
And so yeah, really, really
excited to play around with that.
And, it also like re sparked or rekindled
my interest in playing with VimGolf.
So I gotta get in there and mess around.
I think that like playing a few
holes or whatever of VimGolf,
definitely there's like a few things
you pick up every time you play.
And so what I love about VimGolf
is that when you submit your
like solution or whatever your,
your putt, you can also see.
People like a submission, that's just
like one keystroke better than yours.
And so you can like look through
the keystroke and see like, what did
they do that was different for me?
And sometimes there's like little nuggets
in there and you're like, what the heck?
Like, what does that character do?
Or like, what does this, you
know, pattern do or whatever?
And so
Colin: vim annotations.
CJ: yeah, yeah, exactly.
It's I don't know.
It's, it's an amazing editor.
I love it obviously.
And I, yeah, so that's what
I'm learning this week.
Yeah.
Colin: I'm going to hold off because I
know that it's on my list of things to
learn one day, but I think I've spent
two minutes in Vim or I'll go in there
just to do like my rebase interactively.
And that's it.
I'm very like, I can turn the W into an F
CJ: Yeah.
Yeah.
It's yeah.
Colin: and squash things.
CJ: I think VSCode is
the winner these days.
Like for sure VSCode has become
the dominant editor and I expect
that everyone will use VSCode.
I think people, some people will
use Vim mode in there, but it seems
like most people are using VSCode
these days and yeah, so whatever
you're most productive in, go for it.
So
Colin: exactly.
Finish those projects.
Don't, don't go pick up Dvorak.
Don't go pick up Vim unless
you're done with your projects.
CJ: Yes.
Yes.
Yes.
Colin: to pick them both up at the same
time and you won't get anything done.
CJ: Yeah.
But going back to this, like the
missing semester, there's some
really interesting stuff in here.
They've got like they'll teach
Git and some command line
stuff and metaprogramming.
So definitely a handful of topics that
would be useful for most engineers.
So we'll
Colin: I love that they just, they
just took like a whole bunch of
stuff and shoved it into Potpourri.
Markdown APIs.
Keyboard remapping, GitHub.
Amazing.
CJ: Oh yeah.
Colin: I see.
So these are, this is a whole class
or at least like set up like a class.
No, it is.
It's actually taught at MIT.
CJ: Yes.
Colin: It's co taught by three people.
And then there's like a bunch of sessions.
Amazing.
I'm going to have to take this.
I've, I've been going back and forth.
I guess this is, this is the same thing.
It's like on whether or not it would
be helpful to go back to school for CS.
And I don't, I think, I
don't think it makes sense.
I think with tools like this,
advent of code, all sorts of
stuff that you can learn so much
CJ: Mm hmm.
Colin: being online.
So.
CJ: Yeah.
I also sometimes dream about going back
to school and studying like mechanical
engineering or electrical engineering,
or, you know, like some like other thing
where I can play with Legos all day.
But yeah, I think for computer science
in particular like there's so much
content online and so many videos and,
you know, open courseware and whatever.
And that's probably true for the
topics that I'm interested in too.
I just
Colin: And you can play
with Legos anyway, CJ.
CJ: Yes, I know.
Yeah.
Any day, any day.
Colin: I, I do miss the the Thanos
Lego gauntlet behind you that
you had in your previous setup.
CJ: We snapped a finger off like
Colin: Oh no, the snap.
CJ: Yeah, this was one at a
RubyConf it was a retool prize.
So shout out the retool
DevRel team for hooking it up.
Colin: Noted.
Yeah, I need to see how we get like
a Discord Lego set or something.
That'd be cool.
CJ: that would be awesome.
Colin: Yeah.
I think we're getting to the end
of time here, but we'll definitely
put some links to that course.
And all the different, if you want to
try out co pilot money, I'll put my link
in there and we can help each other out.
CJ: Yeah, drop the
affiliate links for sure.
Colin: yeah,
CJ: Cool.
Colin: I think that'll do it.
CJ: Yeah.
As always, you can head
over to buildandlearn.
dev and that's where you'll
find all these links.
So that's it for this episode.
See you next time.
Colin: See ya.
CJ: Bye friends.
Listen to Build and Learn using one of many popular podcasting apps or directories.