Code with Jason

322 - Joe Masilotti

Use Left/Right to seek, Home/End to jump to start or end. Hold shift to jump forward or backward.

0:00 | 1:01:16

In this episode I talk with Joe Masilotti about his new podcast with Colleen Schnettler, 'Permission Not Required.' We discuss how two independent consultants navigate the challenges and opportunities in business today, especially regarding the evolving role of AI in our field.

Links:
- Joe Masilotti's Website
- Nonsense Monthly

Snail Mail Newsletter For Developers

SPEAKER_01

Hey, it's Jason, host of the Code with Jason podcast. You're a developer. You like to listen to podcasts. You're listening to one right now. Maybe you like to read blogs and subscribe to email newsletters and stuff like that. Keep in touch. Email newsletters are a really nice way to keep on top of what's going on in the programming world. Except they're actually not. I don't know about you, but the last thing that I want to do after a long day of staring at the screen is sit there and stare at the screen some more. That's why I started a different kind of newsletter. It's a snail mail programming newsletter. That's right. I send an actual envelope in the mail containing a paper newsletter that you can hold in your hands. You can read it on your living room couch, at your kitchen table, in your bed, or in someone else's bed. And when they say, What are you doing in my bed? You can say, I'm reading Jason's newsletter. What does it look like? You might wonder what you might find in this snail mail programming newsletter. You can read about all kinds of programming topics like object-oriented programming, testing, DevOps, AI. Most of it's pretty technology agnostic. You can also read about other non-programming topics like philosophy, evolutionary theory, business, marketing, economics, psychology, music, cooking, history, geology, language, culture, robotics, and farming. The name of the newsletter is Nonsense Monthly. Here's what some of my readers are saying about it. Helmut Kobler from Los Angeles says thanks much for sending the newsletter. I got it about a week ago and read it on my sofa. It was a totally different experience than reading it on my computer or iPad. It felt more relaxed, more meaningful, something special and out of the ordinary. I'm sure that's what you were going for, so just wanted to let you know that you succeeded. Looking forward to more. Drew Bragg from Philadelphia says, Nonsense Monthly is the only newsletter I deliberately set aside time to read. I read a lot of great newsletters, but there's just something about receiving a piece of mail, physically opening it, and sitting down to read it on paper that is just so awesome. Feels like a lost luxury. Chris Sonnier from Dickinson, Texas says, just finished reading my first nonsense monthly snail mail newsletter and truly enjoyed it. Something about holding a physical piece of paper that just feels good. Thank you for this. Can't wait for the next

Reader Reactions And How It Feels

SPEAKER_01

one. Dear listener, if you would like to get letters in the mail from yours truly every month, you can go sign up at nonsensemonthly.com. That's nonsensemonthly.com. I'll say it one more time. Nonsensemonthly.com. And

How To Subscribe By Mail

SPEAKER_01

now without further ado, here is today's episode.

Joe Joins And New Podcast

SPEAKER_01

Hey, today I'm here with Joe Masilotti. Joe, welcome. Hey Jason, how's it going? Good. So you just started in the not too distant past, you started a podcast with our mutual friend Colleen Schnettler. Tell me about this new podcast.

SPEAKER_02

Yeah, so Colleen and I met at RailsConf Portland three, four years ago? I don't even remember now. And we hit it off right away. And we've actually been chatting almost every week since. We have like a weekly accountability call. And it morphed into more like business strategy. We're both independent consultants, developers, marketers, founders. And we realized that a lot of what we're talking about could be really interesting to share with the world. And Colleen has already done a bunch of podcasts. I've been a guest, so I was excited to try something. So now the the angle on it is to like solo founders trying to developer focused, make it work in the in the age of AI and how we are being affected by AI, but also how we're leveraging AI. And less about like tips and tricks and more of this is like this is what it's like for real businesses, real founders, uh

AI Upheaval And Founder Risk

SPEAKER_02

going through this metamorphos that we're going through right now.

SPEAKER_01

Yeah, it's a time of great economic and technological upheaval. Things are changing. Nobody knows what's going to happen. I don't think anybody even really knows what is happening right now, uh, let alone what will happen in the future. Um, but I think the one safe thing to say is that things are gonna be different. We don't know how, but they are, I mean, they're already different. Yeah. Um, the the job market for developers is different than it used to be. Um I think it's different for business too, both in positive and negative ways. And the question that I've been asking myself, and it sounds like you and Colleen have been asking yourselves as well, is what do we do? What are the best moves in this new world?

SPEAKER_02

Yeah, exactly. A big a big angle on it is like we don't have bosses, we're our own bosses. Uh, name of the podcast is permission not required. Idea being we don't have to ask anyone for permission. Like, we are our own bosses in this case, and that comes with a ton of freedom to explore whatever we want to explore, but also at a ton of risk, where if we make the wrong decision, we cannot provide for our families anymore. You know, it's like it's not like, oh, the business goes under, I'll get like whatever uh I'll get severance. It's like, no, that that is the end of the revenue stream for for our family. So that is just like this interesting take on all of this, where so much is riding, so much is on the line right now, you know, and figuring out how to a make it work and hopefully thrive, you know. That's that's the goal, but it kind of feels like a lot of people are scrambling, and uh I'm one of them right now.

SPEAKER_01

Yeah, yeah, and the risk is real, like it's not just a remote possibility, I don't think. Um because I'd you know, people are getting laid off, people are out there and not finding work, and and it's it's not exactly the same for consultants and employees, but it's just two points on a continuum. You know, um freelancers and agencies and and these these sorts of workers are facing a lot of the same challenges as employees. It's it's hard for a job seeker to find a job, and it's harder for agencies to find work. Uh clients expect more out of the agencies now because they know about AI and they believe that AI can make people more productive. So I I imagine I haven't talked with many like freelancers or consultants in in in the last little while, but I assume you're dealing with a lot of the same stuff. Oh, yeah.

