Build and Learn

This week, CJ and Colin talk about content clickbait, Gameboy nostalgia, and the in-vogue topic of AI/LLMs. CJ dives into some cautionary tales around more API integrations and his steps to avoid platform risk while trying to build software at a growing company. Finally, we bid farewell to RailsConf and discuss the market for Ruby/Rails conferences in 2024 and beyond.

Creators & Guests

Host
CJ Avilla
Developer Advocate @StripeDev. Veteran. 📽 https://t.co/2UI0oEAnFK. Building with Ruby, Rails, JavaScript
Host
Colin Loretz
I like to build software and communities. Building software at @orbitmodel 🪐 Coworking at @renocollective 🎙Sharing software learnings on @buildandlearn_

What is Build and Learn?

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

CJ: I've heard a lot of this and
I've totally seen it in TikTok

content where it's like create the
curiosity gap by having some upfront

content that's like, the one tip
to sound amazing in your podcast.

If you don't know me, my name is CJ
and we're gonna talk about that, but

Why you should listen to me is because
I've been making podcasts for ages

and I have 10, 000 listeners and blah,
blah, blah, and blah, blah, blah.

And like, they draw out the whole
intro and you're like, just get

to the point and tell me the tip.

And then they finally tell you the tip
and it's actually like two seconds.

And then they close like the
thing and it's like, okay got it.

You just want your view times to go up and
you don't actually want to add value like

immediately or as, as much as possible.

Colin: I think some of those are
a little clickbaity in audio,

whatever a clickbait audio would be.

The other one that there's somebody
I've found on Twitter or YouTube that

actually is really good at that, where
they analyze why some videos don't work.

like what hooks work and things
like that without being click baity.

So I'll see if I can find it
and put it in the show notes,

but yeah, how's the week going?

CJ: So we had a pretty crazy weekend.

We flew out to California for my
cousin's wedding, which was Epic.

It was super fun.

It was held about an
hour South of San Jose.

And It was beautiful.

We had tons of fun the day before.

And then on the day of there's
just like tons of dancing,

connecting with family, hanging out.

And so yeah, it was a blast.

It was kind of, it was like definitely
very memorable because during the

ceremony, it was just pouring rain
and we're all outside just in like

ponchos umbrellas getting just
absolutely soaked in the rain.

And it was exciting.

And we did a lot of like burning
the candle at both ends between.

Trips to the airport at 4 a.

m.

and then staying up until one, two in
the morning, like, you know, having fun.

So we definitely are under the
weather and recovering, but yeah,

it's been, it's been a good week.

It was tons of fun.

Colin: Nice.

A little bit of time change in there too.

CJ: Yes.

Yeah.

Like.

I don't know if we ever were
jet lagged because we were just

awake the entire weekend, but
yeah, yeah, it was, it was weird.

Colin: Yeah.

I mean, we were talking
about it a little bit.

I've been mostly sticking around home
doing things focused on work stuff.

We talked about conference.

It's kind of conference season right now.

I was bummed to miss Stripe sessions,
but was able to watch some of that.

Went to the post con, which
I think we talked about.

Last episode, I guess this
is the post post con chat.

That was fun.

And yeah, just back to
focusing on some projects.

I've I'm trying to remember what sent me
down this rabbit hole, but I've been going

down, this is like tech adjacent this
nostalgia hole of game voice and did you.

Did you own a Game Boy?

Did you play Game Boy?

What's your Nintendo
journey if you had one?

CJ: I never had a game boy.

I was very jealous of everyone who had
one and all of my friends had them.

I just like never had, never had
a game boy the acquired podcast.

We, I think we were
learning about Nintendo.

So my kids and I, we listened to this
like several hours long series of a

podcast on about Nintendo and a big
chunk of that was all about game boy.

And afterwards they wanted to
build like an old school game

boy with a raspberry pie and just
like get into it from scratch.

But yeah, curious to hear what
your, what your rabbit hole is.

Colin: Yeah, I mean, some of it is
that, that, that Raspberry Pi rabbit

hole, but I now own the Game Boy Color
that I had when I was growing up.

So, I had The original Game
Boy which is the big brick.

There's the Game Boy color that,
or I guess, I think probably Game

Boy pocket might've come out first.

But the Game Boy color Game Boy pocket.

So I now own a pocket and a color.

The color is the same, like, it's the
Atomic Purple transparent one that I had.

And I don't remember what
happened to, like, my childhood

version of any of these things.

I think we must have either donated
them or put them on eBay or something.

But it is kind of crazy, like,
I'm not interested in a, in a

like flipping mindset in so much
as like more of a collector.

And so I got that Game Boy.

It's still in the box.

It has been opened and it's playable
and it's got some scratches and stuff.

So I, I'm not, I, it's
nice to have the box.

I'm not going to keep it in the box.

But there's this whole
world of modding Game Boys.

And taking the batteries out
and putting in rechargeable

USB C ports and IPS screens.

Because the Game Boy Color doesn't
have a backlight, so you gotta have

like, a little light, you know,
above it, you know, using the little

USB port and things like that.

