All Episodes

March 4, 2025 49 mins

Join us for a fascinating episode where we explore the development of SaturnCI—a new and user-friendly Continuous Integration tool that arose from frustrations with existing solutions like CircleCI and GitHub Actions. Our guest, Jason Sweat, shares his passion for creating a platform that not only simplifies the user experience but actively incorporates feedback from early adopters. Through candid conversations, Jason recounts his journey as a content creator in the Ruby community, and how it inspired him to address the shortcomings he observed in CI tools.

We delve into the technical challenges faced as SaturnCI grows, particularly those relating to user scalability as it onboarded new customers. Jason offers valuable insights into his tech stack choices while drawing attention to the importance of creating streamlined interfaces that cater to developers' needs. The conversation shifts to the foundation of community through his upcoming Sin City Ruby conference, showcasing the efforts made to facilitate connection among participants and ensure each attendee leaves with new friendships and knowledge.

Toward the end of our episode, we touch upon Jason’s unique approach to outreach through his snail mail newsletter, where he shares insights and stories beyond technology. This creative endeavor highlights how stepping away from screens can cultivate a deeper connection with the audience. With an inviting conversational tone and enriching discussions, this episode is packed with valuable insights for anyone interested in CI tools, community-building, and finding the courage to innovate within your space. Be sure to subscribe and share your thoughts with us!

Send us some love.

Honeybadger
Honeybadger is an application health monitoring tool built by developers for developers.

Disclaimer: This post contains affiliate links. If you make a purchase, I may receive a commission at no extra cost to you.

Support the show

Mark as Played
Transcript

Episode Transcript

Available transcripts are automatically generated. Complete accuracy is not guaranteed.
Speaker 1 (00:01):
Hello everyone and welcome to another episode of
Code and the Coding Coders whoCode it.
I am your host, drew Brag, andI'm joined today by my friend,
jason Sweat.
Jason, you are everywhere onthe internet.
You do a ton of things in thecommunity, but there may be some
people who don't know who youare, so could you do a brief
introduction for those listenersplease?

Speaker 2 (00:18):
Sure, I'm one of those content creators.
I suppose you could say I'veheard about that.
I've got a podcast, a YouTubechannel, I do blogs, I've
written a book calledProfessional Rails Testing and
I'm generally active in the Rubycommunity.
I go to conferences, speak atconferences.
Between the years of 2022 and2025, I host my own conference,

(00:41):
and that's me.
All right.
Great 2025, I host my ownconference, and that's me.

Speaker 1 (00:45):
All right, great.
So for anyone new to the show,the way this is going to work is
I'm going to ask Jason threequestions.
I'm going to ask him what he'sworking on, what kind of
blockers he has.
If he doesn't have a currentblocker, what is a recent
blocker he had?
How do you go about solving it?
Then the last question iswhat's something cool, new or
interesting that you've recentlylearned or discovered or built?
Doesn't have to be codingrelated, but it is code and the

(01:06):
code encoders who code it.
So it totally can be.
So let's get started, jason.
What are you working on rightnow?

Speaker 2 (01:13):
I'm working on building a continuous
integration platform, so ifyou've used GitHub Actions or
CircleCI those kind of things,it's an alternative to those and
it's called SaturnCI.
The reason I built it is I'msomebody who's very sensitive to
deficiencies in UIs and stufflike that and I feel, like

(01:37):
CircleCI and GitHub Actions,they're a little bit no offense
janky, and so I wanted to buildsomething that was nice and
smooth and when a test suitefails, it shows you the failure
without having to dig for it andstuff like that.

Speaker 1 (01:54):
Yeah, what a concept we have talked a lot about
GitHub Actions works, but it'sjust not, like you just said,
dig for your test failures, orit's not that pretty or it just
feels like an afterthought.
So I feel you on the UI, theredefinitely could be better ones
out there.
I don't think I've used CircleAt least if I have, it hasn't

(02:16):
been for many years.
But that definitely sounds likea cool project.
You said you wanted to build itbecause UI deficiency in other
products.
It's one thing to say like, eh,nothing out there is really
great UI wise, so I'm going tobuild a whole new CI suite.
Was there anything more thanthat?
You were just like no, I need aweekend project.
We're going to do this.

Speaker 2 (02:37):
Well, I've been trying since about 2008 to build
a successful business.
Okay, sure, I've cycled througha whole bunch of ideas and we
can talk about that, but I hadthis idea maybe around the time
that GitHub Actions came out,which, if I'm not mistaken, was

(02:58):
2018.
When GitHub Actions came out,I'm just like I shouldn't bother
competing with that, becauseGitHub can just do anything.
They have so much bandwidth.
But then years went by andGitHub Actions, I don't think,
ever really changed Not in a waythat I noticed at least.
And I was also inspired by theguys who made Tuple.

(03:22):
So Ben Orenstein and friendsand they have that podcast, the
Art of Product, and I think theytalked on that podcast about
how Ben kept waiting.
Slack bought that screen sharingprogram I forget what it was
called, but there was a popularscreen sharing program that was
great.

(03:42):
Then Slack bought it and justkind of buried it and Ben kept
waiting for something better tobe made.
People kept not making anythingand he's like, well, people
keep not doing this.
So I guess I'm going to try,and so I think there was a
little bit of a lesson there.
You shouldn't necessarily worryabout somebody else beating you

(04:06):
to the idea, because companieshave their own agendas and even
if they can, they're notnecessarily going to make it a
priority to build the thing thatyou're thinking about.
And so that's what happened withGitHub Actions.
It just stagnated from myperspective and I'm like well, I

