 Good morning. Good morning. So yeah, I'm excited to talk to you about the next generation of contribution It's a little tongue-in-cheek title Hopefully to get your attention and wake you up this morning on a on a bright Sunday after some lovely lambic beers all weekend For those of you who would prefer to follow along if it's easier for you to read on a local tablet or device I've uploaded these slides on speaker deck slash MB bro bird I also tweeted it out, so I'll give you a second to find that if you need to But yeah, while I give that introduction. Hi, I'm Matt I'm a full-time technical editor for open source comm were really small team that produce a lot of content I'd love for all of you to consider being authors if you are at this event You you absolutely have an open source story to share. I can tell you more about that I also want to give a plug to Brandeis University in collaboration with the open source Institute is running a really interesting Master's course on the business of open source I'm taking it right now and learning a ton about all the things I don't know about open source that a lot of this community. I believe does So just a level set with you how I'm walking into this I'm assuming you are a seasoned open source participant while I am of the github generation of open source So you more of what that means you could possibly maybe not recite the SFF for freedoms off the top of your head anyone willing to do that right now, okay never mind While I recently learned that OSI and FSF are different. I kind of definitely conflated them more than I'd like to admit You think you've had a contribute before get I think that get is basically Latin in in technology It's the only thing it's a lingua franca. So anything before that didn't exist. We're all just oral tradition You're probably active on IRC. I'm active everywhere, but IRC And lastly you care about your community as do I I think if we can all create communities Where we care about each other and people feel welcome will be on the same page But I just figured I'd level set with you also and you knew where I was coming from Because I'm gonna just jump right in and say I don't get IRC when I was Every time I try to log into it. I end up getting into a bit of a tit for tat with name serve I'm not quite sure who I'm talking to I'm not logged into the right place I feel a little like a wizard which is kind of cool because I'm a little behind on my sys admin skills these days But ultimately I end up seeing a stream of offensive spam and I'm confused as to what channel I'm in and what's going on and That has led in the communities that participated in where IRC is a default channel I'm always told that you know go check the manual the friendly manual that will explain in great detail How to use the the tooling more appropriately? But I'm always left this with with the sense that I don't get it and I feel kind of ashamed about it I mean, I've got a degree in computer science been in the tech industry for ten years after four years of IT work beforehand, and I don't say that to To brag it's actually out of embarrassment that like oh how can this technology continue to elude me on a day-to-day basis When I have this foundation behind me But I think it comes from where what my point of origin was that like for me open source started the day I made a github user and a user account and logged in to do something and I wanted to participate for the first time I was very excited pretty nervous about it And I was using homebrew on Mac for those that know the package manager and I opened my very first issue only eight years ago with a Bunch of junk about why the package wasn't working for me and me being confused about it and to my absolute surprise and delight immediately I hear from these people who are Really big names in that community in my sense, and they actually told me I didn't install get correctly on Mac It was a totally trivial issue No one made me feel stupid at all though They immediately pointed me towards helpful documentation and I felt like I had done something like somebody else has definitely felt That silly going into the homebrew community and when they look through issues They will find that path ideally get to the same positive conclusion and see the welcoming people along the way And I love that experience and it really set me up for the success towards as I Slowly iterated towards an open-source community and an open-source career focus Because my pathways all through proprietary. I started with a proprietary hardware vendor I found communities that are surrounding proprietary technology that live on a proprietary platform of Twitter and I eventually joined a proprietary code sharing site and found that to be really open-source and fun to me and I got into open-core startups. That is a different conversation We can talk about what whether that works or doesn't and the many ways in which it doesn't and so on and so forth now I'm very much centered around open-source communities as a focus of my career I've got the joy of working at open source comm to get those stories out further and coach people through that experience and I continue to learn about why we obsess about licenses by coming to Fossum and by taking courses like am But my pathway is not the same as I know many others have gone through That started with IRC just being a logical simple thing But for me, it's still it's still this even though I understand where it comes from and I understand that had its place in time I feel as if it's not as inviting as that incredible github issue that didn't shame me or make me feel stupid Ultimately, whether that's a sign of my posture syndrome or or not is between me and my therapist but as somebody who's as I like to say on the easy setting of contribution in in this world a Concept taken from straight white male the lowest difficulty setting there is By John here. I understand I have already a bunch of easy ways in which I can be involved and not feel too Ashamed of things when they don't go well that said if I can feel that awkward I can definitely imagine other people who have a more difficult path towards open source who don't want to be is out there will have more of a challenge and Also, I want to talk about this is because I'm doing as they continue to read a lot more about the inclusivity and diversity challenges in the technology space and Try to inform myself while I don't feel ever informed enough to give a full lecture on it I do know I need to start making changes in my own behavior in order to improve this for those that are Going to be coming forward now that are in their their teens and their 20s in their 30s Or are people that are pivoting from other parts and other industries and want to participate? I do a lot of mentoring on the side for people who are confused as to how they can get involved in technology I'm consistently asked the same question of where do I get involved? What do I do? How do I do this open source thing that all these companies are looking to hire for and I can't in good conscience say jump on IRC and see how to get involved. It's confusing it and it ultimately could make some people feel Like they they shouldn't be pivoting into technology that they shouldn't be there and quite honestly It's not where their community is the one that they're going to pursue that they're going to feel welcome in So I think about how we can start to change that and one of the talks that really influenced me recently is by creator of Jenkins he had an incredible talk at Monktoberfest about The that underrepresented people are underestimated, but he also brought up this amazing concept Thank you for Margaret for for tweeting it so I could quote it About the curb cutting principle that if you think about cutting the curb so that people in wheelchairs can go up it It actually helps a number of other people along the way It helps people with strollers or with heavy luggage bags or anyone with any form of walking disability People who have sight difficulties by creating an easier on-ramp for a specific target people You have a halo effect you end up positively impacting all these other people and I think about what? What we're doing as community leaders to do that for our early onboarding for people who? Maybe don't it can't just quite get up that Ledge right away. How do we make it easy from the beginning? We may have a greater impact than we even realize So to put it in some context I understand when IRC Came out and became the de facto standard. It's because there's a lot of empty space around it was IRC or nothing to communicate I guess telnetting and reading each other's things is something that I've read about as well, but I'll just put that aside I don't know it very well, but if we fast forward to today The the stats I've been able to find is that IRC is hovering around 400,000 active users in the last year or so and we look at some of the other Synchronous communication channels that people are talking about we've got Microsoft teams as much as people have to use that for work and don't necessarily Love it. There's 13 million people on that slack people love it open-source communities hate it 12 million users Riot that I am very impressive that they've grown to well over 11 million users Google chat It's like slowly waning in the background, but at 4 million And that's just synchronous communication channels And that's just recently we zoom out even further and think about like the ways in which we interact with communities in the technology space That's an interesting noise I'm going to keep talking while somebody figures that out. So if we think about where communities are talking across the industry You've got Twitter, which is my default place to Conversate with community members at 126 million users Telegram is way more massive than I ever realized at 200 million and a lot more open-source communities are talking there Discord is humongous reddit is a complete beast when we think about it Is that getting pretty distracting? True All right jazz hands for a moment and I'll just leave this for your curiosity Not that one That's the cables That's exciting Electricity is strange everybody. It's probably some sort of a noise from the audio channel of the HDMI. Yeah Yeah, I know I definitely At Fossum that does feel appropriate changes lie very gently. Oh, I'm watching you. Yeah. Yeah I Thank you, it's a video guy. That was amazing Cool, okay, so there is a lot more competition There's a lot more places people are conversing about open source than ever before and that that can be quite It's quite exciting, but it's also it starts to make that little dot of IRC in the middle look Maybe less to be centric even though it's center of the picture. It's definitely not the dominant place people are talking now Man, I'm gonna like say So just a quick side-by-side by no means Inclusive of everything that's important to setting up a healthy community a healthy place for people to converse We think about just the sign-up experience the mobile access the inboard on The in-app onboarding of users accessibility options. Just comparing IRC to yes The hated but often used slack it starts to look like okay I can understand why people aren't jumping on the platform that's existed for the longest There are other options that are definitely maturing But the default option is shifting and I'd like us all to shift with it In quite honestly one of the more important parts is why are we using synchronous communication? I am not always on and I doubt you want to be too. It's rarely the right place to start So I want to take a take a moment and talk about why I mean just to list five I think we can go through a hundred each one of us has at least one That it requires it always on participation. There's this expectation that it sets a default of immediacy There's no continuity of knowledge when you use synchronous communication If I answer a question today three days later. Yes, the same one you get the same question It's it's often not a place that is building the type of community that we're trying to foster or or maybe it is But it's it's not alone. There are other pieces to the puzzle So I'm gonna pivot to you talking about community channels and my theory of operation It's a model that's worked for me. All models are wrong. Some are more helpful than others. This one is mine Well, this one actually isn't to start. This is somebody else's So in the great good place, there's this wonderful concept of Your third place where like traditionally your first place being home We have a certain sense of identity and purpose and meaning your second place being your work Which is in our culture is is just as dominant if not the dominant place that you live in and there is this magical third place That we're all searching for it's a place where we feel comfortable and feel connected It's where you relax in public encounter familiar faces and make new acquaintances Take a moment it think of some community you participate in and doesn't it check all those boxes right away That sense of feeling comfortable and connected to other people. There are a bunch of other reasons That it's interesting. It's a great theory of operation And I think we're all building third places as we build open source communities and places where our communities interact So to take that in mind, I kind of break it into this quadrant that works for me Where I think about the synchronous communication, which I don't think is the greatest default But it is fantastic for casual and high throughput conversations It's the place of banter where you start to build some sort of connection while asynchronous is really the Definitive record of what is the right answer and what is the wrong answer? We all end up making these static webpages for things like this There are a bunch of other tools that are useful There's also the power and importance of face-to-face connection Many of us flew drive took a train to be here to make face-to-face connections with each other Because no matter how much we work fully remotely no matter how much we connect with each other as much as I love that Over the internet experience. We still need this. There's something special about this this space Lastly, I think it's important to think intentionally about your news channel Like how are you feeding information and distributing that context to people that care about what you're doing? It's cathedral in the bizarre like that you need someplace where I'm being regularly updated with information so that I know I'm making an impact on what I'm doing So what are some default ones synchronous? We've talked about asynchronous, you know Google groups That's the logo for it that no one knows about There's github is actually pretty decent at asynchronous communication people kind of bend the way you use issues to be more about collaboration Discourse is absolutely fantastic. Whether you like the creator or not. It's a really powerful Conversation and threading platform. That's open source and you can deploy yourself or use their service Stack overflows another form of it and they have their ability to branch off and use your own face-to-face We all go to them. We're at a conference right now user groups and local meetups are important News for better or worse Twitter is where a lot of us hang out It's certainly what been my my choice and this where I know a lot of you from But then there are infinite number of newsletters and other places where we get our news So to see this in practice, I just want to give a couple examples So Mozilla recently did a huge renovation of how they communicate internally and externally with their community They landed on riot, which I think is really telling that it's a maturing technology it's it's a There's great research if you look up Mozilla's Synchronous communication conversation why they chose riot they also went to discourse for their asynchronous So if you join the Mozilla Community, they have a whole platform you can jump on they have incredible Moz Fest And then their Mozilla blog is really really detailed They are always pushing information out and I think it's so interesting They do a great job of having syndicated channels, so they push it out to Twitter They push it out to their newsletter subscribers It's like a really tight way of staying connected to this broad and diverse open-source community If we look at go the go programming language, for instance, they've defaulted to slack There are many many thousands of people talking about go on slack on a regular basis They use Google groups quite a bit as well as github github issues to communicate with each other for asynchronous There's a ton. There's go for con which is the unofficial official place to be It's where people go year-round and go meet-ups are all over the world and then they have the go blog But what's interesting about them they have more of an unofficial presence on Twitter and email and newsletters They have great podcasts and and newsletters to distribute it out go times one from changelog That's not an official part of the go language, but it is an unofficial place that the community circles Last but not least let's talk about kubernetes because everybody else is they are also on slack And it's really interesting default channel is more github It's a lot github centric while then the newsletter or excuse me the discussion Lists are a little bit of a back Back channel while the face-to-face is really interesting. They do so many videos online So they're using zoom and they're using YouTube to extend that face-to-face It doesn't quite substitute the in-person because that community is getting so big they've added this virtual element as well I think video chats can be really powerful in that way in these distributed communities In their news is just as deep just as distributed people filling in the gaps that they don't but the official channel is always their blog So if you're looking for some sane defaults if you're building a community and you you find this framework kind of useful I'd say if you're starting from scratch. I'd really recommend not going with synchronous from the start and trying to Build a place where you answer questions for people and you can create some dialogue amongst the frequent visitors Start to get that sense of belonging Building and then once people really start to know each other you and you need that side channel. You need that conversation You can do that through synchronous But wait until the time zones aren't a factor and that you have a sense of culture already Discourse is a great asynchronous communication channel. I'm really enjoying using it. It's highly customizable. It's really easy Relatively easy to run on your own or to they have a very reasonable cost structure if you want to pay for it If you're looking to do face-to-face from the start Look at Kubernetes way in which they do the community meetups They're really interesting ways to get people connected was on one recently with 40 people from around the world We're all talking about the bugs that they had squashed that week and ways in which they've made contributor experience a little easier I can't talk about many communities that have that level of scale and that number of people that during the day are jumping in and Talking to each other and not all of them were paid to do it There's a lot of volunteers a lot of people who are trying to grow their career And the news whether you love it or not the centralization of Twitter is really effective I look forward to understanding mastodon a little bit more to see if that is a Collaborative place, but I think it's going to be an and not an or and then newsletters are really powerful It's a great place to be if you're interested in running your own website having a blog that then syndicates to those is really effective So that all matters because contribution matters So just to pivot back into the conversation of what are we all trying to do? We're trying to build communications of practice Because the actual footage of people trying to recruit contributors is like a hungry hungry hippo's game No idea if that reference works internationally, but I love it anyway. It's a great game Just to look at one of the hundreds of sites that try to say good first contributors First contributors that github.io. These are just some of the amazing organizations who are desperate for new contribution To give a shout out exorcism is one of the best place to learn a programming language and it's run by brilliant people All of these others are great too, but everyone is very interested in getting new contributions So clearly there's a lot of demand which means we need to meet people where their expectations are and not ask them to meet Meet us where we already are Because if we think about the contributor Experience early on back in the IRC only days like almost everyone who is contributing or who is talking about what they're doing We're was also contributing to something because it was one in the same you had to have that level of skill But now it's kind of shifted that the contributors is a very small peak and the potential contributor field And if we think about it, there's like a little dot that's ready to roll off in either direction of the actual maintainers of the software Thank you So I I just want to reinforce that communication channel channels are exceptionally important And they said an expectation and we want that expectation to be something where people feel incredibly welcome and don't feel like they're being told to Try harder and maybe one day they'll be worthy of being an open-source contributor It's going to be multi-channel It's just that's the new standard that everybody is using multiple channels if you try to break it into this grid I think it gets a little bit more sane So you don't have a half a dozen synchronous communication channels and no place for the right and wrong answers like a discourse But lastly I just want to make a shout out to the idea that any place that is contributing to open source is an open source community So whether they're using slack or otherwise you may not like that choice But it is not necessarily the wrong choice We can try to grow people towards an all open source community and understand the nuances of it But it's taken me eight years to get there and I'm finally starting to get it and I'd like to grow that way But I don't want to shame or make anyone else feel unwelcome because they're not where I am today So I hope we can all meet people where they are today and help them grow into being open-source advocates and understand the nuance of it I really thank you for your time and I look forward to hearing more of your talks as well. Thanks That was super easy. Yeah So the distinction between async and synchronized What I have experienced is that most time when a community have an asynchronous community is that they Demand that people installed the app on the phone and use partial notification We then become synchronized Communication method anyway, and if you don't want to install the app you more let's get frozen out Okay, so I'm hearing that the question is like is Notifications in that sense that asynchronous converts into synchronous in most cases I completely understand what you're saying there I think there is a level that all technology these days is trying to steal our attention all the time And trying to get us to turn notifications on and be as real-time as possible. I think it's not a requirement I'm part of about a dozen different discourse services right now And I just kind of schedule out time well I turned off notifications and I log into the web apps and and go in there on my own time So I think it does take more Mental effort than it it should I don't think it's a necessity to think of it that way And if you think about the experience like let's say the same strategy where like I just logged in three days later And looked for updates if I do that in a synchronous communication channel I've got to scroll back infinitely and try to thread in my head the conversations that happened While in like a discourse or stack overflow experience. They're all spread out with Q&A's in their own separate categories So more advocating for that structure as opposed to the unstructured if your goal is to get to a simple like yes No definitive answer if your goal is to get people to banter with each other like choose a synchronous channel That is definitely the place to do it Leslie how am I doing on time? Oh cool. Well, he's got the mic go for it. You didn't mention mailing lists. I did not mention mailing lists I would highly recommend so I did mention Google lists, but I didn't give mailman the respect that deserves I'm on an infinite number. I'd prefer not to be quite honestly with all due respect Discourse has a great built-in feature where you can use it like a multi-threaded mailing list It will so I think it's a one-to-one replacement with a better user experience for those less familiar with it While also providing a mailman like experience mailing lists So I'd love for you a disagreement that is where we could learn a lot from it But yeah, that's that's my current stance on it Especially for the expectations that there are today of just a full-fledged Friendly experience. I'd say discourse is a better choice to start Hi, it's just in regards to dealing with actually setting up all these channels and form of communication as Community manager for example, how would you install perhaps unique code of conduct for each of these channels? Or would it be a blanket all channels how you interact with each other? So like for example, if it was the Synchronous you would have to perhaps say no spamming no doing x y and z great that kind of aspect Yeah, absolutely. So I'm hearing the the question is that like do you have a per channel code of conduct and per channel channel? Documentation or is it centralized firm believer you have to have one URL to rule them all That's kind of a different Conversation but like by default like your documentation should lead to one place and Give as brief and overview as possible and then link to other things So I think a default code of conduct for across the spectrum because that's you're all still participating in one Community across the channels is really important and then yes There may be some specific nuance like how to what's our reticent versus how we use discourse and those instructions can be in those different channels