So you're modding it to
add those kinds of things.

And I had seen this on Hacker News,
but I found it again, where there was

a physicist in Germany who built a
Game Boy cartridge with Wi Fi in it.

he is able to stream video like live
YouTube videos to the original Game

Boy, not even the Game Boy Color.

It's pretty crazy.

I think the game that he made, he
ended up making his own cartridge with

Wi Fi that lets you search Wikipedia.

And I mean, it's the slowest way
possible to view Wikipedia, but

ultimately it turns out that not a
great device for powering a wifi module.

And things like that, but
we'll put a link to it.

Cause if you're interested
in electronics, like what was

interesting was that the modern.

Microcontroller could not
keep up with the game boy.

And there's all sorts of reasons why
and how, and how these, like, I guess

the thing that I'm most excited to just
play with these things is that you can't

open up an iPhone and like change it.

but with a game boy, like you can
open, like I was watching just videos

of people repairing the cartridges and
they're opening them up and looking

at, you know, what contracts are
broken and what traces are broken.

And it's something that you can still fix.

It's something you can mod.

It's something you can change.

So just a fun little hobby
thing, not planning on turning

it into anything more than that.

Just kind of collecting a few games,
collecting a few of the game boys

again and, and and playing them.

Cause I also, you Can't go jump
down like the internet rabbit

hole or anything like that.

It's just going to be like, you're on
this one device doing this one thing.

CJ: It's, it's really kind of
refreshing in a way to have a single

purpose device like that for playing.

And also one of the things that I
remember learning from that acquired

podcast was that oftentimes Nintendo.

In order to keep the price or like
the cop, their costs down, they would

use like chips and things that were
older generations just so that they

could like get the cheapest stuff.

So it wasn't even like.

You know, the chip that came out that
year or whatever, it was like chips that

came out like three years before and
were no longer even being put in stuff.

And that was part of the reason too
why the original one was, I think

it's just like black and white, right?

Instead of having color is because
they just got like super cheap.

Super cheap screens.

And yeah, I don't know, kind of
interesting, definitely fun to, fun

to talk about and think about a lot.

I know the kids, I think on their Nintendo
switch, they were able to like install

some game pack that was like a bunch
of old game boy games or something.

And so that was tons of fun.

And we went down memory lane, just
like playing some old school Mario.

And yeah, the kids.

The kids are way, way into it for sure.

And yeah, so Logan like wants to
build one with his Raspberry Pi.

And so he 3d printed like a
bunch of the cartridge parts, but

there's still like a lot missing.

Like we still need screen.

We still need power supply
and stuff like that.

But

Colin: I'll, I'll share some links to
some things cause there's, there's the

pie boy, but I think the pie is not quite
maybe the newer ones are more capable,

but there's, It's a crazy world of things.

Like there's even this thing called
the analog that I'll post in the

link here, this is like a new
product and it runs game boy games

and this company has like made their
own version of the SNES, but it's

basically an emulation hardware device.

And so on this thing, you
can play game boy games.

Like with the actual cartridges and
someone of course has hacked it so

that you can run ROMs on it and you
can go ideally, you're going to be the

way that the ROM market works is that
you can use these devices to take the

cartridges you own and dump the ROM.

And then you legally have your own ROMs.

Obviously there's an illegal
market of every game out there

that you could probably go get.

But if you want to support
the publishers, right?

Like if you go buy a Game Boy game
today, the Nintendo is not getting a

cent anymore or the game publisher.

It's, it's secondhand for the most part.

So so even switch, what you
mentioned is interesting cause.

Some would argue the Switch is, like,
very underpowered as, like, a modern

console compared to PS5 and Xbox,
but they did announce that they're

releasing, they're gonna be announcing
the next console in the next fiscal

year, so technically that could be
anywhere between now and next July.

But excited to see what
that's going to bring.

I've actually never, I played
a Switch for like 10 minutes.

I don't own one it kind of skipped
me over but I think it's a fun one to

get people into the Nintendo world.

CJ: Yeah, it's a perfect happy medium
for kids that are my age because it's

not a super, super expensive device.

And it is small, it's portable.

It works great on like the airplane,
but it also can be plugged in.

And that's like, that's
its whole pitch, right?

Is that it can be plugged in and used as a
console or it can be this portable thing.

And for us, it works totally great.

We're, we're considering getting a
switch light so they can both play at

the same time when we're on the airplane.

With their own devices or whatever, but
we like this trip, for example, they just

played on their phones the whole time.

And it was, it's like,
whatever, you know, like

Colin: I will say that Nintendo
has more creativity in that, where

they're like, Hey, we have this thing.

Let's make the pocket and the
pocket light and the switch light.

And if you saw the DS, the very first,
Nintendo game and watch Look was like

a clamshell design with two screens,
but they were these, I'm actually not

sure what they're called, but the screen
that have like, they light up little

elements that are always on the screen.

So it's like pre-reg game boy pixels.

But it's the first consult
to ever introduced.

The directional pad.

And the directional pad has
not changed at all since then.

I mean, now we have.