SPEAKER_02

It's been it's been a big point of it's taken up a lot of brain power over the past couple months of where does my consulting business fit in in this new world where code has become a commodity already, you know, let alone what it's going to be in three months. Like code is practically already a commodity. And I've built a consulting business on building mobile apps for people, where my deliverable at the end of the day was written down as code that you now can put in the app store. And a lot of my the last couple of weeks, a couple of months has been me figuring out how do I break out of that and go a level higher. And how do I no longer like I was always delivering more than just code. I was helping you with, you know, app store review and dealing with Apple and advising on which native features to build. But instead of selling that, I was selling code, and now I'm swapping that. It's more about like I will help you figure out what to build. You need a mobile app, talk to me, like let's figure out what features you need to build, how to get into the app store. Do you need in-app purchases? How to save 15% on fees? Like, I was always doing that, but now I'm actually leading with that in my positioning and my branding and my offering because that is what people have more value in, or think they have more value in, because like they could just spit up the app themselves. You know, that's what that's what I'm hearing. And they can spin it up, but they're still coming back to me and being like, now how do we get it in the app store? Because Apple wrote us this email and denied us, and I don't know how to how to fight this. And it's like, okay, well, I've done this 25 whatever times, like I'll help you. Uh, so it's been interesting for me, especially, where I'm like off I'm doing the same stuff, but I'm totally swapping how I market it in this in this new world.

When Coding Becomes A Commodity

SPEAKER_01

I want to get a little clearer on what we mean by code is now a commodity. I I like partly agree and partly don't. And there there are some terms that are fuzzy, like uh we might use the terms like coding, programming, engineering, all that stuff interchangeably. Um, but there's like distinctions that can be made among those and stuff like that. So like uh an LLM can write code and it can get it to work, but that's not really the same thing, of course, as system design, and it's uh certainly not the same thing as product design. Yeah. And so there's still some like um valuable human discretion and taste and stuff like that in there. So I sp I suspect that what you mean when you say code has but become a become a commodity and tell me if I'm getting this wrong, but I suspect you mean like that lower level where it's like you decide what you want, and then the LLM can write the code. You're still the programmer, but the code part is is abstracted away, you don't have to do that anymore.

SPEAKER_02

Yeah, yeah, I think that was a really good distinction you made at the beginning of that. The difference between code and engineering and code and product and code and strategy, like the physical typing of keys on the keyboard is has been commoditized, has been given over to the robots, and if not now, it will in the next couple of months. Like I'm pretty confident about that. Just and I don't even say like across the world, I mean for my workflow. Like I am letting the the robots do the actual hands-on keyboard stuff, and I'm reviewing it and I'm architecting it, and I'm coming up with like how to build those things because I've done it so many times and I know what should be done, but I'm not typing you know, def function and like you know, that kind of stuff anymore. Like I'm less in my editor and more in like the review diff viewing phase.

SPEAKER_01

Same, exact same for me. What do you think is the likelihood that AI basically ingests all the same stuff as what's in your book and it like knows as much as your book does, uh, it has all that same knowledge and even more. What do you think is the likelihood of that happening?

SPEAKER_02

For across the world for the every developer, um low, I would say, because it's still relatively new and the models haven't caught up with it yet.

SPEAKER_01

No, I just mean eventually.

SPEAKER_02

Oh, eventually, a hundred percent.

Give Your Books To The LLM

SPEAKER_02

Um, I mean, like, for me, my workflow, and I encourage anyone who has purchased any PDF of a book, like feed, give that to the LLM as a resource as you work on those type of things. I've written that book, right? Um, Hotwire Native for Rails developers. I've written it, but I wrote it now when I actually started writing it over almost two years ago. And I have forgotten some of those things. So what I do whenever I kick off a Hotwire Native project or a mobile app, I will have that as a text-only resource for the LLM that they can consume. And it's like, not only am I getting my own knowledge, I'm amplifying it because the LLM kind of knows the rules that I already know how to build these apps with.

SPEAKER_01

Yeah, Joe, I just realized that I am a stupid idiot. Um, because I wrote my book, Professional Rails Testing, with, you know, it's hundreds of pages of exactly the way I think things should be done. And uh LLMs, to be frank, I think are shit at writing tests because they're they're going off of the examples they see in people's repos, and those examples are not very good examples. And I I've gotten frustrated with it. Um, and it never occurred to me just to give it my book.

SPEAKER_02

Yeah. Yeah. It's huge. Well, first of all, you can't say that you're stupid and then finish that sentence with the book that I wrote. Let's just let's just put that down for sure. Um, that requires some level of competency. Um, but yeah, it's like a huge breakthrough. And yeah, us for for us authors, it's distilling knowledge we already knew. But if you're an individual out there and you're working on uh a code base that needs a bunch of new tests or is like starting up the testing, and you own Jason's book on testing, toss that into the LLM as a resource, and now you have Jason sitting by you that you could ask questions to. It's like the ultimate chat with PDF app that has everyone has built, you know, and launched at the beginning of the AI surge, where instead of you're just like chatting with it, you have the author sitting next to you. And and that framing is huge because you get a point of view that is more knowledgeable than you, that has like seen it, has been around the block a few times, but it's in your code base. So you could have it say, Okay, chapter three has this, these like concepts. How do I apply those concepts to this code base? And now you're like not only getting better results, but you're also learning what is being architected because it's coming from the book, and and that's been a huge level up for me in just like learning things.

SPEAKER_01

