Ruby Dev Summit - Alex Rudall - podcast episode cover

Ruby Dev Summit - Alex Rudall

Feb 16, 202432 min
--:--
--:--
Download Metacast podcast app
Listen to this episode in Metacast mobile app
Don't just listen to podcasts. Learn from them with transcripts, summaries, and chapters for every episode. Skim, search, and bookmark insights. Learn more

Episode description

In this episode, Charles Wood engages in an insightful conversation with Alex Rudall about the evolving role of AI within the Ruby community. They dissect the implications of AI advancements on the future of Ruby, addressing the declining usage of the language and its potential staying power. Through this discussion, they aim to uncover the opportunities and obstacles that await developers in the rapidly evolving AI landscape.
Socials



Advertising Inquiries: https://redcircle.com/brands

Privacy & Opt-Out: https://redcircle.com/privacy

Become a supporter of this podcast: https://www.spreaker.com/podcast/ruby-rogues--6102073/support.

Transcript

Hey folks, welcome to another interview on the Ruby Dev Summit. Today. I'm talking to Alex rude Al. And Alex, we had you on Ruby Rogues a little bit ago. We were talking about the open Ai gem, and I think we talked a little bit about some of the business stuff that you're doing as far as like consulting with companies about using Ai and their Ruby

apps or rails apps. And yeah, I mean there's just there's so much interesting stuff going on in that space that I thought, Okay, well, you know, if I'm going to be asking people, hey, what's the future of Ruby, it feels like this is one area that we really can't ignore, you know, even though traditionally Ruby's used sort of in other ways. Right, it's used in mostly web development, but you see it in other places as well. So and and then I know you're involved in other

areas of the community too. So I'm just going to start with our major premise question and we'll see where we go from there. But what's what what in your mind is the future Ruby? Yeah? Sure, well, basically thanks so much for having me on again. I really enjoyed the last podcast

we did. And yeah, like you said, like I tend to think of myself as just a simple Rails developer, but yeah, I maintained the open Ai gem and the anthropic Api gem as well, and I've done quite a lot of projects recently integrating with open Ai and Ruby and rails, So I do have some opinions about that. Yeah. In terms of the future of Ruby, I did a little bit of research just before this, kind of looking at Hacker Rank and they put out reports on kind of programming language

usage in interviews. I believe it is, and the picture is not kind of amazing from Ruby there. Like, I think between twenty twenty one and twenty twenty three there was something like sixty percent decline in the number of interviews. I think they said, I could be a bit wrong about the exact numbers, but it's something like that. Yeah, quite significant decline in an

environment where programming usage is increasing and the number of developers is increasing. So you know, I think there's this kind of perennial thing, is like, is Ruby dead or dying? And also, yeah, I think AI is going to be a huge part of what we do as developers in the future. Maybe that's obvious at this point, maybe not. Yeah, like the reasons that I originally chose to work with Ruby and rails more than ten years

ago too, really like one is how human friendly I found it. When I was learning to code, I did my Microhurtle's Rails tutorial, which I think a lot of developers of my sort of age did. I didn't building a clone of Twitter and if. I was also trying to learn c sharp at that time, and I found Ruby so much more human friendly, so much more just like speaking English almost, and I think, yeah, that's really important. That's one part of it. And the other side was community.

I found the Ruby community so much more friendly on kind of forums, people, I spoke to, conferences, even I just found it so much more friendly and inclusive. And I think those two things, like community and being human friendly, are going to continue to be super important in the future, and then maybe one way that Ruby can kind of take a place for itself in the future. For example, with AI, it is likely that

it's programming ability. They're going to get better over time. But my view is that humans will still kind of hold the keys to the real world and control kind of the money and what work gets done, and therefore I think there will still be a lot of value in having a language that is really nice for humans to use. Yeah, anyway, I've got actually a lot of those on this book. Yeah, well, let me tease some of this out, because I think there are three or four areas that you've touched

on that that I'm kind of curious about. So I hear people both in the business space and in the technology space that have all kinds of ranging opinions on how big a role AI is going to play in the future at all. Right, so some people think that, hey, we've kind of found this sweet spot with like chat, GPT or mid journey or things like that, right where it generates text or it generates a transcript, or you can