You know, sticks and joysticks and
stuff like that, but that four corner

d pad has not changed much since then.

And that's one where I had one of
those, the Donkey Kong Game Watch,

and I don't know where it went either.

So we'll see.

I'm hoping I still have it somewhere,
but it may have been lost to time.

CJ: speaking of old school games,
when we went to this wedding, we

stayed in an Airbnb and in the
garage for the Airbnb, they had a

couple like arcade standup games.

So they had Pac Man and they also had
an old school NBA jams from like 1993.

It was amazing.

It was like the four player standup game
and we all played it for like hours and

hours and just like, you know, he's on
fire and from downtown, like, just like

the classics, you know, I just remember
having so much fun as a kid playing that.

It's like only, only
like at friends houses.

Cause we didn't, yeah, we didn't have
video games growing up, but it was like

bringing back all the memories and.

It was, yeah, it was super, super cool
to see the kids enjoy that somehow

got like really, they're really
into like these old school games

and like, I don't know, they've got
their, their new age games too, but

Colin: I think that's, it's a
testament to game mechanics.

Like if it was a good game, then it
probably, it doesn't need to have

amazing graphics to be good still today.

It's just, you know, when we see what's
possible, if you go to try to build one

of those modern games today, you're going
to find out real fast how hard it is.

And that's kind of what I've been doing
with just like getting into these more,

you know, retro games, cozy games, the
like Stardew Valley type games even to

some extent like Minecraft or is just like
a, it's so popular, but it's obviously

not the same graphics that you get in some
of these amazing new games that we get.

CJ: So does that flow into the stuff
you're doing with unity right now?

Like, what is that?

Colin: yeah.

CJ: So you're working on like
building your own stuff and

connecting it to the new discord SDKs.

Colin: Yeah.

So I've been trying to figure out all
the different game engines and unity has

been the first one I'm working on, even
though like we have unity games, I'm just

trying to figure out like, how can we
make the developer experience better for

people building unity games on discord?

So right now my, my entire unity
game is just a cube that spins.

And then the next step is going to
be like multiplayer cubes that spin.

And maybe then you'll be
able to move your cube.

So I'm slowly like doing
literal world building.

But first was just like getting
the communication set up between

not only unity and discord, but
then you also need a backend.

And so unity has a backend
for multiplayer in this one.

I'm using Coliseus, which
is an open source backend.

And it's just been cool to see, like,
there's so many of these, like, you

know, we know all these dev tools
like Twilio and SendGrid and all this.

There's a lot of multiplayer game
backend companies that just do that.

And so they're doing matchmaking and lobby
creation and servers, like to the edge

for your players so that you can connect,
you know, regions and stuff like that.

So pretty cool stuff.

Mostly trying to use like
the open source thing.

But it's starting to get into some of the
other ones that are out there as well.

CJ: Nice.

It's, it's so cool to see just like
all the different companies too,

that are coming out in support of
being able to build your own things.

This sort of ties nicely into talking
soon about platform risk and stuff because

you do definitely, as soon as you build
a game that requires like all these third

party integrations or third party things.

I don't know.

I guess like, are these just off the
shelf libraries that you integrate or

do you have to like pay for a service?

Like, is it, is it like a
SAS product or how does that

Colin: So like Coliseus, I think they
offer a paid plan but it, I would

call it's a lot like sidekick, right?

Because when you run it on your
machine, you hit a local host and you

can see the UI much like sidekick.

And when you start a room, the
room shows up in the like admin.

So you can view and you're doing
your sessions and like joining

rooms and who's in each room,
reconnecting, things like that.

So.

Coliseus is super awesome as like, I
would not, I don't know what powers that

I have not dug into it, but I would not
be surprised if it's, you know, this

like Redis backed you know, JavaScript
thing that you can just make calls to.

And then there's a unity package for
it so that from unity, you're able to

connect to the room and the discord
adds another layer of complexity

is that we need to tell you that
someone joins your game, right?

So someone from discord joined your game.

Okay.

And unity, we want to.

Then say, actually join the game in
unity so that you spawn into the world

or however your game is going to work.

So there's probably simpler
games to make like tic tac toe is

probably a simpler thing because
you're not moving through a world.

But maybe I'll, maybe I'll play around
with something like that, but yeah, I

mean, those kinds of things are cool.

Then there's these like
really higher end paid for.

I'm sure AWS has.

A service in their list of services for
this, that you can obviously spend as

much money as you want, but then you're
going to have that lock in, like you were

talking about and even choosing unity is
some cases is going to be some lock in

because it's, you can't really move your
game out of unity once you're in unity.

CJ: Yeah, that definitely seems like more
of like a framework choice too, right?

Instead of like, I don't know,
being beholden to platform.

Or maybe I, I wonder if
I'm misunderstanding this,

but it's, I, I don't know.

Assume that when you use unity, you sort
of download some SDK, you write a bunch of

C sharp, and then you can like build and
distribute your own game without having

to like work with unity after that point.

Colin: I think that's where recent
controversies have popped up.

There's a lot of license, this is
like over a year ago, but they had