Interesting. I'm I'm gonna do that as soon as I can after this, put put my book in there and see see what happens.

AI Momentum And Design Limits

SPEAKER_01

Um yeah, something that I think about sometimes is like what what's the AI gonna get good at and what is it not gonna get good at anytime soon? And and and my estimation of how smart it's gonna get, how quickly, keeps going up. I keep realizing that I've underestimated how good it can get, how fast. The level it's at right now is already it it it's not like ten times as smart as I thought it would be by now, but it's definitely smarter than I thought it'd be by now. I'm I'm impressed by what it can do.

SPEAKER_02

I rarely run into a AI wall, like where the where the I'm using Claude 100% of the time, uh where Claude can't do something, or it's like gets stuck or can't figure it out. And like sometimes I'll you know, it'll hit a roadblock and I'll have to direct it or guide it in a way because I've done this thing a hundred times, but it's rare that Claude is like, sorry, can't do that, or you know, whatever. Like, this is wild. Um you're familiar with CI, you're you know, building Saturn CI, you know how all those workflows work. I have this little tool that I'm working on right now that does um automated iOS app builds, where essentially you click a button, it pings your server, does some stuff in your Rails app, and then kicks off a GitHub build, GitHub action build that packages the app, uploads it to test flight for you. And like there's 17 webhooks involved with that. It's talking to App Store Connect, it's doing your you know PA identification, signing certificates, it's doing all that. And the LLM has has like orchestrated all of that when all I was saying was like this is the end goal, let's walk through the plan. Let's figure out oh, Apple doesn't have a webhook to like let me know when a build is ready. Cool, what are our alternatives? Let's do polling, let's do um like a manual refresh. And just like keeping momentum going has been so huge in that where it doesn't get stuck very often, which is to go back to what you said before, like I keep underestimating how awesome it can be. And I think that the last frontier for me, well, the next frontier, because I'm sure there'll be a new one, is more of the visual design space, where I still can't get Claude to do good design for me. I still can't get Claude to um make stuff look and feel good that isn't disconnected from like the rest of the app. And and I think that hopefully Wathen, you know, Adam Wathen is like figuring that out with the UI.sh stuff that he's working on over at Tailwind. Um but that is still like something that I I'm I do by hand still, I guess is the right way to put it.

SPEAKER_01

Right, yeah. Yeah, but I can't think of any reason in principle why AI can't eventually get good at that.

SPEAKER_00

Yeah.

SPEAKER_01

And and something that is uh I I've noticed that seems different between now and some months ago is this the level of apparent like common sense. Like before it seemed like AI had like no common sense, it was basically just a sophisticated database where it was like, hey, do this, and it just knows a bunch of stuff, so it can write the code for you, and that's great, but it didn't it if um if it ran into a problem where the solution was obvious or whatever, um it wouldn't necessarily be like, oh, this is true and this is also true, so clearly I should do this. It didn't really have that, but now it does, like it makes sensible decisions on its own.

SPEAKER_02

Counterpoint.

Common Sense Tests And AI Hype

SPEAKER_02

I saw someone ask all of the latest models the other day. Uh the car wash is 50 meters away. Should I walk or should I drive? And every single LLM responded with that you should walk to the car wash. And it's like, you know, who knows how fabricated it was. I didn't go and test it, but it's like stuff like that that we're so deep and we're so like entrenched in what AI can do that when you ask it questions like that and take a step back that like the every person is asking, you're sometimes people are like, this is stupid. Of course I should drive I need to drive to the car wash. Like, what are you talking about? And we're like, oh no, that's a logic, that's not a logic question. You shouldn't ask an AI that and um we'll see how long it takes to figure out the car wash problem.

SPEAKER_01

Yeah, that's interesting because it's what you might call an ill-formed question. Uh it doesn't have enough information in it. Um, and what the AI should say back is why are you going to the car wash? Like, do you do you work there and you have to pick up your paycheck or something, if that's how paychecks even work these days? Um or are you getting your car actually washed? And I'm actually gonna do that right now. Um the car wash is five minutes from my house. Should I walk there or drive? I'm gonna see if these people on Twitter are uh just trying to pull me.

SPEAKER_02

I need to get my car washed. Like I'm going to the car wash to get my car washed. Should I walk or drive?

SPEAKER_01

Oh, interesting. Because I remember seeing it and I thought that that part wasn't in it, but there's a good chance that I just there's a good chance that I just didn't read it very carefully.

SPEAKER_02

Well, what is what is your what is your prompt? Let's uh let's let's live test the AI. Ha ha ha.

SPEAKER_01

The answer was drive. You need the car there anyway.

SPEAKER_02

Hey, there you go.

unknown

Yeah.

SPEAKER_02

Who were you asking?

SPEAKER_01

Or what are you asking? Um Claude Opus46, I believe. Yeah, okay. Yeah. Yeah, interesting. Yeah, and I wouldn't put it past these fucking Twitter people to uh to just give us something fake. I know. That's the other thing about all this AI stuff. There's so much BS out there. So much. It's it's it's wild. It's better just to not pay attention at all.

Purchase Kit For In App Purchases

SPEAKER_01

Anyway, um, I'm curious about this product that you're working on, Purchase Kit, and how long have you been working on it? What is it? How are you involving AI and not involving AI and all that stuff?

SPEAKER_02

