Accelerating Growth: SaaS Frameworks, Mentorship, and Ruby Development - RUBY 626 - podcast episode cover

Accelerating Growth: SaaS Frameworks, Mentorship, and Ruby Development - RUBY 626

Feb 21, 20241 hr 8 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

Charles and Valentino delve into a wide array of topics, from time management struggles to the intricacies of building SaaS frameworks within Rails apps. They also explore the idea of apprenticeship programs for coding, discussing the potential benefits for mentors and apprentices alike. The episode is filled with insights on open-source projects, AI model integration, and the Ruby Dev Summit.
Sponsors


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, Welcome back to another episode of the Ruby Rogues podcast. Our guests backed out for this week, so it's just us. I'm here with Valentino. Valentino, you want to say hi. Yeah, So I thought we'd just catch up. You know, we usually don't talk about us, so occasionally you'll mention, yeah, I'm building machine learning models and doing important nifty stuff, and I thought, you know what, it might be fun to

catch up. The other thing is is I started listening to some of the other Ruby podcasts out there that hadn't Like, I knew there were more out there, and I'd been subscribed to some of them, like Ruby on Rails podcast for a long time and things like that. But I ran across Remote Ruby with Jason Charns and Chris Oliver and Andrew Mason. I ran across Rooftop Ruby and I can't remember those guys' names, but they've got nice accents,

nice British accents. And then Ruby for All, which is also Andrew Mason. But he talks to Julie and I'm kind of getting the picture that she's a recent I don't know if she's a boot camp grab grad or just graduated from school or just decided to become a programmer because she used to be something else. But anyway, so they just chat and I was like, oh, we should just have a chat, right, So it's kind of both. So what are you working on and let's chat? Yeah, we're gonna

tell us stuff. I just I guess my latest thing is I just bought this massive three GPU machine. Oh wow, that I'm gonna start having some fun training and fine tuning of my own models for AI related Thanks, I'm really looking forward to that. Are you using lane chain or something for that or I will be? Yeah, I mean that's what every everybody uses. So uh, I'm gonna try and do it in Ruby. That's kind of my plans to do as much as I can and then maybe benchmarkham and see

see if it's possible to do it in Ruby. R isn't written in Ruby, but yeah, so you're just going to use it kind of like to use a database. Yeah, I mean that. I think the hurdle is PyTorch, which there is a port of it for Ruby. I haven't had a chance to play with it yet, so I'm kind of curious to see how well it works, like be doing some you know, hard GPU competational stuff, so we'll see it should be fun. Yeah, yeah, cool, Yeah, that sounds awesome. I guess. I guess the other one

big one in the space is TensorFlow. I would imagine, yeah you can. So so the tools that I talked to people and I had people bringing it up during the Ruby Dev summit, it was well, Ruby needs to be better in AI because if not, then Ruby's going to be dead on arrival and all this stuff. And I don't I don't know if I buy that, but you know, I'm looking at it and I'm going, Okay, well, nobody's going to build the modeling engine in Ruby, at least

not that i'm seeing. I guess they built it in Python and we're we're performed a dish like Python. So maybe. But yeah, what I'm typically seeing when I talk to people who are doing this is yeah, they're plugging into something else like PyTorch or like chane or something. Yeah, you know, it's everybody. It's funny, like you mentioned it, like everybody does

like that it's the default. Oh, Python's doing AI, but like really it's like C and C plus plus that is doing AI and then they have like buying Yeah, well, I think I think where it's gained the most traction is with like the laying chain people that have really like set up pipelines and tooling around like the parallelization, which is like kind of crucial for a lot of the uh you know, hard computation that's needed for it, and

so they've said they've like focused on that, and I think they've set up a functional framework that's worked really well for them. Uh. I'm hopeful that we can kind of get something out of that from Ruby too. Uh. Definitely. Ruby three has all the acinc stuff, Yeah, which we could probably get just as close to be honest. So that's what I plan to kind of test out a couple theorios I have there. Yeah. Absolutely, Yeah. You mentioned that it's mostly C and stuff, and you're right.

I mean there are two reasons that Python has kind of taken some of the space here, and one is that they have kind of the the math libraries and things that a lot of the academics wanted and then they backed it on to see so it's freaking fast. Yeah, It's funny because like if you're running even if you're running imprints, like you're kind of just like shelling out to run the CPP library and the ground right, Like, so, uh, it's that's going to be the fastest. And if you especially if you're

trying to like you have to optimize on the speed of the tokens. Like what you end up doing is you download the model and then you want to run infrints on it, and you run the inference through a faster library that processes in real time since you want to stream it often. Yeah, so that's I'm I'm interested in all the open source models and what you can do

with that and missdrill and mixed drill and all that. You can get very similar outputs for a lot of certain kinds of tasks, and so that's why I want to kind of see where I could take fine tuning in models get very specific input outputs and you can like make something really fast, right Yeah. Yeah. One of the things that I'm playing with in the AI space little bit, and I'm just barely starting to pick it up because I you know, I have the Summit, I've got like eight zillion things going.

But I've been talking to Alex Rudol, who wrote the open aigm. We had him on the show a while back, and yeah, I've basically we talked after I interviewed him for the Ruby Dev Summit and decided that we're going to do a five day challenge where you hook into open Ai and so I'm trying to learn it so that I can teach it, if that makes sense, But I also want to integrate it into top end devs basically because I'm starting to put out more content. And the system that we use is called

cast Magic. They had some apps Zumo lifetime deals, so I get like, I don't know, like four hundred or six hundred minutes a month or something I can't remember, but I get not enough minutes a month on there every month without having to pay anything extra for them. And yeah, I talked to a few people and it looks like you can just hook into the open ay stuff and it'll do a lot of that work for you. So I'm much more on the consumer and much less on the how how do I

make this model come together? But I think it'll be interesting. Yeah, I Mean the biggest challenge too, is like where do you host it? Because like you gotta, you know, put the weights somewhere and you know, then you have like, you know, all these different services that offer like a Chat GPT API related you know setup that just like less you run infernts on your weights like so that it's like, yeah, at some point it starts to be like, well, you know Chat, you know opening