updated their licenses and you know,
I'm using the free indie, like cannot

make over a certain amount of money.

Once you start making over a certain
amount of money and I could be getting

this wrong, I do not work for unity, but
there, there are licenses, there are plans

there, There is a, I'm not sure if it's
like a phoning home mechanism or how they

track this, but there's very much, yeah.

Unity personal is free.

Then it looks like you start
getting into more tools and things

that start to cost per month.

And it gets you the editor cause
you can't, I'm sure maybe you

probably could build a game without
the editor if you had just the

code, but it's going to be painful.

Like the editor does do a lot.

CJ: right.

Well, yeah, that's man, everyone
wants their chunk of flesh, huh?

That's all right.

I get it.

I get it.

Colin: Fufufufu.

CJ: have gotten back on a D and D kick and
Grayson has been doing tons of research

about how to become like a dungeon master.

And one of the things that he, so I, I
play with them maybe for a few hours,

every few months just to like, you
know, get in, get in a game or whatever.

And.

Every time he just gets way,
way better at being a DM.

And I've never played with like a proper
group or anything, but on this most recent

round, he went and used LLMs to describe
rooms to help him build out his map.

Because like we were going to play
on the weekend and I only told him

like, Oh yeah, let's, let's like
schedule something on Saturday to play.

And he was like, Oh my gosh, I
have to like prepare the whole

campaign between like, You know,
Wednesday night and Saturday.

And so he's like, he built out
a map that had 30 rooms in it.

And then he went and used like
the Grammarly built in LLM.

I don't even know like which one it is,
but some sort of thing to like describe

the rooms and then he was rolling dice
and using his textbook to like, figure

out who we were going to battle against.

And it was tons of fun.

And.

Like that sort of inspired my other
son to want to start digging into

like, what if we built like an AI
DM or some like AI assisted features

for DMing where like they would just
help you like flesh out the campaign.

Cause at this point they want to pick
a few things and like customize and

be creative in like certain ways.

But they also They want
it to be super easy.

And so one example is they had two
friends come over one day to play.

And those two friends had
never created a character.

And so they're like, Oh, no, no, I
have to like sit down and it's going

to take me like four hours to write out
the whole backstory of the character.

And they're doing this
all in like pen and paper.

And so I'm like, Oh, man, Would be
nice if you could just say like, Hey,

new friend who wants to play this?

Like, let's just generate
a new character for you.

And like, you can use that for a
couple of days and then the more

you get into it, then you can
start like customizing your stuff.

So yeah, they want to build these
like AI tools, which is really wild.

And then they'll go and ask
like, Go and ask Chachi VT.

How would I build a AIDM?

And then Chachi VT tells him like, step
by step, like, here's how you would do it.

And like, Oh, there's no LLM.

That's, you know perfectly going to
work for D and D five E or whatever.

So you'll have to like fine tune it
and train it this way and whatever.

I'm like my nine year old's coming
in asking me how to like fine tune an

LLM so that it plays D and D with him.

I'm like, this is a wild,
wild time to be alive.

Colin: I don't know what generation they
fall into, but I was listening to another

podcast where they were talking about how
like very much we, we were the youngest

users of the internet when it first
came out and your kids are the youngest

users of AI as it's kind of coming up.

And so like gen alpha is also
kind of being teased as like

gen AI where they will not know.

anything but a world that had these tools.

What you're talking about also gets into
the controversies around wizards of the

coast and D and D, which is should there
be a model trained on all D and D stuff?

And if so, who has the license to do that?

Arguably wizards will sue anyone
out of existence that, that uses it.

There is the SRD, which is the open source
version of like, and it's like a subset.

It's like, you know, Ranger, Wizard,
and it's like an actual PDF or

something that could be fed to an LLM.

Obviously there's PDFs and stuff
of the books out there, and

there's lots of homebrew content.

I imagine that there's they are
working on something like this.

They, they issued a statement
about how their stance on using

AI generated art recently.

And it was a non statement of like,
we're going to be giving you an update

on our statement about our stance.

And everyone's like the fact that
this wasn't a we aren't going to

use AI art is a little troubling.

You know, because that's still one of
those things where arguably do we want a

world where it's completely generated art?

Like, a lot of people buy
the books just for the art.

But if you're trying to play the game
and you've never played before, I

think what you're talking about with
like a pre gen character is great and

you can customize a little bit in AI.

See if you like it and you're going
to start to realize like, Oh, I

want to make my own character.

Cause there, there's a lot of fun in that.

I, I wouldn't want AI to take
that away from me, but if I'm just

starting, get me started faster.

CJ: Yeah.

The other, the other side of this is
that when people want to start trying

out playing and they don't know somebody
who's a DM, like they need to learn

so much just to like cover the ground
of like, what do all these different

things mean in order to get started.

Whereas like, if you were just like,
Hey, me and my friend want to learn how

to play DND, let's play with an AI DM.

And then like, if that goes great and we
like it and it's fun, then At some point

we can like become our own AI assisted DM.

And then if we want to do like the entire
thing ourselves and like design every

