TRANSCRIPT 🔗
WEBVTT
00:00:42.898 --> 00:00:47.886
Welcome to the RubyGems podcast, brought to you by Ruby Central, where we uncover the stories behind the code.
00:00:47.886 --> 00:00:48.892
We're your hosts.
00:00:48.892 --> 00:00:51.120
I'm David Hill and I'm Marty Hutt.
00:00:51.120 --> 00:01:03.834
Before we get started, Marty, I read recently the post you wrote about the RubyGems funding model and I wanted to ask if you could go into a little bit of detail about what motivated you to write that post.
00:01:04.897 --> 00:01:41.099
Yeah, yeah, so that came out of a conversation, or actually multiple conversations I had when I was speaking at Baltic Ruby back in June, and it was very clear to me that many of the attendees at the event didn't really know how RubyGems was funded or that Ruby Central ran RubyGems specifically, and I think that they just sort of imagined that well, it's part of the Ruby language ecosystem, so it's funded somehow magically funded or whatnot, and of course it's so well funded, you don't have to worry about it.
00:01:41.311 --> 00:01:43.778
And of course that's so well-funded, you don't have to worry about it.
00:01:43.778 --> 00:01:44.783
And of course that's not entirely true.
00:01:44.783 --> 00:01:48.354
Essentially, ruby Central has been backing the service since 2004.
00:01:48.354 --> 00:01:58.122
And we have a community of volunteers that operate the platform for all that time, and so it's really been a labor of love and for many years it was funded adequately.
00:01:58.122 --> 00:02:10.111
But essentially, since my job is to oversee the service since last year, I have to develop a budget and a roadmap and there isn't limitless funds and I do have to think about that.
00:02:10.111 --> 00:02:26.205
So the post was really to highlight that, because I think a lot of people in our community don't really know all that, and also to give an avenue, a way for companies and developers to support us in small but meaningful ways.
00:02:27.031 --> 00:02:36.284
I ran into somebody at RubyConf last year who, when I was volunteering at the t-shirt booth, literally came up and asked what does Ruby Central do?
00:02:36.284 --> 00:02:52.578
So yeah, I can confirm I've met people at Ruby Central conferences that didn't know really what Ruby Central does for the community, for Ruby Gems, and so, yeah, that's definitely a lot of important information that needs to be out there.
00:02:52.578 --> 00:02:53.635
So I'm glad you wrote that post.
00:02:54.251 --> 00:03:06.296
The other piece I don't know if I talked about in the post is that this is community-supported, community-owned in a way, and it's not like there's not some big corporation that controls this, and we want to keep it that way.
00:03:06.296 --> 00:03:15.876
We want to keep this as something that is for the community, by the community, but that also means that it needs funding from the community, and so be aware of that.
00:03:15.876 --> 00:03:16.838
Yeah.
00:03:18.311 --> 00:03:24.724
Today we're joined by Sean Marcia, a passionate Rubyist, community builder and the founder of Ruby for Good.
00:03:24.724 --> 00:03:36.286
Sean has been a driving force in using technology for social impact, bringing developers together to build open source software that supports nonprofits and civic organizations.
00:03:36.286 --> 00:03:43.044
He's also an experienced engineer and advocate for creating inclusive, mission-driven tech communities.
00:03:43.044 --> 00:03:49.682
We're excited to dive into his journey, the story behind Ruby for Good and how developers can make a difference through code.
00:03:49.682 --> 00:03:50.644
Welcome.
00:03:51.491 --> 00:03:51.753
Thank you.
00:03:51.913 --> 00:03:53.138
I'm super excited to be here.
00:03:53.138 --> 00:04:05.218
For starters, I'm going to admit that I've heard the name of the organization before Ruby for Good but I have never actually looked too deeply into what the organization is and what it does.
00:04:05.218 --> 00:04:11.061
So for anyone out there like me, could you give us kind of an introduction to Ruby for Good and what you're doing with it?
00:04:12.051 --> 00:04:19.199
Sure, yeah, and I know a lot of people are familiar with our rival organization, ruby for Evil, but we don't get the same amount of press.
00:04:19.199 --> 00:04:22.415
For some reason, evil always gets the press.
00:04:22.415 --> 00:04:26.019
Yeah, yeah, right, so we're a nonprofit.
00:04:26.019 --> 00:04:40.899
Initially we started to help other nonprofits to give folks in the tech community a way to use their skills, to leverage them for good, to build software for other nonprofits, and since then it's grown into something much bigger.
00:04:41.790 --> 00:04:42.711
Bigger how?
00:04:42.711 --> 00:04:45.459
There's a bit of a question mark at the end there.
00:04:45.459 --> 00:04:47.043
Please elaborate.
00:04:47.449 --> 00:04:48.733
Yeah, sorry, yeah.
00:04:48.793 --> 00:04:58.656
And so I think the easy part of our mission, like I said, is just like hey, we're building software for other nonprofits food banks, animal shelters, women's shelters, diaper banks, things like that.
00:04:59.357 --> 00:05:06.220
But the other part we figured out that we were missing too is the community piece, and so our mission is a three-part mission.
00:05:06.220 --> 00:05:25.035
It's to help the civic organizations, the social sector organizations, and then it's also to grow the tech community, especially with those least represented in it, because if you go to conferences and whatnot, you see a lot of folks that look like me and not as many that don't, of folks that look like me and uh, like less that and not as many that don't.
00:05:25.035 --> 00:05:28.826
And it's also to provide meaningful, like learning experiences for folks in tech, regardless of your skill level and so like.
00:05:28.826 --> 00:05:32.381
If you're a senior engineer, maybe you've never led a team before and it's like coming to roof.
00:05:32.381
Load full transcript
--> 00:05:37.932
You get the opportunity to lead a team, lead a project, maybe, work, architect something from beginning to end.
00:05:37.932 --> 00:05:46.396
And if you're a junior engineer, maybe this is your opportunity to learn be on a team, deal with your very first gnarly merge conflict.
00:05:47.338 --> 00:05:47.780
It's interesting.
00:05:47.780 --> 00:05:50.312
So how long are these engagements?
00:05:50.312 --> 00:05:53.057
Because it sounds like there's a kickoff process.
00:05:53.057 --> 00:05:57.674
These last for a weekend or a week or two, or is this months?
00:05:57.674 --> 00:05:58.776
What does that look like?
00:05:59.538 --> 00:06:01.812
Initially we were building these kind of projects one and done.
00:06:01.812 --> 00:06:06.160
A nonprofit would come to us and like, hey, can you build us X, y or Z?
00:06:06.160 --> 00:06:08.864
We would build it, we would hand it off to them and then we'd walk away.
00:06:08.864 --> 00:06:24.386
But we learned kind of throughout time that that wasn't the best way because they don't always have the people to support them, and so what we've turned into is we build, maintain and kind of have the software living on is open source software.
00:06:24.331 --> 00:06:31.668
So, like one of our more well-known pieces of software, like the human essentials project, it's been going since I think, 2015 and different people running it and that's a really amazing project.
00:06:31.668 --> 00:06:38.432
Started with a single diaper bank in portland using it and then, like they showed it off and then other diaper banks wanted to use it in period supply banks.
00:06:38.432 --> 00:06:51.811
Latest, latest figures I heard it's helping three and a half million kids a year and 700,000 or so period supply recipients, and not a single person has ever been paid to work on it, which is kind of cool and it's just having this monumental impact, wow.
00:06:52.352 --> 00:06:53.134
It's interesting.
00:06:53.134 --> 00:06:56.484
So what does the management structure look like?
00:06:56.484 --> 00:07:08.501
Because it sounds like there's a lot going on and I'm guessing these civic organizations really don't know how to manage software, so I would expect there's a fair amount of management involved.
00:07:08.501 --> 00:07:11.314
Is that also pretty much all volunteer At?
00:07:11.335 --> 00:07:13.158
least on our side, it's all volunteer.
00:07:13.158 --> 00:07:15.252
And again it's like any kind of open source project.
00:07:15.252 --> 00:07:20.052
There's kind of leads and people in charge of it, and then there's just the rank and file contributors.
00:07:20.052 --> 00:07:23.494
People come in and submit a pull request and you never see them again.
00:07:23.494 --> 00:07:27.381
But then there's like the other kind of core people who are there for years and years.
00:07:27.381 --> 00:07:32.137
I can't speak, maybe, to the nonprofit side, but, right, like our side, it's all volunteer.
00:07:32.137 --> 00:07:33.651
I don't know if that fully answered your question.
00:07:34.665 --> 00:07:37.896
It sounds like it's gone through this evolution over time.
00:07:37.896 --> 00:07:44.574
How do you see it continue to evolve, or do you think it's in a stable state where this is basically how it's going to be?
00:07:45.516 --> 00:08:09.025
I'm not quite sure, like I think the big piece where we haven't quite figured out is maybe this is everyone's challenge too is the funding, because, like we're always like scrambling every year, like trying to figure out how to fund these projects and not necessarily like again, everyone's volunteer, but like the hosting like is running on heroku or azure aws or something that we've largely now kind of passed off to the non-profits.
00:08:09.667 --> 00:08:23.281
I feel like the process we have is it's in a very stable state and a very good state in terms of bringing people on, giving people these opportunities, especially new folks to the community, because I feel like a lot of that is drying up for them now.
00:08:23.281 --> 00:08:29.987
These junior engineers or people, just like these bootcamps and stuff, for them to get their start and work on teams and work with other people.
00:08:29.987 --> 00:08:34.617
It's growing increasingly difficult for them to kind of get their foot in the door places.
00:08:34.617 --> 00:08:45.312
But then, joining projects like this, I get to work with these senior engineers and experience UI people and UX folks and product managers who work on these teams and get that experience.
00:08:45.312 --> 00:08:50.989
So then when they are on the job market and they have these real experiences that they can talk about, I feel like.
00:08:51.009 --> 00:08:57.274
This is a question you've kind of alluded to already, but I'm going to ask it anyways because I'm hoping there's a little bit more to dig in here with.
00:08:57.274 --> 00:09:08.404
It sounds like the Ruby for Good projects have some pretty stark differences and requirements and just how it all comes together than a typical open source project.
00:09:08.404 --> 00:09:15.548
Could you maybe dive into that a little bit more and in terms of how this all works and how do you get people involved?
00:09:16.288 --> 00:09:21.486
yeah, it's different now than in like kind of like the early days when folks hadn't heard of us.
00:09:21.486 --> 00:09:27.730
Now, like we do, I feel, have a fairly good reputation and mind share in the ruby community.
00:09:27.730 --> 00:09:34.012
So folks, a lot of folks, just kind of come by looking to contribute, wanting to vote either some time or even just like a few days to something.
00:09:34.012 --> 00:09:45.076
But as far as like how the projects work is like we have a lot of non-profits and sadly we have a lot more of these like kind of social sector organizations coming to us looking for help than we have capacity for.
00:09:45.076 --> 00:09:47.385
Like generally, I think it's kind of like any project.
00:09:47.385 -->
00:09:51.493
They come they say like hey, we, we'd love some help with this certain thing.
00:09:51.493 --> 00:09:52.313
Can, can you help us?
00:09:52.313 --> 00:09:55.580
And then we put together a team to work on that.
00:09:56.024 --> 00:09:58.955
And generally how we do that is we have these yearly events.
00:09:59.706 --> 00:10:08.787
Pre-covid they were twice a year but now they're yearly, they're in person and we kind of think of them as a nerd camp for good and so they're an all-inclusive event.
00:10:08.807 --> 00:10:11.909
So you come, you all get your room, your lodging, everything's included.
00:10:11.909 --> 00:10:13.451
So it's four days, three nights.
00:10:13.451 --> 00:10:16.433
This year we're in this beautiful place outside the DC area.
00:10:16.433 --> 00:10:30.815
It's out in the woods and it's kind of like a resort, and so we spend our days writing code for good for these social sector organizations, and then evenings we do a lot of fun we play board games, we sing karaoke, make s'mores around campfires, play werewolf and all that kind of fun stuff.
00:10:31.495 --> 00:10:56.690
But that also gives us a chance to really get a good core chunk of work done and build a nucleus of a team, because the other thing we do too is, in addition to having a lot of these Rubyists and designers and product folks out at these events, we get representatives from the nonprofit, so there'll be someone from the animal shelter, there'll be someone from the food bank, whatever the organizations are we're helping, so they're sitting in the room with the team too.
00:10:56.690 --> 00:11:03.816
So it also then I think it makes it a little bit more special for the attendees as well, cause like you actually you're meeting, you're seeing, like this is the person I'm helping with the code, and so it's kind of a neat thing.
00:11:04.685 --> 00:11:08.531
I didn't realize it was a summer camp like thing.
00:11:08.531 --> 00:11:14.159
So you're like chilling out in the woods and you're there, focused.
00:11:14.159 --> 00:11:19.537
You're not in your normal environment, so you're not going home or you're not at the office with others.
00:11:19.537 --> 00:11:23.297
Yeah, so you've got this camp thing and it sounds like a lot of fun.
00:11:23.297 --> 00:11:25.346
So I guess, when is the next one?
00:11:25.346 --> 00:11:26.411
Do you have one coming up?
00:11:27.072 --> 00:11:29.363
Yeah, our next one is next month, in September.
00:11:29.363 --> 00:11:29.764
I guess.
00:11:29.764 --> 00:11:32.868
I don't know when this is going to air, but so next month, from when we're recording?
00:11:32.868 --> 00:11:39.235
So September 11th to the 14th, and yeah, it's in Sharpsburg, maryland, like I said, just maybe an hour outside of DC.
00:11:39.235 --> 00:11:40.956
That's going to be a lot of fun.
00:11:40.956 --> 00:11:44.721
So if either of you come, I promise to cook you your first s'more around the campfire.
00:11:44.721 --> 00:11:46.826
How do you?
00:11:47.368 --> 00:11:57.796
go about trying to nurture contributors to come and be part of the Ruby for Good community to actually work on these projects, especially people who are newer to open source.
00:11:58.745 --> 00:12:01.009
I think it's just making it as friendly as we can.
00:12:01.009 --> 00:12:03.937
We do a lot of small little shout outs for folks.
00:12:03.937 --> 00:12:09.369
When someone makes their first pull request, we make a big deal of shouting them out, congratulating them.
00:12:09.369 --> 00:12:11.639
We're never rude to folks.
00:12:11.639 --> 00:12:14.128
We always want to make it as inclusive and welcoming as we can.
00:12:14.128 --> 00:12:19.773
We have a whole thing in our readme is that you're never going to get yelled at, we're never going to be rude to you for giving your best effort.
00:12:19.773 --> 00:12:22.028
So just try, try and people are going to work with you.
00:12:22.028 --> 00:12:24.755
Like I said, we do a lot of pair programming with folks.
00:12:24.755 --> 00:12:27.509
We do a lot of mobbing, especially at our events too.
00:12:27.509 --> 00:12:33.778
Our events are always folks working in groups and so it's all about like leveling people up and skill acquisition.
00:12:36.225 --> 00:12:37.745
I'm not sure I've heard the term mobbing used before in this context.
00:12:37.745 --> 00:12:39.110
What is that?
00:12:40.044 --> 00:12:48.672
That's where you have like a senior person and junior person, like walking through something within, like a group of folks all watching and I guess like group learning.
00:12:49.385 --> 00:12:52.254
I could see that being a very different experience.
00:12:52.865 --> 00:12:55.808
It's pretty cool yeah mobbing is kind of cool, I guess.
00:12:55.808 --> 00:13:04.212
I'm curious, sean, because I imagine that burnout is a real thing, especially if they're donating their time.
00:13:04.212 --> 00:13:06.158
How do you manage that?
00:13:06.158 --> 00:13:11.172
And what is like the volunteer capacity sort of planning management?
00:13:11.192 --> 00:13:16.310
yeah, that's something that I think, too, it's really easy to over commit yourself.
00:13:16.310 --> 00:13:27.310
You're working with these folks who are, you know, helping some of the most vulnerable populations in our community, and so I think it's really easy to get like swept up in that and just want to do so much right.
00:13:27.310 --> 00:13:32.378
We try and ask people to limit their time, limit, their engagement, burnout.
00:13:32.378 --> 00:13:45.037
It's such a real thing, and so we ask people to put up boundaries, to acknowledge that, because we would rather have people being part of the community for the next 10 years rather than the next 10 days.
00:13:46.105 --> 00:14:18.216
So I'm really interested to hear if you have any insights on inclusive event planning, because I've heard you talk about that and I have to imagine there's some interesting lessons learned and tactics you may have I wish I did and, like I said, like
our events, our last few events, like we've had more people who don't identify as male than who do attend, which is a pretty special thing, and I don't know if it's just because we've gotten a reputation for a safe and healthy community like that or what it is.
00:14:18.216 --> 00:14:21.294
But yeah, I wish I had more advice.
00:14:22.305 --> 00:14:27.716
For the people who have stuck around and have continued to contribute for a longer period of time.
00:14:27.716 --> 00:14:36.118
Are there any kind of common factors that you can identify of what helps keep these people involved and what keeps the experience rewarding for them?
00:14:37.105 --> 00:14:43.678
It feels like our long-term contributors are the folks who have ties to the organizations that we work with.
00:14:43.678 --> 00:15:08.450
And so, for example, one of our long-term contributors to the CASA project and CASA is a project for court-appointed special advocates these help kids in the fosterA project and CASA is like a project for court appointed special advocates Like these help kids in the foster care system she was a CASA herself, like one of these people who helped the kids and like she had her own little youth that she was responsible for for a number of years, and now that she's an engineer she's been with the project now for six years, that project.
00:15:08.450 --> 00:15:13.376
So I like and I think probably just like any kind of volunteers whether it's like a project that resonates with them.
00:15:13.376 --> 00:15:22.941
So if it's like a non-open source for a good project, I imagine people who've been on the RSpec core project for years and years, probably because they like the project, it resonates with them, kind of intellectually.
00:15:23.042 --> 00:15:29.057
So so you mentioned before the summer camp experience where, like you, really have this big powwow working on something.
00:15:29.057 --> 00:15:38.419
I imagine that Ruby for Good has work, that you guys do contributions that are made throughout the year, not just during the summer camp, right?
00:15:39.346 --> 00:16:06.613
Our events are where we kick off our new projects, because that's where, like you know, we get like that critical mass of folks to start it, and we have a whole guide for leading up to the event too, where we pick a couple of people who are going to be the team leads for the project, and so we put them in touch with the nonprofit or the social sector organization six weeks ahead of time, and each week they have tasks they have to do, and so maybe six weeks out, they're doing this and by five weeks out they've created a repo.
00:16:06.613 --> 00:16:23.611
By four weeks out, maybe they've done Rails new or like all these little things, and so, basically, when the event happens, they've got a really solid understanding what needs to be built, and all the attendees who are going to be on that project during the event can clone something down, have it started, and so then, like on the first day, you know they can hit the ground running, okay.
00:16:24.072 --> 00:16:43.762
So for people who are financially or for whatever reason unable to go to the summer camp, or who discover Ruby for Good in November, how would you recommend someone go about trying to get involved when the summer camp option isn't really on the cards for them in the near future at least?
00:16:49.884 --> 00:16:51.589
you know, like any software like this runs year-round.
00:16:51.589 --> 00:16:53.373
I would say, jump into our slack and you can grab an invite on the website.
00:16:53.373 --> 00:17:05.415
Or just go to the ruby for good, github, and take a look at the different projects there and find one that has an open issue, that has help wanted on it and submit a port request and we'll welcome you in sean.
00:17:05.435 --> 00:17:07.221
I guess I'm curious, through all this, what's been the hardest part?
00:17:07.221 --> 00:17:07.682
There's been a couple.
00:17:07.682 --> 00:17:08.644
What's been the hardest part?
00:17:09.645 --> 00:17:10.387
There's been a couple.
00:17:10.387 --> 00:17:16.375
Personally, I think the hardest part for me was kind of learning to delegate and not being involved in everything.
00:17:16.375 --> 00:17:22.527
In the start I was just kind of involved in every team and everything they were doing, and all the other organizers were as well.
00:17:22.527 --> 00:17:43.535
But now I think the biggest challenges now, or some of the bigger challenges now too, are technical challenges, and so these people come to our events and they have like this hackathon mentality where it's like, hey, this is their time to play with this javascript framework that's been out for three days or whatever it is, and so they want to play with these things that maybe they can't do in their day job, but without the realization that, you know, we're building software.
00:17:43.535 --> 00:17:45.949
You know, like the human essentials project that's been going now for 10 years.
00:17:45.949 --> 00:17:57.229
We want this to be maintainable and contributable and so we don't want to use like this is for a nonprofit that needs to be very sustainable, and so by definition, it can't be experimental.
00:17:58.231 --> 00:18:08.716
Right, these things are fun and I like technology and I playing with all this stuff too, but when we come to these things, so like being a little bit more prescriptive on the technologies folks want to use.
00:18:08.716 --> 00:18:17.453
And so, if you want to use something that's again one of the reasons that makes Ruby and Rails so great is the convention of configuration and just how easy it is for folks to contribute.
00:18:17.453 --> 00:18:21.771
But if someone wants to use Oracle or something rather than Postgres, why?
00:18:21.771 --> 00:18:25.114
And so we have had that in the past.
00:18:25.114 --> 00:18:35.973
We had a team a couple years ago built something using MySQL rather than Postgres, but the reason for that was just this nonprofit had
free hosting from local ISP that didn't support Postgres.
00:18:35.973 --> 00:18:36.737
They supported MySQL.
00:18:36.737 --> 00:18:38.150
It's like cool, that's a great reason.
00:18:39.065 --> 00:18:42.615
So what does your role look like these days with the organization?
00:18:43.285 --> 00:18:45.093
Kind of like a benevolent dictator for life.
00:18:45.093 --> 00:18:46.248
That's kind of the model.
00:18:46.248 --> 00:18:53.332
I try and be as hands-off as I can and just kind of steer people to what I think is the right direction.
00:18:53.332 --> 00:19:01.171
But generally I just hands-off and just making the connections that I can and the introductions I can and just kind of getting out of the team's way and do their things.
00:19:02.035 --> 00:19:05.567
Roughly how many teams do you have kind of operating at the moment?
00:19:06.250 --> 00:19:10.671
I'd say, like we have about 10 Ruby for Good projects, like in the past.
00:19:10.671 --> 00:19:14.473
Like some of our projects have grown and they've kind of turned into their own organization.
00:19:14.473 --> 00:19:25.353
If you're familiar with the Terra Stories project, that was a Ruby for Good project and it kind of grew and grew and grew and they became their own organization and now they're this own thing, trying to get grants and whatnot.
00:19:25.684 --> 00:19:40.637
And so even though, like, we are still kind of affiliated, we still contribute and it is kind of a blurry line, but that's still kind of cool that you've had something kind of for lack of a better way of describing it outgrowing Ruby for Good's organizational structure itself and kind of become its own thing.
00:19:40.637 --> 00:19:41.305
That's kind of cool.
00:19:41.305 --> 00:19:43.751
I would call that a bit of an accomplishment.
00:19:43.751 --> 00:19:45.395
Oh, definitely yeah.
00:19:52.005 --> 00:19:55.674
Is there a pattern where some of these civic organizations hire any of the volunteers and they become staff members.
00:19:55.694 --> 00:20:02.977
There we've had some like one-off coding work, and a lot of times too, it's just things like hey, build us a website, update our wordpress, things like that.
00:20:02.977 --> 00:20:08.429
But the organizations we work with don't tend to have the budget to pay for a software engineer.
00:20:08.429 --> 00:20:13.413
That's why they come to us and so but like, hey, here's some money that we need to migrate our.
00:20:13.413 --> 00:20:15.615
The organizations we work with don't tend to have the budget to pay for a software engineer.
00:20:15.634 --> 00:20:18.116
That's why they come to us, but like, hey, here's some money that we need to migrate our WordPress from this to that.
00:20:18.116 --> 00:20:24.041
Going back to contributions from the community, how would you like to see contributions from the wider Ruby community to Ruby for Good?
00:20:24.041 --> 00:20:30.252
How do you think things could improve in terms of getting more contributions and bringing in more people.
00:20:30.272 --> 00:20:32.326
There are folks out there listening that want to come contribute.
00:20:32.326 --> 00:20:38.031
Hey, come join the Slack, Come grab an issue If you want to be a larger part of this as well.
00:20:38.031 --> 00:20:41.595
I think a lot of people take a while to realize that, hey, I can be a team leader.
00:20:41.595 --> 00:20:45.973
You don't just have to come to one of the events to take a leadership position on.
00:20:45.973 --> 00:20:51.689
Some of these open source projects is like our pet rescue project that's helping, like animal rescues, and you know I really like dogs.
00:20:51.689 --> 00:20:52.512
I'd like to be a part of that.
00:20:52.512 --> 00:20:57.355
Well, talk to us and tell us that, Because I think a lot of people have this impression about open source.
00:20:57.375 --> 00:21:04.294
You know, because there's some people in the open source community that maybe aren't as kind as others and so they're intimidated to maybe get involved.
00:21:04.294 --> 00:21:10.077
And I'm not like pointing at Linus Torvalds or anything, but I think there's some people out there that intimidate them.
00:21:10.077 --> 00:21:23.527
And so, you know, like making your first contribution and just like understanding that like, hey, I can be a part of this and I can have this on my resume Even outside of the negative connotation of you know, there are certain types of people, have a certain type of reputation out there.
00:21:24.327 --> 00:21:44.115
I came into the Ruby community in a way that was very isolated, where I didn't interact with people in the community for quite a while, and so my perception of open source was oh, these guys out there, they're all just geniuses and I'm just this lowly engineer developer who's just trying to use this stuff.
00:21:44.115 --> 00:21:53.634
And so it took me a long time to even consider the thought oh, maybe I could actually contribute to something in here, since that's my experience.
00:21:53.634 --> 00:22:08.253
I've kind of recently come to learn it's like oh, if that's my experience, there's probably other people out there like that too, whereas it's like the idea that they could contribute to this is not something that they're really thinking about exactly and with all our too.
00:22:08.413 --> 00:22:10.117
Like there is like the whole community aspect.
00:22:10.117 --> 00:22:19.892
The vast majority of our projects all have kind of like community hours where weekly, bi-weekly, monthly, they all get together, they all get on Zoom and so you get to hang out with other people.
00:22:19.892 --> 00:22:27.436
Like, if you're contributing to, like a food bank, the other people contributing to food bank probably think the same way as you and probably have similar like ethics and whatnot.
00:22:27.436 --> 00:22:29.481
These are people you're probably going to hit it off with.
00:22:29.481 --> 00:22:33.753
That you're probably going to enjoy hanging out with, especially now that a
lot of us work remote and stuff.
00:22:33.753 --> 00:22:39.194
So it kind of gives you like this fun community people just to hang out with too yeah, nice, yeah, it's nice.
00:22:40.017 --> 00:22:48.334
This question is one we've had written down on every outline that we've done for our interviews thus far and we've never asked it, but we're going to ask it today.
00:22:48.334 --> 00:22:53.760
We've got a little saying in the ruby community in minaswan mats is nice, so we are nice.
00:22:53.760 --> 00:22:58.934
How has that impacted your work and the work at ruby for good?
00:22:59.976 --> 00:23:13.576
yeah, minaswan is like that's kind of core to who we are and at every one of our events sorry if you see a ruby for good person at any rails, conf or rubConf or wherever find them Odds are we'll be carrying Minaswan stickers and I'm holding some up for the people.
00:23:13.576 --> 00:23:23.336
We print these little 8-bit maths rendering that says Minaswan on them that we give out and most of our swag, like this t-shirt I'm wearing right now, has Minaswan hidden in it on the Ruby.
00:23:23.336 --> 00:23:25.906
It's core to everything we are and what we do.
00:23:25.926 --> 00:23:27.828
It's core to everything we are and what we do, all right.
00:23:27.828 --> 00:23:36.256
So Matt has talked many times about how he designed Ruby for programmer productivity and joy, and I'm curious how has that played out?
00:23:36.256 --> 00:23:40.319
Have you seen that sort of interact or manifest in your work?
00:23:41.280 --> 00:23:47.295
Oh, definitely there's something about the Ruby community and I think we're all here and this community is just magical.
00:23:47.295 --> 00:24:01.372
I was in the Python community before Ruby and I remember my very first Ruby meetup I went to and I walked in and I met a guy his name was Joe Grossberg, if you know him like he welcomed me and you know I was wearing t-shirt and cargo shorts.
00:24:01.372 --> 00:24:03.662
I walk in and he's wearing t-shirt and cargo shorts.
00:24:03.662 --> 00:24:23.634
He welcomed me in and he was so friendly and everyone there was so friendly, because just the prior night I was at a python meetup and it's full of all these angry eastern europeans and so like I'd found my people and it was wonderful and I just love this community and I love the joy that ruby brings and kind of cascades through the community, definitely seeing that a lot.
00:24:23.765 --> 00:24:30.358
Certainly at Boulder Ruby we get that similar thing as well, where everyone's so welcoming and nice and it's quite pleasant.
00:24:30.358 --> 00:24:34.996
I'm curious, sean, what's next for you or for the project?
00:24:36.326 --> 00:24:39.055
I guess what's next obviously is our event coming up next month.
00:24:39.055 --> 00:24:43.336
Our events are a mix of working on existing projects as well as kicking off some new ones.
00:24:43.336 --> 00:24:46.490
Projects and as well as kicking off some new ones.
00:24:46.490 --> 00:24:50.910
I'm really excited for a project we're kicking off for like a free clinic here in Northern Virginia, like the Arlington Free Clinic, where we're going to be building them.
00:24:50.910 --> 00:24:55.828
Some software Free clinics are pretty amazing for the amount of people they help and don't charge them anything.
00:24:55.828 --> 00:24:57.173
I'm really excited about that.
00:24:57.173 --> 00:24:59.046
That's kind of consuming my life right now.
00:24:59.747 --> 00:25:09.615
Well, so to close each episode out, we have our Ruby roundup of some kind of get to know you style questions that are less about Ruby for good and more just kind of get to know you a bit as a person.
00:25:09.615 --> 00:25:12.807
First up, what's your go-to comfort food?
00:25:13.428 --> 00:25:15.393
So there's an Indian dish called dal chawal.
00:25:15.393 --> 00:25:18.628
It's basically like lentils and rice and something about it.
00:25:18.649 --> 00:25:28.199
It's just like so comforting and nourishing and that is just my favorite comfort food, so do you make that yourself, or is there a place in your area that you go to to get that?
00:25:28.786 --> 00:25:31.274
I make it myself Wow.
00:25:31.294 --> 00:25:31.755
Very nice.
00:25:31.755 --> 00:25:34.413
Are you reading anything for fun right now?
00:25:35.105 --> 00:25:36.108
Yeah, I'm reading a book.
00:25:36.108 --> 00:25:37.153
It's called Red Shirts.
00:25:37.153 --> 00:25:38.431
It's by John Scalzi.
00:25:38.431 --> 00:25:39.846
That was a fun book.
00:25:39.846 --> 00:25:41.047
Yeah, isn't it great.
00:25:41.047 --> 00:25:43.788
And it's like he took that meme where Kirk is.
00:25:43.788 --> 00:25:48.211
He's talking to those three red shirts and he's like hey, go dig three graves over there.
00:25:48.211 --> 00:25:49.192
I'll explain it to you later.
00:25:49.192 --> 00:25:51.315
And he made like an entire book out of it.
00:25:51.315 --> 00:25:52.496
So nice.
00:25:53.096 --> 00:25:56.278
Are there any recent movies or TV shows that really hit home for you?
00:25:56.959 --> 00:25:58.980
I just started the Murderbot series.
00:25:58.980 --> 00:26:01.041
I'm about six episodes in.
00:26:01.041 --> 00:26:05.388
I've read almost all the books, and so I'm really enjoying those.
00:26:05.388 --> 00:26:07.271
Alexander Skarsgård is doing a great job.
00:26:07.873 --> 00:26:09.694
You're hitting all the right notes right.
00:26:09.694 --> 00:26:12.159
I feel like I need to be your friend, sean.
00:26:12.159 --> 00:26:19.567
You're reading and watching the things that really hit the right buttons for me.
00:26:19.586 --> 00:26:21.450
Okay, what's got you excited in tech right now?
00:26:22.089 --> 00:26:31.240
So I think the obvious answer to this is probably like Copilot and Cloud Code and things like that, but I'm personally most excited right now about AI video generation.
00:26:31.240 --> 00:26:46.434
I was on YouTube recently and I saw this video that had Star Trek Spock being captain, but it's all AI generated, and so the thing that really gets me excited is thinking like, hey, maybe in a couple of years we'll get another season of Firefly or Caprica or Sense8.
00:26:46.434 --> 00:26:47.876
Exciting time we're living in.
00:26:48.478 --> 00:26:51.080
And finally, do you have any favorite gems?
00:26:51.080 --> 00:26:54.716
Preferably one that's not one of the super well-known upfront ones.
00:26:55.565 --> 00:26:57.128
So one I've just started using recently.
00:26:57.128 --> 00:27:07.126
It's a gem called Pretender, and maybe it is more well known or not, I don't know, but it was new to me and it's a great for just like letting you pretend to be like any user in a code base.
00:27:07.126 --> 00:27:24.794
So like if you're in like a, you know your admin view and you've got a list of users, you can just like add a little link to pretend to be this user and then it lets you log in as them or be them, and so you can see and interact as them and diagnose things, and just it's great sean, where can people find you on the internet?
00:27:28.464 --> 00:27:29.665
I don't have a big internet presence.
00:27:29.665 --> 00:27:35.072
Ruby for Good has a LinkedIn, so if someone manages, I guess maybe contact that, but I don't have a social media.
00:27:35.072 --> 00:27:35.873
I'm kind of a weirdo.
00:27:35.873 --> 00:27:38.736
All right, it's probably healthy that way.
00:27:38.935 --> 00:27:40.637
Yeah, all right.
00:27:40.637 --> 00:27:42.941
Well, sean, thank you so much for joining us today.
00:27:42.941 --> 00:27:43.721
This has been great.
00:27:47.125 --> 00:27:47.810
Thank you for having me.
00:27:47.810 --> 00:27:48.517
My day is brighter because of it.
00:27:48.517 --> 00:27:49.664
Thank you so much for tuning into the Ruby Gems podcast.
00:27:49.664 --> 00:27:51.684
We hope you enjoyed this episode.
00:27:51.684 --> 00:27:57.817
You can find show notes and links to everything we discussed at rubygemspodcastcom.
00:27:58.566 --> 00:28:03.237
If you have a topic you'd like us to cover or have feedback, we'd love to hear from you.
00:28:03.237 --> 00:28:07.374
Please email podcast at rubycentralorg.
00:28:07.374 --> 00:28:12.814
If you enjoyed this episode, please subscribe and consider leaving a five-star review.
00:28:12.814 --> 00:28:15.386
It really helps others find the podcast.
00:28:15.386 --> 00:28:19.017
Until next time, thanks for being such a gem.