DAVID HILL Happy Wednesday and welcome to the show. I'm your host, David Hill, and I'm nerding out a little bit today. The first Ruby podcast I ever heard about or was ever introduced to was the Ruby Rogues back in the day. And one of my original Ruby Rogues, at least, I've got here on the show today is Avdi Grimm along with Jessica Kerr. Thank you for joining me today. JESSICA KERR Hello. You're welcome. I was also on Ruby Rogues after Avdi. DAVID HILL It was probably... After I had stopped listening and had gotten distracted by life and work and everything. Two Ruby Rogues on my show then. There you go. JESSICA KERR There you go. Voice is good. DAVID HILL good. We overlapped a little bit, AVDI GRIMM I think. JESSICA KERR Yeah, by a few episodes. Yeah, a few episodes. AVDI GRIMM Yeah, a few episodes. And then you left and I was sad. JESSICA KERR And then you left and I was sad. AVDI GRIMM Yeah. Well, now we get to hang out all the time, so. JESSICA KERR We do. DAVID HILL So it worked out in the end then. Yeah. And Jessica, I don't remember you from Ruby Rogues at all, but. To my knowledge, at least, my first exposure to you came during your keynote at Rubicon earlier this year, which I really enjoyed, by the way, because I have a college -aged daughter who is staunchly and rabidly anti -AI. Every time I have a conversation with her where I mention I'm using AI for this or that or the other thing because my industry is leaning that way so hard, it is like, I can't ignore it. I can't get left behind and become unemployable because it's a tool set I'm unfamiliar with. It doesn't matter. She gives me like that glare, that look of death, like you're dead to me type of look. JESSICA KERR Right, right. We both have kids that are like that. AVDI GRIMM kids that are like that. Yeah, JESSICA KERR yeah. My two in college are also staunchly anti -AI, but they are used to me talking about it. DAVID HILL Mine's not quite there yet. AVDI GRIMM I personally am pleased to see that in this next generation. I don't know how widely distributed it is. I don't know if there's something about like being nerds with kids. Our kids hate AI. That baby no money concert not long ago because they wanted me to buy the tickets at 11 a .m. So they had to invite me. JESSICA KERR baby no money concert not long ago because they wanted me to buy the tickets at 11 a .m. So they had to invite me. And this was a concert for 18 to 22 year olds. And they put AI on the screen so that everybody could boo it. That's lovely. AVDI GRIMM I love it. I'm delighted by this development. I didn't really expect it, but I'm delighted about it. And I'll tell you why. 99 % of their exposure to AI is the sort of various forms of slop that are being pushed on them by social media and in other areas, especially social media, but also other areas. I think they're absolutely right to have a visceral response to a lot of the areas that these companies are desperate to have it be taken up so that they can justify all of the billions of dollars of investment that they've taken. And that's one thing that maybe we can talk about a little bit is that there is this categorical difference between the uses of generative AI in coding and everything else. JESSICA KERR Yes, in coding. I find it irresponsible not to use AI, at least to supplement myself anymore. Right. And it's completely different from content that people read because there is such a thing as correct in code. JESSICA KERR is such a thing as correct in code. And it is possible to establish criteria and verifications that say, that can tell the AI whether its change was right. So there's lots of different ways we do that. But that can happen in code and in mathematics in ways that it can't in any other field. AVDI GRIMM Right. And the way that I think about that is that... That I'm picking up right now. JESSICA KERR That I'm picking up right now. AVDI GRIMM Is that when you do a cover of a song, it's a cover. When you do a remix of a song, it's a remix. When you do a rewrite of a code base of an app or something in a different language, that's a replacement. In our jobs, we don't debate that. We don't say, oh, this is just a cover of the old app that we're rewriting in Rust or something. No, we're replacing it. We get that as much as we might love our craftsmanship in lines of code, we get that when we replace a code base with a different one, it is a replacement as long as it does the same things. It's categorically different when it's a piece of art or a piece of music. JESSICA KERR Are you saying that a cover isn't supposed to sound identical to the original song? AVDI GRIMM And we recognize that the cover does not replace the original. That's where I see the difference. Nobody says that, oh, well, now that this other band has covered this tune, who was that band that covered Zombie by the Cranberries or a band with wolves in the name? That doesn't replace... the Cranberries recording of Zombie. And we all understand that as a society. Whereas as coders, we also understand that if we rewrite the app in Rust or whatever, that is a replacement. At that level, we do understand that that categorical difference exists. JESSICA KERR Even with a cover band that you get at weddings, where their objective is to sound really close to the original so that people can remember it. or recognize it. Even there, you don't want it to be identical. If you want it identical, you'd play the recording. Right. That variation is what makes it live, is what makes it human, is what makes it more meaningful to us. And that's different in software. It's often we care about the outputs. AVDI GRIMM often we care about the outputs. JESSICA KERR There's that variation in the code that we as software developers care about and that it makes it more meaningful to us as we read it. we can recognize that we are the only ones who care about that. And the hopefully much larger quantity of people who are users of the software do not. Yeah. DAVID HILL For me, the differentiation comes from my daughter. She's a theater major. She's learning about set and construction and costume design is what she wants to focus on. But she loves theater. And so for a while there, it felt like a lot of the big... Hollywood studios were like trying to replace writers with AI, trying to replace background actors with AI. There's increasing in special effects to use AI for these heavy computational tasks as it's kind of like all of those things are supposed to elicit a human response, a human reaction, hit you emotionally somehow. And that's where AI is icky. JESSICA KERR that's where AI is icky. That's where the AI gets super icky because it's like you're taking all the humanity out of something that's supposed to touch my humanity. DAVID HILL That's where the AI gets super icky because it's like you're taking all the humanity out of something that's supposed to touch my humanity. AVDI GRIMM And like Spotify is getting spammed with AI music, fully generated music that's just algorithmically tuned to like, let's spam out a bunch and see what people listen to and then spam out more of that in order to suck down money that was supposed to go to artists. DAVID HILL Right. AVDI GRIMM And I think that's another thing that the kids see and are aware of and are rightfully incensed at. DAVID HILL I don't fault them for that. And that's the thing that kind of always strikes me as odd, at least, especially with like music, because music has evolved so much, so many times over the years of different kind of movements and different new genres of music emerging that didn't exist before. That only happens because of... and because of people experimenting and trying something new. And AI is fundamentally bad at that. AI is, by definition, the way it currently exists. It's a mathematical average of things that already exist. JESSICA KERR I don't think it's bad at coming up with new things. I think it totally comes up with new things. Most creativity is, in fact, combining two things into a new thing. AVDI GRIMM And it's damn good at that. JESSICA KERR good at that. What it can't do is listen to the music and say whether it's good. DAVID HILL That's fair. JESSICA KERR Unlike programming, where it can run the test. It can even run the app and click on it. And barring aesthetic appeal, it's not great at that. But even there, you can say, do any of these elements overlap? Is there enough contrast with the fonts? There are things we can do to at least say, well, that's bad. And so in code, it can get really, really close. DAVID HILL Interesting. That's true. JESSICA KERR To making it better and knowing that it's better. That gets back to kind of your original point that in our industry, there is a point where you can say this is correct or this is incorrect. DAVID HILL gets back to kind of your original point that in our industry, there is a point where you can say this is correct or this is incorrect. Right. And that's different than is this good or bad according to my particular human tastes. JESSICA KERR Or according to the needs of the wider system. Because it can only get to correct as we have told it what is correct. Or, well, that's not entirely true, because if correct is it interacts with this other API, and then it can run tests that involve that other API, and that's good. It can even run A -B tests against people and decide whether that's good. So wherever it hits something that it can measure, then... JESSICA KERR I'll never use the word trust. We can have confidence that it can actually improve things and come up with something new and useful. Okay. But that's still very limited. DAVID HILL Right. JESSICA KERR And yeah, then when it comes to, is this UI pretty or does this work for our business? No, you have to have people who have taste and who are involved in the wider business. not just this repo. DAVID HILL So kind of continuing along this AI train of thought, I guess, in our brief kind of pre -recording conversation, you mentioned that we could discuss kind of this new paradigm of the overwhelming majority of code being generated by agentic processes and how we as programmers, how we go about adjusting to this new reality that is increasingly kind of encroaching upon our lives. What do you think about that? How do we do that? JESSICA KERR This was the topic of this year's RubyConf keynote, which is who are we now? Who are we now as software developers? Because when you take away, well, it doesn't take away our ability to write code. It takes away the value that people placed on our writing code. That hits us right in our identity. Yeah. So who are we now? Some people deal with this by backing up and saying, why did I write code? Well, it's to build something useful in the world to change how the world works, to capabilities that my users can then use to do more things in the world. And that we have more ability to do than ever. Or if we look at our connection to the software as being how much of ourselves we put into it, well, we can put even more. decisions into our software now because we can put those decisions in there faster of what should it do what should it look like how should that come out even how should it work internally what code style it should have yeah because you can spread that across the code base in a typing in a sentence and a few minutes yeah so we have even more control than we did before so you can get satisfaction out of that AVDI GRIMM what code style it should have yeah JESSICA KERR because you can spread that across the code base in a typing in a sentence and a few minutes yeah so we have even more control than we did before so you can get satisfaction out of that But if what you love is the puzzle solving, and if what you love is the elegant little bits of code that we got to craft, well, you know what? Side projects are still fun. But if you want to get paid, and this is what worries me about my kids too, as a group, it's great that they're against AI. As individuals, I want my kids to know how to use it. DAVID HILL Right. JESSICA KERR And I want to know how to use it. Well, I'm not offended by it either. shocked and unsettled and generally discombobulated by it. But I'm not offended. We have to know how to use it and how to use it well, because what we get paid to do is not puzzle solve and craft beautiful code. What we get paid to do is change how the world works and add capabilities to our company or our customers. And we use AI to do that. DAVID HILL I feel like you're talking right at me because the part of the job that I've always described as the part that I enjoyed the most was the puzzle solving and building something that addresses an issue. And now it's like, oh, the AI has gotten really good at doing those things and figuring out how to write code to address those problems. It's better than I am. AVDI GRIMM those problems. It's better than I am. Yeah. It's particularly good at debugging and just trying a bunch of stuff very quickly. So fast. JESSICA KERR And yesterday my Kubernetes cluster was out of date and that used to be. a painful couple hours because I only do it when AWS starts charging me more. And I just told Claude to do it. And Claude just did it. And then I was like, oh, you know, upgrade a couple more versions. And it just did it. And it was so nice. It was like, oh yeah, I had to upgrade this add -on. And then this was in the wrong cluster. So no, not cluster, sub region. And so I just restarted another node. It's fine. It is fine. So no, I was so happy to type at it. Claude, you are authorized to do interesting and even destructive commands on this cluster. It is a demo cluster. It's okay if it goes down. So this is why I can be that sloppy with it if Claude just do it. But even then, it did all the checks. It did all the determination of what needed to be upgraded. Just so much crap that I didn't want to do, but was in the way of me adding capabilities to my systems right it's just there this is part of why i can't be super sad about it as much as i sometimes feel like i should be and i feel like i am surprised a little bit at how easy this transition has felt to me personally and anyone that knows my output knows like the books that i've written in the videos that i've made knows that like i have been laser focused on AVDI GRIMM is part of why i can't be super sad about it as much as i sometimes feel like i should be and i feel like i am surprised a little bit at how easy this transition has felt to me personally and anyone that knows my output knows like the books that i've written in the videos that i've made knows that like i have been laser focused on the nitty gritty of code idiom and style and check out how to use this tiny little pattern to make your code a tiny little bit better. Right. So gleeful when he uses a sequence of pearl symbols in the freebie to make it super tiny and I make a face and go, JESSICA KERR gleeful when he uses a sequence of pearl symbols in the freebie to make it super tiny and I make a face and go, that's doing what? And he's like, isn't it great? AVDI GRIMM To be fair, I only do that for stunts. I don't put that in production code. I just want to put that out there. JESSICA KERR And scripts. The scripts that are only for me. Okay. AVDI GRIMM Yeah. There is still a gleeful little programmer back in the attic of my head, for sure. And every time somebody says, we're deprecating that little pearlism in Ruby, I get a little bit sad. JESSICA KERR It's like, you don't have to use it. AVDI GRIMM you don't have to use it. JESSICA KERR Let it be. AVDI GRIMM That's the content side of my career. And it's certainly, you know, that joy in that kind of style is, I think, a lot of my brand. And so it's a little surprising even to me that this has come as easily as it has. But I think a big part of it is the flip side of these things is I'm someone who has felt very stymied for most of my life, most of my career in wanting to do a lot more than I. can do as somebody who spends a lot of my time as a caregiver and just working insane hours and parenting and all kinds of things i've felt very stymied i have these ideas i have these projects that i want to do vision yeah i have a lot of vision and there's a lot of stuff that i've just not been able to do and i've had to just accept that nope i'm not going to be able to do that one you know nope i'm not going to be able to do that one and suddenly DAVID HILL not going to be able AVDI GRIMM Side projects that I had put aside as never will have become accessible to me. Suddenly I can do these projects or these experiments that I never thought that I could. And that leverage, you know, and also being able to deliver things for my clients that I could not deliver before, you know, is like, yes, that is absolutely on the backlog. When can we get to it? No idea. Being able to deliver stuff. is amazing. It becomes a game of getting the controls over it and establishing the channels so that I can meaningfully still maintain oversight. And that's an interesting area to talk about, I think. JESSICA KERR And that's the other way that we can identify as being in control of the system. anymore is that we control the AI's feedback loop. We are the ones who define correct and supply it with ways to check that correctness. We are the ones who find ways to make the AI and the harness and other tools give us visibility into what's going on. Yeah. AVDI GRIMM Yeah. And I think that's where we have a lot to do now is establishing oversight. I think. That's a lot of what I spend my days on now is, okay, I'm branching out into more and more things. Every day I'm iterating on oversight. Oh, I do want to say the other thing that has actually been like a mitigating factor that's made me happy is that at some point this industry decided that it was going to write about a third of its code in YAML. And the robots can do that for me. I never want to do that by hand. That's the Kubernetes upgrade again. JESSICA KERR the Kubernetes upgrade again. DAVID HILL Yeah, I will never miss. having to mess with YAML manually. Just write that for me would be great. Thank you. AVDI GRIMM Not a programming language. Not a good one. JESSICA KERR Well, it's not a programming language. YAML is a thousand programming languages, even several in the same file, according to which piece of code is going to read and execute. Which three processors and in which order. AVDI GRIMM execute. Which three processors and in which order. JESSICA KERR Yeah, yeah. And they're all nested inside each other. Sure. Yeah, so we'll leave that to the robots. SPEAKER_00 The robots can handle that all day. Thank you. SPEAKER_00 Let's talk more about oversight, DAVID HILL Avdi. What are you trying to do to iterate on oversight for your AI agents and code generation that way? AVDI GRIMM One of the first things you figure out is that now you can turn out way more code than you can ever possibly reasonably review. DAVID HILL Ever? Yeah. AVDI GRIMM From what I've observed a little bit, I think some shops are still kind of stuck there. I've definitely heard from people who are like, there's all this AI code coming out and I can't keep up with reviewing it. And it's just making me sad and miserable. If you're allowing AI code generation, you absolutely then have to allow AI code review. One without the other is just you're creating misery for humans. And then it becomes a question of how do we structure that so it is genuinely useful and effective. JESSICA KERR And what pieces of it do we as a human look at? And what do we as a human look at? Because it's not the full diff, but you can ask the AI. Even a separate conversation, if you want it to be objective, give me a summary of this diff as an HTML file with pictures and fewer words and tell me what's really going on here. And then at the detail level, you can have all these agent reviews. AVDI GRIMM Yeah. One of the first things that I've figured out with that is that you really have to set the agents against each other. Because if you put a hat on an agent that says, I'm an implementer, it'll get excited about what it implemented. And if you put a hat on an agent that says, I'm a code reviewer, it'll get excited about what problems it finds. JESSICA KERR And you need different reviewers, right? Because the more specific the job you get the agent, the better it does at it. AVDI GRIMM you need different reviewers, right? Because the more AVDI GRIMM Yeah. And I've steadily evolved. At this point, the stuff that I'm doing for production. has a whole fleet of little auditors that run on every PR multiple times. They come up with a set of issues that they find on the first round, and then that gets addressed, and they look it over to see what the fix is introduced. And the difference is stark. The stuff that just comes out one shot, or even with an agent that's supposedly supposed to be minding certain standards, generally does still have a lot of issues with it. That said, I don't want to set that up as it has issues that a human would not have introduced. Because that's the other side of this that I'm seeing is that they are getting better than us. They are already better than us in most respects for code review. And I don't think we talk about that enough. But like, even if you're not using them for generative stuff, they don't get bored. They do not get bored. And they are capable of ingesting. DAVID HILL they are capable of ingesting. So much more than we can. Tremendous, yes. AVDI GRIMM Tremendous, yes. You can fit most PRs, most change sets into their easy working context memory without like stretching it. And yeah, they will find stuff. They will find stuff, you know, issues that have been latent in the code for years, just in passing as they're looking at the changes that you made. JESSICA KERR We don't have to just be like, oh, I wish we had time to change that anymore. DAVID HILL I'm dealing with a situation with some. people I work with. Whereas it's no longer a question of bandwidth, it's a question of priorities. And that's where the struggle and the back and forth continues to be difficult for me. Whereas the business people can see this as a potential bandwidth increase so we can just do more feature stuff faster. And it's like, well, how about all this technical debt stuff that we kept delaying because we also didn't have time to do that and needed to bring value to the business. And now we still can't work on that. JESSICA KERR That technical debt is costing you 10 times as much now because AI models thrive on consistency and it pays off 10 times as much, actually more than that. Because one, we have more developers working on the code at the same time. We're writing 10 times as much code, say. So that technical debt is costing us 10 times as much because all of that is slowed down. JESSICA KERR debt is costing us 10 times as much because all of that is slowed down. And we're now producing code in old patterns and just piling it up more. But also, we as humans can talk about it and be like, the new direction is this. The new direction is manager pattern or whatever. And we just know that. With the agents, if you need to tell them, okay, yes, a lot of the code is going to this old types package, but the new stuff needs to use the manager pattern, you have to tell them that over and over and over. AVDI GRIMM over and over. Yes. Yes. You can capture it into the guidance, which, you know. Which tells them over and over and over. JESSICA KERR over and over. Yes. JESSICA KERR Which tells them over and over and over. AVDI GRIMM and over. Right. I mean, so much of what I do now is gardening and massaging the guidance that they get. And if you want to be clever and push back on this, JESSICA KERR you want to be clever and push back on this, if you have traces or logs of your agent conversations, you could measure sometimes how much that costs. You can measure how many tokens did we send on how many different turns of every single conversation ever to try to get past this lump and make them not reproduce this technical debt. And that has a dollar amount assigned to it. Interesting. DAVID HILL make them JESSICA KERR Because there's this whole other aspect of AIs doing development that we haven't talked about yet, which is kind of creepy, but it is you can... buy on them, you can measure the work and you can put a dollar amount on it. It's not just how much time did you spend on this as if every 15 minute increment is the same value. Right. Right. Right. And what do you do when you go to the bathroom? I don't know. Charge it to some project or other. No. Okay. We're past that bullshit that we really can measure how much effort in terms of tokens are we spending on things? We being the agents. Right. So development work. AVDI GRIMM the agents. Right. So JESSICA KERR becomes incredibly more measurable. AVDI GRIMM Right. Quantifying that we can do now for better and for worse. JESSICA KERR Yeah, for better and for worse. Not so much the spying on the humans. I don't really mind so much the spying on the agents. In fact, that's that oversight thing, right? I want to know what is costing them. I spend a lot of time on one of my side projects all about how do I get better visibility into these conversations? SPEAKER_00 want to JESSICA KERR lot of time on one of my side projects all about how do I get better visibility into these conversations? How do I find out what's going on? How do I make better use of my tokens? And just what works in this AI development process that we're figuring out. Yeah, so you can do a lot more of that. And that too is engineering. AVDI GRIMM Engineering gets meta. Engineering, software engineering has always been just like successive layers of meta. But now I'm like six years up from where I used to be. JESSICA KERR But now I'm like six years up from where I used to be. AVDI GRIMM years up from where AVDI GRIMM curve is going upwards with that but what i was thinking of is one of the things that i spend my time on now is okay let's compose an eval let's compose an evaluation which is ai for tests yeah if you're testing an ai even a harness which is deterministic you call it an eval or if we write the guidance this way versus if we write the guidance that way how does that come out AVDI GRIMM eval let's compose an evaluation which JESSICA KERR is ai for tests yeah if you're testing an ai even a harness which is deterministic you call it an eval or AVDI GRIMM if we write the guidance this way versus if we write the guidance that way how does that come out You know, if we use this model versus that model, how does that come out? If we use high thinking versus low thinking, how does that come out? Evaluate the results against some sort of baseline. Before and after the refactor. JESSICA KERR and after the refactor. You can test that, right? You can implement a feature before a refactor, do the refactor in another AI, and implement the feature again. Back out the first change, do the refactor, do it again, and actually compare those. This stuff becomes measurable. No, it's not. magically free to measure when you're doing these comparisons. But when you do a couple of these comparisons, like you were testing your auditor agents, right? What's the difference whether I run these on Opus or Sonnet? AVDI GRIMM Or how does it come out if I audit several different topics together with one agent versus breaking them up very granularly, you are just focused on this one aspect of code. JESSICA KERR And because you're spending so much on auditing in general, that comparison pays off. It does pay off, AVDI GRIMM because you're spending so much on auditing AVDI GRIMM does pay off, yeah. DAVID HILL That's interesting. Like all of the conversations I've ever had about AI and tokens has just been about the cost of them. I've never actually stopped to think about, well, if there's a cost to them, that means you can probably audit that cost and see how those tokens are being spent over time and what they're being used for. That's an interesting idea I need to look at more. AVDI GRIMM I mean, there's a nascent product space out there. Oh my gosh, JESSICA KERR Oh my gosh, so many at conferences. There's so many. All of the developer tooling companies, especially all of the ones that were about making the development process legible, AVDI GRIMM so many JESSICA KERR all of the ones that were about making the development process legible, they are going nuts. They are having a field day. AVDI GRIMM Yeah, I read an interesting report from the JetBrains people the other day where they were talking about their initial efforts towards monitoring and auditing. their token usage across the company and so that they can find places for savings. It's probably worth looking up for the show notes, at least. It was an interesting article. DAVID HILL Yeah, I'll have to look for that. I feel like we covered a lot of ground here already. Engineering is not dead, JESSICA KERR Engineering is not dead, but it has totally moved. DAVID HILL It really has. One of the episodes I did at Rails World that came out earlier this week. at the time of recording was with obi fernandez and he kind of made that point that it's just moved up a level of abstraction and rails developers in general are hopefully well positioned for that because that's what rails was about anyways what rails was about kind of moving up a level of abstraction with convention over configuration not having to deal with a lot of those nitty -gritty decisions so you could focus on business value issues and so it's just kind of moving up another level now AVDI GRIMM Yeah, we all have to put on, you know, get used to wearing more of the product hat now. Much more. Yeah. JESSICA KERR And designer hat, which is scary in my case. But on the other hand, we have an incredible learning tool because I have learned so much CSS this year, DAVID HILL I have JESSICA KERR year, right? Because that lets me express the parts that are hard for me to express of what I want something to look like. DAVID HILL Right. JESSICA KERR and to know what's possible and to know the language for it. So we get to learn design and product. You get to learn any topic you want. You have an incredibly knowledgeable tutor, one -on -one, who doesn't get bored and doesn't charge you or barely charges you. And you can say, explain that a different way. And yeah, there's a different way right there. As a learning tool, when what you want to do is learn, oh my gosh. It's like, oh, let me show you that. whip up an artifact designed entirely as a teaching tool for this specific concept. It exists only on my laptop right now, but there it is. That is so powerful. Yeah. AVDI GRIMM Yeah. And you can be unembarrassed to tell it. Explain these things like I'm five. Explain that in small words, please. You can set in your output preferences, please. JESSICA KERR Why the F does it work like that? And it'll give you, oh yeah, it's terrible. ChatGPT is especially good at like responding to me with the right level of sarcasm to make me feel like my feelings are valid, but also giving me the historical context of why this actually happened. AVDI GRIMM Yeah. And you can put it in your, in your output style. You can say, you know, put in a footnote for any. three -letter acronym that reminds me of what that stands for. What that is. I have a case where I'm needing to put on the Ops hat a bit more than I used to, and I'm definitely being like, I'm going to need you to spell some things out for me. And what's really nice, though, is that contra Googling for information, DAVID HILL for. What that is. AVDI GRIMM which has gotten steadily worse over the years, that's a separate topic. Yeah. You can say, please apply this to my... scenario to my instance explain how this kubernetes stuff works to me in the context of our particular deployment right show me walk me through it tell me the commands to use to see the things for myself for this particular deployment rather than somebody's generic example it is it can be a teaching tool if you know to use it that way yeah which is also a skill JESSICA KERR can say, please AVDI GRIMM my... scenario to my instance explain how this kubernetes stuff works to me in the context of our particular deployment right show me walk me through it tell me the commands to use to see the things for myself for this particular deployment rather than somebody's generic example it is it can be a teaching tool if you know to use it that way JESSICA KERR which is also a skill Oh, absolutely. What project do I want to be in in order to ask this question so that it can speak to me in terms that I understand? AVDI GRIMM absolutely. JESSICA KERR understand? DAVID HILL That's probably the first time when I first started using AI for anything at all. It was mostly that. It was almost immediately a Google replacement of like, I want information about something. I want to learn about something. And it was so much more useful to me than Google has been for a long time. JESSICA KERR Yeah. And in programming, it's particularly good because there is a definitive answer to things. It can reference things. It can even test it. DAVID HILL Yeah. I was playing with Dragon Ruby a while back just to kind of learn it a little bit. It's like I always wanted to build games. It's Ruby. Let's play with this Ruby game engine. And it's like the visual effect that they used in like Disney movies back in the day with the classic animation films of like. The far background moves slower than the middle ground. Oh, yeah, that's so pretty. JESSICA KERR ground. Oh, yeah, that's so pretty. Parallax. DAVID HILL Parallax. I didn't know there was even a term for that. See, JESSICA KERR that. See, it teaches you terms for things. DAVID HILL Right. It's like I'm describing it just like I want the background to move like this. And it's like, oh, you want a parallax effect. Okay, here's how you do that. It was like, oh, not only did I learn how to do that, I learned there was a word for it that I didn't even know. JESSICA KERR It makes it hard to Google. DAVID HILL Yeah, exactly. How would I have Googled that to come up with that? AVDI GRIMM I got to show one of my kids some computer games from my youth the other day. And I got to be like, look, this was before they figured out how to do parallax. DAVID HILL Which doesn't seem like a hard thing to figure out, but it is what it is. JESSICA KERR On the topic of games, I think those are more important because of AI. Because they give me that feeling of puzzle solving. There is a place. They will always be around for that puzzle solving and its puzzles. But games also. Are you talking about playing games or building games? DAVID HILL also. Are you talking about playing games or building games? JESSICA KERR Playing games. Although you can build games now too. That's a fantastic form of expression and you can do it quickly. Eric Evans at the Explore DDD conference last week in his keynote made the strong point about you don't have to like it. It may be the end of the world, but let's have fun. In the meantime, right? Enjoy this. power that we have. DAVID HILL Right. JESSICA KERR Yeah, but playing games too, especially games played with other people, is really valuable right now because that gives us a place to express that problem -solving ability. I picked up Magic the Gathering because I get to play compiler whenever I play that and I'm trying to figure out which effects happen when and how they combine and stuff like that. There is a very strict rule set. It's 400 pages or so. But only a few pages apply at any given time. And I can work through that rule set when I need to in my head. And if there's any ambiguity, that ambiguity is resolved on Reddit somewhere. DAVID HILL And it's pretty easy to Google. JESSICA KERR it's pretty easy to Google. If you know the terms, if you don't know the terms, then you go to chat GPT. That just really scratches that bitch for me. DAVID HILL Those not benefiting from the video feed, I have a number of board games behind me here. I'm a big fan of the board games and the social aspect of that. And as something of an introvert myself, like I thought I was unique in that, but apparently a whole bunch of us in this field tend towards introversion. I always found that the board games and the rules and structure around them. helped my brain relax enough to not be stressed out about being introverted and not knowing what to say or do. Because I know what to say or do. I have rules that say how the game is supposed to play. And so we're just going to play the game. And it just kind of helped me ease into a social conversation situation much easier than just trying to have a conversation with a person. Yeah. AVDI GRIMM The last RubyConf, one of the highlights definitely was the board game. JESSICA KERR Yeah, the board game was really good. DAVID HILL Yeah, I have a fun time every single time one of those events happens just because it's like, I'm going to bring a couple of fun games and meet some people through playing the game and my normal awkwardness will not get in the way because we'll be playing a game. JESSICA KERR Yeah, and that social part is even more important to us because we're interacting with a robot all day. And the in -person part is more important than ever, or at least on video. Video is better than text. I don't like interacting with coworkers on Slack anymore. I mean, I'll do it for coordination, but I want to hop on a Zoom because if I want to read a bunch of text in a linear format, I know where to get it. Right. AVDI GRIMM I think this is something that we both agree on is that in this era, this new epoch, we have to keep an eye out that we are using these tools in a way that enables us to spend more time being human together. If we're not doing that, we are doing it wrong. We are wasting the potential of this new type of abundance if we're not finding ways to be more human together. JESSICA KERR And that was the second question in... my RubyConf keynote, who are we now as people? How do we be more human in this age of AI? DAVID HILL That feels like the central and most important issue at play for me is this like, the ease and abundance of this tooling could easily just make isolation and solitude so much easier to just be the default. Because we don't have to. We can hide behind the robot. JESSICA KERR we don't have to. We can hide behind the robot. DAVID HILL Right. Because we don't have to reach outside our comfort zone. as much to get what we need but we need to kind of make it so that it's pulling us together instead of letting us drift apart yeah and we already have you know news stories of people going into seclusion with chat gpt and falling into ai induced psychosis that's a real thing yeah not surprising you know we were talking earlier about the JESSICA KERR don't have to DAVID HILL need to kind of make it so that it's pulling us together instead of letting us drift apart yeah AVDI GRIMM and we already have you know news stories of people going into seclusion with chat gpt and falling into ai induced psychosis that's JESSICA KERR a real thing yeah not surprising you AVDI GRIMM real thing yeah not surprising you know we were talking earlier about the difference between the way it applies to code and the way it applies to other things and one of the things that i'm really concerned with is all these technologies that are out that are hawking ai for not having to talk to people as much right or here's a script for talking to your co -workers or something like that you know let's write an email for you that you don't contribute to at all and that will be read on the other side by i hope that yeah yes DAVID HILL or here's AVDI GRIMM or here's a script for talking to your co -workers or something like that you know let's write an email for you that you don't contribute to at all and AVDI GRIMM will be read on the other side JESSICA KERR will be read on the other side by i hope that yeah yes AVDI GRIMM i hope that yeah yes Let us have our robots talk to each other to smooth over all of the things that can be sorted out and smoothed over and, you know, sorted through by text completion machines. JESSICA KERR Such as our code reviews. Yeah. AVDI GRIMM But if that's not making more time for us to sort out the things that playing board games together, that... Or talking about what the business really needs and what our customers really need and how we can bring that in a way that really lights us up. JESSICA KERR talking about what the business really needs and what our customers really need and how AVDI GRIMM and what our customers JESSICA KERR we can bring that in a way that really lights us up. AVDI GRIMM If it doesn't make more space for that stuff, then it's all for naught. JESSICA KERR Yeah. Don't let it get between you and other people. Do let it work between you and the computer. DAVID HILL Yeah. This has been a very helpful conversation for me. So just kind of illuminating how I need to approach this better. So yeah. Thank you very much, both of you for joining me today. JESSICA KERR Thank you. Thank you. DAVID HILL As we're wrapping up, is there anything that you would like to plug before we go? AVDI GRIMM Yes. Well, I am duty bound to plug. My site, graceful .dev, which some of you may recognize as the thing that Ruby Tapas evolved into. It still has all of those 700 plus old episodes, plus all sorted into courses for those of you who still want to learn how to code. JESSICA KERR We're making ones about AI. Yes. I did a workshop at Explore DDD last week about LLMs from the top. Let's make the most minimal coding agent by hand. Starting from, let's call an API to not one of the current LLMs, but a basic LLM that's not even instruction tuned and just does completions, just finishes your sentence and get a feel for that. And so on up to tool use and skills. And it really gives people a feel for how these things work and why they behave like they do. Nice. Yeah. AVDI GRIMM Yeah. Yeah. We're steadily adding. New videos and content to it about how we're using AI. Also, we have our own podcast. JESSICA KERR about how JESSICA KERR we have our own podcast. AVDI GRIMM Oh, we'll get to that. You know, if you want to like learn more about any of the stuff that we've been talking about, like the techniques that we've been talking about, you know, using with our agents at work, we're both steadily adding content about that, you know, what we're learning. So yeah, check that out. And yes, we also have a podcast we've been doing together of late, the Machines of Code and Grace podcast. It is all about. JESSICA KERR is all about. AI in programming and how we adjust to that and how we can do it well and all the things that we're learning as we go. DAVID HILL Awesome. I will include links to those in the show notes. And then my final question for you, the question I've been trying to ask everybody, do you have any suggestions on who else I should bring on the show to talk about interesting issues related to our industry and Ruby Rails? JESSICA KERR I'll give you my current recommendation for our most interesting new speaker, Gagan Votz. I can send you his LinkedIn at ExploreDDD. He's 24. He's never coded without AI. And his practices for the code that his team writes are more rigorous than I've ever seen anyone use anywhere. DAVID HILL Oh, wow. What was his name? JESSICA KERR Gagan Votz. I'll send you his LinkedIn. DAVID HILL Okay. JESSICA KERR He's Indian, but when he graduated from college and he's like, it was COVID era, it wasn't a proper college experience. So I wanted maximum culture shock. So we moved to Tokyo. DAVID HILL Oh dear. Okay. Yeah. If you're going to go culture shock, that's definitely the way to go. JESSICA KERR Yeah. So he's super interesting. Yeah. Brand new to this AI native in his coding style and also reads a lot of old books. Okay. Yeah. DAVID HILL I would love to have that. LinkedIn connection to look him up. JESSICA KERR It's very interesting to get the perspective of the juniors themselves rather than, oh, how will the juniors ever learn? DAVID HILL Yeah, that's... Which I'm like, shut up. JESSICA KERR I'm like, shut up. That's not our question to answer. DAVID HILL That's been the only version of the conversation I've seen for a while of like, oh, where will the juniors come from? No, the kids are fine. JESSICA KERR No, the kids are fine. JESSICA KERR At least some of them. AVDI GRIMM They understand what AI shouldn't be applied to. yeah and they are finding their own ways of coding and i will just add to that that it's been interesting to me to see that some of the younger more native ai native coders are diving into things like domain driven design yeah they're reading those books because they're looking for ways to think about software at a higher level And to have a shared vocabulary, which DDD is all about, having a shared vocabulary so that they can talk to their agents in a way that has no ambiguity. JESSICA KERR Or less. AVDI GRIMM Or less ambiguity. Yeah, so they're bringing... back some of these design disciplines that maybe some of us didn't have the bandwidth to really implement in the past patterns are more relevant than ever they're building shared vocabularies yes patterns are extraordinarily relevant now because they're like baked into the especially old patterns memory JESSICA KERR Yeah, so they're bringing... AVDI GRIMM some of these design disciplines that maybe some of us didn't have the bandwidth to really implement in the past patterns are JESSICA KERR are more relevant than ever they're AVDI GRIMM building shared vocabularies yes patterns are extraordinarily relevant now because they're like baked into the especially JESSICA KERR old patterns memory AVDI GRIMM memory JESSICA KERR Right. AVDI GRIMM But they're baked into the gestalt memory of these machines. And so you can say something, you can reference, well, what if you did it as a visitor pattern and they immediately understand what you're saying and rewrite the code the way you meant. JESSICA KERR In an entire code base. Whoosh, whoosh. Yes. DAVID HILL So I'm dying a little bit right now because at RubyConf, I had an idea for a talk. It was focused on design patterns and about how, you know, with AI doing as much as it was even back in July of this year, because things have changed, it feels like so much since then. My thought was maybe that's what design patterns could be more used for now is you've got the AI generating the code. After it's built the code, that's where you would apply a design pattern of being like, oh, wait, I see that it's doing. this thing over here let's revisit refactor this code to follow a given design pattern since that behavior has emerged from code that already exists now oh i don't have it refactor i have it back out the change and write it again right just delete start over but with this pattern in mind if it's a new implementation you can't do that with people granted you can with ai you can be like oh i wish i'd thought of this oh i wish i'd done this refactor first JESSICA KERR i don't have it refactor i have it back out the change and write it again right just delete start over but with this pattern in mind if it's a new implementation you can't do that with people granted DAVID HILL you can JESSICA KERR you can with ai you can be like oh i wish i'd thought of this oh i wish i'd done this refactor first DAVID HILL can be like oh DAVID HILL In my head, I still call that a refactor, even though you're not preserving existing code and changing it. You are rewriting it. So it's a different option, JESSICA KERR a different option, right? Because with people, they spent weeks writing that code. You're not going to just delete it. Right. DAVID HILL Because with JESSICA KERR But with AI, it spent 20 minutes writing that code. I'm like, get revert or better get reset. DAVID HILL But even you as the human, you're looking at code that already exists so that you can see, oh, this pattern has emerged and I want to lean into that. Okay. So from my perspective, JESSICA KERR So from my perspective, it's refactoring. From the agent's perspective, it's never seen this before. Right. DAVID HILL So from my perspective, it's refactoring. JESSICA KERR It just knows how to do it right now because I told it. DAVID HILL Okay. You're right. JESSICA KERR You're right. It's refactoring from our perspective, but not from the agent's. Yeah. Yeah. DAVID HILL Yeah. Yeah. So back at RubyConf, I had an idea for this talk and I was just kind of like, oh, kind of excited about it. I'm like, maybe I think this makes sense. I think there's some utility here. And then it was at Dave Thomas's keynote where he was like, stop using patterns. JESSICA KERR I love Dave. I'm listening. DAVID HILL listening. He's wonderful. We both do. JESSICA KERR He's wonderful. We both do. But I wouldn't listen to his talk there because it was not AI -centric and everything we do has to be AI -centric now. DAVID HILL Yeah. JESSICA KERR Everything he said totally applies to writing code by hand. DAVID HILL Yes. Makes sense. Thank you for joining me on the show and for helping me change a little bit of my perspective on some things. JESSICA KERR show and DAVID HILL change a little bit of my perspective on some things. And hearing your thoughts on patterns there at the end was like really reaffirming. It was like maybe I wasn't completely off base. No, JESSICA KERR off base. No, you were not. You're totally on base. DAVID HILL Thank you so much for joining me today. JESSICA KERR Thank you.