give it a prompt and it'll give you an image back. But you know, we're eventually going to exhaust that, and AI, you know, may become faster and in some ways more intelligent, but then you know, we're not ever going to get to a artificial general intelligence or that we're not going to get to you know, we're going to find the limits of these applications that we already have for AI, and so it's not going to be the big play, right, So it's going to be the big play for the

next couple of years, and then after that maybe it peters out, or maybe we find another usage. So my question to you is, you know, how how deeply do you see Ruby going into that space to use some of these AI tools or applications, especially since you're writing the ap or the Ruby gem that helps you access those tools, right, is it going to become a major player or an indispensable part of your applications going forward on the

web or other places, or and why do you think that. I think one thing that happens with a lot of discourse around AI is a sort of fatalism or like, and there's kind of feeling of inevitability. But I think the reality is that we get to decide what happens, especially developers. I think we have such a big influence on the way a lot of people in the modern world live their lives, Like the stuff where we write, especially

what goes on phones gets used so much. So yeah, obviously I don't know the future, but I think the answer is we get to decide. Like, particularly in the rub community, what makes a language successful is the open source contributions that people make and the quality of the community contributions, and I'm seeing more and more people write open source libraries and even just API rappers

like I've written and kind of collaborating on that. And if the open source software is good enough, then people will be able to build startups quickly on top of it, successful businesses, and then they'll put money into it. More people will get jobs and that increases the community. So I don't think it's a question of like will we be be a part of it or not.

It's like it's kind of up to us to decide whether we're committed to this language and the communities and then the work that we can put out in that space. And yeah, talking about general intelligence, like I would say that probably artificial general intelligence will will happen, but my feeling is kind of optimism optimism around it, like it's probably quite a long way off still, and I don't think I think there will be collaboration rather than opposition. That

would be my guess, right. Yeah. So, so related to that then is the ability to integrate with some of these other systems like open AI. Is that going to become an indispensable skill for Ruby developers in the future or are some people I guess the majority of people coming into the field, are they going to be able to skate by and say I'm not really interested in doing AI. I would say it's going to be an indispensable skill.

Like it's third about the integration. Now, whether that's going to be big corporations like open AI or open source models that you can run yourself when you're server. I suspect it will be some combination, okay, but to me, yeah, at least having the ability to think about how to plug that in it is going to be huge. And I think there's so much scope

for innovation. Like one client I worked with showed me a new kind of UI that they built that it is something I've never seen anyone do before, and it's not that difficult using the open AI API, And I can't tell you exactly what it was, but I think there's so much opportunity to innovate using these tools, which like five years ago, would have been unbelievable to most people. And I think rub rails and javscripts were a really good language

to do that with. Right, So you kind of alluded to the thing that I was going to ask next, which is we see a lot of people writing code in like Python, or I've seen some stuff in go in Rust, depending on and how things are put together, where they're actually building the engines that power the models that people use for their AI, and I don't see a lot of that with Ruby. What I'm generally seeing is what you're talking about with like the open aijam, where you know, I'm plugging

into these existing systems. Is that where you see Ruby kind of sitting in the ecosystem of AI going forward? It seems like Pipeen kind of won that space by having the best libraries and having the biggest community, and it kind of snowballed over, I guess the last twenty years to get to get to the place where it is now. So but no, I think there is a lot of opportunity for doing more deeper integrations like that in Ruby, but

you need people to write them. And like I'm not an mL expert in that sense, Like that's not something that I would necessarily know how to do, right. Yeah, And you know, like I think being able to build a startup quickly and build a business quickly is kind of the niche that Rails really staked out, and that's a super valuable place and it would be really good to be one of the top languages to build an AI startup in. And I think that's that's feasible for Ruby and rails. It just needs

that that community and opens urce work behind it as well. Right, So yeah, I mean, I guess, I guess what I'm asking is is Ruby just going to provide tooling for other Ruby apps within the AI space or are we going to go and start creating some of the things that exist in Python and other areas too, you know, to have yeah, to play in the space. I'm not sure. It's be honest, like, it's not something I've even considered trying, because you know, it's not in my

