The Ruby AI Podcast
The Ruby AI Podcast explores the intersection of Ruby programming and artificial intelligence, featuring expert discussions, innovative projects, and practical insights. Join us as we interview industry leaders and developers to uncover how Ruby is shaping the future of AI.
The Ruby AI Podcast
XORuby: Democratizing Ruby Conferences for Everyone
Use Left/Right to seek, Home/End to jump to start or end. Hold shift to jump forward or backward.
Quietly, a new kind of conference is reshaping how the Ruby community gathers, and it started with one person's frustration with expensive, sponsor-dependent events. Jim Remsik joined Valentino Stoll and Joe Leo to talk about XORuby, the decentralized single-day conference format he created after organizing Madison Ruby for twelve years. What makes XORuby genuinely different is its commitment to accessibility. Tickets are capped at $100, every attendee receives a $25 lunch voucher for equal participation (so no one gets left out of the social side), and financial risk is spread across six cities rather than concentrated in one big event. Jim even canceled a Salt Lake City event when community interest wasn't there, choosing quality over numbers. Can a deliberately small conference actually build stronger community than a massive one? Jim seems to think so, and the results are compelling. Upcoming events are scheduled in Toronto, Montreal, and New York City on consecutive Saturdays in October, bringing Ruby to communities that have long been underserved. The conversation also ventures into Rails controversies, AI-augmented development workflows, and what it means to vote with your wallet when open source politics get complicated. Tune in for a rich, honest conversation about community, technology, and building something that actually lasts.
Hey everybody, welcome to another episode of the Ruby AI Podcast.
SPEAKER_00I am one of your hosts today, Valentino Stoll. And hey, and I'm with the other guy. I'm Joe Leo. And I am really excited, Valentino. I'm excited because it feels like we're all back. We're all back to school. We're all back to work. And I've got some renewed energy for the podcast. We're going every week. And to sort of help us kick that off, this fall, we have none other than Jim Remsick. Jim, welcome to the show. Thank you so much for having me. So, Jim, we were talking about this just before we aired. I'm kind of fascinated by XORuby. And I'm fascinated on a number of fronts. One is because it's such a cool idea, and it is also very simple, so I'm kind of surprised that it hasn't been done before. I'm also fascinated from the organizer standpoint because I don't actually know how you have the stamina to do this. So I kind of want to learn about that. And I'm also interested because of the city choices and the venue choices, I think they're kind of fascinating to me, and they really seem to generate so much joy and positivity. So why don't we start there? Why don't you tell us a little bit about XORuby and how you got it off the ground?
SPEAKER_02So I have been going to conferences since I started my professional Ruby career just before I went to a SharePoint event in Vegas, which was not what I want to do with my life, but to each of their own. And my first day as a professional Rubyist was at RubyConf in Charlotte in 2007. It was in November, and that's when I joined HashRacket back in the day. What happened shortly thereafter was I submitted a talk to it wasn't Scottish Ruby yet? Scotland on Rails, I think was the original conference. Got accepted and had never written a talk before, had never spoken before, but I wanted to go to Scotland. That's a good reason. Really enjoyed the experience, but what happened like immediately was I saw, and I've told this story a few times, and I haven't had uh Alan or Grant or Paul reach out and tell me to stop telling it. So, you know, we showed up for registration and just instant line backed up, so many people trying to get registered. And I jumped behind the table and I said, How can I help? And they're like, People need their shirts in their size, you know, when they come over here, they're gonna give you a ticket, handout t-shirts. And so did that. And not that long after we started planning Madison Ruby, we ran, oh my goodness, we ran Madison Ruby for 12 years and it's not entirely dead yet. But I've been putting all my focus on XO. So again, I've been to a lot of conferences over the years. I've seen really good ones, I've seen less good ones, I've seen big ones, I've seen small ones. The ones that I've always really loved going to were smaller rooms. And the reason being you get to really talk to and interact with everybody in that room. And so if there's a founder there or if there's somebody who's just coming out of a boot camp, you're just as likely to talk to them. And that's really the format that we were trying to set up for XO. But also, we've heard feedback, I've listened to feedback from lots and lots and lots of people about they love the big conferences, but they're expensive, they have to be by design. You're getting all these people together, all of those people need to get there, they need to stay for a few days in order to make it worthwhile. And so I wanted to, especially coming out of the pandemic or on this side of COVID, wanted to de-risk, and so we wanted to make it cheaper. Could we do a conference that was a hundred dollar ticket? What would that look like? And that meant scoping it down to one day, making it largely local so that we don't have to pay for speakers to fly in. We still have had people who have traveled, but we try to be up front and tell them that you're not going to get compensation for it. It's just not how the conference is built, it's built to be low risk as much as possible. And honestly, we do the conference for $100, and for lunch, we give everybody $25 back and send them out into the local community to go to restaurants to get lunch, which is you know another facet of the conference that we set up. We try to make it as inclusive as possible. And so it doesn't matter if you got a free ticket or if you're volunteering, if you're a sponsor or whatever, everybody gets $25 so that everybody has a level set for what they're gonna do for lunch so that everybody can participate in that social activity of like we're gonna go out for an hour, hour and a half, two hours, I think in some cities, and go eat lunch together.
SPEAKER_00Yeah, I really like that. So it means really only paying 75 bucks, right? At the most.
SPEAKER_02Yeah, if you bring a sack lunch, you get 25 bucks back.
SPEAKER_00Yeah, that's awesome. I liked this, what you said about there being local speakers and trying to find sort of inexpensive ways to get it done. I remember right before COVID, I was one of the people running Goruko for a number of years. And, you know, just like a lot of conferences, ours was getting too expensive and so dependent on either many sponsors or several deep pocketed sponsors that it really became quite risky. And I know just from reading your post, your first one lost a few thousand dollars, and we were, you know, we were up against looking at tens of thousands of dollars in losses in one year, and it was just like, this is terrifying. We want to we want to have a good conference with great people. We're all just Ruby engineers doing this in our spare time, and we want it to be fun, but we don't want to put that much risk into it. And it sounds like you had the same idea and went a different way about de-risking.
SPEAKER_02Yeah, at the end of the day, it's still a $75,000 risk to me. It's just spread across six cities, and we set up our venues as much so that we go into cities where we don't necessarily have relationships with a bunch of people, and so that happened in Salt Lake City. We failed, we did not do a conference in Salt Lake City. It's not that we didn't have local people, it's not that we didn't have some support. The venue actually sponsored us and was going to be a really, really cheap venue and still really great. We couldn't find the community of people to attend that would make it make sense, and so it was not my favorite day when I canceled that conference, but at the same time, I don't want to put on something where 10 people show up and be like, this event could have been a YouTube playlist, right? So try to keep up the quality as much as possible. And a big part of what we're trying to do is bring people together in physical space and get them interacting with one another. I think that's really where the value I've gotten through conferences in the past have been.
SPEAKER_01I remember my first Rails conf was in Baltimore, and it was just like massive, so many people, and like the most valuable part of it was the Unconference, the hallway tracks, and like everybody organizing just a small room where they wanted to talk about a very specific thing, and then you're like there talking with people who are working on stuff that you're working on. It makes so much more sense. And the North Carolina meetup that Jeremy uh has started putting on the Blue Ridge, Blue Ridge. I remember when that first came out and the small venue and people love it, and it makes a lot of sense having these smaller venues. So I guess doing a lot of cities, are you like Rails on tour?
SPEAKER_02Kind of I would say I'm Ruby on a tour, right? Like the emphasis has been when I plan a leg, I try to go to a city that has a community, and then I try to go far enough away that most people wouldn't drive that far, but it's easy enough for me to cover over the course of a couple of days. My geography was really bad last year, and so I wound up Portland, San Diego, Austin. Did you know it takes 22 hours to drive from San Diego to Austin? I didn't know, but I know now, and so I try to go far enough away that the attendees wouldn't follow, and so we can do for another city nearby what we just did for that. So our October leg is Toronto, New York, and Montreal. Two Canadian cities. We've been very northern heavy this fall, and that is, you know, again, listening to people. I've a lot of Canadian Rubyists are like, man, I would love to come to a Ruby conference, but there's none happening in Canada, and I can't go to the US right now, which I understand and can appreciate. So listening to the audience and going to where they want things to happen. And Toronto's a really great city, Montreal is a great city, and so again, that's all the risking, going where the people are already that say, Hey, have you ever thought about coming here? And my dream is for us to get some small user group in Oklahoma or or wherever to say, we've got an audience here. Would you consider coming and doing something here? Absolutely. That is the dream to take this to places normally don't get conferences and give them their event. And then ideally, we'll eventually have people say, Hey, if I didn't have to drive 9,000 miles, this looks like something that I could do. And could you give me some instructions or some help in getting this set up so that we could just do this again next year without you? Yeah, that's awesome. That would be amazing.
SPEAKER_01So if I wanted to join still for one of these October legs, uh tickets are still on sale.
SPEAKER_02Absolutely. Uh x ruby.com and slash events again, Toronto. That's how you know I'm not Canadian. And then New York City and Montreal. So that's October 3rd, October 10th, October 17th. They're three Saturdays in a row.
SPEAKER_00Okay. I might go to one of these. It sounds fun. Yeah, Valentino is really feeling the FOMO because I've been to RubyConf and I'm going to a conference in a couple of weeks, and he's just like, Come on, man, I gotta get out there. Are you going to Rocky Mountain Ruby or SF Ruby? Me, no. I am going to the hotly debated Rails World the week after next. And actually, I wanted to talk to you a little bit about that, Jim, because this is an interesting time, isn't it? For Rails World to even be happening. We have Moss Cap, which is Lucas Doman's latest, or not his latest, but the latest attempt to fork Rails and get everybody off of it and using something else. And some new reasons to be polarized or to dislike DHH have come out lately. Even most recently, this is not from a purely technical standpoint. Our friend of the show, Matt Stolt, has uh talked about the revival of View Component and gave this long, long dissertation about how Rails has lost its way from an architectural standpoint on the front end. And kind of amid all of that, you know, here comes Rails World for its first US stop. So I'm gonna be down there and I'll have a ticket, and I'm curious. It sounds like you'll be there without a ticket, but you'll be there for the community.
SPEAKER_02Yeah, there's lots of folks in Austin that I would love to hang out with and trying to take advantage of the density of people that I know and and whatnot. And so we're probably gonna do a small exorby get together while I'm down there. Oh, cool. And the goal is just like giving folks a place to gather and have a small gathering of folks. What I would love for that thing to be is a place where we talk about what's lacking in the community and what could we have and what is the work that we need to do in order to get there and then to write that up and publish it after that event in such a way that I know that there's lots of energy and it has never been easier to make things happen than it is today with AI. And so what is the community lacking and what could we do about it? I don't know that a fork of Rails is the right way to go. I just don't know. I'm not an expert, I've only been doing it for 20 years. I've seen other languages try to adopt Rails patterns and things like that, but it rarely goes well. But there's just so much investment and so much already invested in the the ecosystem that I think you've got to do something else. And you could look at things like hanami as a great alternative, but there is a a learning curve and cost in order to get up and running with that. Not to say that they've done anything wrong. I just I have to go and learn that. And we're looking at it now from the perspective of maybe we can uh augment ourselves with AI a little bit and get going faster in that direction. But it's super hard to not continue to suckle at the rails teeth because it is something that I've invested a lot of my life into. I just wish that I had warm fuzzies using it that I I used to.
SPEAKER_00Yeah, I understand. I had those as well. Now, if I knew that in advance that you'd be doing an exogathering and that Ariel would be having a pool party, I might have just bought the plane ticket to come down and skipped Railsworld. I am also conflicted because I love conferences big and small, so I do like the big conferences. I've got friends that are speaking there, and we have some folks that are speaking there that are gonna be on the show over the next few weeks. So, you know, and I so I have all of that as well. But the community conversations and the existential questions still need to be asked. A lot of them were being asked at RubyConf, sort of openly, and you know, not being answered immediately, which is probably appropriate. And it sounds like you're planning on sort of continuing that.
SPEAKER_02Yeah, I mean, what I'm doing in in Austin, I don't want that to be the focus of like big man bad. What I really care about is working towards what we could have and how do we get there. In our pre-show conference, uh you were talking about how you know you bought a ticket, so you're part of the problem or your or you're I'm part of the problem. Yeah. And I was an MC two years ago in Toronto for Railsworld. Oh yeah, right. We've all been involved at various levels for a long time. The work that I've done helping to put on RailsConf and whatnot. At some point, there's a line where you gotta make a decision where you're gonna support and whatnot. And I found mine, I'm not trying to judge other folks, but it's also again, it's super hard because a lot of my business and my employees have relied on working in this industry with this software, and we can retool, we can go elsewhere, but it's gonna take time and and effort. So what do you do in the meantime? Do you wean yourself off of rails? Do you stop giving money to direct consequences? Do you we just saw that OnePassword and DigitalOcean gave a bunch of money to uh Omarchi? We're long-term OnePassword customers, and we're looking at Bitwarden now and trying to vote with our feet and our wallets as much as possible.
SPEAKER_00But it sounds like you want to vote with your feet and your wallet before you vote with the technological choices and the porting and all the other stuff that is gonna cost more time and money.
SPEAKER_02It's direct action on our part. It's what we can do right now while we work out the strategic longer-term things. Yeah. It's not an easy situation to be in for a lot of us.
SPEAKER_00Yeah, I think you're right about that. Let me say this. There is some vagueness, right? When we think about open source for Rails, there is one person who is credited as authoring Rails, right? And that's DH, and he still oversees all of it. Of course, thousands of people have helped to build Rails and have, you know, made it what it becomes today. And the fact that it's open source, maybe it gives people, you know, maybe it even gives me some sort of cognitive dissonance or something where it's like, well, but who is making money off of this and how? The problem is that when when a conference comes along like Railsworld, you kind of know exactly how that works. You know, I mean it becomes pretty clear.
SPEAKER_02As a conference organizer, I would just point out Railsworld is put on by the Rails Foundation, which has DHH as its head. Yeah. X Ruby is largely if people don't show up, that's coming out of my pocket. And so I would encourage people to vote with their feet and their money and put their support into the things that they can change right now. But also, like, I want to look towards the future. Like, what do we want as a community? You're absolutely right that a lot of people have done open source work committing to Rails, etc. It's probably 15 years old at this point, but I I do have a commit on there where I I was working with Tim Pope. Do I feel good about that?
SPEAKER_00There's Vim in Rails now.
SPEAKER_02Sorry, that's not high.
SPEAKER_00I think Tim Pope, and I just think there's something is involved.
SPEAKER_02I learned Vim by pairing with T-Pope, and I would hope that we shared some positive traits back and forth. But there are lots of people who have been paid to work on Rails. There are lots of people who have not been paid to work on Rails, and a lot of it comes down to does it really matter if you're using open source software? There is a certain amount of like thought leader, etc., that gets attributed to DHH that maybe other folks had a hand in or whatnot. But I've tried to go as much to again just to direct action, is the money that's leaving my pocket right now going directly into somebody who I disagree with's pocket? So I've had conversations with friends. I was like, hey, I see you're still rocking a hey.com email address. That suggests something to me. You should just know that that's what it's communicating these days, is that I'm funding this. And I've had a few friends that were that felt challenged by that conversation that ultimately they're like, you know, I thought about it, you're not wrong. And I'm not saying if you have a hey.com email address that you're an evil person. That's not what I'm saying. I'm just saying we have the ability to make choices about what we want the world to look like. And that's what I'm choosing to do is to put my money and put myself in places where I can make a better space for people. Thanks for that, Jim. I really appreciate it.
SPEAKER_01That's kind of what AI enables too, right? It's like democratization of choice in a way. Although you gotta use one of the big players still in this moment. Uh, but hopefully that changes, right?
SPEAKER_00I think it is changing. And actually, Jim actually told me a story about this in Ruby Central. You have uh you had one of the open source LLMs running on your machine, right? That was helping you uh with a client at that time. Sorry, at RubyConf, not Ruby Central.
SPEAKER_02Yeah. We've been playing around with open weight stuff for a little while at Flagrant. You know, we had a pretty big win with a client. You know, we wound up accelerating uh we came into a project and um they said, hey, we've got this thing that's close to market. All you need to do is these 600 cards and we'll be done. So close, 90% of the way there. Exactly. And so we did with a small team execute uh 700 cards and 300 of them not being the cards that they had originally gave us because they didn't know how far away they were. So we identify new stuff as we went. But we were able to do that over the course of 10 weeks with uh not one person but a small team. That's not something that we would have been able to do last year, for example. And so does it democratize? I kind of feel like what it does is it uh what it could do is it could democratize the ability to spin up larger projects for an individual. It can also uh take a smaller, well-funded uh group and take their viewpoints and get them out there faster. And so it's a double-edged sword for sure. So many people that I know that have viewpoints that I share are anti-AI, and I just wonder whether that's serving them as well as they think it is. Especially with the open weight models and stuff, you can get away from you know big data center contributions and things like that.
SPEAKER_01Yeah, you make a great point. I mean, I'm looking forward to the community shared compute, taking the old CERN distributed compute networks, right? And like democratizing the actual AI compute in your neighborhood. And I'm getting on board with that idea more where your local communities start to drive the AI that that you want to use and share, right? Even Ruby communities, we could do that. I'm totally with you. Yeah, I mean that would be the true democratization, uh, which I hope we get there before they stamp all that out.
SPEAKER_02Yeah, it's not really clustering, but we've been making available our machines to the rest of the team. You know, we've got some people that have bigger iron than others, and so if they're running an OLAMA model and it's available on the tail scale, maybe I'll use their machine instead of et cetera.
SPEAKER_01So that's cool. That's interesting. What do you use for that? I'm curious. Anything open source?
SPEAKER_02Well, there's all of it. So open weight models atop of OLAMA, and then we use Tail Scale, which is not open source, but you could use WireGuard the same way. It makes it look like you're on the same intranet, and so that traffic is allowed, even though we're not exposing it to the world.
SPEAKER_01Interesting. I wonder if I love that idea, if VLLM could distribute that in a similar way. I'm gonna have to play with that. What do you like about that kind of setup for your team? Do you find people like leaning more into like these open models? Or is there still like kind of a fallback resiliency to people clinging to bigger ones that just can do more at once? Where do you find your team kind of like falling into the bucketing there?
SPEAKER_02I think that in large part we're still using a lot of claud. Like it is hard to beat a frontier model for code reasoning and whatnot, but we're able to set up smaller jobs that don't burn our cloud resources and allows us to pick and choose our battles. This is a simple thing. We've got a client that when we first started on this project earlier this year, we were intending to just have API calls out to Claude that we're able to the logic that ultimately was needed for their application was small enough that we could solve it with an open weight model and uh deploy that with Run Pod. And so it'll be going against uh RunPod in a serverless configuration so that they'll only get charged for what they use. And I think that's the thing is. A lot of people think that the only way to be productive is with a frontier model, Claude, ChatGPT, etc. But once you've realized the decisions that actually need to be made, sometimes they're a lot smaller than that iron requires.
SPEAKER_01Yeah, 100%. You know, what I've been finding too is you know, once you get a task that you know you're gonna do all the time, like that's fine tuning. Like the frontier models are great at fine-tuning models, which is funny, because then you don't have to use them anymore for that task.
SPEAKER_02Absolutely. I've been playing in the evenings with a little like dungeon crawler thing, just uh mostly what it's doing is it is allowing me to exercise all these things and say, here's what I want. What do I have to do in order to get there? It's a breakable toy, nobody else is using it, but it allows me to play around with image generation and see how awesome and awful that can be. You know, I've been generating ambient sound and for the most part working off of open weight models. So results haven't always been great, but you know what? You don't need all the pixels in order to you just need something to spark your imagination. And so it's gotten me pretty far that way.
SPEAKER_01You know, I've heard some things about how like you know, your consultancy has like kind of moved to a more design heavy, maybe than dev realm. I guess where does the AI fit into that landscape or like your operational landscape? Big model or not, where are the tasks really emerging where you're just handing it off?
SPEAKER_02Inspired by Landon Gray, I developed a AI chief of staff just that brings things to the forefront, make sure that I don't drop things. Unfortunately, I need to remind it to run every day. So that's the next task is to make it autonomous so that, or at least like set it up on a cron job so that I don't forget to do that. And there's been a lot of like where we're largely landing is research and operations things that are our repeated tasks that just need to happen. We're not choosing to generate from whole cloth like social media stuff. We have designers that care about how things look. I think that is where we've seen the least gain is with design. We just we've got a client right now that has been frustrated with the pace of the illustrations that we're doing on a project, and they're trying to solve it by just having one-shot illustrations from Claude. And you know, we're getting some of the things that you might expect, like, hey, uh they're holding the phone, but they still have two arms at their side, which are all solvable things these days with whichever image generator you're using. And the reasons that the frustrations have come up have been largely process-based, and we're still having to consult and tell people if you want success, here's the process that needs to happen in order to get there. It's more interactions with humans, not less, because AI will give you something every time you ask. It's not necessarily going to be correct, could be amazing, but chances are you're gonna have to make a prompt and say, that's good, it's not quite exactly what I wanted. Here's a refinement, here's a refinement. And if you can get to a place where that's producing predictable results, that's fantastic. If you're trying to one-shot every illustration for an entire UI, probably you're gonna have a bad time.
SPEAKER_00Yeah, totally. You know, you've been writing and talking a lot, from what I could tell, about workflows, processes, and even here you've been talking about this, and it's interesting to me because it sounds so first edition of XP Explained, where it's like, hey, we gotta talk a lot and we gotta iterate a lot. In some ways, none of this is new, but in other ways, I like you, I can relate. I feel I find myself also looking for ways to explain the process. How do you think that has changed your role as a an owner of a consultancy? And how do you think it's changed the roles of your engineers?
SPEAKER_02What I am noticing is that every time I see a new tool, I understand that I'm gonna be impacted by this just like I was impacted by blockchain, just like I was impacted by NFTs and every other flash in the pan technology that has come out. But also, like the important things, I am here because I paid attention to Ruby and Rails back in the day, right? And so our customers are being sold a bill of goods that is you're gonna be able to have fewer employees because AI is gonna do all this work for you, and we're having to disabuse them of that knowledge usually and say it can, but it takes a lot of work. That project where we did 700 cards in 10 weeks, we spent the first two weeks just setting up all of the infrastructure in the project in order to make sure that we got consistent results throughout. It was frustrating for the customer. They're like, hey, we're one-fifth of the way through this project and you haven't delivered a single card. I will talk through what we delivered for you, but there's a lot here, it's just it's not visible to you as a consumer of the end software. We've had to put on our consultant hat a lot more and educate our customers more uh in ways that I think that we lost a little bit over the years because people broadly understood how software was made, they might not always agree, and now things are shifting. And I was talking to a newer developer not that long ago who had concerns about like, should I still be a developer? Is this still a field that I should be in? And with each of these shifts, you know, you could measure how much impact that they've had on the community. But if you use the analogy of an earthquake, even after an earthquake, most of the people are still there, most of the infrastructure is still there. There are some things that have been destroyed and have to be rebuilt, but you're not completely remaking the society there. And so that's my my view on our industry is there's gonna be work for a long time because we're not gonna be just AIs talking to AIs. At the end of the day, we're building things for people. We might build more, and we might build some things that are just systems talking to systems, but that's not the end of the story.
SPEAKER_00A few things stood out to me in what you said. First, that you know, you have to spend some time talking to the clients about how you might work for a couple of weeks and not have anything to show for it, which you know, for a long time, even the early years of Rails, that was true. You know, before Heroku, it used to take you a couple of weeks to set up even the infrastructure to just deploy. And so nobody saw anything unless you came to the office and looked at it on my computer. And so, you know, you had to explain that and you had to talk people through that before, during, and after because it's uh an anxiety-producing time, and it's right at the beginning of the project when you're trying to build up trust with this client that presumably doesn't know you very well yet. And so that can be challenging. But of course, so it's like what's old is new again, because that timeline shrunk and shrunk and shrunk as uh all of these tools got better and better, and now it's expanding a little bit because hey, this infrastructure actually is important. So when you say it took you two weeks, I mean, for me and Valentino, it's it's of course everybody would be like, yes, of course, it's gonna take you a couple of weeks to set up that infrastructure, unless you're just YOLOing everything and it's not gonna be very good. And you know, and I think the other thing that stood out to me from what you said is that there's gotta be some more consulting on your end, and there's gotta be some more discussions and not fewer, which really you need engineers and you need kind of good communicators, um, which not all engineers are. So then the person who comes to you and asks, should I even be a software engineer anymore? To me, that answer is yes. But well, I mean, it's yes if you want it to be in the beginning to begin with, but you should also expect that job to be different than what you might have expected.
SPEAKER_02Being a good communicator is being a good software developer. End of story. We could make anything happen. So it's trying to figure out what exactly does the customer need, not what did they ask for, but what do they need, and what is the thing that we could deliver within the resources that they have in order to make them successful? It sounds so simple, and there's so much work tied up in making those things happen.
SPEAKER_01Software used to be like writing, basically prose. You read a lot, you write a lot, and uh you can get away with just that. If you want to be more like salesy, you own maybe a consultancy, you interface more with the client, like you don't have to though. And I feel like what we're getting into is less of that of everybody having to interface, right, with the consumers. I think about that because like the alert of becoming a programmer used to be, well, I could just sit in the basement somewhere and be impacting people's lives or whatever they may think, but like you know, they wouldn't have to see another human for months at a time if they didn't want to. That's changing. I feel like there's becoming less of that possibility.
SPEAKER_02I think in a lot of ways, AI is contributing to like the compression of how long it takes to do stuff leads to okay, I've done three different versions. Which one do you like? Whether that's with your team, whether that's with a client, it compresses the amount of time that it takes to do research, that it takes to do an initial implementation, that it takes to give you a style. And so it means that you're coming back to the table more often. And you need more of your client's time. For a while there, we used to, all right, here's the direction that we're going. We'll talk to you next week once we've got something to show you, and then we'll meet again after that. And I think you're right. I think it's causing more conversations to happen more often, which is delightful for me because I like people. I'm not somebody who's able to get stuck in a basement and and not talk with people, but it is a way that the work is changing for sure.
SPEAKER_00Yeah, you are like me, Jim, and that's why we own consultancies because we don't mind getting out there and talking to people a lot. I'm curious for our listeners, diving back into the workflow itself, what does a great AI-assisted workflow for Ruby engineering look like? Where do those two weeks go, for example, in the beginning?
SPEAKER_02The consultant's answer is it depends. How are you looking to augment yourself? If you're looking to like have an MCP connected to Linear, for example, where it will go out and read the ticket and potentially do some research and spruce it up a little bit so that it's something that's actually workable, connecting with uh some sort of issue tracking system automatically, it is making sure that when you're working within your app, are you just trusting that when you say edit the coupon functionality to do this, is it just gonna find one thing named coupon and do that? Or are you gonna use like Graphica and search throughout the entire project to find all instances of coupons? Another you could put a vector search in there and say he said coupons, but I see this thing that's a discount. Is that related? And uh again, it depends, but I think that there's as much feeding agent files and whatnot and making sure that you're connected to uh MCP docs and your issue tracking system, all of those things play a role in it, but ultimately depends on how much you're trying to get done and what that space looks like. We have some customized tools that we work with occasionally that have their own MCP servers that Claude doesn't know about and wouldn't be able to play with the other wiring in uh Firefox or a Chrome MCP so that Claude could actually look at the results of what's been done and make an assessment. You know, it shouldn't be the final decider, but it should be able to determine whether or not there are errors on the page. I don't think it's anything uh earth-shattering, but uh if you haven't done it before, there's a long list of things that you could do. But if you take the average developer loop that you go through when you're building something, are my tests run, how does it look in a browser, how does it look in multiple browsers, and a lot of that can be automated to an extent that gives you the chance to see the final state and before you you know make a commit. We don't typically allow our agents to commit without us looking at it. We manually push all of our code, which some people may feel is is overkill, but at the end of the day, that's where we're putting our name on things.
SPEAKER_00So yeah, that's interesting. I uh two questions come to mind when you say that. The first is have you created a policy at Flagrant? Is that what everybody has agreed to? We will review our code and push manually.
SPEAKER_02So it's written into some agent files. I've been writing a lot of the agent files for our projects, and so it is in there, but I wouldn't call it a policy. And that is a place where we're still getting there. I'm probably the most pro AI. We've got a few people on the team that are deep in it, but some folks on the team are have held back a little bit. We're bringing them along, but it's educating them as much as there's any sort of um anti-AI stance. I think most people are just don't have experience with it yet. Maybe some healthy skepticism. Sure. I mean I have some healthy skepticism. I have issues with the training of all this stuff being done on stolen intellectual property and writing and whatnot, and the ethics of data centers, which has pushed me to the open weight model stuff as much as I can.
SPEAKER_00That doesn't strike me as skepticism over the efficacy of AI for assisting in development though.
SPEAKER_02Sure, you're correct. I think it is helpful, and how helpful is where I put my skepticism. I've seen more than one member of my team spin and spin and spin on something, and and you know, you take a step back and say, it looks like it's the solution would be this. Have you tried that? Yeah, I even thought about that, but Claude was going this way, like, but you're the decider.
SPEAKER_00Right. You are the decider. Yeah, that's good. Actually, I wanted to, I was looking at some of your recent posts. I wanted to dig into something because last week V and I were talking about some decisions by some open source maintainers to shut out community PRs, right? They're just like you can file issues, every PR is going to get automatically converted to an issue, and an agent's gonna take care of it, which was interesting to me. And you posted something recently, and you were just asking, hey, what projects are the best organized? And so I've got a question for you, which is sort of in the context of how things have changed for some projects in the advent of AI, and then probably for all, uh, with respect to there's just so much volume of PRs and issues being entered now for all open source projects. What does it look like to you for a project that is well run, quote unquote?
SPEAKER_02I think it's pretty simple. It just comes down to expectation settings. Does the project say do they have a policy that they've exposed? There are a lot of open source maintainers that have been struggling with just the weight of having to respond to all these one-shotted PRs that people are doing, thinking, oh, this is something that I could help. I think for the most part, they think that they're being helpful. They're just not taking into consideration the work that they're creating for other people because they haven't been that person, they they don't have that experience either. And I think it is expectation setting, good communication, it's really no different than running a good paid project, but you just oftentimes don't get paid for it, right? Like to take the conversation of expectations a a step further, I would say there's governance, right? Which comes in the mode of uh codes of conduct, comes in the form of having a an AI policy, having what is it that you can do to communicate if I interact with this project, how is my interaction going to be uh considered in order for me to be successful? If you're not doing that, then I think that uh you're probably going to wind up governing in the moment, and so therefore it's gonna be inconsistent, which is not a great place for people to be in either side of that. Uh I think that we're probably headed towards a place where governance becomes more important and is going to become easier with uh the ability for us to simplify creating code and systems, etc. So it's gonna be easier to make that stuff mechanical. The hard part is gonna be what do the interactions look like? What does success look like? What do consequences look like? And that way, it's still gonna be a lot of work because people are gonna people, but it should become easier and easier to say these are the policies of this project, and point to directly the interactions or actions that cause somebody to be successful or or not be successful.
SPEAKER_00Yeah, I think you're absolutely right with expectation setting. People can like or dislike a policy like, for example, not allowing outside PR contributions, but at least they know what it is, and then they can make a choice about whether or not they want to engage, right? If you don't like it, you could fork it, you could start your own, you could do a whole bunch of other things. You know, my position when we were talking about it last week was hey, open source developers can do whatever they want, it's open source. Uh, but I like your refinement on that answer, which is hey, if you want to be a good, if you want to have a well-organized or a good project or good standing, then you know, make it known what you're going to do and what you're not going to do. Um, and then try to stick to that.
SPEAKER_02That is really what it comes down to. I had a boss that chased me out of the building once that was very upset with me. Dare I say he was angry. He's actually the one that that shared this nugget with me. I've used ever since, but anger is a violation of expectation to the point that people are angry. There was likely some expectation that was held, whether it was accurate or not, that wasn't met. And in this case, you know, I've given my boss an ultimatum and he lived up to his end of the bargain and I still left. And so he was right to be angry. And if you don't set expectations, then they will be set implicitly, and that's going to lead to people to be angry. And it's understandable in human nature. It might not feel rational in the moment, but all that can be avoided just by letting people know what is expected and what is you know expected that you won't do. Yeah, I agree. I'm sorry that that sorry that happened to you. That's a tough way to learn that lesson. We're still friends. That was Are you really? Yeah, that's when I left to go join Hash Rocket. And I also got some positive change for my former co-workers.
SPEAKER_01So Yeah, that's a great point though. Expectations are high on my list as well. Like you say, if you if you don't set them, somebody else will.
SPEAKER_02We can cut this if you want, but I think that is what makes me want to communicate my values, and that's why I show up for Exoruby. That's why, you know, I'm choosing to use direct action to have an impact and communicate those things as well. Is there are as many people that agree with me probably as don't, and I'm not trying to create a situation where you have to be on one side or the other. I can have empathy for people on either side. I can have empathy for people who voted for our president who were sold a bill of goods that they're not gonna get ever. They're not gonna get, you know, a $5,000 check if the midterms come through. But they're being sold that. Whether or not they should expect that that's gonna happen is another question. But I know that eventually they will be angry when that expectation isn't met. And so just try to, especially now, I think more than ever, trying to put my values out there and live them and live up to the expectations that I set.
SPEAKER_00I appreciate that, Jim. We're not gonna cut it. We don't really cut things on this show. I mean, problem sure, maybe some of my ums and uhs are probably cut, but basically we want we want the raw truth from everybody.
SPEAKER_02I don't know that it gets more raw than that.
SPEAKER_00Yeah, I agree with you, and I think that taking a stand on something, but having empathy for the other side is a uh I think that's the kind of authenticity that people actually are craving, even if that's not what they may say. Right? I can say that I disagree with you, but we can still continue on as uh whether we're friends, whether we're co-workers or colleagues. So there's a lot to admire in that take, in that standpoint.
SPEAKER_01Yeah, I feel like the Rails community, Ruby community is very big now. It's so big where like this isn't really a division. People can join the things that matter most to them and be a part of those things and not devolve the entire community. I feel like we can have our kid and eat it too in a lot of ways because of the size of the community, thankfully. Personally, I don't see this as like an either-or situation, potentially. It all comes down to yourself, and if your personal like self like aligns with others, like you should be participating in that group. And it doesn't mean that you have no empathy for the other group or don't care about the other group, it's just you align more with the people that you align with, and uh that's where you're gonna spend your time. Like it can be as easy as that. And to your point, there's also some like monetary thing, right, attached to that in a work setting. And so that also is something you know, everybody can invest in what they want to invest, right? Kind of invests in GameStop, people are upset with him, and he still continues to invest in it, even though he has made a lot of money and maybe in nefarious ways. But at the same time, you know. It's easy to run. You don't have to participate in that. I call on GameStop stock. I never did. And I enjoyed the conversations that happened around it. It wasn't for me. And that was fine. Nobody called me up for that or was bothered by it. And I feel like we're kind of in a similar thing here. Like, why should anybody be bothered that you're doing what you're doing? You're doing great stuff and you're corralling a group of people that are like-minded. And it's pushing forward that vision and dream of like the things that you care about. Awesome. Keep doing that, please, because I'm gonna try and join the XO because I think it's a great group of people, and hopefully I see other people there. I might also join uh Rails World, but I don't get that much. So I think you won by local communization, uh, which I really appreciate and respect a lot.
SPEAKER_02So it feels like there's nuance in a lot of this conversation, and at the top of the conversation, a lot of the nuance goes away, right? And the crash out about not translating arguably racist stuff. I think what is true is that there's a lot of people who are not terminally online that just don't know a lot of what's happened in the community. But I would also push back and say that it feels like the community is dispersed, but I'm not sure it's actually larger today than it was a few years ago. It does not feel like the Rails community is growing at the moment, and it could be based on a number of things. That's not to say that there aren't a number of people, there certainly are. There should be about a thousand of them in at Rails World this year. But that conference that you went to in Baltimore, there were more than a thousand people there. That was two or three thousand. And so what is causing that decline? Is it just that there's less money in software these days because there is? Or is it something greater? Again, I I'm not gonna ascribe any particular reason to that, but because there's too many uh factors.
SPEAKER_00But I could probably take a few guesses. Do you think that it's the same for the Ruby community as the Rails community? They're both stagnant or declining? That's a great question.
SPEAKER_02And I think the answer is probably yes, because there's not a ton of alternative frameworks that allow people to invest in the Ruby community the way that Rails does today. We talked about hanami earlier, there are options, but there aren't any that are drawing businesses the way that Rails did in its heyday. And so with Exo in particular, I'm trying to draw new people, you know, new voices. We work with code schools, universities, etc. If you are a student or even if you're just somebody who's on the lookout for your next opportunity, if the financial barrier is the thing that's preventing you from going, go down to the bottom of the page and there's a link to request a free ticket. Let us know why that would be helpful. We have yet to decline a single person who made that request. The reason why is I want people to get together and meet people that are from the community and say, hey, these are people that I want to hang out with. So doing what I can to grow the community that way. As well as when we were in Seattle, we had people from Apple and OnePassword and all sorts of companies that all lived in Seattle, never met each other. XRuby came from you know a lack of regionals and also hearing meetup organizers struggle to get people out every month. Asking me to do something every month is a big ask. Asking me to come out once a year to an event, way more likely to be successful. I can make that exceptional and have somebody watch the dog drive an hour to Madison and go do that. I'm not going to do that on a random Tuesday night. Unless you're living in a place like New York City or San Francisco where you just have the density of people there already, it's hard for meetup organizers to gather people regularly. And so I feel like that has broken down that sense of local community. That's what Exoruby is trying to help people do is to rediscover, oh, there are a bunch of people around here doing the same thing that I am. Even in the follow-up conversations on LinkedIn and whatnot, you know, people have said I came to a technical conference I didn't expect to leave with local friends. I think that anything that we can do to focus on more local, more community, more interaction between people is, I think, how we solve for a lot of divisiveness, etc. That's what we're trying to do.
SPEAKER_00That's a great story. And it's a great way to end things. Jim, really appreciate you coming on the show, talking about a range of topics with us. Would love to have you on again and uh looking forward to seeing you out there in the community. Fantastic. We'll see you on the road.
SPEAKER_01Yeah, same. Thank you for putting on XO. I hope it's great.
SPEAKER_00Yeah. Thanks, Jim.
People on this episode
Podcasts we love
Check out these other fine podcasts recommended by us, not an algorithm.
Latent Space: The AI Engineer Podcast
Latent.Space