Yeah, so Purchase Kit is a full solution to uh in-app purchases for your iOS and Android apps. So you have an iOS or an Android app in the App Store, let's say it's built with Hotwire Native, and you want to start charging people subscriptions or in app, you know, like consumables, you need to use in-app purchases to follow Apple and Google's guidelines. And they're just like a pain in the butt to implement. They don't interact well with your Rails app. The data lives on Apple's servers or Google's servers, so you never know who's subscribed and when. And Purchase Kit will do all of this for you with like a series of different packages and endpoints and SaaS tools, uh, all and then put all the data of the subscribers in your Rails database. So you can do the queries on like how many people are subscribed. Okay, this customer, what plan are they on? Should they be show them the paywall or not? And it all lives in your Rails database instead of distributed across three different servers.

SPEAKER_01

So is this specifically for people who have a Rails app and a mobile app?

SPEAKER_02

Exactly. Yeah. Got it. It is a gem, an iOS package, an Android package, and then like a SaaS that sits on top of it that connects the platform I call it, that connects all the moving pieces together. And the platform itself is like, you know, dealing with webhooks from Apple and Google, passing webhooks along to your Rails server, writing stuff to your database via the gem. It's a lot of cord, it's like a coordination tool that means you can add in-app purchases to your app with like four or five lines of Ruby and no native code. Instead of hundreds of lines of Ruby, you know, hundreds of lines of iOS, hundreds of lines of Android, um, and all with the stuff that makes it robust, like exponential back-off for webhook failures. And if whose server goes down, how do we resolve that? And webhooks out of order, like all that complicated stuff you don't want to have to deal with. It's it's what I've built for clients, like four or five times, and this is the productized version of that to make it easy for anyone to add in app purchases in like an afternoon.

Long Sales Cycles And Validation

SPEAKER_01

And where are you at from a business perspective? Are are you working on getting your first customer or are you already past that point? Where are you at there?

SPEAKER_02

Yeah, working on getting my first customer. Um, outside of like me using it for my I don't call it internal tools, but like my public-facing stuff will use Purchase Kit to do a net purchases. So it's being used, it's just like not no one's paying for it yet. Uh, which has been really interesting because almost all of my products in the past are very quick, like, oh, I need that thing, let me buy it. And then I'll use it later. Like my bridge component, I have a library that adds native features to your Rails app for running on iOS and Android. And it's like a one-time purchase, a couple hundred bucks. It's if you need those features, you buy the thing and you you integrate it later. Purchase Kit is very much like a long sales cycle, which I never really thought about when I was building it. Where I've had onboarding calls with multiple people where we've like gotten it set up in their app and it's working in the sandbox, and now they're ready to buy, but they are working with Apple to like figure stuff out, to figure out uh where the in app how much the in-app purchases should cost, which regions it should be available in, like all of this stuff that is outside of the product that like slows down the sales cycle. Um, and I'm impatient. Like, I just want someone to hit buy and start paying me. A, I want to validate it before before I put more time into it. But B, it's like, come on, you know, move faster, people. And and then this is this is new to me because like I said, everything that I have ever built has always been this like they see it, they buy it, they use it in like a day. And purchase kit has been it takes a couple weeks for someone to even consider it. And then like I have to have an onboarding call and then a sales call, and it's like, is this what I want to be building and spending my time on? Um, you know, if I was at 10k MRR, that's a different story, but like to get it off the ground has uh has been has been tough.

SPEAKER_01

Has definitely been tough. Yeah, interesting. And are are there existing products that are kind of analogous or is this like a unique novel thing?

SPEAKER_02

There are unique there are uh existing products. Uh Revenue Cat is the big one. Uh the difference is that all of the tools around in-app purchases are focused on mobile developers. They're like, make in-app purchases easy from a mobile developer perspective. So what the the features that they offer are like dynamic paywalls. Oh, go on our website and configure your prices and like show a paywall that's all native code. There's nothing for Rails developers except Purchase Kit. And the big distinction is that the feature set is very different. To build a dynamic paywall where you're showing different prices to different users, you render an HTML page to your customers, just like you do in a pricing experiment that would link to Stripe. That problem is not something I need to solve. Rails does that for us. But the problems that do exist are like how does the Rails app tell the iOS and the Android app to make a purchase? How does the iOS app tell the Rails app that the purchase was made and like validate receipts? So I'm solving very different problems because it's built for Rails backends and Rails developers, not for iOS and Android developers.

SPEAKER_01

Is there anything that you could imagine something you could learn at some point that would make you decide, nope, I'm I'm not gonna pursue this this product, I'm gonna go do something else?

SPEAKER_02

I think that so I have a a lead right now that wants to use Purchase Kit, but is migrating would be migrating off of Revenue Cat, which is really exciting. They're doing like 40k a month into that purchases, so it's it's non-trivial, you know, it is their business. And what would make me not pursue this anymore is if when we get down to the migration, if I realize that I have overlooked 90% of the surface area. Like, sure, this product works for the clients that I've worked with in the past, but actually, when it becomes a SaaS and it's self-serve, there are all these other problems I didn't think about. That is where I probably would throw in the towel. And they're not code, they're not answers that can be solved with code. It's like, oh, well, you know, we have to deal with compliance, and that's gonna require our a custom contract, and like we have to deal with where the data lives. It's like all of those things that I like don't want to deal with, that's where I would say, all right, you know what, this isn't gonna, this isn't gonna work. Um I it's gonna take a while to get there though, because I need to talk to a lot of people. I feel pretty good about it because like again, I've built this solution for five, six clients in the past, and this is the exact architecture that they follow. It's just generalized. Um but I was always in there with the code. If something broke, I could change their Rails code. Now I only have a gem to deploy, and I have to rely on people updating their gem, like for security updates and stuff. So it's a very different problem.

SPEAKER_01

Yeah, interesting. Um with Saturn CI,

Competition And When To Quit

SPEAKER_01