area. I've been a web developer for most of my career and I can build a good integration. Going that next level is not something I've done before. It's something I'm interested in, but I think there'll be a deep learning curve and I've seen that some people doing some things in that space. Yeah,

I don't know, answer, Nope, totally fair. So I'm also curious as AI continues to advance, I don't I don't even know if I want to get into like general intelligence or super intelligence, just because I feel like that's an area that we haven't really cracked, and I don't know if we have good answers for that. Maybe maybe you feel different. If you feel different, tell me otherwise I'll ask a different question. Mm hmm, yeah, if you had the everyone's got an opinion on that, right.

I actually, about ten years ago I wrote a novel about AI, the kind of in the world, the world getting destroyed by the AI. But that's that's not necessarily how I feel now. But yeah, we don't have NEO. No, there was no except yeah. Yeah, like I said, I think we get to great future and we have the power to do that. Yeah, yeah, I agree with you there. I'm so I

am curious we see advancements on like we're getting GPT four. I'm starting to see people use large language models that are based on that, you know. But yeah, it generates text or generates code. We've seen tools that generate images or identify images, you know, generate transcripts from audio. You know. I've heard AI generated sound clips right where they mimic somebody's voice or things like that. What do you think the next big innovation in AI is going

to be? What I'm starting to see happen is a sort of commodification of some of the more common apps that people try and build. Like I feel like during twenty twenty three, there's this huge rush of people building like you know, chat with my pdf type thing or chatbots that integrate with open Ai. But now I'm starting to see some companies come through with really good offerings, like bigger companies that kind of just solve that problem and rather than building

it yourself, you can just pay to integrate. And of course that's what I think AI are trying to do with their GPT store too. I'm not sure how successfully so far, but so that's something I definitely see continuing.

Like the low hanging fruit will be commodified, and in a way that I think there'll be a bit of a bubble popping where you're getting all these startups that have quite similar ideas just trying to do something quite basic with using an API will be will be having to pivot to something more complex or something more in a certain industry. I think that's a big trend. It does seem like the quality of at least open ai and like GPT four has maybe decreased

a bit. There's been quite a lot of discourse around that, and I guess that's a result of safety or trying to control the output. I guess we'll see a proliferation of more open source models that don't have those limits and the less yeah, less bound like that. And probably I guess we'll see the next generation OpenAI model within the next year or two, our would guests, and probably that will blow everyone's minds. I would guess I'll see.

Yeah. So I kind of want to touch on both of these. One is you said commoditization of certain AI applications or ideas, And I have to say, in the podcasting space in particular, because I'm pretty connected over there, it seems like there are a lot of services coming out and the next

one's cheaper than the previous one. In fact, I've seen a few services that have actually cut their prices because they're losing customers to new competitors who will transcribe the podcast, or generate titles or descriptions, or generate artwork or a number of other things that yeah it. You know, it was a novel use of it before and you only had a couple of options, but now everybody seems to be able to do it, and the barrier to entries a

lot lower m one hundred percent. I think that is going to continue to happen. I guess there's a period of arbitrage do you call it, where some people know about this technology, some people don't, And I think as developers we often sit in that space, like what can seems simple to us is actually quite difficult to other people. On the other hand, I think getting a good output from these ais is not guaranteed at all, Like hallucination

is part of how they work. So being able to understand that limit hallucination build safety around that is going to continue to be a challenge no matter how good GPT gets. I don't know really if it will ever be as good at knowing that it's hallucinating as humans are. So I think that probably will

always be spaced, right. Yeah. So the other area that you mentioned was that it's going to get into more I don't remember the exact word use, but it sounded like you were saying that it's going to maybe specialize into specific areas that you know it doesn't serve well right now, how do you see that kind of going Do you see that as something where somebody branches out and then user services like chat or open AI to kind of back end some

of the AI work, or people are going to be creating off of existing models with their own data to specialize the use so that it's, oh, well, this is a plumbing thing, or a phishing thing, or another