single piece of it and you know, extra
stuff that's on the side, then cool.

Right.

Like it can expand into
that, but it's like yeah.

Decreasing the barrier to entry
to play without, I don't know.

Colin: I could see it similarly how
we use it in day to day programming.

Like I still know what I'm trying to do.

So add some like, help me
necessarily do it for me.

Or if you're going to do it for me, I
mean, I've seen people say like chat,

you would do, you are the DM now run
this game for us, which is different.

But I could see like, okay, now
I need just a description for a

new world or something like that.

That could help.

Cause yeah, being a DM
is a whole other thing.

CJ: Totally.

Colin: for your kids to have

CJ: Yeah.

He, the, the, the amount of planning
that he put into it was pretty wild

in the fact that he had maps and like
a whole bunch of stuff that I was not

expecting and enemies and whatever,
like the rooms were really intricate

and elaborate and he had like some long
monologues about like what the story

was, what was happening in the story.

I was like, this is so sick.

Like,

Colin: the kids are the
kids are going to be fine.

CJ: Yeah, yeah yeah.

So platform risk we're building a bunch of
integrations at Kraftwerk with different

third parties and man, it's starting to
hurt a little bit because these third

parties are just not keeping their
APIs running as smoothly as we'd like.

So we've got.

Degraded messaging.

We've got degraded integrations
with our like timesheet provider.

Send grid is like not perfectly
delivering to all the different domains.

And it's just been like a tough week
with like all of the dependencies

that we have on third parties.

And yeah, I mean, back to that, that build
versus buy, we can't build all of this.

And so it's like, we've got to depend
on them at least until we, You know,

have the time and the engineering
resources to build some of it.

But yeah, it's, it's tough.

And I don't know the answer and it's
tough when you're, you have certain

processes and you need to run the business
and you're like, how do I prioritize?

Do I want to build a feature that's
like going to move the business forward?

Or do I want to build a feature that
this third party already has in order

to like replace the third party?

Because it's just like not dependable.

And yeah, I don't know.

It's it's rough.

Colin: Does that mean that
you're having to build things

to monitor these services more?

Or are you guys just hoping
that they go through?

CJ: We use a century shout out century.

If you want to spots of the show we
use century and in, so in the web hooks

infrastructure, so in the web hooks talk
that you guys gave shout out, or yeah,

shameless plug for RailsConf 2024 or

Colin: Well, we'll talk
about that in a second.

CJ: 2023 tech.

Oh yeah.

Yeah.

Yeah.

So in the web hook, like in all
of our web hook processors in the

background job for every single third
party, we have a process method that

says like, try to process the thing.

If it fails, save off the processing
error exception into the web hook object

in the database and report to century.

Colin: Okay.

CJ: So anytime any of the third
parties are failing, then we start

to get annoyed, like alerted by
century, but it's centuries noisy and,

Colin: I was going to say, but
so have you started writing

code to handle their failures?

and like restore type stuff, like, you
know, even if it's just wait and send

again, or we started getting into the,
how do we know that someone's down

before they tell us that they're down?

Right.

That becomes more work for sure.

CJ: Yes.

Yeah, we have so the one of the things
that I love about the way that we

are working with webhooks is that
they always have a reprocess feature.

So like, we don't have to wait for
the third party to send it again.

We already have the data.

We just take the entire
payload stuff in the database.

Our webhooks table is going to
become insanely massive and we

can go and like archive stuff.

That's really, really old, but we
never get rid of anything basically.

And we can always go
back and reprocess it.

If there was a bug on our side, or
if there was a bug on their side

many times in the webhook, well,
depending on the third parties, gosh,

like sometimes they don't send us
everything we need in the webhook event.

And so we end up turning around and
making a get request to their API anyways.

And so.

In one of these cases, the
webhooks coming in fine, but it

doesn't have everything we need.

So we turn around and say like,
you said there's a new message.

Can we have that message?

And they say, no, here's a 500 instead.

It's like, come on.

Like we need yeah, we need our message.

So.

Yeah, in those cases,
it's just like a button.

We have a button in admin to reprocess,
or we can in batch, just say like,

go through all the web hooks that
are from this source that have failed

and run the reprocess command, and
then it'll just kick off background

jobs for all of those that will
go and chunk back through things.

But yeah, it's definitely one of those,
like, we know you're down before,

you know, you're down yesterday.

It's like going to their status page,
everything looks green and dandy.

I'm like, actually, no,

Colin: Yeah

CJ: your main endpoint is down.

Colin: Yeah, troubleshooting across
the web is, can be a challenge, right?

So, like, thinking, you don't
necessarily want to have a backup

service because, I mean, for
email, you could maybe pull it off.

For some of these things, you
can't have more than one, even

if your code is written that way.

But, yeah, I mean, I guess just
figuring out, like, are these urgent

things and need to be recovered?

Or are they Whenever they
happen, it's fine type of things.

And you guys deal with a
lot of scheduling, right?

And pushing things out and
someone needs to reply to

something or show up somewhere.

So a lot of that stuff,
you want it to work.