eyes API isn't that expensive? Yeah? Yeah, so well it depends on what you want, right, Right. If if Chat GPT has a model you know, using GPT three point five or you GPT four that that does your does the job for you, then yeah, why build your own,

right, unless unless you have another reason to. But yeah, it's it's for those other setups or other circumstances where it's like, you know what, I either foresee that I'm going to need to expand beyond what chat GPT offers, or you know, my my scenario is different for some reason and so I need a custom model. Yeah. I mean the most interesting part to me is like the next chipsets that come out are versions of the MAC.

You know, they're all going to be driven to run enterance fast, right, and they right like the current ones already like do pretty great, and so like if it's very easy to run inference and like you can just download the weights for an open model that get pretty much the same as you know, GP three point five Turbo, which is like pretty great outputs. Yeah, Like then anybody can just run locally any model that they want and get like chat GPT locally and not have to, you know, worry about security

or anything like that. Well, I guess you always have to worry about security, but less less of who you're giving your you know, all your questions to which you know right now it's Google for a lot of people, and it'll be interesting to see that change. Yep, absolutely, So what else are you working on? So? I joined a maker space at the end of end of the last year and I've just been having so much fun.

They have a ton of three D printers and laser cutters and a metal shop and a wood shop and uh so I have a bunch of projects that I've just like had in the back burner for a while, and one of them is at Doctivity. I've made I've run out a little team that we do like cat GPD for for healthcare for physicians. And I wanted a way to like just have like a button that I could push and like have it

talked back to me. Since they have like the Texas speech, and so I thought there could be some cool applications where oh, you just pushed a button and it talks back, and we we kind of have this like internal Uh that's a little funny. But in in you know Microsoft word back in the day, these have a little clip clip art you know, you know paper clip that would show up and they would be like, oh, do

you have any questions, like let's chat. It was like one of the first like chat bots that was like in an application or like Clippy I think they called it. And so somebody, somebody at work was like, oh, we should have you know, Clippy, but for doctors. So it would be like a stethoscope. So somebody like made this like your kind of funny clip art looking stethoscope. So I thought, how funny would it be to have like a real life stethoscope that had like googly eyes the same way

that I could talk to I would give me the responses that. So I have that underway just for fun, like, well, what are you gonna name him? You have to give it a good name. Well, the internal name has been Stepie. Yeah, so I don't know, there's no real name yet. But either way, like I wanted to now, so now I wanted to set up where Okay, I don't want to have to like depend on open AI for all of this. So there's like an open source whisper. Like whisper itself is what open a uses for, like,

you know, transcribing what you're saying. And so they they published that and you could download and run it and so like you you could just yourself transcribe anything. And so I got a little micro controller already, and I got a you know, a tiny little microphone on it and you just talk to it and it transcribes, and so step one is done. And now I wanted to use one of these you know, open models and just like give

back the responses all locally. So I'm to get it onto a board, which is like hard to do because the inference does take time and computation. And so what I've done is offloaded that and I stream that to my MacBook just over an open like TCP connection and sin it's on the same network, Like I don't have to worry too much because it's just serving local requests.

Uh, and it's proxy there and so like uh, then I run the inference on the Mac and then stream it back to the device and so then I basically get like just I'm just streaming wave files at this and it works great. And so I got you know, the clipping and you push the button and it like you know, submits your requests, does the infers and outputs back, and I don't know, it's just a lot of fun.

So Makerspace like that project. And then I have a split flap display that I've put off for way too long where I want to chain together upon by show split flaps, which if you're not familiar there like the old school, like if you're at an airport and the displays would change here, like right, that's all. I want to set those up on my desk stop so I could just like say, send a message to it, it would like start flipping it and right, oh yeah that's old old school stuff right there.

Yeah. Yeah, So I don't know, it's just having a lot of fun with that nice very cool. How do you working on? So where do I start? So the big thing that I'm spending most of my time on is the Ruby Dev Summit. As we record this, it's going to be next week February thirteenth through sixteenth, and yeah, so the plan is effectively, I've done twenty one interviews. You were one of the interviews. But yeah, so putting that up, yeah, I figured you did.

So anyway, the talks will be available for twenty four hours from when they release, and then if you sign up for one of the subscriptions on Top end devs, then you get forever access. Incidentally, we have one person watching, or somebody may go watch the replay on Twitch or something. Oh we went up to two people, all right, So anyway, it also gets you early access. So I have six of the twenty one uploaded

right now. My editors get me more as we go, and he'll have he'll have them all for me, you know, by say Monday, right, which is one day early access. But if you want to watch them at your leisure and you don't want to have to worry about that time window, you can sign up. But if you go to rubydevsummit dot com and you enter your email address and I'll email you when they come out, Hey, this talks out, here's the ur I'll go watch it right So anyway,

it'll be really cool. And I talked to a whole bunch of people like on the Ruby core team, so you know, we got Utasito did Ruby Wazam. I talked to Soto Matsumoto, no relation to Matt's. Incidentally, I asked him who does the RBS typing stuff. Talked to Jeremy Evans, I've talked to, I mean, just all kinds of people. I'm

we talked. I talked to Marc Andre Cornoier last week for Ruby Rogues, and I emailed him to see if I can get him to do it because he wrote thin the web Server, so and he's got a whole bunch of stuff that he's been thinking about and working on anyway, interesting stuff from interesting folks, and just getting that together kind of raise awareness of the subscription and then you know, let people know, hey, look I'm putting out these videos. If you want to learn Ruby stuff or real stuff, you can

get one or both of the video series. And then just getting videos for the video series done is the other thing that I've been working on, and for the Rails series in particular, I'm actually showing you how I'm building the website for Rails Composer, which is the last thing that I'm working on work wise, besides my client project, which is a whole other thing, so

rails composer. I've talked to a whole bunch of people that have either started businesses like SaaS businesses or maybe like some of them don't necessarily qualify as a SaaS business, but you know they have like hey, you pay this, and you get a license, and you have a subscription to renew your license and things like that, and then they're selling other software like Dragon Ruby for