(04:27):
don't think they're going tobeat me to this anytime soon,
probably not ever.
I don't think it's even intheir DNA to build something
that resembles the thing thatI'm thinking of.
And so, in 2023, I got just sofrustrated with GitHub Actions
that I'm like screw it, I don'tcare if it's a bad idea, I don't
care if it's dumb, I'm justgoing to do it.

(04:48):
And so I've been working on itfor like two years or so.
At this point, somewherebetween one and two years and I
finally have people actuallyusing dollars valuation.
Well, maybe I can make thisinto something real.

(05:08):
And so for the last little bit,it's just been pedal to the
metal, working on this, tryingto get it viable as fast as I
can.

Speaker 1 (05:16):
Getting real users using a product always seems to
be like a big milestone forpeople's products, especially
when you start getting feedbackfrom those users.
Have you gotten a lot ofhelpful feedback of like, either
oh, I am on the right path hereor oh, I made some assumptions
that ended up being wrong and Ihad to pivot a little bit.

(05:36):
Or what was the initial userfeedback like?

Speaker 2 (05:41):
I'm getting a little bit of feedback in the form of
people telling me things, butI'm getting more feedback just
in terms of objective resultsand stuff like that, objective
observations.
So, for example, the customerI'm onboarding right now, he has
an app that's some years old.
There's I don't know like 1500tests in the test suite years

(06:07):
old.
There's I don't know like 1500tests in the test suite, saturn
CI itself, which I run.
On Saturn CI, it only has a fewhundred tests and the test
suite runs in a short amount oftime.
It's pretty lightweight,whereas this new one that I
brought on it is really taxingthe system, and so, as a quick
example, saturn CI will streamthe system logs of the runner

(06:30):
that's running the test.
For Saturn CI's own logs, that'sfine, but for the logs on this
project, it just bogs down thebrowser's memory because there's
so much stuff, the browser'smemory because there's so much
stuff, and so I'm gonna have tofigure out some tricks.
Okay, don't actually stream theentire log file and let it

(06:52):
accumulate as it goes.
We're gonna have to, like, showyou the most recent little bit
and constantly be trimming offthe back of it and then, when
you scroll back up because youwant to see the past, it's going
to have to, like infinitescroll, dynamically load that
kind of thing.
So one category of feedbackI've been getting is just this

(07:14):
scaling stuff.
When I get a new user and theirdata is at a different scale
than what I've had to deal within the past, that's obviously a
sign that I need to change thatarea that's a good issue to have
, though having scaling issuesjust means that you're bringing
on people and you're solvingthose problems early on.

Speaker 1 (07:35):
I have an assumption here it's a rails app, so you
got your rails app and thenyou've got databases and all the
other stuff going on.
What's the tech stack look likeacross the board?

Speaker 2 (07:46):
yeah.
So I'm keeping it as simple andlightweight as possible.
It's rails on postgresql, nofront-end framework.
I'm using hotwire on the frontend and that's working great for
me.
On the back the things that runthe.
That was obviously not a superstraightforward thing to figure

(08:07):
out.
I'm using Docker and DockerCompose for that.
So instead of having like aYAML file where you put your
configuration, you just have aDocker file and a Docker Compose
file, and a lot of people havethat already.
So you can kind of just copypaste your Docker file, can kind

(08:29):
of just copy paste your dockerfile.
And I give you a sample dockercompose file.
So if you have postgresql onyour app, then you just put that
in the docker compose file.
If you have redis, you put thatin the docker compose file,
whatever dependencies you mayhave.
Anyway, when a test suite starts, I spin up a digital ocean
droplet, so I spin up aDigitalOcean droplet, so I spin
up a virtual machine and then onthat virtual machine I run your

(08:51):
test suite using your DockerCompose configuration.
The surprising thing was itactually works and it's not
insanely complicated.
There were some details andstuff like that.
The big picture is just start aVM, run Docker Compose and that
works.
So that's that aspect of it.

(09:12):
And then on the front end thisis controversial but I'm using
maybe it's controversial, I'musing no CSS framework or
anything like that.
I'm just hand coding all thecss.
Because if you've ever worked ona project that has twitter
bootstrap and then they decidedthey wanted to switch to
tailwind, most likely now theyjust have both and they're

(09:36):
probably never going to get offbootstrap.
They're probably just going tolimp along with both these at
the same time and then in fiveyears, when there's something
else now they're going to haveall three and it's just going to
be a mess.
And I found in Rails upgradesit's usually not Rails itself
that causes the most pain in theupgrade process, it's the third
party dependencies.

(09:57):
So I'm going as fewdependencies as possible and as
few gems as possible.
I'll only add a gem as a lastresort.
A lot of developers, especiallywhen they're newer, they
encounter a problem and they'relike what gem can I use to
address this issue?
But it's like no, no, that'snot the question.
The question is, how do I solvethis problem as a last resort?

(10:20):
If you have to use a gem, itwould be dumb not to then great,
but I'm not going to bring in agem for, like, I don't know
what's the thing.
People bring in gems for a lotAuth.
I do have a gem for that.
Okay, yeah, I was going to sayI was going to say bold move.

Speaker 1 (10:37):
bold move, maybe like pagination or something.

Speaker 2 (10:39):
Yeah, pagination or admin dashboards, things like
that, oh yeah, yeah, I'mdefinitely not using a gem for
that stuff, definitely notcoding that stuff.

Speaker 1 (10:48):
Okay, yeah, my mind immediately went to auth.
I was like hand rolling yourown auth.
All right, all right, jason,Cool cool.

