Open Source Maintainer Interviews: Being an Open Source Community Manager (Part 3)
CG
See all speakers
See all 4 speakers

Summarized using AI

Open Source Maintainer Interviews: Being an Open Source Community Manager (Part 3)

Mike Perham, Christina Gorton, Jonan Scheffler, and Rachael Wright-Munn • February 25, 2021 • online • Talk

In this segment of the Ruby Galaxy's interview series, open source maintainers Mike Perham and Christina Gorton discuss the intricacies of being an open source community manager. They delve into the unpredictable dynamics of community growth, emphasizing that the success of an open source project often hinges on dedication and engagement. Christina shares her experience managing communities on the forum platform, emphasizing how the management of issues and pull requests can enhance developer experience and efficiency.

Key points discussed include:

- Community Management Dynamics: Christina explains that the unpredictability in the growth or decline of open source communities largely depends on the time and effort invested by its members.

- Forum Platform: Overview of Forum (formerly Dev), a community discussion platform facilitating engagement across diverse interests, including programming and martial arts.

- Managing Issues: Christina recounts her initial challenge of dealing with 800 open issues on GitHub, which she reduced to 500 through efficient triaging and categorizing. She highlights a new process for managing feature requests through the RFC (Request for Comments) mechanism to enhance community communication.

- Community Contributions: Discussion of how Major League Hacking collaborates with her team to help tackle priority issues and bug fixes, showcasing the advantage of engaging broader communities in open source development.

- Maintaining Engagement: Insights into moderation tools that help maintain respectful and engaging environments in forums—featuring discussion about the importance of setting community expectations.

- Communication Tools: Debate on the efficiency of communication channels like GitHub issues versus forum discussions, and the role of emojis in improving interactions.

- Personal Experiences: Both Mike and Christina share anecdotes about their respective journeys into Ruby, illustrating the importance of community in fostering interest and participation in open source.

Concluding takeaway messages emphasize the importance of consistency in community engagement and the significance of fostering inclusive and welcoming environments. The collaborative efforts and structured communication strategies highlighted are critical for sustaining vibrant open source communities.

Open Source Maintainer Interviews: Being an Open Source Community Manager (Part 3)
Mike Perham, Christina Gorton, Jonan Scheffler, and Rachael Wright-Munn • February 25, 2021 • online • Talk

For version 0.2 of Ruby Galaxy, we interviewed Open Source Maintainers ✨

Mike Perham (@getajobmike) is the author of Sidkiq and Faktory. He is also the founder of Contributed Systems and he is definitely not a cat.

Christina Gorton (@coffeecraftcode) is an open source community manager, instructor, technical writer and developer. At Forem she helps create an online space in which community members can learn, engage, and contribute.

Hosted by Jonan Scheffler (@thejonanshow) and Rachael Wright-Munn(@ChaelCodes) 🛸