example. I talked to a mirror John and right, he's got a thing where you pay, you pay for your license for dragon Ruby and then you can go download it right and your license to use it. So when I was talking to him and I mentioned this idea and started talking through it with them. And I've talked to a few other people too who are building or have built SaaS and I was like, well, what I want is I want to be able to say, hey, look, you know, plug

this in, do some config. Now you've got payment processing right within an hour or two, plug this in, you know, do some config and now you've got user management right, and it you know, has something that works cleanly with device or active off or you know whatever, right, and so you can set up off. I feel like oth's been handled for rails,

so I don't need to do that. But you know, so any of those common scenarios that you build into your application, right, maybe I'll build in a licensed distribution thing, right, so you can license your software or you know, just different things like that. The inspiration actually came from Laravell. I don't know if you've looked into Laravel a whole lot, but larravel dot com. If you go look and you click on their products,

it lists a whole bunch of different things. So one of the other things I want to put together is so they have Forge, which is essentially you can deploy your applications to Digital Lotion or linod or whatever. Right, so you set up the machines and it'll deploy them. And I think it's pretty

similar actually to hatchbox, which is Chris Oliver's solution. But what I want to do is I want to do it more along the model of camal And so instead of saying, hey, deploy you know, set up brails on the server and deplay it there, what I want to do is I want to say, take this app, containerize it, and then deploy it to whichever machine in the set of machines that you've told me about that you want

it to go on. And so then what you can do is you can deploy multiple apps onto the same set of machines and have it load balance and everything else like you would expect and anyway, just have everything kind of play

nicely together that way. And then if, yeah, if one of your apps starts taken over resources so that the other ones are starved for resources, you know, you can migrate them off and just give you a clean way to migrate them off with Kamal, because ultimately it's just containerized, and so you know, you kill it over here and start it over here, and then you tell the load balancers over there now and you're done. And so it gives you all kinds of flexibility and you can do all kinds of stuff

with it. But the other thing is is essentially what you wind up doing is giving me an SSH key onto your machine or you know, in some other way, you know, accessing the machine so I can set it up with an sshkey so I can deploy to it, and then from there it just does all the things and so you don't have to go get deep in the weeds with Kubernetes and stuff. But you know, they have all kinds of other solutions for different things. They have their own queueing solution. I

don't feel like I need to build that. They have an authentication solution for Laravel. I don't feel like I need to build that. But there are some of these other pieces that if I was building a SAT and I've looked at building SaaS apps for podcasters, it'd be nice to just say, Okay, look what I want to do is I want to manage the guest workflow. Right. I don't expect that anybody's going to have a library or rails engine it's going to do that for me, Right, I have to build

that myself. But managing users, supporting users, managing their subscriptions, collecting payments. I mean, everybody that builds a SaaS app has to do that, and so why not just have a quick and easy way to do it.

And then the other thing is is I want to give people more of a system for building their SaaS apps and not a system technical system, but like, hey, you need to validate your idea, here's how you do it, here are the steps you take, here's how that works, right, and so then what you do is you pull the engine in to schedule calls with your potential customers, right, and then you just embed the component you know, on your front page and say, hey, we're launching.

If you fit this criteria, we'd like to talk to you, or you know, however you do that to attract people in. And then once you've started validating the idea, then you know, maybe you put up a change log or early access as part of the user management, right, and so you can plug in these different systems as you go. You set KPIs for your your app, and then you get an engine that allows you to and I don't know if this is a rails engine or if there's a library and

an engine, or you know however that would go together. But then it collects the metrics for those KPIs so that you can say, hey, I need to be growing by this many users, or I need to be reaching out to this many potential users, or you know, what have you Or if you're marketing, you know, you have a podcast and you're trying to get people on your mailing list because that seems to be the effective way to

sell it. Right, It's okay, well I need to have so many people signing up for my email list, right, and having a way to track that and then display it so that I can go look at my dashboard every week or every day or every month or however often and I can say, oh, I need to focus more on you know this angle. And then also with those KPIs, recognizing I'm not getting enough traffic, how do I get more traffic? Or I am getting enough traffic but they're not converting.

How do I get to convert? And so just giving people the tools to grow their SaaS that all live within their Rails app, Right, I don't have to go sign up for some third party service out there and you know, have it plug into my thing and then have all my data sent off to the cloud and then hope that the provider doesn't you know, disappear on me or whatever. So anyway, that's that's what I'm looking to build.

I feel like Rails is already the awesome one person framework, and I want to make it the one person SaaS framework where it's just like if I was going to build a SAS, this solves eighty percent of the common problems and so I can just be in my zone and genius and know what to do next to make it grow. Tell me you've looked at bullet train. I have looked at bullet train. So what are you saying as a differentiator

from bullet train. So bullet train building on it. So the issue with bullet train that I have is and I haven't actually tried it, but my understanding is is that you you basically get one template and so you you use the template in your for your rails app. And what I want to do is I want it to be more of a plug in model, so you can pick and choose which pieces you put in. I also don't know if I want to be opinionated on some of the things that they're opinionated on.

So for example, device, you know, I just I don't. I don't know if I'm really keen on it. I don't know how their one click deployees work. Oh it deploys the Kuroku, right, And so that's another thing, right, I don't know if I want to lock into all of this stuff. I mean that that's a big piece of it. The other thing is is that so one of the things is they're using like can can can for their their roles and permissions and stuff, and I want to

be much more surface to UI on that stuff. Right, So if I have a non technical co founder who's helping me set some of this stuff up, I want them to be able to manage permissions and things like that, right at a more fundamental level. And so, you know, some of those things as I go in, i'd like I'd like to tackle I mean some of the stuff like you know, teams, you know, tailwind, theming. Yeah, a lot of these other things. You know, good

looking form fields you know that are JavaScript in and stuff like that. It has outgoing web hooks, which probably isn't a bad idea. So yeah, there are definitely things here, but I want you to be able to just pull in the pieces you want, not have to use the whole framework. And I want to make this I don't want you to have to basically code