Speaker 2 (10:56):
I'm crazy, but not that crazy.

Speaker 1 (10:57):
All right, all right.
Now you're getting tractionwith it and getting such good
feedback and already scaling up.
Another thing that I knowyou're working on that I'm just
going to just go ahead and throwinto the mix for you is you
have a conference coming up,indeed, and I am very excited
for it, and I want you to talkabout it to get me even more

(11:18):
excited and to get listenersexcited in case they're not
going for some reason.

Speaker 2 (11:21):
Yeah, so I run a conference called Sin City Ruby.
It takes place in Las Vegas.

Speaker 1 (11:28):
Really Sin City in Vegas?
Who would have thought?

Speaker 2 (11:32):
Sometimes people need it spelled out yeah, and it has
taken place in 2022 and 2024.
We had to skip 2023.
And now it's happening again in2025.
And I don't know if youhappened to catch the tweet,
drew, but this Sin City Rubywill be the final Sin City Ruby.

Speaker 1 (11:50):
I did hear this yeah, I almost thought you weren't
going to do it again because theTropicana is gone.
And then I saw you were goingto do it with the NGM and I'm
like, yes, it's back.
And then I saw the it's thelast one and I was, oh no.
I have thoroughly enjoyed thisconference every time I've been
there.

Speaker 2 (12:07):
Much appreciated.
Glad you've enjoyed it.
Yeah, the destruction of theTropicana is not unrelated,
because we were getting a prettygood deal with the Tropicana,
relatively speaking the MGM.
It's going to put us at a lotof financial risk.
It's not something that I wantto experience Again.

(12:29):
It's not fun to have theprospect of losing enough money
to buy a brand new Mercedes thatkind of thing.

Speaker 1 (12:36):
Yeah, I can feel you on that.
That would definitely be ascary bit.
How is your speaker lineuplooking?
I know how your speaker lineupis looking.
I'm saying this mostly for thelisteners, because it's always
such a good mix that you haveand I think people need to hear
about it, so they go.

Speaker 2 (12:54):
Yeah, it's interesting.
We've had a ton of interest inspeaking this year, way more
people interested in speakingthan I was able to have speaking
slots and it's always a toughchoice because I handpicked the
speakers.
There hasn't been a CFP for SinCity Ruby.
It's kind of like picking yourfavorite kid or something like
that, and in the first Sin CityRuby it was who do I include in

(13:17):
this thing?
And now it feels like who do Ihave to exclude from the speaker
list?
Anyway, we have Irina Nazarova,ceo of Evil Martians, and if
you've been in the Rubycommunity, you've probably seen
Evil Martians all over becausethey do a great job of getting
themselves out there.
Chris Oliver, who you probablyknow from Go Rails and Hatchbox

(13:40):
and Jumpstart Pro.
Jason Charns, a fellowpodcaster of ours, although he
recently stepped down from the.
Remote Ruby podcast Freedom.

Speaker 1 (13:53):
Dumlao.
Yeah, the Ruby Central board.
He's newly on there.

Speaker 2 (13:58):
And then Prathna Shiva.
I think this might actually bePrathna Shiva's first conference
talk ever.
She reached out to me in 2024,I think and wanted to speak.
I was like, well, we're allhooked up for this year, but
maybe next year, and I had Prbrothna on my podcast and that

(14:19):
was a great episode and so Ithought she'd make a great
speaker too.
So she'll be coming in 2025.
Let's see that's five as a pair.
We're gonna have alan reidelhoover and feto von zastro.

Speaker 1 (14:34):
Fido Von Zastro.

Speaker 2 (14:34):
Yeah, great pair Love their talks.
Yeah, so that'll be nice.
And then, for the first time, Imyself am actually going to be
giving a talk.
Yeah, that's awesome.
Yeah, I don't know what on, butOkay, you got some talk to
figure it out.
Okay, yeah, and I think that'sit.

(14:54):
We really shrunk the speakerroster this year, partly because
last time the schedule wassufficiently tight that I went
out to lunch and made it backlate to my own conference and I
had to start without me.

Speaker 1 (15:08):
I remember this I did like how chill it was, though
last time it had a very nicepace to it.
I know we got a little offschedule, but because everyone
was flexible it made it feelvery chill, Like we could have
conversations between eachspeaker and whatnot.
So I think the shrinking asmuch.

(15:30):
As it's a bummer to have toexclude people from the lineup
that otherwise would be anawesome talk, it is also very
cool to be at a conference andhave that chill time and have
that gap between speakers.
So I'm with your decision.

Speaker 2 (15:44):
And I would have had you.
The only reason is I don't likeyou.

Speaker 1 (15:48):
For anyone who doesn't know, I got my start
speaking at Sin City, ruby.
I'd never spoken at aconference before.
I told Jason this and he wasgreat.
I'm putting on a conference.
You should come speak, and mysilly little game show that has
now morphed into a keynote forthis past RubyConf was born, so
anybody who has seen the gameshow can blame Jason Sweat for

(16:10):
manifesting that thing intoreality.

Speaker 2 (16:13):
Yeah, and you did it at Sin City Ruby in 2022 and
then again in 2024.
Is that right yeah?

Speaker 1 (16:18):
Yeah, A little more polished in 2024.
I had a few more reps under mybelt so I sort of knew what I
was doing now.

Speaker 2 (16:24):
Well, and then I had the privilege of seeing you
again at RubyConf in Chicagolast November and it was cool.
I got like a front row seat towatch your maturation from the
first one ever to the way it isnow.
You could like be on TV.
You're like great at it.