This was originally streamed on our Twitch channel where you can find our releases every last Thursday of the month (https://www.twitch.tv/therubygalaxy).

Interested in talking? Take a look at our CFP at rubygalaxy.io 🚀
We are always interested in talks of all sorts, whether you are an experienced presenter, or are looking for a great place to give your first talk ever.

Follow us on Twitter @therubygalaxy and visit our website at https://rubygalaxy.io/ 👽

Soundtrack for the game DojoKratos done with Game Boy. Available as CC-BY. Found on the Free Music Archive under Boss Splash by sawsquarenoise.

Background Space Video by Space Space from Pexels

Ruby Galaxy v0.2

00:00:06.000 now we're live hello internet oh maybe they can't hear us see
00:00:12.719 you again now they can hear us i'm happy to see you too i was just telling nick that we needed
00:00:18.080 you back on the stream i was like we should get rachel and aisha on the stream
00:00:23.840 i had nick on the stream like uh on a friday streak
00:00:30.560 we fought with docker it was fun i actually i'm really excited because we just had this conversation about like
00:00:35.600 how to build community around your open source project yes and as a community manager at 4m
00:00:42.079 like you're the expert in that yay yeah you know i i was i was kind of
00:00:48.800 in the background while you all were talking about that like i could i could probably contribute to that conversation
00:00:55.360 yes uh yeah i am the open source community manager at forum um and that that's me i do a lot
00:01:01.760 of other things but that's that's my main thing right now so you can confirm for us uh our earlier
00:01:06.799 hypothesis which is the communities are unpredictable in magic and there's no way to determine whether they'll grow or
00:01:12.400 fail right i i think that's somewhat true but also i think it really depends
00:01:19.680 on those people putting in the time and the effort into the community and ben halpern who's the ceo co-ceo now a
00:01:27.600 forum put in a ton of time on deb so we have a pretty great community
00:01:34.320 i have as you can see by our av issues it expended a tremendous amount of effort on ruby galaxy
00:01:41.040 here i am really focused on growing the community and we're working on it it's a work in
00:01:46.720 progress this is an mvp version of the ruby galaxy community it's coming along just fine thank you
00:01:51.840 very much so tell us about forum what even is this thing yeah so most people i think if they've
00:01:58.960 heard of us they've heard of dev forum is the open source software that powers communities like
00:02:06.079 dev so they were dev for a very long time and then now we are forum because forum allows for lots
00:02:13.599 of communities like dev but for all kinds of interests that people have like we have
00:02:19.200 we have code newbies so we have the code newbie community we have dev but we also have other things like mixed
00:02:24.879 martial arts and all kinds of communities people who just kind of come up with stuff
00:02:30.480 can build their own communities on the software one of them was the other one is code newbies is that the other community
00:02:36.879 mm-hmm that's the other probably like more well-known in the developer space is it code newbies the relicans too
00:02:44.000 yes that's true you are a long form as well so that was a newer development uh forum
00:02:50.400 the relicans so yes i've heard of that yourself yeah we'll give we'll give our sponsor new
00:02:56.080 relic a plug here oh look they're running a hack the planet hackathon with dev you all should go and
00:03:01.360 submit to that i'm trying to make money yeah it's actually a lot of money if i was not eliminated by the rules of
00:03:08.159 the hackathon that i was involved in planning i would be there it's five grand come on it's code newbies.dev or dot to um
00:03:15.360 let me find it real quick so we have a plug-in on our that you can use that you can switch
00:03:20.640 between these quickly so i never it's community.codenubi.org that's why it was hard for you to find
00:03:26.560 okay i've been really killing it with the urls today
00:03:33.959 community.codenewbie.org this is the other one okay oh serene your pics on there saron sarin
00:03:39.760 saron yeah park suranya park yes that's awesome founder of codenubi
00:03:46.480 so this is one of the communities there are many communities that are similar and they all run on this github project
00:03:53.360 which is forum forum on github and you can set this
00:04:00.000 up and run it yourself if you want to set up a community or you can pay dev or forum you can pay the company for
00:04:06.720 them you can't pay the company dev anymore because the dev no it's not a company a company's now
00:04:11.840 called forum and their logo looks like this it's a little green plant and they build not a
00:04:18.400 forum per se although it's kind of a forum i consider it more of an open community platform blogging
00:04:25.360 platform than a forum but i guess when you think about it they're not all that different are they
00:04:30.639 no and and some people have been using them in different ways so some of them are more tend to be blogging like dev or code newbies and others are
00:04:37.680 discussions where people just talk so we have community let me remember the name real quick
00:04:43.199 uh the community club they there's some like blog posts in there but it's mainly discussions and people asking questions
00:04:48.800 so they're all community managers so that's a little meta for me but that's that's their thing they also we
00:04:56.240 have one called um flow state which is all about like mental flow and and performance
00:05:04.400 and again that one's a lot of just like discussion on what people do to get into flow state or
00:05:10.080 their mental health and things like that so when people are coming to these projects and they want to make a
00:05:15.280 contribution to forum you have a contributor's guide here on this page
00:05:20.320 we do and these come into your issues but you also have them alongside
00:05:25.600 many hundreds of other issues i mean it's a popular project right there are a lot of people contributing issues do you have an idea how long or like can
00:05:33.039 you guess at how many issues per week or day you get yeah so
00:05:38.240 actually before i came on as community manager this is one of the reasons they hired me their their forum was getting their
00:05:44.000 their github was getting a little out of control they had like 800 open issues i've
00:05:49.280 knocked it down so far to 500 and we're going down more um but i would say on average
00:05:56.319 so we have a new process now it used to be that we had um bugs uh
00:06:02.639 refactoring and like feature requests which you'll still see some feature requests in there but since i came on we've kind of
00:06:08.960 changed the model and we're not taking feature requests in our actual forum anymore we're taking
00:06:14.880 them at forum.dev which is another forum so that we can actually have discussion around them because we have a new
00:06:20.560 internal process so that it's called an rfc which is a request for comments and we want to actually
00:06:28.479 communicate about these feature requests because i think you guys had mentioned at the beginning sometimes you get just like requests for
00:06:35.199 all kinds of things and you can't take everything right you have to make decisions um and so instead of having these
00:06:41.199 requests just sitting in this github forever and being ignored we are actually encouraging discussion around them and
00:06:47.600 then deciding from those discussions that we're having if there's something valid for all of
00:06:52.960 the forums or even something like dev because dev is our biggest uh forum it's a 500 000 people
00:07:01.039 so we do get a lot of requests just specifically for dev but we have to kind of have in consideration like all of the forums now
00:07:08.160 because this code is going into all of them and not just dev so when you make a
00:07:13.360 change here it goes into the relicans right away yep
00:07:18.880 what was your question rachel my question was you have a lot of issues it started at 800 it's down to 500. the
00:07:25.599 thing i noticed is you don't have a lot of pull requests and to me when i see
00:07:30.639 like code bases that have a ton of issues normally they're paired with a ton of unreviewed pull requests
00:07:36.400 yeah yeah they've been knocking them out a lot quicker now so again even the pull requests were a lot when i first came on
00:07:43.280 the team but they we've been able to knock them out a lot quicker now because of the new process we have so we are actually pairing those
00:07:49.840 specific issues that we have because we've talked about them with product we've talked about them with the whole team we've talked about them with
00:07:56.000 engineering we compare those issues with the pull requests and get them done quicker also i've you know encouraged people in
00:08:02.720 the community to grab specific ones we work with mlh which is major league hacking every
00:08:10.879 like six weeks there are fellows who come in and they help us with different bugs or feature requests so we have a
00:08:16.400 couple of things like that that help us get through those pr's okay how do you set that up
00:08:22.639 that sounds so cool to me because like you're bringing in major league hacking to like have people work on like
00:08:27.919 priority issues and then you mentioned like you can figure out issues that you want to prioritize and have people work on like
00:08:33.599 how does all of that come together yeah so for me uh lately um one there's the product
00:08:40.320 side so we have great uh product engineers and they have they're they're the ones talking to
00:08:46.160 people who have forums who are the forum creators and deciding well like what kind of issues or prs they're
00:08:52.000 having and then prior to prioritizing that when we need to but then we also just have like
00:08:57.519 people in those communities that are giving us issues or prs and so for me i've i've started looking
00:09:04.320 at patterns so this last two weeks i noticed rss was a big problem within our within
00:09:12.000 our repo there were so many open issues for that that i just compiled them all together
00:09:17.279 i gave them over to one of our engineers who happened to be on the oss rotation and i also gave them over to mlh fellows
00:09:24.480 and we knocked them out in two weeks where they had been there for like three years so a lot of it has just been me combing
00:09:32.000 through since i've come on here coming through and trying to find patterns of things we also had a ton of markdown issues
00:09:37.839 because the the gym we use is a little bit different than what other people expect and we had a lot of markdown
00:09:45.279 issues and so that was something else i compiled i gave those over to the fellows
00:09:50.480 encourage people in the community to contribute to those specific bugs that's really cool that mirror is
00:09:55.839 something that mike said earlier about looking for like patterns of issues that companies have inside of sidekick right i was just
00:10:02.720 going to say christina a pleasure to meet you i don't think we've ever met before but um
00:10:07.760 i i you know if you've got 500 issues you don't have 500 different issues
00:10:13.839 you probably have more like 50 issues and you've got 10 duplicates uh for for each one right um
00:10:20.880 so it's nice that you can sort of collate a bunch of them together and knock out you know maybe 50 issues
00:10:27.600 with a week or two of work so that's that's that's the pattern i've seen and
00:10:32.720 obviously it's holds true for you too yeah that's definitely what we've been working towards now one of one of the
00:10:38.720 things that i spent a ton of time on when i first came in was just going back over all the old bugs that
00:10:44.560 they had and seeing if they were still bugs because so many of them weren't or seeing if they were similar bugs like
00:10:51.120 i just mentioned so that i could be like hey this is this is where we're having and that that helps the engineers right so i'm not
00:10:57.279 actually contributing to the code as a open source community manager i'm the
00:11:02.399 one making it easier for the engineers to be able to go ahead and fix all of this stuff so that that's kind of my role now
00:11:11.600 we had stale bot someone mentioned stalebot and it was really really annoying for contributors because because if you see a lot of
00:11:18.959 those issues were in there for a very long time and it would constantly be like stale this is stale and people were like it's not
00:11:24.959 stale and we're like so we got rid of stale pot
00:11:30.880 so the issues portion here and the pull request is where you spend most of your time as a community manager
00:11:37.839 uh for the github side of it yes so i mean a lot of my day is going
00:11:43.920 through that because it was just so enormous but there's other things i do as a community
00:11:48.959 manager besides being on github i understand community manager it tends to be like four or five people's jobs
00:11:55.600 rolled into a single human um so maybe with respect to the github
00:12:02.240 portion here when you're in here and you're you're labeling issues and you're you're
00:12:07.600 triaging these things do you feel like the community generally
00:12:13.519 appreciates your efforts what i'm getting at is that we spoke a little bit earlier about unruly members of communities maybe
00:12:19.360 people who have unreasonably high expectations for how they should be uh having their
00:12:25.519 work prioritized by the maintainers of an open source project maybe you could speak to that
00:12:30.880 yeah i think there's a couple sides to this i think as an open source community manager at least in my role you kind of also
00:12:38.480 have to go into it as commute as customer success rate or customer like kind of triaging of stuff
00:12:44.480 um and so because they had so many they were a smaller team for a long time until they've grown now and they had so
00:12:49.920 many issues me and simply going back and communicating with some people who had like open bugs and just saying hey is
00:12:56.160 this still a bug can i can i can you help me figure this out if this is and just kind of talking to people
00:13:01.600 on those you know particular issues has really made the community happy for most of
00:13:07.200 them but also because we did recently change our process with feature requests
00:13:12.800 i knew going in and it was something that i said that i was going to be aware of that we were probably going to have some people
00:13:18.800 angry because people want their feature requests luckily we haven't really had that many i've closed
00:13:26.240 i don't know probably like 400 no less than that uh 300 feature requests in in the
00:13:32.320 project that just were not things that either were on our roadmap were things that were so specific to
00:13:38.000 just dev or one forum that it wasn't going to be uh for the whole community and i've had
00:13:44.000 like two people upset so i mean overall it's it's been good
00:13:53.839 you have any advice for mike on how to make more issues for himself
00:14:00.720 i think mike's doing a good job maybe someday jonathan you want to i'll get us down to 111. jonah if you
00:14:07.120 want to submit some code to me i'll i'll just merge it in sight unseen that sounds
00:14:12.320 awesome you're welcome sidekick we'll let the community fix it
00:14:19.360 just roll those dice let's do it what could go wrong i'm sure that operating in the highly uh
00:14:26.079 concurrent multi-threaded environment that is sidekick i will do fine i'll just probably won't matter yolo it yeah it'll
00:14:32.800 be okay so if i wanted to make a change to forum um
00:14:37.920 from the beginning i can come in here and i can make a pull request and i'm am i trying to use one of these 106
00:14:43.279 labels to indicate to you something about that coming in or is this you don't label eye label so you don't
00:14:48.639 have to worry about that um really when you come in so let's
00:14:53.760 let's take it from the perspective of someone who's new coming in wanting to do something so there's two sides of this either someone's opening
00:15:00.000 an issue for the first time because they've seen something wrong or you know multitude of reasons or they
00:15:06.320 see a specific issue already there and they want to create a pr so there's kind of two
00:15:11.360 different things there if they're creating an issue for the first time we have a you know a template and you as you know
00:15:18.800 contributors if you can fill that out as much as you can and give us as much detail we're much more likely to be able to
00:15:24.720 help you out and i can label them appropriately and we can get them fixed quicker
00:15:29.759 sometimes we have very very vague things so it's a lot of conversation back and forth of like can you give me a little bit more
00:15:36.000 information if you go in and you see something like ready for dev or bug or a good first
00:15:43.040 issue and you want to contribute then your best bet is to go on to that issue and start
00:15:48.560 communicating there if there's not enough detail like i just mentioned in the issue then you want to talk to us beforehand and
00:15:54.800 say hey you know do you have ideas on this is this something we want to implement is this something we want to fix and just kind
00:16:01.040 of have a communication within the issues which is what we usually do with community members
00:16:07.600 christina i've got a question for you um it sounds like you are doing development
00:16:13.199 on github and you have discussion forums in your own software which is great i love the
00:16:19.199 fact that you're dog fooding that you know your own product that's awesome um have you built in specific github
00:16:27.120 integrations into forum to better allow those discussions to happen on
00:16:34.720 forum rather than in github discussions you know things like things like
00:16:40.160 highlighting an issue number right and so that you can mouse over the issue number and see a summary of the
00:16:45.600 issue card that sort of thing right have you have you built in we have some liquid tags that are like
00:16:53.199 github specific that you can put into dev form any of those that will uh so if i'm migrating over some of the
00:17:00.480 issues that were feature requests i just link to those and they have like they show you basically like this whole like
00:17:06.240 little card of like what's the name of the issue kind of give you a little summary so that's helpful some of the other integrations so we
00:17:13.360 when we decided to use form.dev i brought up github discussions first i
00:17:19.120 said why don't we use github discussions we had the topic of you know we have form.dev we should be using our own but
00:17:25.520 also there's two sides of our community our community our developers and our community are people who are not
00:17:31.919 developers so if we were forcing everyone to just go on to github we had a lot of issues with people
00:17:38.000 coming in and just not knowing what to do as far as like creating a bug report and things like that and they feel much more
00:17:44.160 secure being able to discuss and have conversations inform.dev so that's why we use that
00:17:50.960 are you seeing a lot of issues come through on forum.dev so the my this has only transitioned
00:17:58.559 over the last two months that we just started this and some of
00:18:03.600 them initially i was changing over for people now when i close the so a lot of again a lot of our
00:18:11.200 feature requests are really old and i found if i just comment on them people are like don't need that anymore or hey we
00:18:16.880 already have that but the ones where people really do want them or their newer ones we do have
00:18:22.240 pretty good discussions so far on form.dev um usually they come in there and then also at that point again i'm
00:18:28.720 kind of moderating inform.dev as part of my uh role and i can then
00:18:34.000 say hey either i can answer their questions or i can get an engineer on the team that can answer their questions so that's where
00:18:40.960 it's been helpful i'm just like absorbing the knowledge
00:18:47.679 here yeah i mean one of the big debates we had was why don't and
00:18:52.720 and one of the things that i think a few community members were like why don't you just use github discussions and i was like that's a great point
00:18:59.440 but we we are more than just developers in our community so we had to think of both of them so that's where we got that
00:19:06.080 decision it's funny some people think that um if there's one solution for a problem
00:19:12.799 that everybody just needs to use that solution but the reality is is that communication platforms and
00:19:19.039 discussion platforms uh there's a million of them right and that doesn't mean that
00:19:24.160 anyone is is less than the other yeah um you know i i remember using bbs's and
00:19:30.480 usenet and uh and then um development platforms like sourceforge
00:19:36.720 and github and get lab and you know this
00:19:43.120 this stuff evolves over time but that doesn't mean make one tool any less or better than
00:19:48.320 the other um it's also helped for us because because
00:19:55.120 we have dev that's like 500 000 people over the years we've created very good moderation tools
00:20:01.360 and though you can moderate okay on github the way we can moderate and we can filter out spam and the way we can
00:20:07.679 filter out just like uh you know our our big thing at forum is just like building inclusive and welcoming
00:20:14.000 communities so we have to be very careful like moderation wise and you you know you can get some not so great things sometimes
00:20:21.120 in your github issues if people are really upset so it's nice to be able to moderate and you know downvote things or you know be
00:20:28.159 able to just be like uh you know warn people very easily like hey you can't you can't
00:20:34.720 this isn't following our code of conduct and stuff like that so for us it was nice to have those moderation tools that we already had
00:20:41.200 spent so much time building that really is a point where the tools
00:20:49.200 have uh dedicated a lot of effort over the last five to ten years is moderation and codes of conduct you
00:20:56.000 know 10 20 years ago you didn't see that at all the internet was just a free-for-all
00:21:01.280 use that anybody could post whatever they wanted on usenet um and so you got a lot of abusive
00:21:06.559 behavior so i think uh i think it's great that the the communities are maturing and
00:21:12.480 bringing these tools uh to the forefront for people to use and and to to keep keep communities
00:21:19.039 healthy yeah definitely and it's nice because with with ours our moderation like a lot of times it's
00:21:25.200 just like one extreme or the other like you keep you keep it there or you ban a person right like we can suspend a person for a
00:21:31.600 little time we can just warn a person like you know we want dialogue and we want open communication on our platforms and
00:21:37.360 occasionally you just gotta just a little warning hey you know can can you tone it down or something
00:21:42.880 or can you read our code of conduct and we don't have to go to such drastic measures unless we really need to so
00:21:48.000 it's been nice to to be able to use our tools in that sense does that mean you're going to unban me
00:21:54.240 yes sure okay i'm sorry i said all those things about mike yeah can i ask a question
00:22:02.400 how many contributors have contributed to dev2 because your primary community is developers so
00:22:09.200 you've got a whole bunch of developers that are using your product yeah i think uh so far well i don't know
00:22:16.320 how many is unique because we have our team too but if you look at ours we have uh 560 plus so i think 571 contributors
00:22:24.880 so far some of those are are us but our team's not that large so take out like 20 or 30 of those is how
00:22:32.799 many we might contribute that's impressive yeah i mean that that
00:22:39.360 was a big thing for dev their push to open sources that they really wanted to kind of
00:22:44.880 you know a lot of developers want to get into open source for the first time uh we wanted to bring over that
00:22:50.240 community that we had at dev where things are inclusive and welcoming and people could feel safe to contribute
00:22:56.240 and so i think once they did that and they open sourced they ended up with a lot of great contributions and a lot of
00:23:02.000 contributors they also we also participate in hacktoberfest the last two years um like one of like you know supporting
00:23:08.880 hacktoberfest and really uh encouraging people to contribute i see a lot of activity in the october
00:23:16.240 section there of this last year yeah that's when i made my contribution to um
00:23:23.919 benoit says um what do you think about github reactions the emojis
00:23:29.039 is github a good place to know what people need the most um so one i like i personally use the
00:23:36.080 emojis a lot just even if it's something like uh someone's put in an issue and maybe i
00:23:41.200 don't have time right that moment to to say something i do the little eyes just so they know someone's looked at it
00:23:47.600 so they don't feel like you know they're being ignored um i think they're great when we celebrate people contributing so we can
00:23:53.600 do the little like party emoji we don't usually get negative emojis
00:23:58.799 very often in ours so you know there's really only i think the thumbs down as far as the
00:24:04.159 the negative there but a lot of it is like quick communication between all of us on the team
00:24:09.520 and then people contributing you know give a thumbs up i understand what you're saying and so i think it's useful and it has
00:24:14.799 its place um as far as is github a good place to know what people need the most
00:24:20.080 for us um yes and no because we are um very developer centric but also
00:24:27.200 we have a product that isn't just for developers we have to kind of think of things not just in
00:24:32.320 github but in other places as well and get uh information from the people who are actually like creating
00:24:38.799 uh forums and what are their needs and what what is you know what features do they want so
00:24:43.919 we kind of have to go back and forth mike what are your thoughts for sidekick and factory
00:24:51.440 uh vis-a-vis the github reactions and does github a good place to know
00:24:57.120 what people need um yes and no um
00:25:02.720 i i talk to customers every day through email and they'll generally say you know this
00:25:10.159 is important or i i'd like this um i also do a weekly happy hour
00:25:16.080 so for an hour every friday i'm available for video chat for anybody to talk with
00:25:22.159 me about sidekick or factory or anything else and so people will show up to my happy hours
00:25:28.720 and we'll talk about sort of what what features uh or improvements they need and so
00:25:34.799 that's really useful that to talk sort of you know face to face so to speak um and to hear them talk about their
00:25:42.080 application and how they could use this improvement that's really good for centering me in
00:25:48.480 in sort of their point of view and understand how they might use it um and that'll that'll influence how we
00:25:55.600 implement how how i'll implement that um you know because i may think of it in a different way than they do um
00:26:03.200 but uh but yeah it's it's it's either you know talking and happy hour it's
00:26:08.400 it's customer emails and support uh issues um it's it's github issues
00:26:14.159 that people open up there there's several different channels and i don't i don't prioritize one over the other
00:26:21.840 i like the happy hour idea that's a smart idea i'm gonna have a happy hour where where we critique sidekick um
00:26:28.960 a lot of people is that going to be weekly jonah weekly happy hour yeah
00:26:35.600 that might get old after a month or two um yeah a lot of people seem to really
00:26:41.279 like the happy hour idea you can also call it like office hours if you're like a professor you think of
00:26:46.400 their their office hours it really comes from that same vein of wanting to to minimize the
00:26:52.240 administrative overhead of like scheduling like if you've got five or ten different people who want to
00:26:58.480 meet with you you've got to work out five or ten different meeting times and that back and forth itself is draining and so this way i
00:27:05.679 just say hey every time the same time every week i'm going to be available here and just
00:27:11.840 you just click on the url and boom there i am and so it's easy for everybody uh
00:27:17.440 everybody involved i love that's kind of what maybe that's kind of what twitch is
00:27:23.520 right like it's come over to my happy hour and like i'm gonna be here for a certain amount of time and you can like
00:27:29.360 talk to me i think that's why i see so many people from the open source community that do very well on twitch just because like
00:27:36.480 they're like i'm here you can talk jonah how do you feel about emojis and
00:27:42.159 reactions your face is just like reactionless right now i was i was thinking through another
00:27:47.440 question that i had i apologize um about emojis and reactions i think actually like
00:27:53.120 they've changed discussion and i'm not sure if they've changed it for the better i think that
00:27:59.919 there is this default now of dropping a bunch of emojis on things like if i post a thing in slack as an
00:28:06.640 example um there are emojis there that make no sense to me across communities
00:28:13.039 like there's this tribalism that comes from well it's like when i was on the uh one of the
00:28:19.600 teams i was on back in the day i think it was like early heroku days we used a little squirrel emoji to
00:28:25.200 indicate that a pr was ready to ship right there's no world in which that is like normalized behavior that you go
00:28:31.679 to another project somewhere and you add a squirrel wearing a top hat and i forgot all about
00:28:38.159 the ship it squirrel the ship it's wearing a fedora it was a ship and squirrel wearing a fedora that was a thing like 10 years ago
00:28:44.080 yeah it was a thing and now like i have a hard time keeping up and so i'm a little bit
00:28:49.360 um get off my lawn about it but i do think that okay i have to revise my
00:28:56.720 other statement and say that in general it has improved things because there's just there are more people being involved i think people there's a higher
00:29:03.279 barrier to entry for someone to go and comment on a pr that they approve and that's not
00:29:09.520 actually particularly useful anyway right to have 20 people in a row be like this looks good lgtm looks good to me looks good to me
00:29:17.120 we've evolved the conversation in that respect but i wonder if something has been lost along the way
00:29:24.320 i'm a higher barrier to entry but i also think it's a nice way to contextualize um a particular recommendation so a lot
00:29:31.679 of times when i go to an issue i'll look down the issue list and somewhere someone will be like here's a
00:29:36.720 workaround that will have 20 like reactions to it thumbs up tada like it's just all over the place
00:29:44.240 and i'm like that's gonna work and then i'll see somebody else leave a like suggestion and it's got nothing right it's almost
00:29:52.000 like in-line upvotes which is helpful context for me yeah i would agree and that's why i like
00:29:59.360 it i also i'm more likely to um reply with a reaction
00:30:04.559 than i am to like actually leave a comment and it allows me looking at a thread that has already
00:30:10.240 existed to leave my thoughts without being at the bottom of the stack right
00:30:16.640 yeah this makes sense i also think when you're answering stuff a lot and a
00:30:23.200 lot of times people take take things that you say on the internet how they want to take it
00:30:28.880 and as much as you try to think through what you're typing and a little happy emoji or something at
00:30:35.520 the end where you're like you know this can really help sometimes with communication
00:30:40.799 i i have found and really stop people from getting upset uh when they they take
00:30:46.960 something that you you don't intend for them to take i'm in general i am a huge fan of
00:30:52.640 emojis i i have provided far more emojis in my weekly um executive updates
00:30:59.600 maybe than were expected from the team i think like of of all of the updates mine might be
00:31:05.919 the only one that includes any emoji and on many weeks includes uh more than 20 distinct emojis to indicate
00:31:12.320 my feelings about various things it does help in that respect that we are trying to level up the medium to avoid that
00:31:19.440 miscommunication that inevitably comes on the internet where um you know even a smiley face can be misinterpreted are
00:31:26.799 you leering at me you you think this is funny somehow that my issue here you know is
00:31:33.519 some kind of what am i a joke to you like people can remember someone telling me just the regular just like a smiley face of just
00:31:40.320 the you know little mouth was just like the rudest thing to put and i was like what
00:31:45.760 it's very complicated is there a plant emoji in the forum like slides well yeah the i mean the typical little
00:31:52.880 plant emoji that you have yeah the little seedling is what we all use for that and you use to indicate
00:31:58.880 what is the question see because people anytime we talk about forums so we have this like love channel
00:32:04.399 so when people have said something nice about forum or something's going well or something you know on the interweb
00:32:10.240 someone has said something nice we'll post it in there and then people will just like respond with the little plants emojis we have like in the new
00:32:17.120 relic slack we have the there's kind of a famous new relic sticker that has the knuckle tattoos that say like
00:32:22.640 nerd life on the knuckles and we have one that is just one half of the knuckles which just says
00:32:29.760 nerd but it's used like a fist pound but also you're just putting nerd on someone's
00:32:35.679 someone's message you're like nerd because there's the other half of the fist isn't coming through the screen
00:32:42.399 my most used is a minion that's doing this like what and the team has now associated me with
00:32:49.120 that minion we had like a day where we just like posted like our
00:32:54.559 our top emojis that we use and we put it in our internal forum and we were guessing who
00:33:00.000 and everyone immediately was just like that's christina
00:33:05.039 someday when we get the ruby galaxy channel up to uh a place where we can have emojis we'll have a cute little astronaut holding a
00:33:11.360 ruby emoji in our channel i like that about twitch actually as a platform that you can kind of customize the emojis that everyone
00:33:17.840 can have their own set of emojis mike if you were an emoji what would you be
00:33:24.480 oh gosh um i i mean my first the thing that immediately sprung to
00:33:30.559 mind was that a guy in a top hat and a monocle
00:33:36.240 like the the rich guy from monopoly mr peanut mr peanut
00:33:43.840 didn't they kill off mr peanut i want to say they did but i don't know i feel like they did i was
00:33:50.000 going to say about vis-a-vis emojis and reactions i like it because
00:33:55.519 it's just another tool for communication right sometimes a spelled well-spelled thank you is right
00:34:02.960 but other times just a simple heart or a thumbs up is also you know just as
00:34:08.800 good or maybe more appropriate for the situation the one thing i hated in github for years is that people would
00:34:15.599 put thank you in an issue and then that would send an email out to every single person that had
00:34:21.760 replies for that that issue and and it just
00:34:26.800 and so i remember my inbox just i would i would put a comment on some issue and that
00:34:32.879 happened to be a popular issue and then for the next day i'd get like a hundred replies with everybody saying
00:34:38.079 this that or the other and i didn't care and so emojis really solved a lot of that problem where people want to react
00:34:44.879 but they don't necessarily it's not important where they um where people should be emailed for
00:34:51.440 that for that reaction right so i i think it's just another another tool for
00:34:56.720 communication which i think is always a good thing that's a great point and i definitely
00:35:02.079 appreciate that too as someone who gets all of the like issues and things of emails that you know
00:35:07.760 people want to people want to respond and they want to say like you know thank you or something because you can you've said something to
00:35:13.760 them or i might want to say that to them but just being able to just be like yeah or give them a little hurt or something yeah definitely solves that
00:35:20.320 problem it's it's nice do you use the the inbox feature like the notifications i use my
00:35:26.480 email for github notifications about projects i care about i'll get an email from one that i have
00:35:31.760 subscribed to notifications for which is not many but when i go into github my eye almost
00:35:38.079 ignores that little number in the corner now like it's almost meaningless to me
00:35:43.200 to say i know some people that is their whole workflow it's like first stop here and go through and they catch up with all the people they're
00:35:49.119 following and figure out what's happening i don't believe those people are real is that a thing that you do
00:35:56.160 i do everything through email too jonah yeah i don't i don't i don't go to the i don't go to the github github home
00:36:01.839 page and like look at notifications stuff like that i that doesn't that's meaningless to me yeah it's just awesome it's particularly
00:36:08.160 helpful yeah it's like i've gone to notifications before but it's not
00:36:14.240 also you asked what emoji we were and i have emotes oh tell us what your emoji is
00:36:21.520 i think mine so i i i like put all of them in there and then i was like i think
00:36:26.720 i am the really like chunky ruby typing on a keyboard
00:36:32.720 that's me oh i like that bongo kitty i want to be bongo kitty
00:36:38.839 okay i'm not sure if i'm just revealed this yet but my moderator is actually working on making a bongo cat version
00:36:44.640 of like the typing ruby there you go these emojis that we're seeing in the
00:36:50.640 cat are all of your cat ruby uh ruby and pearl
00:36:56.560 ruby and pearl for our confused preference for ruby yes our confused audience who might be
00:37:02.400 looking at those and saying i don't see a ruby typing on a keyboard nor do i see a chunky ruby talking type
00:37:08.079 on a keyboard ruby is the name of of chell's cat
00:37:13.839 nice if you're in chat and you have my emotes which emote are
00:37:19.920 you there we go tell us chat the world needs answers answer me
00:37:28.640 i think that if you have somebody else's emotes you can also answer with those i want to choose an emote for myself
00:37:36.560 i'm going to be the ship at squirrel now and forever and that's going to be all of my emotes when i get to a point where
00:37:41.920 i can add emotes to twitter you can do i'll just use
00:37:46.960 the ship at squirrel for all of them perfect pequendo codigo says the ship at squirrel is still a thing
00:37:53.359 oh yeah i saw that exeggeet is that how i say this one exegete46
00:37:58.880 has chosen pearl sleeping on a bed is that pearl yeah oh pearl has the white-faced kitty
00:38:06.320 okay the ship it meme with the fan and the hat no no that is not the meme
00:38:13.200 were you watching earlier with the gif you were you saw that yes
00:38:19.200 exeggute was the one who recommended that we make that the uh permanent shipping beam that may end up being one of my emojis
00:38:25.599 it's funny because that was one of the very few times in my career where i worked in a proper office we had a door and it closed
00:38:33.119 and me and my mentor had an office to ourselves so that the rest of the team couldn't hear
00:38:39.440 him berating me for not knowing all of ruby yet or sending me let me google that for you links
00:38:47.839 and i was responsible for walking on my standing desk and and blowing my hair in the wind
00:38:52.880 nice that sounds very painful it was actually it was so you got a real office
00:38:58.000 i got a real office it was fantastic they they later moved us into the sales pit so that's not a great
00:39:04.880 place for for software developers for anyone watching if you're going to put them anywhere on earth don't choose the place
00:39:11.760 next to the sales people talking on the phone that's i mean literally i'm going to go out on a limb here
00:39:16.960 and suggest that if any place is called a pit probably not a good place to work not where you want to go
00:39:23.440 what about a fish tank the fish tank yes the fish tank is another good term for a place you don't want to work probably
00:39:30.480 like i'm imagining a glass room in the center of an office filled with developers and everyone just watches
00:39:35.839 them just don't tap on the glass you'll disturb the next release this makes me
00:39:42.480 really happy i've always been remote except my own space
00:39:48.560 tell people all the time i have my own space so i can like dance do what i want while i'm programming no
00:39:54.800 one has to see me yeah i like working from home i think it's gotten a lot harder lately with the
00:40:00.000 remote work and the rest of the industry catching up and trying to figure out how to do this thing well
00:40:05.680 um yeah mike you've always worked remotely or am i wrong once i started my business uh i've never
00:40:13.359 had an office i i had a co-working
00:40:18.400 lease for for a short while but i've primarily worked at home for the last uh
00:40:24.000 well how long i guess i've been on my own for about six years now sheesh wow didn't you used to do a
00:40:31.119 a co-working thing downtown every week like a lunch and ruby yeah yeah we had a ruby lunch
00:40:37.599 monthly um but yeah that that came out of me working for myself and working at the co-working facility and and just
00:40:44.000 wanting to interact with uh my fellow ruby nerds yeah so we had that that went on for about five years i'd say
00:40:50.880 so that i think is a good example of building community like that that was actually a
00:40:57.520 really uh it was kind of the hot spot for a time if you wanted to go and meet new local
00:41:02.720 rubyists was there more to building that than just hey i i sent an email to the local
00:41:08.800 pdx rb no not really i mean that was basically it it was just five minutes a month
00:41:15.359 where i just composed a quick email saying hey we're gonna have lunch and you know two or three days here show up
00:41:21.920 and i mean so many so many programmers work by themselves or maybe work remotely
00:41:28.079 with one or two other people and so um you know if you want to get out of your grind and
00:41:34.480 meet some new people sometimes just going to eat lunch is a sort of a low
00:41:39.599 barrier to entry um sort of low-cost way of just
00:41:44.720 you know meeting meeting some new people and eventually we got to the point where
00:41:50.240 we had i'd say five six seven regulars that would show up and we all knew each other
00:41:56.240 and um could could talk uh regularly about problems we were
00:42:02.079 encountering or challenges what you know what have you but it was it was a good way of getting out of the the typical daily
00:42:09.200 grind that you might might be in
00:42:14.319 do you have any advice for me um in in creating a community if i were to
00:42:19.520 start such a thing uh like i don't know a meet-up a meet-up for the whole galaxy about ruby
00:42:25.760 um what advice would you have for me in developing community around that
00:42:33.359 um well first of all don't do it during a pandemic yeah that's another good play advice
00:42:39.760 number one um i mean that's so much of it's
00:42:45.920 contextual jonathan um it's hard to just narrow down advice
00:42:51.119 people like to eat so you know a lunch is kind of a no-brainer people eat lunch every day so typically
00:42:59.119 um so so that's that's kind of your your lowest common denominator everybody does this
00:43:04.319 so try and train um center center uh and then you know
00:43:10.720 there was two aspects to it there was the ruby and there was the lunch so we had lunch but we were also calling out uh ruby is the thing that
00:43:16.720 connected all of us so that was the one thing that we shared where anybody that showed up there we
00:43:21.920 could say hey what's your connection with ruby tell me how you got started tell me have you done any open source work and
00:43:27.119 so it's a natural conversation starter i think that's exactly what we've done here like we all
00:43:32.720 share a galaxy and we're here to talk about the galaxy that we have in common it's a
00:43:38.800 perfect thread that time what's your favorite star in the galaxy jonathan my favorite star is serious
00:43:44.079 because i'm a serious person very serious all the time and sirius black is a personal hero of mine
00:43:50.400 that's not true good choice let's try this i want to try this icebreaker chat how did you get started with ruby
00:43:58.400 tell us how you got started with ruby while christina gives me advice for leveling up ruby galaxy's community
00:44:03.440 how do we make people like us and stay here forever and never leaves you consistent i think
00:44:09.359 a big thing in community is just being consistent and whatever you're deciding to do like you can be at one be flexible but also
00:44:16.800 be consistent so if you're going to stream to build your community rachel probably has a better sense of
00:44:22.960 this but even us that like dev just from the beginning we knew we weren't gonna have very many people at first
00:44:28.160 uh just consistently having like a a slot that people expected just like mike was saying hey
00:44:33.200 it was this you know day and this you know lunch time people knew what to expect and when to come so staying consistent in something
00:44:40.720 and then just kind of power through and know that like for a time there might be a lot of people or there
00:44:45.839 might not and you if you stay consistent and and listen to the
00:44:51.040 people around you so i don't know how many people like for some communities i've had in the past
00:44:56.960 some of the things i've had to think about was like i'm a mom in tech i have four kids so if i wanted to do something i thought of other moms and like
00:45:03.760 our other parents and the time of day and the different stuff like that that we could do stuff or the kind of
00:45:09.040 community we'd want because are we going to be fine with people bringing kids of course we are as parents probably
00:45:14.960 or do we want to all be away from our kids for a little bit so you have to kind of read the community of what you're trying to do
00:45:20.800 and then i i think honestly the biggest thing is consistency because when mike was saying they did it for five years right the
00:45:27.200 lunches the first thing i thought was wow he probably stayed very consistent in this and that's why it was something
00:45:32.640 that was able to go for a long time yeah christina you make a great point i i
00:45:38.160 think the one thing you want to do is build muscle memory in community members so
00:45:43.359 they know exactly what to expect so you know for my ruby lunch it was always
00:45:49.119 you know first tuesday of every month at noon at this place and so you didn't
00:45:55.200 even need to get the email as long as you knew that and you remembered it people could just show up
00:46:00.240 exactly so it's a really low barrier of entry and you just sort of train people to to understand uh that this is how the
00:46:07.599 community works and once once you do that then it kind of it's snow it can snowball that was very
00:46:15.119 conveniently on the first tuesday sorry rachel go ahead i was going to say we've got some answers from chat so like exegete says
00:46:22.240 that i was looking for a web framework for a project at work and all the cool peeps were talking about rails i don't want it to be cool it worked and
00:46:29.599 then oh no no wait sorry sorry sorry that was mutant neutrinos exegete says i was looking for web frameworks i found rails
00:46:35.920 it was too magic so i built an app in django in 2013. once i understood the magic better
00:46:41.119 i went back to rails and then hybrid bases says it's the language used at the boot camp i'm currently in i've played around with
00:46:46.800 node and python but i much prefer ruby and then epic arcaser says i'm just
00:46:52.400 getting started for real it's hard to say a couple years ago i tried to write an event registration system for the
00:46:57.680 convention i could write and then paquendo codigo says i discovered ruby from reading programming
00:47:02.800 blogs and magazines or whatever but what really got it got me into it was the community after i went to my
00:47:08.240 first ruby conference i decided that was what i was going to use what's really interesting in here is
00:47:13.280 that like four out of five answers involve a web framework known as rails yeah
00:47:19.920 what is your that's what got me into ruby too i i when dhh introduced rails with that uh build a blog in 15
00:47:27.200 minutes yeah i saw that and i had been doing java web development and my mouth hit the floor because
00:47:35.119 uh what he did in 15 minutes would take me two or three or four days to do in jabba
00:47:42.000 and so over the next year or two this was in 2004 or 2005.
00:47:47.760 over the next two years i said i'm gonna i'm gonna find my next job in ruby you know i'm not gonna i don't want to
00:47:54.160 do java anymore and so i didn't know anything about ruby either just like everybody else out there
00:47:59.359 i made some really crappy rails websites um and just iterated and got better and
00:48:06.079 better and you keep you keep building prototypes you keep iterating on your code and you know it
00:48:11.920 took me six months to really understand what a block was and why blocks were useful in ruby
00:48:18.400 but once once it clicks then you get better and better and now your your ruby goes from being
00:48:24.720 garbage ruby to start looking more idiomatic and that's when you're starting to get a hang your tools so
00:48:31.520 that's a journey that every programmer has to go through but you know don't stop you'll get better at
00:48:36.640 it as you as you uh iterate blocks took me forever to understand that was by far the hardest part i think
00:48:43.359 of ruby getting used to the idea that i'm passing these mystery chunks of code around and
00:48:48.720 sometimes i'm passing them when i don't realize i'm passing them it was a big hurdle to overcome i think that's
00:48:53.920 the kind of thing that leads people to think that ruby is magic or we get a lot of criticism of ruby or rails as
00:48:59.839 being magic i think those levels of convenience
00:49:05.040 though once i once i have gotten over the bump have really been central to what makes ruby such a
00:49:11.680 joy to program in for me like i wouldn't want most of the time i will choose ruby just because it's so
00:49:18.640 easy for me to accomplish a thing i can imagine in my head what were you going to say chap i
00:49:25.359 was going to say that i came to ruby the the same way like i came through rails and i find that that that kind of magic
00:49:34.160 is what really appealed to me about it because it's beautiful and like when i look at a scaffold and i look at the fact that i
00:49:39.359 can literally create a web app very quickly and i can iterate on it and i can expand its future shut
00:49:45.520 it's incredible so picanto could be go came to ruby the same way that you and i did
00:49:51.520 mike like started in java and then transitioned over to ruby and like i just remember how painful jabba was
00:49:58.160 i'm kind of wondering like first of all i want to hear how christina came to ruby whether that was like a deliberate
00:50:03.839 choice or whether it was part of the 4m move but also like i wonder if those
00:50:08.880 generators and scaffolds are part of what made ruby feel so magical
00:50:15.680 i have a confession for you all i am not a rubyist i do manage a giant ruby
00:50:23.520 uh oss uh you know uh open source project but i myself am not a rubyist i am a
00:50:29.440 front-end developer however i do get to learn it almost every other wednesday with nick when we do the twitch pair
00:50:36.240 programming with community members so that has been fun and definitely something i'm interested in diving in more because
00:50:42.400 right now i mainly do front end stuff but uh you know knowing a back and language is always something that i'm interested in
00:50:52.079 i think uh regarding magic and rails um rails uh people have always called
00:50:57.760 rails too magical um and and there's certainly a a gamut uh from zero magic to
00:51:03.599 nothing but magic and and rails is in that spectrum somewhere right and everybody
00:51:09.040 has a different tolerance for magic i find that you can tolerate magic a lot
00:51:14.160 more when you actually understand how it's working um it's it's when you have no idea how
00:51:20.720 this thing works and you just type in a magical one-line incantation and all of a sudden it
00:51:27.599 starts working that's when i think people are frustrated and i and i wholeheartedly agree with
00:51:33.680 that frustration as a developer you always need to understand what's going on a level below where you're writing
00:51:40.720 code and the whole point of the magic is is you don't understand what's happening under the covers
00:51:46.640 so i think people are right to call rails rails is a little too magical for my tastes but um
00:51:53.119 you know i i tend to be a little more explicit in how i do things but again everybody's tastes are different
00:51:59.359 yeah i i remember the first time that i cracked open the rail source code to debug something and just being kind of like
00:52:06.480 terrified of this this massive open source code base and trying to find my way through it and as
00:52:12.880 i came to understand a little bit better that this was just like any other code i had seen that i could follow the path of
00:52:19.359 execution and figure out what it was that was in fact happening with those the mystery went away and the magic went
00:52:24.720 away now i understand the value of having that help that's why you can make a blog in in 15
00:52:30.640 minutes in the remaining nine minutes of the show here we could definitely ship a hello world rails app
00:52:37.280 live to the internet like that's a thing that's not true of most any other language or framework i too got my start
00:52:43.280 in java and it was so painful that i effectively left the industry i didn't
00:52:48.880 code for 10 years after i came out of college because i was pretty sure i didn't want to be a programmer
00:52:54.160 and then i sat down one time i was a poker dealer at the time and i sat down on my break and i'd
00:52:59.440 started poking around ruby and i wrote out on like a series of um
00:53:04.640 napkins like some ruby code i was like i wonder how i would write a
00:53:09.680 a ruby hand simulator for poker and so i wrote it all out in just what i thought was pseudocode and i went home
00:53:16.000 and i typed it in and it ran like my program ran without bugs
00:53:21.920 and i thought i was just writing pseudocode and kind of making it up as i went along and i knew that ruby was my language
00:53:27.680 then that it was so convenient and natural for me to write even with the few language constructs
00:53:33.680 that i knew at the time that i was i was bought in then from that moment on
00:53:38.960 i love that you basically got struck by lightning yeah that never happens
00:53:47.359 neutrinos has a recommendation here um they said i just worked through noah gibbs book rebuilding rails which does a
00:53:53.359 nice job of demystifying some of the fundamental real stuff by teaching you simplified versions of how it's implemented under the hook pretty nice
00:54:00.400 i'm just i'm adding this to my book list now speaking of book lists
00:54:05.440 i would like each of our guests to recommend a book for our friends about ruby or about
00:54:12.559 community or about front-end development you can do one about javascript but it can't be about transpiling javascript
00:54:19.520 because i hate transparent uh javascript got two recommendations
00:54:25.119 gentlemen okay um so the first recommendation is nate
00:54:30.640 berkopek is writing a new book called sidekick and practice ooh and do you know what it's about
00:54:36.319 jonah i think it's about kicking your friends
00:54:41.359 it's about sidekick oh that's a better one um so he he sent me a free a pre-production
00:54:47.839 you know draft or whatever and stuff and a lot of it's a hundred pages of
00:54:52.880 good stuff so far um but it it it amazes me that i have a project that's successful enough that
00:54:59.520 people are actually writing a book on about it which it just blows my mind i mean talk
00:55:05.839 about another definition of success if you were to hand pick someone from the ruby
00:55:11.520 community to write that book too nate barkapeck is the person nate he certainly has has
00:55:17.200 his niche yeah that he has uh come to dominate yeah go ahead what was your second book uh
00:55:24.079 the other book on the book i just finished is called cast um which is about race racial relations
00:55:30.720 in the united states in the history of race it's really good um it teaches a lot of history that we
00:55:37.440 never learned um but it is so interesting and very apropos given you know events
00:55:45.200 over the last couple years so yeah it was it was a a good read too
00:55:51.440 that's cast c-a-s-t-e correct yes
00:55:58.400 sidekick in practice coming soon cast actually released now and you can read it and christina what
00:56:04.880 is your book recommendation yeah so um this is not necessarily
00:56:10.000 programming but i think it helps programmers it's called how to take smart notes it's
00:56:15.760 not a super long book but it's a really interesting book it kind of changes the way i think a lot of us
00:56:22.240 think of how to take notes as we're reading different books a lot of times we're just like underlining things and not really thinking about it and we
00:56:28.799 never go back to it and it teaches you the mental model of as you're going through if you find something actually interesting
00:56:35.599 you're going to take that and you're going to reword it in your own um like your own words whatever you
00:56:41.760 think is interesting so that you know you know it and then you're going to keep that in some kind of specific notes that you can link to and it really helps you build up
00:56:48.720 so i do a lot of content as a developer and i always have it helps you build up content pretty quickly and it's content
00:56:54.799 that you can then take from different things you're learning and put it together so that
00:57:00.319 you're not just regurgitating what other people are saying um and so i think it's really helpful and so that's one it's how to take smart
00:57:06.720 notes and then the other one uh that is community
00:57:12.400 kind of focus is called people powered by jono bacon and it's one i'm still working through so i
00:57:18.079 if it's not that great you'll know why but i've gotten through most of it and i've actually really enjoyed it
00:57:23.599 so nice i'm taking notes on all of these books joe your turn are
00:57:29.119 they smart notes they are i like practical object oriented design and ruby that's my favorite um
00:57:34.960 also my second book is i have a book that's coming out in 2030
00:57:40.720 and i'd just like to pre-promote it i got you mike
00:57:46.400 johnson i have so many books i have um a couple books one of them
00:57:53.599 is about magic there's a book called meta programming in ruby that is brilliant and a really good
00:58:00.160 picture how to do this there's another one um
00:58:05.359 help me out mike it's got a microscope on the cover it's uh ruby under a microscope is the name of the book yeah ruby under the
00:58:11.119 microscope ruby under the microphone um pat uh pat pat o'shaughnessy is that
00:58:18.240 yeah shaughnessy pat shaughnessy pat o'shaughnessy was i mean brilliant brilliant
00:58:24.880 blog and book to go to if you're trying to understand the magic i mean at the finest level of detail
00:58:31.280 every time i write a a blog post about ruby or about what's happening with a new change in the ruby
00:58:37.760 language i referenced that book to find out about the feature and how it actually works
00:58:42.799 under the hood it's it's a fantastic resource um yeah so i have those two books and if
00:58:48.960 you're looking for one that is unrelated to those i recommend or unrelated programming i recommend alchemy of air which is the story
00:58:55.359 of how we came to a situation where we're able to pull nitrogen out of the
00:59:00.400 air around us and turn it into fertilizer such that we can sustain the world's current
00:59:06.480 population where we would have previously been capped at about two billion people so those those extra uh
00:59:13.520 six five to six billion people all depend on this one chemical manufacturing process
00:59:19.760 that was invented so we are at time and i thank you all for joining us
00:59:25.599 and i hope jail that you are logged in as us because i can't raid but you probably
00:59:32.240 could i can read we're gonna go raid someone this is our first raid stream have you
00:59:39.200 ever raided anyone before mike christina no we haven't yet but it's it's something we'll probably do eventually
00:59:46.079 this is very exciting times i don't know what that is it's when you drop into another person's
00:59:51.440 channel and you take it over and kick them off the internet um it's not quite like that you actually you do
00:59:57.920 you send all of the viewers at the end of your channel towards another channel from someone who is doing
01:00:03.680 other fun similar things thank you for coming guys it's been a pleasure having you we are
01:00:08.799 raiding pachi codes hachi is a member of the relicans relic thank you again to new relic for
01:00:14.960 sponsoring and thank you to github and thank you to forum thank you christina and mike for being here
01:00:20.799 it's been a pleasure having you you're welcome thank you for having me yeah thank you
01:00:28.559 you
Explore all talks recorded at Ruby Galaxy v0.2
+1