or customize my stuff. I want you to be able to set it up and have it do eighty ninety percent of what you need and then if you really do need to customize that, you can and that should be easy. But for the most part, it's like, hey, look, you know, we've already built in three of these features. So we're just going to grab the plug in for this other thing and integrate it. Yeah, that makes sense. It sounds like you're getting on the bandwagon of using rails as

much as possibly can and just for Yeah. Yeah. The other one that I found out there that does this is jump Start, and I haven't I haven't looked at theirs because there's there's is a paid deal, but I think it's kind of the same thing. Yeah, I've just jumped Start before. It's pretty good. Yeah. Does it gets you right up and running and in no time? Yeah. Yeah. I've heard a few people very plain about bullet Train. They had some issues making it bending it to their will.

Yeah, it's very opinionated, I will say that, but it is very featureful. So right, if you're looking if you're looking for all the things that you would need for a SaaS business, it's like pretty turnkey and configurable in that way. Yeah. But I feel like, yeah, jump jump Start, bro. I feel like that was more of like a platform and then you build on top of it kind of thing. Yeah, rather

than trying to tune the knobs. Yeah, and yeah, what I'm looking for is a little less use my platform and a little bit more of Hey, here, here's your toolbox, right, here's I still can't believe that, yeah, that Reels new does not have an interactive element. What do you mean so that I mean, there's the Mayo WTF that started to try and you know, cannibalize all the griefs that people feel are in the Reels ecosystem. I'm trying trying to focus on like new you know, people new

to the community. And one of the things is, you know, everybody like at some point has made some kind of configurator to start a new Rails app. Like there's a way to like have your templates, so you can have a template that you generate all your new Reels apps off of, which is nice, right, but then you have to end up having to maintain the generator and make sure that you know, the template is up to speed

while all the new generator dates. And then so like the whole idea was okay, well, rails could just like use its existing generator and we'll just make it, you know, add little UI toggles. So in the command line you could just have you know, a dash dash interactive and it'll step you through, you know, walk you through all the steps for do you want to use like the asset pipeline, right, do you want to use

turbo like hot wire? Yea, And like you know all the things that all the flags and features that already has that are just unless you do like you know, reels new dash dash help, Like you have no idea that they're in there, right, And so just for the rails flags themselves, not for just for the rails flags, like just start there, right, yeah, And so somebody built that and they're like, yeah, like we could do this pretty easy, like and they built it and uh, you

know, shut down pretty quick and that oh we did want to have to maintain it. Then anytime I knew flag, we also have to you know change the generator. And you know that's fine, but like that's also true of all these flags and all this other stuff, like you know, wouldn't be that much more to maintain. I don't know, Like yeah, for the number of times as somebody just from scratch makes the rails configurator, I feel like maybe the benefit weighs all the time wasted doing that. Right.

Well, it's funny because so railscomposer dot com I got from Daniel Keho, who did rails apps and he built Rails composer, which would ask me totally yeah, And so you know, I emailed him and asked him if I could buy it from him, and we worked out a deal and anyway, it was pretty funny. He's like, yeah, I'm not maintaining it anymore, so you know, Yeah, anyway, he didn't have any heartburn giving

it up. But anyway, it was just kind of funny because yeah, I kind of want to do that kind of a thing for yeah, for SaaS app. So then it could be Rails composed and it would be Okay,

which of these things do you want to pull in? Right? And yeah, I'd love to put built themes into it, right, So it's hey, look, you know, we've got a whole bunch of nice looking view components right that are all all have the right CSS classes and properties and what have you, And so if you switch themes, it just pulls in

a different set of view components and magic manic. But yeah, I mean I've got all kinds of ideas of things that could go into that, and I mean there are a lot of things that you could really provide to people off of that, But those are the biggies. Those are the big things

that I'm working on. I mean, I volunteer at a bunch of stuff here locally, but it's not really anything that people who watch or listen to the podcast are that interested in. So yeah, you know, we both probably have just like so many ideas, And I feel like the more senior you get, the more ideas that you just have that just like end up on a shelf. Yeah, And I feel like there's like there's a missing opportunity there to just like have like some kind of uh you know, employment

option, just like work on people's side projects. Maybe you know where I feel like I might get to a point where, like, you know, I could afford to just like okay, you know, pay somebody to try out a couple of them, you know, see see how far you can

get. And maybe like that's like an internship opportunity to write maybe just like and like junior like onboarding like apprenticeship kind of style program that could be made from this, right, like just trying to chip away at people's side projects, like because you know, whether or not they do anything, like they're end up where they are anyway and will continue to be right, Like, I don't have time to do all these side projects, but I got a

lot to do it. Some of why I wanted to do like Ruby bits and Rails clips and video series was so that I could work on the side projects, right, And so yeah, I mean for Rails clips, I am building Rails Composer, right, So I am building an actual business, right and then yeah, I intend to show you, Okay, I'm building in the you know, the user management console that's going to wind up being for sale on Rails Composer, right. But anyway, it's for me.

It is. It's that I do. I have like eight ideas that I imminently want to do that I just don't have time for it, all right, I see, wouldn't it be nice to just have like an apprenticeship program where you can get a pipeline of people right ready to work on it for the experience and exposure and to have a product that they could join potentially if it becomes fruitful. Right, that's true, if it starts paying me,

I can use that to start paying them, right. And so I don't know, Yeah, I feel like so many now I have a project to run many of my projects exactly, thanks, I'm It's like so many hours are wasted on developers, just like making it to do app, right, Like yeah, instead of a two do app, why not just like join this like apprenticeship program and like yeah, work on some idea that somebody has fleshed out that like it's pretty much a to do app, but just like

you know, right, or their own version of it. Right. So, like one of the things that I want to build is just a guest workflow manager because I have been cobbling things together using zampier for years and it still breaks all the time, right, And so it'd be nice it was just okay, it does all the things right. Sure, it integrates with Google Calendar and one or two other things in order to do some of its work, but it doesn't the way I want it, right, Or maybe