industry thing. Mm hmm. I think all of the above. Like I think that we'll be ais for specific industries that you'll be able to buy off the shelf, probably that already exists in some form, but as it gets cheap and cheaper to train these massive models, I think that's something you'll see, I guess for performing real world tasks and that sort of thing in the robotic space, I guess that will prolificate plariff. I would as well proliferate.

I hear you. Thank you as the experience podcaster. So I think you have the right of this. I mean, there's obviously no way to know, and so you know, there may be some variance in timeline or or capability here or there. But I think the next question that I want to ask is, so I'm I'm a run of the mill rails developer, right, I write web apps. I you know, I pull in kind

of the standard stuff to do authentication and queueing and what have you. Maybe I have a few things on my back end that I call out to APIs, which Rails is actually really good at. And so that's where I agree with you on Rails or Ruby's place in things is you know, hey, I can build an API gem just as good as anybody else and use these

tools. Right, So what should I be doing now to be forward thinking for my career to say, okay, if if AI is an inevitability, right, even if I'm writing a to do list, you know, I'm going to have to write some kind of AI into my application, and I'm gonna have to understand it well enough to be able to get it to do the right thing on a regular basis? What do I need to know? What do I need to do? You know? Now? So that when that time comes and I'm interviewing for my next job and they say what have

you done with AI? I don't look at them and go, well, I have, you know, sixteen years of Ruby on Rails experience, but I haven't had to use AI yet. Mm hmm. Yeah. I think that's a great question. I think contributing to open source is one where you can definitely get a bit of experience. So you're talking like the open aigm or something else, or yeah, that's a lot Yeah, perhaps, Yeah, there's a lot of there's a lot of projects out there, not just

API wrappers as well around databases and other kinds of things. Yeah, I think the skills you've got are so valuable and they're not going to go away. Like just before this call, I was working for a couple of hours with the developer one of my clients, and we were debugging a performance issue and just like, yeah, I was just showing him how to kind of bind a research through the code to figure out the slow part of the code. And I think like basic skills like that not going to go away in

their value. But I think knowing where AI can be applied and where it can really add value and when not to use it is a really important skill. So if you're going to say to a client's yeah, we can just use AI to solve all your problems, I don't think you're adding much value there, and I don't think that's really true. But if you can say, yeah, we could build you something to help your customer service staffs answer questions or suggest options or something like that using an API and you can know

how to do that quickly. I think that can be really valuable. And yeah, I guess starting to suggest that to your clients or to your workplace could be a good way to go getting some experience just those little integrations. Yeah, and just like not discounting how valuable the skills you already have are and how useful they'll still be. Like it's still engineering, you're still building

user interfaces calling APIs. Yeah, yeah, that makes sense. I mean one thing that I've been looking at just for top end devs is, like I said, there are a whole bunch of services out there now that'll transcribe audio, and so you know, just hooking into those. Yeah, I'm using an API. I'm not doing anything that's that far off from what I've always normally done, but it seems like it's a good way to get in.

And then yeah, you know, I can go fiddle with the other pieces or contribute back to the open AI gem or some other gem, depending on what I want to do or how I want to do it. You also mentioned databases, So what are you thinking there? I was just thinking of vector databases as quite a lot of people have written gems for like pine Cone. Yeah, it's that's yeah. Yeah, they work well with making

embeddings and quite closely tied to the to the AI space. But yeah, I just think there's so many opportunities and things are changing so quickly at the moment, and there's so much interest, Like everyone wants to get a piece of the AI action, and if if you can offer away for them to actually do that at a reasonable cost and really add a lot of value,

then I think there's always opportunities to do that. Yeah. Yeah, the I think there was a pag vector that Andrew Kine was putting together, and so yeah, you know he's he's pretty well known in the rails, you know, with search Kick and a bunch of other stuff. But yeah, peg vector is basically a vector database that runs inside of post Press as an extension and so right, so yeah, I mean all kinds of stuff there, right, and so just understanding, Hey, this is how vector database