there's a there's kind of a comforting aspect of it where it's not a novel kind of product. Yeah. It's just a CI platform. If you know about GitHub Actions and Circle CI and all that, you understand what my product is. And there's the the comforting thing is if I'm not getting sales, that can only mean one thing, and that can only mean that I'm just not doing good enough at it yet. Yeah. Um it it can't be because the product is the wrong thing or something like that, because there's already people being successful with CI products. Right. Um so it can only be a lack of effort or doing the right things and stuff like that. But I've worked on products before where it was a novel idea, and it's like tormenting because it's like, am I not getting sales yet because I'm just not doing the right stuff, or is it because this product is doomed to failure and nothing I could ever do could make it work?

SPEAKER_02

Yeah, that's a that's a tough one. And now that you can build one can build things so much more quickly, it it becomes this trap of, well, this didn't work for like three weeks, so should I just try something new? Versus, well, no one even knew about it. You had a hundred people check out your website and you gave up, you know. So where do you find that balance?

Saturn CI Infrastructure And Hosting

SPEAKER_02

Um Yeah, I I do want to ask, like, the Saturn CI stuff, uh, are you running on a Linux box? Like, what is the actual can you run on a Mac box? Like, why how does that all work?

SPEAKER_01

The runners are hosted, so there's not a way to run your own runners, you just use mine, and the way that works is I just have a giant VM on Hetzner, and it uses Kubernetes for the orchestration, and it runs that way.

SPEAKER_02

Nice. That's really cool. That's that's still something that I have not experimented with at all, like Kubernetes, Hetzner. I mean, with the recent Heroku news, I'm I'm I that might change soon. Um I'm slowly migrating stuff off of Heroku, but I'm just going to render because it's the most familiar. Uh but I'm spinning up a new product right now that I need a Rails website and a demo server, and like those are 25 bucks plus a month each, just to have a Rails app running before it hits the memory issue, you know? And having those on a single Hetzner box feels a lot better. I just like haven't spent the time to learn all of the stuff that I need to learn and come all and all that, and then it's I'm really just delaying the inevitable because I know that's coming soon.

SPEAKER_01

Yeah, and obviously uh AI can really grease the wheels for you.

SPEAKER_02

Mm-hmm. Mm-hmm. It's like, do I want to do that though? That's like that's what all this has come down to. It's like AI can do anything for me, but is that what I want to spend my time prompting and validating and testing and managing and maintaining in the long run? And having something on render is a very much of a on a on a on a platform as a service, I should say, is a safety blanket.

SPEAKER_01

Yeah, it's kind of like the this AI stuff with regard to productivity, it's kind of like the industrial revolution where people predicted that people would just start working like a five-hour work week or something like that because you can be so much more productive. And that's not what happened. People still use up all their available time to work, they just accomplish more during that time. And that's exactly what we're seeing with AI. It's not as though people are working less, they're working the exact same amount, maybe more. Um and they're just producing more output. I don't want to necessarily say value. Some people are creating more value, some people are just generating a bazillion lines of code, and whether that's more value is is dubious. Um, but it's that's interesting to see how that plays out.

SPEAKER_02

I am 100% falling into that trap. I am working so much more the past couple of weeks than I have in the past, and producing so much more, like you said, lines of code. Is there the is there value in this? I don't know yet. I'm excited to find out, but my output has been off the charts the past couple of weeks. And I don't know if that's a good thing.

AI Productivity Trap And Output

SPEAKER_01

I'm curious. So I had this episode with uh Gail Lackman McDowell. Yeah, I think I got that name right. Um, the author of uh Cracking the Coding interview um a a few dozen episodes back, and and we talked about the irony that like the job market, the the job application process is kind of destroyed now because people get spammed with AI applications and stuff like that, and you're the real applications just get lost in this sea. Um and so it's really hard for job seekers now, and basically what we are having to do is go back to just networking. And in this hyper-technological age, uh the personal relationships are actually more important rather than less. Um and I think that's true with a lot of stuff, and with Saturn CI, that's that's been my like initial that's like my first layer is like going to first to people I know, people I already have a relationship with, and and going after those people. And then once I kind of went through most of those, now I'm like meeting new people and making new relationships and stuff like that. I'm not prioritizing like some kind of automated mass marketing and stuff like that. So I'm I'm and and I don't necessarily mean like bad stuff, I just mean like blog posts and and that kind of thing. Like I'm working on that now, but I only just started that like quite a ways in. Yeah,

Marketing That Actually Works

SPEAKER_01

and I'm curious for you, what are you doing for sales and marketing, for your consulting, for your products, whatever you want to talk about? Has anything changed for you and now that we're in this different world?

SPEAKER_02

I think that the approach is the same for me, for my consulting business, and that is share as much as I possibly can, give away as much as humanly possible, paywall the things that are only the highest of leverage and the highest of value or the deepest of you know content, and and hope that pray that inbound leads will come. And that is what's worked for me since I've been independent for like going on six years now. I think that I've tried cold outreach, I've tried, hey, you know, do you want to do a mobile app or or stuff like that? And I don't think I've ever had a single client from that kind of stuff. Every single one of my clients has been responding to a newsletter, seeing my blog post, talking to me after a conference talk, uh, hallway track type stuff. And I'm starting to realize that I keep fighting that. I keep trying to do cult, do outreach, and like find new clients, or like tell the world that I have opportunity to work with them, and like it never works. So why do I keep trying? So I'm leaning into the fact that if all of my leads are inbound and they find me through X, Y, and Z, do more X, Y, and Z. And X, Y, and Z are content. So that's making sure I have something interesting to post every single day on Twitter. Having a newsletter article on sub on my Substack every single week. Uh, I now have a podcast that's coming out every single week, so like getting notifications in Apple Podcasts or Overcast or whatever. The book, of course, is huge. Uh I try I'm gonna try to speak at a conference at least once a year. All of these things I I've been doing forever. But now I'm looking at them as these are not one of the ways to make money. These are the only ways to bring in new clients. So I should be doing if I want to make have a successful business and make more money, I should be doing more of the things that bring in leads. Like, you know, when I think about it that way, it's so simple. Uh I feel like I I'm just like always trying to find like the easy out. It's like, what if I send like 10 cold emails and I get a client? That'd be so easy. It's like, no, just write, just write an article and you'll get someone in two months.