I'll do that. Maybe maybe I'll start the apprenticeship program. And so if you're out there listening and you have projects that you need an apprentice for, you know, just let me know and I'll get like a nice big list going. And if you're somebody interested in like learning Ruby and rails and you want like exposure and experience, like you know, with some tips from a pro, like you know, reach out to me. You know, I'm on the Twitter, let me know, and if we get a good enough

bace, you know, maybe hey, maybe something will happen here. I've got a couple of projects that honestly, if somebody came to me and wanted, you know, a little bit of coaching every week, I would I would totally help them if they would help work on those, right, especially if it would be made right Like, I would just like love to use it open source wise, you know, like hey, and then it's yours if you want it, like really, you know, if I need to

make some tweaks to it, I'll do the open source thing and submit a PR for it, you know, like yeah, I feel like, I mean, I've looked at some of the open source stuff and I have to say that this might actually tick people off, but some of these projects I would I would open source them as like LGPL or something so that hey, look, if you're going to use it or contribute to it, you have

to contribute back. And I'm the only person that can actually sell it and make money at it, because if I'm going to invest all the time, effort and money into it, yeah, I'd like to profit from it. Yeah, I mean licens thing is important. I think it's often overlooked and get hubs MIT default. I think maybe uh you know, catches people off

guard when they go and try and do something. I think I think MIT licensing is great for like the vast majority of open source stuff because it's hey, look, this is out there to help other developers, and so if they want to tweak it, tweak it, tweak away. Right. Yeah, But for some of the other business stuff, yeah, I don't know. Yeah, I know that there was a couple of Ruby projects that just like completely wipe the get history right because they they changed the license or something

like that. I forget what it was. I don't know. I haven't heard about that. Oh okay, but one project that is from a local company here. There's a company here called Instructure and it's a it's a fairly large rooby shop actually, and they have a product called Canvas and it's the systems it's used on like college campuses, and I think my kids' schools use it and stuff. Right. It's kind of funny because you know, they kind of give me funny looks when I go I know the guys that built

it. But anyway, so yeah, they they started putting it out there, and the big player in the space was Blackboard. I think it was Blackboard, and that was what was out there when I was in college,

right to hand out assignments and stuff on the Internet. And they had a whole bunch of stuff that they had patented processes and things like that, and they basically came out and at one point publicly stated that they would not sue other learning systems that used the stuff that they had patented if they were open source systems. And so what Canvas did is they took advantage of that and released an open source version of Canvas, so if you wanted to, you

could go stand up your own version of Canvas. And in fact, at the time I was picking up contracts customizing Canvas for different people, right, so they'd gotten it installed on their machine and then they had forked it. But it was LGPL, so you could use it for your own stuff. But then any changes you made to it also had to be open sourced, right, because that's GPL and LGPL. No, it was a pharaoh.

GPL was AGPL. But you also couldn't sell it, right, so I could sell services to help people set it up and things like that, and they could run it, but I couldn't actually like run a service that says, hey, you know, have a canvas so and you couldn't close the source. And so that was the way they got around those patents because then Blackboard couldn't go after them without giving themselves a black eye. And I think

they eventually ate their lunch and took most of their business. That's another thing. But yeah, so you know a model like that where it's like, hey, look, I don't really care if you use my app, but I don't want you know, I don't want you competing directly with me to

give people access to run my stuff. Right, so all the non programmers out there who want, you know, a version of the thing that I built, they have to come to me and pay me in order to have it, right if they're not going to go set up an open source version themselves. Oh that makes sense. So anyway, but I don't even know if I'm gonna get there with some of these projects because I don't have time.

So so we were talking about time management before the show. You know, well, yeah, are you using anything special for your to manage all of these ideas that you have right now, I just have this like trello board that's just like it might as well just be a text file. Yeah, it just keeps growing. So I used to be better about this and what I used to do, and I just got out of the habit and

I need to get back into the habit is. I would basically write down three to five things that I needed to do today and I would just make sure I got those done and so yeah, and then I do the same thing for the week, right as I'm like, these big chunks of stuff have to happen this week, right, and so it's hey, you know, like I'm an officer for the Utah County Republican Party, right, and so it's hey, I got to get this stuff done for the party.

I got to get this stuff done for work, I got to get this stuff done for this other thing, and you know, and so then it's it's just a hey, I got to get these things done. And so then I look at the next thing that has to happen for those things, and I put three or three to five of them on a list. I get them done, and I usually actually block out time on my calendar.

I haven't been doing that lately, and even then sometimes it's overwhelming because I don't see how I can fit everything in when I try and put it into my calendar. So I don't know, I don't know what the answer is, because I feel like I have more things than I have time still, and so then I have to start taking things off my list. But it's all stuff that I feel like has to happen. So yeah, I have a hard time balancing like the uh, like the work and play time mm

hmmm, because like I have a pretty good schedule for like work. At the beginning of the day, I just write down the things that, like you said, you need to get these things done, and then some you know, extras at the bottom what would nice to have? Yeah, And

then then I have my list and I was looking. I stares at me all day, and I got to cross the stuff off and so but at the end of the day, you know, I don't have anything I'm looking at because I you know, I've got a family and kids and dinner and all the yeah, stecking up. And then so like then it becomes well, okay, I found this like hour in the morning every morning that I

could do other stuff. But like it's not really enough time to like write stuff down and get across to It's like just enough time to like, you know, read some stuff and like play around, you know, with an experiment, and you don't really have time to build anything. Yeah, yep. So Dave Kimura, I asked him how he was, you know,

because he does drifting ruby on top of a full time job. And what he said was that he worked something out with his wife so that most days seven pm to ten pm is his time to do drifting ruby and whatever else. That doesn't work for me. And part of the reason why that doesn't work for me, I don't know how old your kids are. Maybe I should ask how old are your kids? Right out? They're eating seen.

Okay, So my lifestyle is a little different. My kids are eighteen, sixteen, fourteen, twelve, and eight, and so they all have things that they need to be at and do. And the other piece of the