Speaker 1 (16:44):
Thank you.
Thank you, it is a lot of fun.
I've gotten really goodfeedback.
I iterate on it, so it's niceto been able to kind of give the
same talk multiple times.
I think some people get two orthree times to give a talk.
Maybe, if they're lucky, I'vedone it, I think, six times.
Now I don't think I'm going tosubmit it anymore.

(17:04):
That's not true.
I'm going to submit it to RubyKagi next year and just see if
that's something they would beinterested in.
I met one of the organizers andhe really liked the show, so
it's probably not as technicalas it needs to be for Kagi, but
I can adjust it a little bit.
I'll have to ramp up some ofthe questions.
It's technical, but Kagi's alot of core committers and folks

(17:29):
who know their stuff, so yeah,and have you solicited input
from other people to try to getreally hard, interesting
questions?

Speaker 2 (17:33):
Yeah, someone always sends me a input from other
people to try to get really hard, interesting questions.

Speaker 1 (17:37):
Yeah, Someone always sends me a question or two after
I'm done, and anytime I'm aboutto do it I'm like, hey, if
you've run into any weird Ruby,pass it along.
I have a lot of weird Rubysnippets because of doing the
game show.
Just not all of them work wellas a game show question,
especially because the goalisn't necessarily to stump
everybody and make everybodyfeel like, oh, I don't know Ruby

(18:00):
, because I don't get these.
It's more to have fun and getthe audience engaged and the
folks up there talking andwhatnot.
So you always try to find thatbalance of.
This is weird, Ruby, and reallyunexpected.
But can I come up with goodenough answers?
Or can I get good red herringsin my answers?
Or can I set the question upenough that you're looking at it

(18:23):
and going, hmm, I wonder whatit could be, because there's
that bit and then there's thisbit and yeah.

Speaker 2 (18:30):
So yeah, it's fun to see the thing at the beginning
and it's what the heck is this?
How could that possibly bevalid syntax?
And then you see what it doesand you're like, huh, that's
interesting.
And now that I dragged us downthis rabbit hole, maybe we
should share.
What is this that we're talkingabout?
What is this talk?

Speaker 1 (18:50):
that you give.
This is who wants to be a Rubyengineer.
This is a Ruby game show basedon who wants to be a millionaire
, but with Ruby syntax.
So I take a small snippet ofRuby from the weirder side of
Ruby and you have four answersthat come up on the screen.
You have to guess which one itis, and there's power-ups.
You get to poll the audience.

(19:10):
You get to select someone fromthe audience.
When I had the privilege ofdoing it at RubyConf in Chicago
as the keynote, I actually hadsome of the Ruby core team there
to do 50-50.
So they would eliminate twoanswers that they know it's not
and then you could select fromthe two there.
So yeah, it's a fun littleadventure with weird Ruby syntax

(19:35):
.

Speaker 2 (19:36):
Yeah, I quite enjoy it.

Speaker 1 (19:38):
And I wear a sparkly jacket, can't miss that, yes, in
which you look absolutelysmashing.

Speaker 2 (19:44):
Thank you, sir.
Yeah, so anyway, that's SinCity, ruby.
A couple more quick notes aboutit.
As there was last year, therewill be arm wrestling.
Fantastic, you can arm wrestlemy wife and she just might beat
you.
She arm wrestled two gentlemenlast year and conquered them
both.
And then I arm wrestled ObiFernandez and that was a tight

(20:10):
race.
I prevailed in the end, andthen everyone in the audience
was understandably intimidatedand nobody else would arm
wrestle me.
And then I pulled out a 20 billand I'm like 20 bucks to
anybody who can beat me.
And then justin bowen with hispowerfully muscled arms came up
to the front and just destroyedme and it was a spectacle.

Speaker 1 (20:34):
The whole thing was these are the things I'm going
to miss about Sin City Ruby,it's in Vegas, so it's just a
little weird.
It's such a good conference,it's a chill conference.
Everyone has so much fun at ithanging out after.
Because you're in Vegas, ofcourse, you always have such a
great speaker lineup.
Not saying that because you'vehad me speak twice, I just mean,

(20:56):
like Jason Charns, at lastyear's, while giving a talk, he
dressed up, not he came to thetalk dressed up.
While giving the talk got intoan Elvis costume.

Speaker 2 (21:07):
There are pictures it was amazing, yeah, and none of
this stuff is recorded.
You just have to be there inperson.

Speaker 1 (21:15):
Yeah, because what happens in Vegas, there in
person, yeah, cause what happensin Vegas stays in Vegas,
exactly.

Speaker 2 (21:18):
Just to paint the picture for you, if you haven't
been to Vegas, this year it'llbe at the MGM grand, so that's
right on the Vegas strip.
And so at lunchtime or whatever, we just let everybody loose.
You go do lunch on your own andthere's just tons of stuff
within walking distance so youcan go grab whatever.
This year there's going to belike a three-hour lunch break.

(21:39):
You can really just not worryabout time and just go hang out
with people, because the numberone thing about Sin City, ruby,
my hope for everybody is thatyou come there and you come away
with at least one new friend.
And so we do things to try tofacilitate that, like the
three-hour lunch.
We have something else.

(21:59):
We added it last year.
I call it forced socialization.
And so in the morning we putpeople into random groups of
five or six people and we giveyou some prompts, say your name,
where you're from, all thatkind of stuff, and people get
talking and then, after 15minutes or whatever, we rotate
and get into different groups.
People really liked that.