ADHD Novelty And Creative Systems

SPEAKER_01

Yeah, yeah. Well, uh a lot of um developers are neurodivergent, uh autistic, ADHD. Uh I think I'm well, I know that I'm autistic and probably ADHD also. Um, and I've fallen into this trap, as so many people do, of like, okay, I did something and it worked. What do I do next? What's what's the different thing that I do? I have to do something new and I'm always like chasing novelty. Um and I've kind of uh figured out how to uh push back on that and not succumb to it so much. It's like, wait, if I did something that worked, I should do that same thing again. And it's like not it it doesn't tickle that part of my brain that like has an itch, you know. Um but you have to like go I have to go against my natural inclinations, uh which is which is hard.

SPEAKER_02

I have ADHD, um, was diagnosed not long ago, like only a couple of years ago. So it's still uh it's still pretty new to me. And the the novelty thing is something that I'm constantly fighting as well. It's like this worked. Try something new. It's not good, keep doing it. Um my writing is a really good example of that. I cannot write in the same editor for more than like a few months at a time. I need to change my editor, and I've leaned into that. So it's like, okay, cool, I have seven editors. I have Typora, I have MacVim, I have notes, I have text edit, and it's like I just cycle through those. I write in Substack directly. I cycle through those every couple of months because it's novel and it feels new and exciting. Right now I'm on a voice recording kick. So when I'm out on a walk, I have my little mic, you know, hooked up to my chest and I record the content from my blog post, and then I transcribe that, and that's my first draft. Because that is novel and exciting to me right now. In another week, I'll be back to pen and paper. Like, who knows? Um, and those are the things that I can switch up that like are okay to have the novelty because the end result is the same, it's a polished piece of work. But the novelty in where my focus lies or what is working for my business, those things that are working need to be doubled down on. And it's so easy to say and so hard to do that, yeah, end of

Writing Friction And Content Quality

SPEAKER_02

sentence. Like that's all I got.

SPEAKER_01

Yeah, it's so hard. Um, and I've been trying to get some blog posts out on the Saturn CI website for so long. I think I have like one blog post finished. I used to crank out a blog post like every week, um, but for some reason it's harder now, and maybe it's harder because it's uh it's connected to a product. It's not just like writing a blog post because of whatever. Um, I feel like it I maybe I'm holding myself to a higher standard because I feel like it has to be good because it has to um drive traffic. I'm I'm not sure what the hang-up is, but I keep starting blog posts, and then I'm like, oh no, this is like too ambitious and broad scoped. Let me let me try something that I can finish within a reasonable amount of time instead of like three months. Um and then I start a new one and I'm like, oh no, this topic sucks. Start a new one. It's uh pretty it's pretty hard, but yeah, I'll I'll I'll get through it.

SPEAKER_02

I think that that is part of the writing process that is that is good friction. Uh it's something that you could have published that first post. You could have like wrapped it up in a crappy way and and not actually hit your point. And is having two blog posts on the blog now better than having like two, or sorry, having four now that are all kinda meh versus having two that are really good and really get your point across in a couple of months? Like, you're with blogs you're and and content like that, you're you have to play the long game. Writing a post is not going to bring you a customer in a week. This is just not how it works. It's gonna bring you a customer in like six months. And if you're looking at that timescale, it doesn't matter if you publish now or in two weeks or in even three weeks. Like earlier the better, yes, but to a degree. And especially in the age of like generated content, like quality is so much more important than quantity. So I'm not like I think that's good friction.

SPEAKER_01

That's another thing that makes it harder, uh, because it used to be that you could just write a tutorial on some like here's or or or just like here's an explanation for how this uh configuration setting in Capi Barrel works or something like that.

Human Opinions In The AI Era

SPEAKER_01

But now it's like Why would I read that? I can just ask AI when I need it. Um, so that kind of content doesn't make as much sense anymore. What does make sense, of course, is like opinions, things you you like take a stand on something and say, like, hey, I think this uh that that's the kind of stuff that's a lot more valuable that you're not gonna get from an AI, at least not yet.

SPEAKER_02

I I'm a sadly uh to admit, like I'm on Hacker News probably ever I'd say every day, and I and I always click through five, six articles a day. I finish close to zero of those articles that I click through on. And it's mostly because they feel like such an endeavor to work through. They're so long, they're like, you know, 2,000 words or something, and yes, attention and all that stuff, you know. But I read a couple posts, or I read a post the other day that was, I think like 250 words, and it was like there was no preamble, there was no like, hey, I'm this person writing about all this stuff. It was just like, here's what I'm thinking, here's why that worked, and here's why it maybe didn't work. And then it just ended. And it was so refreshing to read an article without having to like take a break from it and like check Twitter or just like, you know, attention go, you know, things going off, or like whatever. I was able to just like sit down and read that article start to finish. And I left and was like, oh, interesting take. And I moved on with my life. And I feel like we're moving towards that where it's like a hundred percent human, the articles like that. Here's my opinion on something, here's some thoughts about it, end. And it's not 2,000 words uh of a preamble that at the end is really just like, oh, and by the way, you should buy my product. And I'm curious to see how that works out.

SPEAKER_01

