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.
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.
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.