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