And I do sometimes Marvel at like,
sometimes I'll pull up Uber or Lyft and

be like, okay, why isn't it telling me
who who's coming to me in the next minute?

I have to wait a minute to see
who's my, who my driver is.

It's probably because
they don't know either.

CJ: Yeah.

Yeah.

They're like, we found your driver.

They're on their way.

Wink, wink.

It's like, yeah, you don't even

Colin: we don't even know if they
have a car, but we'll send them over.

So yeah, I mean those kinds of things
It's still marvel that it works, you know

every time and obviously huge huge teams
behind all of that, but Interesting.

Yeah, I mean You and I go back
and forth on this whole, you know,

integrate all the things all the time.

And it's, it, it's a
sword that cuts both ways.

CJ: Yes.

Yeah, I think, I don't know, at least
two of the third parties that are failing

right now are on the way out the door.

Like we're just like as quickly as
possible, just like building what we're

using from them and closing the gap.

We're closing it fast and they
will not, not be part of our stack

Colin: yeah.

Do you still listen to bootstrapped web?

CJ: yeah.

Colin: listened to, I don't know if
it was the most recent one, but they

were discussing this around Jordan's
newer pivot around like, there's all

these cool AI companies, but they tend
to be like two engineers in YC with no

marketing chops and they're competing
on tech only and they have no sales.

No marketing, no, no business, you
know practicum of what to do and how

to solve like a real customer problem.

Like they're solving
really cool tech problems.

And it was interesting to me when they
were talking about how, like, they're

going to go after a market that is not
tech savvy and give them these tools.

Some of them sound very
similar to what you're doing.

You guys actually would not be surprised.

They mentioned being referred
to a painting company.

It would not be surprised if it
was you guys but that they're

just thinking of like, okay, cool.

We're not going to go build
that whole thing from scratch.

We're going to use their API, but
make it in a way that when they

fail, or if they fail, that we swap
them out for somebody else, because

those things are going to be.

Be like a race to the bottom.

And I think SendGrid in the early
days was awesome because it was

modern and new, but now SendGrid is,
there's a million options, right?

And we can unfortunately just
swap out, you know, SMT is easy to

swap out if, if you're using that.

So it's a, it's an interesting
thing to think through.

CJ: Totally.

Yeah.

In terms of commoditized APIs, our
AI integrations are the ones that

are most commoditized and like
we built them in a way that is so

hot swappable that it is literally
just like, go in, change a symbol.

And now it's like going to
Claude, change another symbol.

And now it's going back to GPT four.

You know, it's like the,
yeah, so yeah, I need to go.

Write this down and or talk about it.

But we have like an AI service that has a
bunch of methods that are sort of generic.

So you can say like, I wanna generate
a completion, or I wanna do a chat,

or I wanna do a I, I wanna do like a
vision task or something like that.

And so we have a handful.

And then those all have system
prompts that use like h html, ERB.

Or text CRB so that we can
like inject whatever we want.

And then each of those just are like,
it's instantiated with a provider symbol

that will like look up, okay, is this
going to be, you know, sent to open AI?

If so, there's an adapter.

So there's like an open AI
adapter that will like call the

open AI client under the hood.

And do the completion or the
vision task or the, whatever.

And then we have a like a clod adapter
and we have a, whatever I think

we have a deep mind or something
for our transcription service.

So then you just have all these
adapters that all conform to the

same, like interface that the AI,
like the top level AI service follows.

And then, yeah, it makes it super
hot swappable because I feel

like every time we turn around.

They're like the horse
race is changing, right?

Like who's in the lead, who has the
better model, who has like the more

performant thing, who's faster,
who's more reliable, who's cheaper.

And so being able to like, not only swap
the model out, but swap the provider and

their API out is, has been super cool.

So I don't know, I really want
to like run our own stuff, like

use Olama, set up our own service
where we can run our own things.

But I still feel like the tooling
isn't quite there yet to a level of

bare minimum DevOps that I would like.

Right.

So like, yeah.

Okay.

You just spin up a.

A render service or something that's
like, okay, now run my H one hundred or

I don't know, for inference, you don't
need something that crazy, but like, just

spin up a render box that can run Olama.

And maybe the, maybe the limitation
is that we need to download, you know,

five to 10 gig model onto the machine.

And oftentimes I don't remember, I
think the boxes that we're running on

are like five, 12 Meg or something.

So like even just having the space
for it would be interesting, but.

Yeah, have you had a chance to
play with Olama yet locally?

Colin: I haven't I've been thinking,
I haven't really played with a lot

of the AIs or anything like that.

I was actually looking Learn with
Jason, Jason Langsdorf has a like

builder challenge that is due on
Monday and I was like, Thinking

about playing with it this weekend.

And they're, they're doing a
challenge on using Astra DB and

some AI to build something that
is AI, that is not a chat bot.

So, but it has to be open source has
to be like a prototype and they're

doing it to, you know, it's, they do
their like four devs, one app series.

So I think that must be the next one that
they're going to show off what they built.

So they're just trying to get community.

Folks to participate and
it's pretty cool model.