(22:21):
That was a way to meet newpeople.
Sometimes it can be weird at aconference.
It's like what do I just walkup to some random guy and
introduce myself.
I do that, but not everybodywants to do that, and so by like
throwing you into these randomgroups, we force you to meet
people and make friends andsince we do it in the morning of

(22:41):
the first day, you can hang outwith those people for the rest
of the conference.
And, by the way, it's a maximumof a hundred attendees, so it
is a very small conference andyou'll get to meet just about
everybody else at the conference, including the speakers.
There's not a two-tiered socialsystem where there's this upper

(23:03):
echelon of speakers onlyhanging out with each other and
then the plebeians are in thisseparate area.
Everybody's there together.

Speaker 1 (23:11):
Yeah, I didn't know if you were going to keep with
the limit, because that has beena very nice component of it in
the past.
It's so small, you're able totalk to everybody and get to
know everybody because it's sosmall.
But I know, going from theTropicana to the MGM, maybe it's
not going to be as small thisyear, but 100 is a great number

(23:32):
for a conference.
You really get the opportunityto talk to everybody, including
the speakers.
So I like that.

Speaker 2 (23:38):
Yeah, and I guess, lastly, I should.
Unless there's anything elseyou want to talk about, I should
share the URL and stuff likethat.
Syncityrubycom is where you cango to find out more about it.
It takes place April 10th and11th 2025.
Yeah, syncityrubycom for thetickets and all the other info
and stuff like that.

Speaker 1 (23:59):
Fantastic, awesome, looking forward to it.
Putting on a conference.
You are working on a productSaturn CI.
You've recently written a book,so if not have a current one,
you have at least had some kindof cool blocker.
So what kind of blockers do youhave or have had recently that

(24:23):
we can get into?

Speaker 2 (24:24):
Yeah, I don't know if this counts as a blocker.
I think of it more as abottleneck.
With Saturn CI, my CI platform,I'm having a bottleneck on the
product side, where you put newusers on it and it places new
demands on the product and Ijust have to scramble to catch

(24:45):
up.
So that's where I'm at rightnow, scrambling to catch up.
There's all sorts of stuff thatmaybe used to be okay when
there were, like, not as manypeople using it.
It was just me and maybe oneother person kind of halfway
onboarded.
This recent one is the firstreal, real customer, and so this

(25:07):
is like a whole new level.
So I'm going to have to dealwith all these scaling issues
and just all these othershortcomings.

Speaker 1 (25:13):
So are you working on Saturn full-time, like it's
your full-time job, or is itsort of still side project-y?

Speaker 2 (25:21):
At this particular moment in time I'm unemployed
and so I'm working on it prettymuch full-time.
I have been since mid-Januaryand it's late February as we're
talking now.
So for about the last monthI've been working on it not full
time, because I've beeninterviewing and I've been doing
a lot of networking calls and Istill do my podcast and all my

(25:43):
other business that I do, butI've been working on it very
steadily over the last month.

Speaker 1 (25:49):
Okay, and do you think that that has helped?
This is sort of a weirdquestion, so I'll explain my
thinking.
Do you think that being able towork on it full-time has helped
you move a little bit fasterwith it?
Oh yeah, when you do get thechance to sit down with it,

(26:19):
you're so just in the zone andready to rock and roll that you
get so much more done on it,even though you're only working
on it for 10 hours a week.
Then you do it your 40 hour aweek job, where you're like I
have to do this.
You don't lose steam as much.
So I didn't know if it was.
Yeah, I'm working on it fulltime, but I'm actually not as
moving as fast.

Speaker 2 (26:35):
Yeah, there's a danger of that.
It's what Parkinson's law workexpands to fit the time
available or whatever.
I don't think I've succumbed tothat.
I feel like I'm not pushingmyself.
I feel like I'm being pulledalong.
Honestly, it's just such anexciting thing.
I mentioned that I've beenworking since 2008 on building a

(26:56):
successful business and from2011 to 2015, I worked on
scheduling software for hairsalons.
There's all kinds of reasonswhy that was not a great idea.
Long story short, it's hard tosell to salons.
In 17 years, this is the firstthing I've had that really seems

(27:19):
clearly viable.
It can really be something.
It's getting traction.
I have good reason to believethat the ceiling for it is very
high.
I can see the pot of gold atthe end of the rainbow, so just
like, how fast can I get there?
I'm trying to not waste asingle minute Every second that
I'm working on it.
I'm just super focused andgoing as fast as I can.

Speaker 1 (27:43):
There's also something to be said, because I
hear this from a lot of folkswho built a product.
When you build a product thatyou built to solve your own
problem and then it just sohappens that a lot of other
people have that problem too andyou can solve their problem.
But then it just so happensthat a lot of other people have
that problem too and you cansolve their problem.
But when it was born of thedesire to, like you said, I
didn't like what else was outthere, so I built my own.

(28:04):
I feel like that always seemsto be where the success comes
from.
I solved my own problem and nowI get to solve other people's
indirectly, almost.

Speaker 2 (28:14):
Yeah, I might put it slightly differently, in that
there's a lot of ways that youcould solve your own problems
that wouldn't lead to anythingall that good.
You know you can build your ownbug tracker, like developers
famously do, and that doesn'thave a very high hit rate

(28:35):
because so many people do it andit's just not a great business
idea.
I would more say that how do Iput it?
Not everything that's a scratchyour own itch kind of thing is
guaranteed to be a success.
But when you have an idea thatgets traction and it happens to