puzzle is is that my wife works at the charter school. She's the lunch director over there, and so she's gone all day too, and so if there's anything that happens that has to get handled, a lot of times it's me, right or my my daughter just started a job at Subway, and so she doesn't have a driver's license yet, and so I wind up driving her to work or picking her up or right. And so there's always something, always something, And then being involved in the party, you know,

with the political stuff. You know, there'll be a state legislator that wants to meet for lunch, or there's some thing like what Utah's caucus Night is coming up in March, right, and so making sure that we have that altogether so that people who want to express their you know, their opinions on because we're also doing a presidential preference poll at caucus night, and so we want to make sure that that comes out fair and square and that we're not

tipping the scales inadvertently in any way or anything like that. And so, you know, there's always the other stuff that comes up, and so having a set time that I can do that stuff from seven to ten, it just you know, in the evening, it's just it's not something that I can reliably do. And so what I've started doing this week is I've just started putting in at least an hour on that stuff, and then I'll start doing the other stuff. So then I'll work on the client stuff or the

party stuff or whatever. But yeah, it's not always enough. Yeah, I think I just needed to work on optimizing that one hour window. Yeah. There have been a couple of nights this week where I've gotten like three hours of sleep because I just stayed up, kept working on stuff. I mean, I only have two interviews left for the summit, and that's taken up some time too, So that's one thing that least will kind of fall off my plate. Yeah, I don't know, I'm thinking more about this

apprenticeship program. You know, I'm loving that idea, the only valid way to expand my hour window. I think I'm very seriously thinking about whole stale wholesale stealing your idea and saying, these are the projects I'm working on. You know, hey, let's collaborate, you know, let's just make a simple to do app that's you know, Chuck and Valentino's like you know, wish list, and then hey, sign up, you know, sign up

for the apprenticeship program, pick your projects. Yeah, you know, it comes with, you know, I don't know, a couple hours a week of you know, yeah, mentorship one, the mentorship and then like a review period right where after you know quarter reviews. You know, you go through and you get a little extra time and get to review the progress, right, Like, yeah, I'm not interested in having them apprentice on a to do app. I've got some other ideas also. Well, I don't

mean, I don't mean it to do app. I just mean, you know, we make just a website that is a to do list. Oh, I gotcha, that has the projects that are on our list. Yeah that we want. That makes sense. Yeah, Wesley Curry asked if we're live. We are live, so Hi to West Virginia. But yeah, yeah, I kind of like that idea, some kind of project management thing or something like that. So I'm kind of digging the idea, right, So then it's yeah, it's Ruby Apprentice something rather. And I would even

be open to experienced people. Right if you're between jobs and you want a project to work on, and you want me to refer you because you do good work, sure sounds good to me. Exactly. I got some advanced projects. I yeah, I like wanted to try, you know, like I wanted to I wanted to try setting up a a rail's GP I o JEM where I could hook up real time action cable to a GP I open on the Raspberry Pie. Yeah, you know, like that could be advanced

and I feel like it could be fun too. You know, that's really interesting. I've never seen that before. It says it says Wes Wesley Curry was banned and their comments were removed because we're did you do that? Or was that you did that? Yeah, he started posting bizarre stuff and I'm like not interested. Yeah so anyway, oh so so yeah, so yeah, we should definitely flesh this out some. I don't know that it'll get

traction, but maybe it will. Maybe there are people out there looking for a project to think to contribute to and to be perfectly honest, the other thing is like, as I'm working through Rails composer or working through ruby bits or Rails clips or some of the other videos or you know kind of premium access things, I'm totally willing to let people in if they're willing to contribute, right Yeah, And you know, I feel like that's a hard it

could bridge a gap too, right like for open source, where like the hardest part is finding contributors, right, Like, you have a set of things that you know need to get done, just you know, you don't have the time for it, or it's just like right, you know, you have a backlog of issues. You don't just throw them on the apprenticeship

page, you know. I like that if you're willing to devote a certain amount of time right to like mentor somebody for so long, just and they'll get you know, they'll work on this set of issues or whatever it may be for you. Yeah, I feel like I feel like it could work out. Yep, all right, And I want to know how you and him I did. I didn't know you could do that. Oh, they have a little Hamburger menu on you can put on YouTube. It was on stream yard. Okay, good deal. Yeah. I think you can do

it with the top end of user too. Okay, just good to see that. I don't know how to get them out of time out though. Oh yeah it's right there. Delete comment, put user in time out, bend user all right. Cool. Yeah, I've I've played with the layouts of stuff. All right, good deal. Was there anything else do you want to make sure people know about? Maybe maybe our first mentorship project will be the mentorship website. Yeah, right, let's put it out there.

If you're interested in building a mentorship website. Yeah, but the thing is is that I would also be willing to so just as an example, not just the mentorship thing, but also like, if you're willing to contribute in a meaningful way on a regular basis to my project, then I am willing

to give you in return. Right, And so there's kind of an informal or I don't want to say contract, but understanding right that Hey, I'm going to get an hour a week of your time in exchange for contributing at least, you know, closing so many issues on a ge hub repo or you know, if you solve these issues in the repo, then you'll get two hours of my time, right, and then I'll put more up next month than you can claim those as well, or you know, but that

way, you can incentivize people with more than that, right, And then I could go in there and say I have this project, I need these things done, and if you do it, then you'll get access to my whatever course or whatever right as part of the deal. And so if people want to work for their access instead of pay for it, then that's an option. Yeah, that's pretty cool. Well, I don't know, if I don't know if I have anything else to add, But I'm kind of

digging this idea. This is kind of floating to the top of our conversation this way. It wasn't planned. We had not discussed this beforehand. It's something I've been thinking about a lot. Yeah, but like I just sat half the time. Yeah, you know, like I throw ideas out on Twitter all the time, and I'm like, hey, yeah, yeah. Well. The other thing is is I've put before when I put the summits together, you basically just had to pay or you couldn't even get to the