Yeah, interesting. I have a handful of posts like that, probably a good amount of posts like that, actually. Yeah. Um, but it's okay, so my target is to to for to to write my blog posts and then post them to the Ruby subreddit. Um, because that is that is where they can become visible and get traffic. And I know that Peter Cooper looks at the Ruby subreddit to get his content for Ruby Weekly, and so that often gives me a boost. Um and so when I start to write a blog post, I'm like, okay, what can I write that will be sufficiently relevant to Ruby that I can post to the Ruby subreddit and not get yelled at by the moderators and stuff like that. Yeah.

unknown

Yeah.

SPEAKER_01

And it is it's hard. Because most of the most of the thoughts I have are like technology agnostic principles. Right. And so I I I feel like I almost have to uh do something contrived in order to make it relevant to Ruby or Rails or whatever. That's that's part of my friction.

SPEAKER_02

I think that a lot of that comes also down to what your goal of those content pieces is, and being more explicit with yourself about is this a blog post to raise folks' awareness and become more comfortable with Jason? And maybe that leads to trusting him more, and then in the future I will hire him as a consultant or an advisor, or is this like I'm trying to build my audience? Or is this I'm trying to sell and become make folks aware of my product? And those are very different goals, and I know I struggle with this a lot. It's like I have an article and I'm like, okay, I want this to bring in clients, but also make people aware of this product and also trust me. And it's like, if I try to do all of those, the article flops. But if I try to just like focus on one, or or at least keep my guardrails up, that's like the point of this article is to just build some trust around my name. There's no CTAs, there's no like links anywhere, it's just like here's what I'm thinking, maybe someone will read this and resonate with it. Those are the articles that I have the most fun writing, and those are the articles that usually end up doing like the rounds more so than the ones where I have a specific ask in them.

SPEAKER_01

Yeah, for me it's a hundred percent for Saturn CI. Um, and I don't need anything terribly specific out of it, other than people to land on the site and look up at the URL and see SaturnCI.com and maybe be like, oh, what's what's this website? What's this thing all about? Yeah, that's all I'm shooting for. It's a pretty low bar. Um yeah, and a big part of it is just attention, spending time and attention on the thing and not letting yourself get distracted by again novelty, just making yourself focus and do the thing. Mm-hmm. Yeah.

SPEAKER_02

How uh how is Saturn CI going? Like, are you you have you have folks that are using it, folks that are paying for it and stuff? Like where where are you in that journey? I have a folk who's paying for it.

SPEAKER_01

Nice. Um, yeah, and then another so that is a solo developer, um, and then I have a an actual business um that I used to, I mean, not to not to make it I I don't want to say that this paying customer is not an actual business. Um but I have like a bigger, more established, uh older business um getting onboard onboarded onto it also. It's a company I used to work for. Um and it's also, at least in this particular case, an extremely long sales cycle. It's been in the works for I don't know, four or five, six months, something like that at this point. And it's kind of a high switching cost and all that stuff. Oh yeah. So that's that's taking a long time. Um, and then in parallel to that, I'm just talking with as many people as I can and trying to get people to to um try it out, and I'm doing demos for people and stuff like that. Um so yeah, it's going about as I was gonna say as well as one could hope. It's I could hope for a lot more, um, but it's going decent it as decent as I could reasonably expect, maybe is the way to put it.

SPEAKER_02

Yeah, and you're not relying on that to be your sole source of income to support. Absolutely not. Yeah. So there's like less pressure to to make that sale and then beg someone for money and stuff when you're doing your your your your main revenue stream outside of it.

SPEAKER_01

Right. I've mentioned many times that one of my principles is don't bet more than you can afford to lose, because I've done that before. But in this case, there's no time pressure other than the like psychological time pressure that I choose to impose on myself. Right, right.

SPEAKER_02

Yeah, that makes sense. I feel like with folks getting less and less or more and more uh disenfranchised with GitHub in general, uh having an alternative for running actions and CI and stuff uh is more and more appealing to people. Um it's the switching cost that I imagine is probably the

Personal Brand And Product Identity

SPEAKER_02

hardest part of all of it for potential customers.

SPEAKER_01

Yeah, yeah, and there's kind of an aspirationslash intention that I have of gaining sort of a critical mass, at least in the Ruby community. Because I feel like you've done that. Like in in general, in the Ruby community, say you if if you say to somebody like, hey, who's the hot wire native guy? They're gonna be like Joe Masolotti, duh. Like a lot of people know that. Um, and even if they say, like, hey, who's the Rails testing guy? They'll they'll say me. Um but what I don't have yet is uh Saturn CI having the recognition like that. Like I'm curious, uh, if if I ask you, Joe, um what's the like prominent Rails uh admin panel app that's been like do you do you know which one I'm talking about?

SPEAKER_02

Yeah, like Avo and Yeah, yeah, exactly. Yeah, yeah.

SPEAKER_01

So Adrian has done a a great job of like getting that critical awareness of Avo in the in the Rails community, and so I feel like that is something really good to aspire to, to have that it it's kind of like a binary thing, like either you have it or you don't, almost. You could view it either way, but yeah, I feel like that's something worth having. I agree.

SPEAKER_02