(28:56):
be something that is scratchingyour own itch, then that's great
because it's an advantage overthe hair salon software, where
I'm not using it myself.
I just have to go research andfind out what they need.
With this, I know what Ipersonally want.
That doesn't mean I'm not goingto do research and find out

(29:16):
what other people need and wantalso, but since I'm so familiar
with the space, I'm going tohave a really clear vision of
how it needs to be.

Speaker 1 (29:27):
Yeah, I can see that.
Strong opinions, clear vision,same thing sort of in a way.
Right, You're driving the wholething based on your opinions
and you are very well known inthe space as the Rails testing
guy.
So you building a testingplatform or a platform that runs
tests makes sense and I can seehow your vision would help

(29:50):
guide that product to be a highquality product yeah, yeah, and
I hope that that reputation thatI have helps grease the wheels
a little bit.

Speaker 2 (30:00):
I don't want to set my expectations too high as to
how much that might help,because I found that a lot of
that stuff frankly helps lessthan you think it would, but it
definitely is helping me get mylike first customers.
It's usually not that I'm likebroadcasting k saturn ci is

(30:20):
available and people are likecoming to it.
It's more like through doingthe podcast and going to
conferences and stuff like that.
I have friends and I can go tothese friends and acquaintances
and say, hey, I'm working onthis new thing.
Would you humor me and try thisthing out?

Speaker 1 (30:39):
Having a broad network like that of essentially
your customers, right, youdon't have that network with a
hair salon.
I don't know about you, but Igo to the same salon and the
same hairdresser every likethree to six months whenever I
get around to getting my haircut, so I don't exactly have a
large network of hair cutter-yfolks.

Speaker 2 (31:02):
Yeah, and you're not hanging out with your
hairstylist on the weekends?

Speaker 1 (31:05):
probably Right, but you have a very large network,
so that helps.
Yeah, so feeling good about it,great.
Any other blockers of note,whether it be with Saturn or
with the impending conference,or even if it was a blocker that
you ran into that sparked yourinterest when you were writing

(31:25):
the book?

Speaker 2 (31:27):
Oh man, here's a big one.
Here we go, so kind of twoinstances of the same blocker.
This book, Professional RailsTesting I have it in my hand
right now.
It is only like half the sizethat I intended it to be, but I
just had to get it out.
I'd been working on it for Idon't know like a year or
something like that, and to getit to the size and scope that I

(31:50):
originally wanted would it takeanother year.
At least, that's not the rightmove.
I don't think I want to getthat out there now.
So I released it in this size.
So if I were able to duplicatemyself, I would have my other
copy of myself write the rest ofthis book that I originally
wanted to.

(32:10):
And then there's another bookthat I've had in the queue for
years now.
I even went so far as toannounce that I was writing it
and then that became Vaporware.
But the working title I have inmy head is Designing Rails
Applications, and actually it'snot a working title.
I have in my head is designingrails applications, and actually
it's not a working title I havejust in my head.
I actually have the start ofthis book in my editing program

(32:36):
and that book you can kind ofguess what it might be about,
but it's about software designas it applies to rails
applications.
I can't imagine in whatscenario in my life I would have
the bandwidth to actually writethis book, but if I can somehow
make that happen, that'sdefinitely on my list.

Speaker 1 (32:56):
If you had infinite free time, maybe we would get
that book.
That would be a good book.
I always like when folksrelease a design, or like
Vladimir has the layeredapplication design with Ruby on
Rails.
And there's a bunch ofdifferent design books out there
and they're all just a littlebit different.
They all take their approachesand from their experiences.

(33:20):
When you've had a long enoughcareer, you've seen so many
different approaches and maybewhy this one doesn't work or
this one does work, or thisworks for me, might not for you,
but this works for me.
And here's why and it's sogreat to have so many of those
books out because you can startto see a pattern here Everybody,

(33:41):
regardless of how they do theirapproach, lands on this bit or
that bit, they do this thingthat way or this thing that way,
and that can help guide yourdecisions too.
But when you start to see thepattern of, ah, these very smart
people all do these few thingsthe same exact way, is when I

(34:01):
feel like the real takeawaycomes out interesting.

Speaker 2 (34:05):
I think that exact statement you just made is a big
part of why I want to writethis book, because if there is a
prevailing view among thesmartest seeming authors and
stuff like that, does that meanit's a good idea?
Not always, and I think oftenthere are cases when there are

(34:32):
lessons or principles that areexpounded by these people that
are not good, and so we need theintellectual toolkit to be able
to tell the difference betweenwhat's a good idea and what's
not a good idea, independentlyof where it's coming from.

Speaker 1 (34:55):
Yeah, I hope you find some free time to write your
book, because now I want to readit.

Speaker 2 (35:00):
Yeah, I will mention a different book that exists
already that you can read.
It's called the Beginning ofInfinity by David Deutsch, and
I've mentioned it several timesin my snail mail newsletter and
in the one that you're going toget in the mail soon.
Drew, I'm mentioning itmultiple times again.
I'm just obsessed with thisbook.

(35:20):
It has given me so much foodfor thought.
But it's not a programming book.
It's like a physics book orscience and philosophy book I'm
not sure what kind of book it is, but it's not a programming
book primarily.
But I've learned a lot aboutprogramming from it and just
about the world and how to knowwhat's true and stuff like that.

(35:41):
It's had a huge impact on me.
So if you're interested in thatkind of topic, I highly, highly
recommend the Beginning ofInfinity.
Beginning of Infinity.

Speaker 1 (35:51):
I will definitely be checking that one out, which I
almost feel like you justspoiled.
The next question what issomething cool, new or
interesting that you've recentlydiscovered or learned about or
built?
That book would have been aperfect answer, but what is
something cool, new orinteresting that you want to
share with us?