Cause then they have the company that
releases that database sponsoring

that video which is a really smart
way of creating content that's

sponsored and still getting to code
and not just have to talk about it.

CJ: Totally.

I think that is a great idea and it
feels like, Hey, you know, all these

devs, we have this new tool called an
LLM or whatever, and I think a lot of

people don't yet know what it will be
used for, and so there's a lot of ideas

around, you know, text analysis and
text generation and helping you sort of

distill stuff and understand text better.

But beyond that, I feel like people
are still like, In this stage of like

just exploring and playing around.

And a lot of these hackathons are awesome
because it's a chance for you to just

kind of like have fun and mess around and,

Colin: almost all hackathons
seem to be AI hackathons right

now, though, like all of them.

So Anyway, speaking of events,
how do we feel about RailsConf?

How do we feel about Rails?

What do we think's going on?

What's what's even happening here?

CJ: well, first of all, let's
start with a bunch of FOMO.

The, the calendar did not line up
this year to make it to rails conf.

And yeah, all, all of our
homies are posting about it on

Twitter and I wish I was there.

Colin: Well, especially with this news
that so 2025 RailsConf is going to be

the last RailsConf as far as It's being
run by Ruby central and it's been run,

I don't know if O'Reilly ran it or if
it was just sponsored heavily by them

in the past, but I think my first one
was 2008 which was pretty early, but

CJ: that was a long time ago.

Colin: sad to see that it's happening.

I don't know.

Like, do we think it's

their, their announcement was saying
that it, that people are not coming back

in the numbers that they need them to.

CJ: Mm hmm.

Colin: But at the same time,
RailsWorld sold out in like 20 minutes.

So it's a little challenging.

CJ: It seems to me that they wanted to
sort of not take a break, but like they're

burnt out on hosting events or something.

And there's, I mean, between
RubyConf and RailsConf, that's a

huge lift for one organization.

And so if they can focus on RubyConf,
make the language conference great.

And another thing that I saw pointed
out was that there's so many regional

conferences, like the real SAS
conference the Andrew Culver is doing.

Jason sweats, got the Las Vegas
one that happens in city Ruby.

And then there's a whole bunch
of other ones that are kind of

just like regional things that
have happened on the East coast.

And there was like
mountain Ruby or something.

Yeah.

Rails camp.

There's tons that are
happening that are smaller.

I don't know, maybe easier
to make it to than a national

or, you know, global event.

And then on top of that
rails world is now happening.

And I don't know, I, some like part
of me wonders too, if it was around

like the finances, like could they
just not justify the money anymore or

Colin: Well, Ruby central also
maintains Ruby gems, which I would

say is key to the Ruby ecosystem.

And they did mention that a lot of their
funding is going towards 24 seven support.

They had hired some engineers.

There was a bunch of things that
they listed, which is all good things

that the rails community, the Sinatra
community, anyone who's using anything

in Ruby is going to benefit from.

But Yeah, it'll be, it'll be interesting.

Rails world.

I'm excited that it exists, but it
seems it's not a community conference.

Like that's the challenge.

And I think I get it because I've run
things for very long periods of time

and it's hard to let them go, but it,
it also, It, it, you can get burnt

out really fast and feel like not
everyone's supporting the community

when the community doesn't show up
the way that you hope that they will.

And I thought the last one was
pretty well attended, but also

they're not cheap to put on.

So, you know, everything's
more expensive today.

CJ: Yeah.

I also wonder if this decision was
made after last year's, they were

like, all right, we're going to
do two more years or something.

Or when, like when was this decision made?

Because I felt like last year, it seemed
like the economy was in the dumps and

a lot of companies had just had huge
layoffs and that the like hiring the

energy and the hiring arena at the
conference was really, really like low.

And so.

I wonder if that's a big part of it too,
is that like they lost sponsors because

companies are pulling back because we
don't have zero interest rates anymore.

And so, yeah, I don't know if
that was part of the decision, but

yeah, I'm sad that it won't be.

I, one thing that I worry about is
that it's a signal that rails is.

Not healthy, right?

Like that it as an
ecosystem is not healthy.

And I don't think that is true.

I think that there's a lot of
amazing things going for rails right

now, but I'm, I'm worried that the
perception will be, Oh, look at this.

This is another like sign that rails
is dead because you know, their

conference can't even like survive.

Cause they can't get people to
show up or sponsor or whatever.

It's like, wait a second,
what signals are we sending?

By by doing this right or

Colin: Yeah.

Well,

CJ: seemed like there was a
power struggle between Rails

Colin: there was.

CJ: Rails world.

Colin: Well, there was a power struggle
between a certain person and RailsConf

as well, so there's also that.

But I mean, do you take RailsWorld
to be the equivalent of Laracon?

Like, Laracon's put on by Laravel,
and RailsWorld is put on by Rails.

And then RailsConf was this thing that
the community, I mean, RubyCentral's

not the community, but it's It's
the steward of the community.

So I don't think it's necessarily a bad,
you know, like a, a black eye on the rails

itself, I think that's pretty healthy
and, and we'll have a lot going on there,