Uh I am cautious about that in general. Um, and I'll give you two anecdotes here. I am known as the Hotwire Native guy right now, which has been great for my branding and positioning as I'm doing Hotwire Native projects. I am starting to level up from that and trying to be like the mobile app guy in the Rails ecosystem. And I'm slowly starting to release, you know, more high-level content, more around mobile apps, less around Hotwire Native specifically. Hotwire Native is still a tool that I will reach for, but like if your company wants to do React Native, great, I can do React Native. I'm not gonna say no to it just because it's not hotwire native, right? And breaking out of that mold, I know will be challenging and is already starting to be challenging. What I so that's just like one thing that has been interesting for me. What I caution you in is if you're trying to change like Jason Sweat's byline, right? Which is essentially, you know, the Rails testing guy to be the Saturn CI guy, you better be confident that Saturn CI is going to be what is bringing you the most revenue and going to be the core of your business. Like, if you lose the the test, the Rails testing guy, and you are the Saturn CI guy, but Saturn CI is bringing you in 2K a month, and you no longer are getting consulting gigs or like getting job offers that you want because you're no longer known as the Rails testing guy, that is scary to me. Like I feel unc I feel anxious about that for you. And it's something it's so it resonates so in like my core because I'm always struggling with consulting versus products. And consulting pays the bills, but products are so fun and they energize me and they bring me so much joy. And how do I balance like what do I share versus who I am versus how I make money in the world? Um so that I I that's a little bit of a ramble, but like, do you do do you get what I'm saying there? Am I getting my important thing?

SPEAKER_01

Absolutely. Yeah. Well, luckily, you know, you and I haven't talked in a little while, so you might not be aware. I I sold my soul and I now have a job at a big company. And so I I don't need to worry about consulting anymore or being perceived as the Rails testing guy or anything like that.

SPEAKER_02

But right now, like that's just right now, and you've had how many years of of building that persona up that is it is like just hand in hand with with your name? And you know, jobs are great, but they don't last forever. And what if you do want to move back into consulting? And now you're like, you're only not only, but like Saturn CI is what you're not. You know, it's just like I always look at careers as a very long-term game. Uh, like maybe I get a full-time job next year for a little while, maybe I continue to do consulting, maybe I go back to it, but um jobs are easier to change than it is around like your whole persona online, I think.

SPEAKER_01

Very good point. Yeah, and that's another question of like if you have a product, to what degree do you want to attach your name to that and have those two things be kind of synonymous versus like getting the name of the product out there and you don't really worry about whether your name's so connected to it or not? I I think it's kind of inevitable. Like, yeah, I you know, I'm just guessing, but who knows if Adrian Marin like uh consciously chose to like have his name out there, Adrian Marin, rather than just trying to get Avo out there just because it happens to be Adrian giving the talks at conferences and stuff like that, like naturally we're gonna be like, oh yeah, Adrian. Um, so maybe it comes kind of comes with the territory or whether whether that's your intention or not. Mm-hmm.

SPEAKER_02

Yeah, it's a tough one, and it's one of those existential things where it's like when it's tied to your identity, even if you pretend that it's only your work identity, I still feel that identity when I'm not working and when I'm out or like at non-tech meetups, it's like, well, what do you do? Well, oh, I'm the hot wire native guy in the Rails community, and they're like, Well, what the hell does that mean? It's because I have like that is my identity, even if it is only supposed to be my career identity. So I don't know where I don't know like what the point is of that, but it's just it's a it's a it's hard, it's easy to conflate the two, I guess.

SPEAKER_01

Yeah, yeah, and for me it's it's kind of hard to decide what I want my identity to be. I've I've been working on my next book for a long time now. I'm I'm now calling it uh software design from first principles, and it's gonna have nothing to do with Ruby or Rails. And it's like, where does that fit into everything? Uh maybe it doesn't, but maybe I don't get to pick, you know? Maybe that that goes out there and if that book, well, if if the book is not successful, then who cares? Because it's not gonna change anything. But if it takes off, then it's like, oh, now people know me primarily for this book. I didn't exactly pick that, but okay.

SPEAKER_02

Yeah, letting the the the masses decide who you are versus like setting in stone for yourself. I I think it's always a mix of both. I really do. I don't think you can have it all one way or the other. Like I think that you're you want to be the Saturn CI guy. Well, the your audience has to uh agree with that. Like I'm trying to be the mobile app guy, like maybe I'll always be known as the Hot Wire Native Guy, no matter how much I try. It's always gonna be a push and pull of those identity things. Like it's it's it's culture, right? It's not yeah, you can have it in your byline, but it's really the culture of what people reference you and call you and think about you when they when they when you hear your name.

SPEAKER_01

Um unfortunately, we're just about out of time. I want to make sure to mention one other

RubyConf CFP And Where To Find Joe

SPEAKER_01

thing first. Um, RubyConf 2026 is happening July uh 14th through 16th. I should know these dates. I'm the co-chair of the uh RubyConf 2026. Uh it's happening in July in Las Vegas. Um I don't know if you're thinking about going, Joe, but I I I hope so. And by the way, our CFP has just recently opened. Um and so, dear listener, if you're interested in uh submitting a proposal, Joe, if you're interested in submitting a proposal, our CFP is open now. Um, but in any case, I hope, Joe, that we can hang out at a conference in person sometime soon. Um before we go, anything you want to share with people in terms of links and stuff like that?

SPEAKER_02

Uh yeah, I first off, I I will be submitting a proposal. I'm very excited to make it down to Vegas. I'm in Portland, Oregon, so it's cool to have another West Coast conference. Um and I'll be submitting something in the you know, mobile app, Rails, Ruby space, still kind of figuring out what that's gonna be, um, if it's hotwire native or if it's adjacent or something. Um, so I'll definitely be submitting something soon. And in terms of links, uh, I have everything on masilotti.com. I got my newsletter, my podcast, uh, the hotwire native stuff, my book, all the products we talked about. That's all there, and um that's the best place to reach me.

SPEAKER_01

Excellent. Uh well, Joe, we'll put that stuff in the show notes, and thanks so much for coming on the show. Yeah, thanks for having me, Jason. Good uh fun talk as always.