Speaker 2 (36:10):
This has nothing to do with computers, but it's the
first thing that popped into myhead.
So, as you know, drew, my wifeand I mostly my wife we run a
farm Yep, we raise chickens,ducks, quail and now rabbit.
Rabbits are delicious, yeah,and I had not had a lot of

(36:30):
experience with rabbit before.
I'd had it at restaurants acouple times.
And then we bought a rabbitmany years ago and I cooked it
somehow, I don't really remember.
But then we just did a bigbatch of rabbits last season,
and our farm has restaurants ascustomers now, and so we're
going to be trying to sell theserabbits to restaurants we

(36:53):
already have now.
But we wanted to sample our ownproduct.
How can we sell this torestaurants if we haven't even
used it ourselves?
And so I took a rabbit and I'mlike all right, what do I do
with this thing?
And so I took a rabbit and I'mlike all right, what do I do
with this thing?
And I heard that they eatrabbit in France.

Speaker 1 (37:12):
They eat rabbit in lots of places, a lot of places,
yeah.

Speaker 2 (37:14):
But I'm like okay, let me look up a French rabbit
recipe.
And so I looked it up onYouTube and I found a recipe and
I followed it as best as Icould, because it was not in
English, it was in French.
Actually, you are bold, sir.
What I could kind of see isokay, you put this big of a

(37:35):
dollop of sour cream in there orwhatever Real scientific of you
?
yes, yeah, I made this onerecipe.
It was called okay, soapparently the word for rabbit
in french is le pont.
It was called rabbit withmustard or something like that,
le pont au moutard, somethinglike that.
I don't know how to say it, butI made it and it was really

(37:57):
good, awesome.
If I had had it at a restaurant, I'd be like this is food from
a restaurant.

Speaker 1 (38:03):
This is is good.

Speaker 2 (38:04):
Very nice work then.
I was very happy about that.
So that's my new interestingthing.

Speaker 1 (38:09):
There you go.
Yeah, I've only ever donerabbit as a stew, Rabbit stew.
Every time I've had rabbit it'sbeen in a stew.

Speaker 2 (38:17):
Yeah, I think that's kind of where it shines.

Speaker 1 (38:19):
It's a meat that bodes well for a stew.

Speaker 2 (38:22):
Yeah, you don't see a lot of like rabbit sandwiches
Like for a stew.
Yeah, you don't see a lot ofrabbit sandwiches Like a fried
rabbit patty?

Speaker 1 (38:29):
No, no, not so much.
Not so much.
They turn out great stews.
In my opinion, that might be abit of a controversial take,
since rabbits are cute andadorable and you're not supposed
to eat cute and adorable things, allegedly.

Speaker 2 (38:42):
Yeah, that part of it's a little bit tough.
We actually pet them and takecare of them.
We don't go so far as to givethem names and stuff like that.
I have developed a completeheart of stone.
Sometimes I have to euthanizeour farm animals and my pulse
just stays completely steady.
I don't care, I don't care.

(39:03):
I told somebody the other day Iwas having lunch with a friend
of mine and I'm like you knowwhat I think if it came down to
it and I had to, I could kill aguy and I wouldn't really feel
bad about it.
And I think he was actuallydisturbed by that and he backed
away a little bit.
Yeah, watch out.

Speaker 1 (39:24):
You'd probably feel something Depends on the
scenario.
Depends on the scenario, forsure.
But I feel like, even if youthink, oh yeah, I've killed a
bunch of animals, I could killanother human, I think there's
just something about when it'sanother human, you relate to it
a little bit more.

Speaker 2 (39:44):
It's just a weird feeling well, I know people who
have killed people.
I'll ask them anyway it gotdark fast.

Speaker 1 (39:55):
Alright, I'm gonna.
Alright, I'm gonna bring itaround, I'm gonna do one.
Normally I don't do this, but Ido feel like I need to plug
your newsletter because you havethe most unique newsletter that
I'm subscribed to and that isbecause your newsletter comes to
my house not through my emailbut through snail mail and I get

(40:17):
to away from my computer, asfar away from my computer as
possible, get to sit in my comfychair and open your physical
letter and, on paper, read yournewsletter and it's such a
wonderful experience and it's sofunny to read about, because
you do talk about technology init.
But it's funny to read abouttechnology by avoiding

(40:38):
technology.
But I do think we all spend somany hours of our day and so
many days of our week in frontof a computer that to be able to
consume something like thataway from the computer is so
great.
I guess I got to ask what wasthe spark there.
What was like hey, I am goingto do a newsletter, but I'm

(40:58):
going to do it through snailmail.

Speaker 2 (41:00):
Well, a big part of it is exactly what you just said
, and I appreciate that so much.
I was hoping that people wouldfeel that way about it.
I have never been somebody whoenjoys reading ebooks on the
computer.
It just feels wrong orsomething.
I much prefer reading a paperbook off the computer.

(41:22):
And so I thought, if I feellike that, probably other people
feel like that too.
I kind of started the newsletteras a way to promote my
consulting services.
It's kind of a Trojan horse topromote my consulting services
and I was originally going tohandpick maybe like 15 people
who would receive thisnewsletter.
And then, almost as anafterthought, I put a link

(41:43):
online that said, okay, I'mdoing this thing if anybody else
wants to get this newsletter.
And then, almost as anafterthought, I put a link
online that said, hey, I'm doingthis thing if anybody else
wants to get this newsletter.
And I had 400 people sign up.
Wow, yeah, I was very surprised.
Each one of these gets sent inthe mail.
It's not free to do that.
So this was like 500 bucks amonth in postage.
So my wife after a few monthswas like, hey, you can't do this