videos. And this time I'm putting them up for free for a week or during a week, I should say, for twenty four hours each And I'd have people come to me and say, well, I live in you know, this really small country and I'm poor and I can't afford it. And I was always not sure how to give it to them, you know, because it's like, well, I do have people who are actually paying full freight for this, right, and I don't know that I feel good giving

it away. But I could say, hey, look, you know, this should take you a couple hours, and if you submit a pull request, then I merge it. Then I'll give you a ticket future. Yeah, all right, good deal. Well, I don't I don't know if I had Like I said, I don't know if I have anything else. How about you than anything else you wanted to bring up or that you're working on? No, No, not really. That's it for me too.

It's a you know, I've got to start. I have this blog that I used to keep track of my you know, my embedded systems discovery, and I haven't done it in a while. And that's where I'm gonna go next probably is get finally get some of these projects up and document it because they're just they're too fun. Yeah, it's worth the story. Yeah, I love it. All right, Well, let's go ahead and do some picks and then we'll wrap it up. Why don't you go ahead and go

first. Yeah, So I'm gonna do all ai picks. My first one is a LAMA. I've been using that a lot O L L A m A. It's just like a super easy, you know, way to download open source models and run them locally, super slick. It configures it by your system, so you get the optimizations of the Mac if you're on one or you know whatever GPU you may have. It does pretty great and runs

fast convenient. It sets up like a local api for you to to hit too, so you get like, uh, you know, open Ai style chat api to complete stuff with using your local models, which is pretty neat. So I've been playing a lot with that and having a lot of fun to check that out. And yeah, the other one, I've been playing with Turbo more and I keep going going back to this hot Rails tutorial and we've had what's his name, Alexander oh oh Man blanket on his name.

I have it open here rubon yep, Alexander Ruban. We had him on once and to talk about it and just it's great. It's such a great reference and it sets you up with like a great looking site that's just all the NILA's CSS, and it uses like the Beam methodology, which is uh, you know, some people are saying it's dated, but it's solid and it works well, super easy to integrate within rails and yeah, it's just so much fun to play with Turbo and trial the Turbo streams and get stuff

updating live on the page, all of just rails views. It's no JavaScript. I love it. So I've got a couple of picks here. The first one is a game called Atiwa. I know I'm saying that wrong. I'm sure I'm saying that wrong. It is a board game where you basically are breeding bats. And so what it is is you start with a village and you can put different things on the village. You can put trees, you can put families, you can put wild animals, you can put goats

and bats. And what you're trying to do is you're trying to expand your village and raise more bats. And so when you get a family, they're untrained. Once you train them, then you can give them a bat to work with. And then, yeah, it's fairly involved game. It's mostly a worker placement and then you're managing your own little economy on your own. It's a little bit more involved game. Board game geek actually waits at a

two point seven to two. So I keep telling people, like the average gamer, you know, if you're a casual gamer, two is you know, kind of your sweet spot. If you want something that's mildly challenging to follow along with, but not so much that you have to really think hard about it. A Tea is a thinker game. It's it's but it's so fun. Played it last night with my buddies. We let my my friend Mike picked the game because today's the first anniversary of when their baby passed away,

and so we're just like, dude, whatever you want. That's what he wanted to play. But it's a fun game. It's an awesome game. So I'm gonna pick a tea and let me just get another link here to Amazon. This is an affiliate link, so I do get, you know, the three percent or whatever for referring it through them, But anyway,

I really enjoyed it. Another thing that I'm gonna pick. And I've just been on a kick the last three or four days listening to Toby Keith music because he passed away three days ago, and I grew up kind of as a teenager listening to his music, and in college I really got into his stuff, and so I really enjoyed It's kind of irreverent country rock,

this is the way I kind of describe it. But yeah, he's had a whole bunch of just terrific songs, and I've really really enjoyed his music over the years, so you know, yeah, I'll miss him making new more of it, so anyway, so Toby Keith and then yeah, I should have pages up for Rails Composers soon to go check that out at Railscomposer dot com and the Ruby Dev Summit. I think we're two weeks ahead, so I think this episode will come out after the Summit's already been out for

free. You want a copy, just go. You can still go to Ruby Dev Summit, enter your email address and then it will take you to a page where you can sign up for Ruby Clips and or Ruby Bits and Rails Clips. I get them mixed up all the time, Ruby Bits and Rails Clips, So you'll get a video a day or video a week for each series, and you can get it for half off the second video series, so it's basically twenty nine dollars instead of instead of nineteen for each one.

And so yeah, go check that out. And then yeah, the other the other one that I'm really getting into these days is Tailwind tailwind AI or UI in particular. So Tailwind UI is basically you can pay for it and then you get templates for different components or layouts in with Tailwind. Now the layouts are all react so that you know you can get a next JS app, and what I found is that it's not terribly difficult to convert it

from next jas components or react components into rails View components. And so that's what I've been doing, is I've just been pulling it over. The only thing that I've run into is that they use the headless library for the animations, right, so if you click the button and it drops down the menu

things like that, they use Headless. But I haven't found anything in there that wasn't terribly hard to implement with stimulus, So I've just been putting stimulus on it, so then if you click it, it does the couple of transformations and off you go to the races. So anyway, I've been pretty

happy with that. The first couple of rails Clips videos actually cover how I've handled a couple of those before I get into the nuts and bolts of Okay, now I'm atting users, now, I'm atting permissions, now I'm atting

at whatever rights sprite. So if you're looking at that and going, well, I like the idea behind tailwhen UI and I've you know, I've grabbed some of the components, but I either picked up just the HTML version that doesn't have the JavaScript to animate it, or I have this React component that I don't really want to pull React into my app to use. Then yeah, i'll walk you through how to convert them. So anyway, those are

my picks. But yeah, I'm really digging tailing you. I am not a fan of trying to figure out how to make it look good on my own. One other thing that I found, incidentally that I thought was funny is I think it's the salient layout. If you go to go rails their main page, it's it's salient, and I'm wondering if they're running next JAS. I'm wondering if Chris is running next JS there instead of Rails, or