maybe that just means an explosion of more
regionals, maybe a rails conf online or

caboose caboose comps, things like that.

CJ: Yeah, it, yeah, I don't know.

We'll see what happens, but yeah, I
definitely felt like there was quite a bit

of drama about locations and inclusivity
at the one that happened in Texas.

And then there was a bunch of
drama about moving it to different

places and, oh, we already paid
the deposit for this location.

And it's just like, yeah.

And then the power struggles between
who's going to give the keynote,

who's not going to give the keynote.

And just, I, it's annoying to
see that kind of like friction.

And I just want everyone to be happy
and have fun and build cool shit.

And like yeah, it's tough,

Colin: support your local conferences.

If you've got like a regional, you
know, definitely look for them.

Meetups even, I think meetups
are starting to come back.

Ian Lansman was talking about New York
PHP being back, the New York PHP meetup.

Devrino is still kicking, still going.

So yeah, I think just, yeah.

If you're looking for your group
of devs and, you know, of all skill

levels, just got to get out of the
house and go find something like that.

But Rails world feels not
accessible to everyone.

I think that's the concern that I have.

It's like you either have to be able
to spend a lot of money on a moment's

notice when they drop the tickets.

And there's just not that many
tickets, so it's going to sell out.

CJ: One thing that also has been in
the back of my mind is that a lot of

times these conference organizers need
to lock down a venue like 12 months or

more ahead of time in order to like know
this is where we're going to have it.

But that makes it inelastic in terms
of the like size of the number of

audience, like people that can come.

And so if you're, if you're
planning rails world, Next year

ahead of the event, that's going
to happen this year or something.

Right.

And you have to like pick the venue in
the venue has a max number of people.

Then you're already like locked in and you
don't know what the demand is going to be.

It'd be much better if you could
like sell the tickets, figure out

how many people want to come first.

Even if you had like an RSVP system or
something, it was like, I'm, I'm gonna,

I'm planning on coming or something, you
know, give some indication of the numbers

of people that are going to come so that
you can you know, get I don't know, or, or

pick venues that are more elastic in terms
of like how many people they can support.

That way people like everyone
can go, that wants to go.

And I think the fact that like all the
tickets are selling out in like two

seconds online is indicating that they
just don't have The right amount of

supply for the number of people that
want to go, which also feels exclusive.

It's like, Oh, you know, yeah.

Did you get a ticket or not
in the first 20 minutes?

Or were you in a meeting or were you
working using the technology that I'm

about to go to this conference for?

It's like,

Colin: and rails world is new so
they'll they'll fix that I think like

having more Scholarships having more
attendance the tricky thing is if you

get too big of a venue now You're stuck
trying to sell into too many seats, too.

So you it is a balance I've done number
of events where you sign that contract

and you're like, well now we got to fill
this place And clearly rails world has no

issue doing that With their numbers, but I
want to say it's like hundreds of tickets.

It's not thousands.

So it's a different scale.

And I think a lot of these,
like even the right, the docs

was only 250, 300 people or so.

But cool.

CJ: There is something nice too, about
a cozy one, like a smaller conference.

It's like a little bit easier to
connect one on one to people, but

Colin: Yeah.

That's what the community
ones really are for.

Like when I see who had secured tickets
to rails world, it's like, you know, okay.

All the Tailwind people, all
the people that, you know, Ben

Orenstein, all these people that
we see are going to this thing.

So it makes it look like it's not a thing
for everybody, because it's like, you

gotta be in the in crowd, or you gotta
be giving a talk, or things like that.

So, the community ones, and this is not
to say that we shouldn't have RailsWorld,

it's just, maybe it needs more of a
community track, or Some sort of thing.

And I don't know, I don't remember
what year it was, but there was another

controversy that, or maybe it was just
timing, but there was RailsConf and

then literally right after there was
KuboosConf and it was like a free version

of RailsConf and I don't know what that
was in response to, if it was just for fun

or if it was like, we're not going to pay
for your conference, but here's this open

source version that's shortly following.

CJ: Interesting.

It's tough, but you've already had
like tons of conferences this season.

So I could.

Understand wanting to take
a little breather from them.

Colin: yeah, totally.

Yeah, I mean it's good.

It's good.

I'm missing this one.

Maybe we'll go to 2025
for the last hurrah.

CJ: Yeah, I hope they make it a
huge and available to everyone.

Colin: Yeah, I don't think they
announced where it's gonna be, did they?

CJ: I did not see,

I think they usually announce it like
at the end of the current conference.

Colin: Yeah, because
this one's in Detroit.

But you can buy tickets for 2025 already.

A supporter ticket.

CJ: Interesting.

Colin: But yeah,

CJ: All right.

Well, it feels like a
good place to wrap it.

What do you say?

Colin: I think so.

CJ: All right.

As always, you can head
over to build and learn.

dev for links to the resources
and things we talked about today.

And Yeah.

If you're feeling generous, head
over to your podcast player,

drop in a five star review.

We really appreciate it.

It helps other people find the show and
otherwise we will see you next time.

Colin: Bye friends.