(42:06):
anymore.
So I changed it to a paidnewsletter.
So now you can go tocodewithjasoncom and there's a
link on there for the snail mailnewsletter and it's 50 bucks a
year for the newsletter and thenyou get it once a month and it
is very freewheeling in thecontent.
I have an email newsletter butI kind of have to stick to the

(42:27):
script, because if I starttalking about rabbit recipes and
stuff like that, people will belike what's this?
And they'll unsubscribe.
But a piece of paper doesn'thave an unsubscribe link and so
I can just go nuts with thecontent.
And so when people get it forthe first time, they're usually
like whoa, I didn't know you'dbe writing about plants or
whatever the thing is I writeabout.

Speaker 1 (42:48):
Yeah, I like it.
It does have technology in it,it does relate to what Jason
Sweat is known for, but it'salso got good other content.
The recipes is always fun likehearing what you're
experimenting with or what'sgoing on in the farm or anything
like that.
So that's my shameless plug,but I'm plugging your product in
my own show.

(43:09):
I don't know.
I think if anybody doesn't knowthat that exists, they should
sign up because it's great.

Speaker 2 (43:16):
Thank you for that Much appreciated and again, dear
listener, codewithjasoncom.
And then there's a link.
The letter is called NonsenseMonthly.
There's a link.
The letter's called NonsenseMonthly.
It's a fitting title.
It is a fitting title.
If I were not lazy, I wouldalready have nonsensemonthlycom
hooked up, but I don't, soyou'll just have to go to
codewithjasoncom.

Speaker 1 (43:35):
So, since we are close to the end, is there
anything that you want to talkabout and if not, where can
people find you for both?

Speaker 2 (43:44):
I think we mostly covered the things that I wanted
to touch on.
Excellent, I think.
If I can just reiterate onething, that book the Beginning
of Infinity is so good If you'reinterested in books.
The Beginning of Infinity byDavid Deutsch, and then he wrote
one before that called theFabric of Reality that I would

(44:06):
have read before the Beginningof Infinity had I not messed it
up.
But if I went back I would readthem in that order because
that's the order they werewritten in.
But that's great.
And then, also completelyunrelated, there's this band
that I found, and in the YouTubecomments I found this person
who said my entire personalitynow is making sure people listen

(44:29):
to this band, or something likethat.
So my entire personality hasbeen making people read the
beginning of infinity, who, myknowledge, no one has yet.
But also this band they'recalled the last dinner party.

Speaker 1 (44:42):
Have you heard of them, drew?
No, I have not.
The last dinner party dinnerparty, what genre?
What are we talking about here?

Speaker 2 (44:47):
I don't know, when I first heard them I felt like
they were kind of goth rock kindof okay.
They've also been described asbaroque baroque from a high
level.

Speaker 1 (44:59):
They're here as rock band, so it's a rock band, so at
least there's that okay, but Icould see yeah, from the country
of england and they're justreally good.

Speaker 2 (45:11):
In all the youtube comments of every video there's
all these people who are like Ithought music was dead, but
finally there's an actual goodband.
I haven't heard music this goodin like the last 20 years.
I haven't liked any new musicthe last 20 years and this is
finally a new artist that is notjust good but historically good

(45:33):
.
I'm going to say it's justamazing.
It's been blowing my mind.
I've been listening to theiralbum nonstop since I found it
several months ago.

Speaker 1 (45:42):
They're just so good, Awesome.
I will have to check them out.
So we've got the book, the band.
You are full of cool, newer,interesting things to share with
us.
But anybody who wants to attendSin City or get on your
newsletter or get your book orany of the other things, listen
to your podcast.
Where can they find you on theinternet?

Speaker 2 (46:05):
SinCityRubycom for the conference and then
CodeWithJasoncom for everythingelse For everything else Awesome
.

Speaker 1 (46:12):
So, listeners, I hope we'll see you at Syncity, ruby,
especially because it's thelast one.
Speaking of last ones, realquick, will you be at the last
RailsConf?
I'm?

Speaker 2 (46:22):
definitely going to try to.

Speaker 1 (46:24):
I was hoping for a definitely yes, but definitely
try to is good enough.
I'll take that.
It's fine, you know where it isright, everyone knows where it
is now, it's in Drew Bragg,adelphia.
Drew Bragg, adelphia.
It's in my backyard.
Yes, very excited that we'refinally because we've never had
a Ruby or RailsConf inPhiladelphia somehow.
So it's finally, through lotsof annoying messaging and

(46:48):
bothering at in-person convinceRuby Central to do it in
Philadelphia, and I cannot bemore excited, though.
Great, I'll see you at Sin City, hopefully, see you at
RailsConf and listeners, we'llsee you in the next episode.
Advertise With Us

Popular Podcasts

24/7 News: The Latest
Therapy Gecko

Therapy Gecko

An unlicensed lizard psychologist travels the universe talking to strangers about absolutely nothing. TO CALL THE GECKO: follow me on https://www.twitch.tv/lyleforever to get a notification for when I am taking calls. I am usually live Mondays, Wednesdays, and Fridays but lately a lot of other times too. I am a gecko.

The Joe Rogan Experience

The Joe Rogan Experience

The official podcast of comedian Joe Rogan.

Music, radio and podcasts, all free. Listen online or download the iHeart App.

Connect

© 2025 iHeartMedia, Inc.