works, this is how it pulls into into your application. Here's how to use it with your AI engine. Yeah that's cool stuff too, and I think starting to learn some of the pitfalls, like how well that might work, Like I've used pg vector and it's really good. It's a great option, and it's really cheap. Just having that knowledge can be really valuable.

A lot of people are quite interested in the assistance API, but at the moment, I'm recommending people stick to the chat that Open ai chat endpoint because assistance is really complicated to integrate with. It seems to be more expensive generally, and you can't stream stream text from it yet. All So, even just having a bit of having tried to play with that a bit and discovered that it's really valuable information, I think being able to see through the hype

a little bit. Yeah, that makes sense. I've also come to understand that a lot of the chatbot AI systems will allow you to import your own data, and so understanding, hey, here's how you get the data in, here's how you get the data back out. It seems like kind of a fundamental approach on a lot of that. Yeah, understand Yeah. One other question that I have is how do you test this stuff? How do you test these systems? M Yeah, I'm really interested in that. Like

I've always been seep into TDD ever since I became a developer. Like my first dep job, I didn't really know how to code, but I read some blog posts about TDD and it enabled me to write code that works even though I didn't really know how to do it properly, which I found really helpful. And I still do quite a lot of TDD. Obviously. The difference is with like generative AI, that there's no exact right or wrong.

Right. Yeah, but I think using ev owls maybe we talked about that last podcast, I can't remember, but that's something Open AI put together a Python library which you can use to like test the quality. I think they use it internally to test the quality of AI output, and I think there's a similar project in Ruby. But that's something I'm really interested in, to be honest, Like, how do you monitor the quality of your AI output?

How do you detect that maybe in production your AI app is giving people bad answers consistently, or something's going wrong right? And I think there will be tools built to do that. Yeah, I've thought about trying to build something right in that space, to be honest, whether maybe an open source library a bit like us back but for AI. But I don't know, I haven't quite figured out what that would even look like, right, Really,

do you have any thoughts in that area or I don't. I was curious what you were gonna Yeah. I think basically you need a way to say to grade the results you're getting according to like you need to be able to put in these are good answers, and then you probably need to use a language model to grade the answer is the language model is giving if that makes sense, and then you can say, okay, this change I made improve the results or make things worse, right, Yeah, yeah, that

makes sense. It feels like I might have to check that manually though. Yeah. Yeah, but at scale, like if you're building a big bit of software, you need you need a consistent way to be able to make changes and judge the grady I think, well maybe not maybe wrong about Yeah, No I agree with you. I just yeah, I don't know.

I've heard I've heard of people essentially doing something that looks a little bit like generative adversarial network, where you're not it's not informing that the result you get from the AI, but it's effectively Yeah, it's another AI that checks the

AI. Yeah, So you feed it results and you start telling it this is a good one, this is a bad one, and then it's able to come back and say, you know, this is yeah anyway, Yeah, and maybe in the future will have networks of that or yeah, I guess maybe that will be a common part of applications people build is to have multiple ai is checking each other and reporting on each other. I'm not sure. It sounds kind of terrifying, but right, yeah, have them all

talking to each other. So I don't know that I have any other questions. Are there any other areas of Ruby that you've been looking at that you're thinking, Oh, these advancements look cool, or you know, this particular area seems to be heading in a direction that's interesting or not particularly like I'm just interested in, like what's coming up in the future. I don't know what conferences are you going to this this year? I don't know either.

Yeah, I might go to Toronto. I think Rails World is in Toronto this yees, yeah, that could be fun. Cool. Well, I guess we'll wrap it up. But yeah, thanks for jumping on and talking to me for a half hour or so. And yeah, if people want to check out what you're working on, is there a good place for that or yeah, definitely. My website is my Alex rudau dot com. That's a l e X r U d a l L dot com. And yeah, I'm also available for hire for consulting projects at the moment. And yeah,

and you can find me on x Alex Rudel as well. And thank you so much for having me on. This was a lot of fun. Yeah, absolutely, well this is I'm so fascinated by all of this stuff, so it's it's fun to get on and talk to somebody who's doing it day in and day out. So thanks so much.

Transcript source: Provided by creator in RSS feed: download file
For the best experience, listen in Metacast app for iOS or Android