if he converted it. But I've seen a couple of other people running it to people within the Ruby community who I know generally use Rails, So anyway, I'm not the only one using it. But yeah, I think that's all I've got, So we'll go ahead and wrap it up. Thanks for coming, Valentino. Looking forward to seeing more of your projects. Thanks for having men. This is great. Yeah, I'm looking forward to apprenticeships,

you know, like, let's do it. Yeah, all right, you know, the thought bought had the apprenticeship program for so long, you know, and I think they still have. But it's it's paid, uh you know, so there may be a little bit difference there. But I feel like, you know, a pay to play kind of situation. Uh,

you know, I don't know. It's just a way, Honestly, if I just had a way to just you know, have a list for people to work on that are also interested in mentorship, like you know, what a great way, right, I feel like, yeah, some birds. Yeah, I do have to say, you know, and we're still live, but I do have to say that. The only other hang up I have is that technically, unless you sign a contract or something, you own any code you write, and so we might have to have some kind of

agreement that says you know that. And what I would do is I would just have the mentor opt into it, right, And so they say I need my apprentices to opt into this. That says any work that I do on or related to my project becomes property of myself or my company. And that way, there's just no hang up. If you have somebody work on something, it's like, yeah, you know, you're the one that ultimately

has say on how it's licensed, use whatever. But then you can pull people in on private repos for you know, company owned projects too and not be worried about Okay, they're going to come back and sue me because they own ten percent stake now in this code base. Yeah, I mean, hey, I have projects where I don't mind. Yeah, if it's on it, well, if it's open, let's start step one. Yeah, let's start step one. You know, don't projects that don't involve licensing,

right, you know, yeats, let's get that step. We'll get there when we get there kind of thing, you know. Yeah, And then here's some projects we want it to be made. You just don't have the time. Do you want to work on it? And you know, get some mentorship like I got plenty of those still. Yeah. Well, and if anybody knows a good attorney that does those kinds of contributor agreements, something we just put together and then just have on the website that people sign as

part of the deal. Right, And so then it's hey, I need people to assign this right, and so then it's I agree and wave all rights to specifically the work on this project. Right. We'll make it very narrowly focused but yeah, that then people can just get help wherever they want, and they can open up more opportunities to people on the other end.

And I mean, yeah, you're right. Some of the apprenticeship programs I've seen them where they yeah, they're paying the apprentices to work on actual apps, but there just aren't enough of those opportunities for everybody coming out of a boot camp or making your career change. And it would be terrific to have people be able to come in and really take advantage of that. And then after six months working on my project or your project or somebody else's project,

they go out there and they have they have that on their resume. Well, for the last six months I've been working on this job board, or the last six months I've been working on this internal app, and you know, here's my reference, right, And then the reference is somebody in the community who can say, yeah, they did a great job. Yeah. I mean you know who is it? A man the Ruby friend program, right, Uh huh, that's such a great I don't think it was Brian

Hogan. I think it was He's Ruby mentor. I think, oh no, there was one participated in a while ago. Yeah, he orchestrated the whole thing himself, just like via email. Oh man, I'm so bad with names and k yeah Andy krawl yep. And it was great, you know, like he just are you interested? Yes? Okay, he put

put you on the list, and are you interested in the mentorship? Yes, put you on the list, and then you know, random sample pair people up and boom like okay, here go meet, here's some guidelines, you know, be respectful, like you know, and it worked out that it's still going, you know, and I feel like that combined with projects that people have, right, yeah, like you can actually make stuff out of it, you know, like, well in in a lot of ways,

I know people who are willing to be mentors, but then they're like, I don't have time, and so this gives them some incentive because it's, hey, this is ultimately going to save you at least some of the time back, right, because you don't have to go and do the work. Yeah you have to review the code and yeah you have to you know,

spend time helping this person learn stuff. But the other end of it is is that yeah, you know, they spent twelve hours doing something that would take you two hours, but you you know, net spent an hour with them, and so you earned an hour back, right, And I mean to be honest, like, if somebody is interested in getting into open source, right, like they just haven't found out how Like this is part of open source, right, like taking a contribution from somebody, reviewing it

and getting emerged in and managing that process Like it's honestly a great way to like set somebody up for that, right, Like if you have an interest in open source apprenticeship program mentorship apprenticeship, like it is very similar to open source, you know, yeah and winning combo, let's let's get it done. Yeah, well there's no reason why open source projects couldn't submit to this

too, right exactly? Yep, all right, good deal. Oh yet another thing for me to do. But this one sounds pretty rewarding at least, right at least I mean we got to get you know, all these newcomers into the you know, into the unity, Like yeah, you know that that is definitely like still a barrier to entry, is like how do you get people up to speed and feel uncomfortable talking to people? Right?

Like, you know that that barrier is still there and doesn't have to be and you shouldn't need to spend money on a conference to get it, you know. Yeah. Well, the other thing is is that I talked to some people, and they do a good enough job selling themselves to where they can go from I've never worked at a company that did any kind of program, I mean before to get somebody to hire them because they can demonstrate one

way or the other that they're worth taking a chance on. And then there are a whole bunch of other people that just aren't so lucky, and so what they wind up doing is effectively they wind up doing this, except you know, they have their own project, and they don't really have good mentorship, they don't have a way of building their network, and so they're kind of just stuck there until they can convince somebody that, hey, look, this is all the stuff I did on my own, this is stuff I'm

learning on my own, and then get somebody to take a chance on them once they have a pile of things to shove in their face and say I can do this stuff. Yeah. Yeah, you know, even like from somebody that's trying to like change languages, like this doesn't know Ruby but wants to know Ruby, Like yeah, I feel like This is another great opportunity, you know, like how do you pick up speed? Right, like react on so many projects? Right? Yeah, No, I agree with

you. Yeah, we'll have to talk about it offline and see what we can come up with, and maybe it'd be fun to do another episode about it once we kind of recap. Yeah yeah, but I'm totally down figuring out how to make this happen. Let's do it all right, all right, I'm gonna wrap this up until next time, folks, max out

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