 Hi, everyone. So I just want to give a quick introduction to who I am. My name is Justin Flory and I am my Fedora contributor, an open source aficionado and an IT student from Rochester, New York. And I will apologize in advance because I've come down with the DEVCOM flu so bear with me for that. But I want to talk a little bit about what I do in Fedora. Some of the roles like the technical or the titles that I have in Fedora will be things like Fedora. I work very much with the Fedora magazine, the community operations team, diversity team, the ambassadors and several other groups in Fedora. But the easiest way to sum them up as the common theme is if you move all the titles, I'm mostly involved in non-technical fields. And the kind of work that I'm doing is I work with code even though I'm not really writing the code itself. I work through many different fields of Fedora and because of that I have a strong understanding of different components of the community. And I think the way that I've entered the Fedora project has given me a unique perspective about various components to open source projects. And in a more abstract way of putting it, it's kind of discovering and contributing to this never-ending novel of the Fedora project and open source. But I'll get back to that later. So was the talk title just clickbait? What's the what's the big deal? Is it magic and open source? Is this where the connection is? Not quite. So JK Rowling has a very unique ability to see a story, create a universe, and tell that story to a very captivated audience. For the people who are fans of their books, the billions of people who have read the Harry Potter books, she has a very unique ability to capture their attention and keep them turning the page and keeping them engaged with the book. So they always want to know what's next. And so JK Rowling's line of work isn't unique to literature. It's also an uncommon but also vital part of contributing in technical lines of work or working with technical work as well. So it's not just a literature type of work that she does. But how exactly is storytelling a part of open source? So in a world of code and commits and software, where does storytelling really fit in? And in one way to put it, every piece of software has a purpose. It has a goal. When someone decides that they want to create a software project, a common way you might hear it is it scratching an itch. Because someone wanted a piece of software to do something to solve a very specific and unique problem for them. And the challenge about how open or storytelling fits into open source is finding the way to extract that goal and that purpose and conveying it to your audience of users but also contributors. So why are stories important to open source? There's two different audiences that you're communicating with. For your users, you're communicating the purpose of your software, which is fairly straightforward if you might think about why you want to tell that story to your users. Because you're telling them why your software is important, how it's useful, why you want to use your software over maybe another piece of software or what the benefits are. So you're trying to communicate that persuasiveness to them by pulling it out of all the lines and commits of code, finding the way to tell that story to your users. But it's also important for your contributor community. It's difficult to know multiple sides of a project without actually being there. And this is especially true for Linux communities that have multiple different sides. Like in Fedora, you have a design team, you have a packaging committee, you have the ambassadors, you have all these different sides of an open source project. And it's hard for a single person to know what's happening in all the different corners. I would argue that even some of the project leadership, it's not an easy task. It's not something that anyone can just open a page and see what's happening in Fedora everywhere today or this week. So the benefits of trying to have a way to pull the story of your project out for your contributors is it brings everyone onto the same page. So that way, you can open these metaphorical windows between two different houses. Like an example that I'd want to cite would be recently there was a campaign in Fedora to create the Fedora Loves Python merchandise or campaign, which you might have seen at our table that we have here at DevConf. But when that process was happening, the way that you might think it would normally happen would be the design team wants to work on it, they could feedback from the Python developers in Fedora, and then the design team would work on their group and then go back. But the way that we ended up doing this for the Fedora Loves Python campaign was that the entire process was very well communicated when we started on it. It was part of a marketing and community operations idea that was then shared with the design team. And we had Python developers who were actively contributing as the design process was moving forward. So there was this constant communication and really collaboration between these two groups that are doing very different things. You have the designers who are creating the SVGs and the t-shirt designs and all these other things that we're doing. And you have the Python community that's doing it, participating very actively with this. And so the reason why those two sides of the communities were collaborating this easily was because there was a very strong presence to many contributors that this was something we were working on. That story that we're trying to tell the story of why Python is a great language on Fedora, that story was clear to multiple different contributors across the community. So how do you tell this open source story? What's the secret magic? So I'll give a warning that if you're looking for some secret software you haven't heard about or some well-guarded secret that only a few elite people know about, you're not going to find anything new. Rather it's using the things you already have available to you at their maximum potential. That's the longer way of saying it is that you're using the best practices and certain tools to help extract that story and improve the visibility of whatever is happening in your project community. So I kind of ordered this into a way of the least frequent things you would want to do to the most frequent. So the first thing that users or contributors potential contributors to your project will see is for a smaller project it might be like a read me on a Git repository. For a larger project it might be an overview to the entire purpose and structure of the project. But having key information available to your users and to your contributors at the start is vital. So if it's for your users you want to try to make it clear for why they would want to use your software. What is the story you want to say? When you decided to contribute to the software, when you decided to work on this, what was it that made you want to contribute to it or work on it? Make sure you have a way to tell that story, to pull that out in a way that makes sense to someone who might be like you, who is looking for that software instead of trying to create something themselves, they discover your project. Having that clearly defined and in a way that's accessible to your potential users is extremely important. Because then you'll be able to clearly see what you're trying to accomplish with your software and how it solves their problems just as it's solving the problems that you might be having by using that, or are solving by using your software. For a larger project and a more longer overview would be important. And this is, I would say, a little bit more important for bigger projects because there's a little bit more ground to cover. So like in Fedora there's a wiki page that's just overview, but it covers all the different key part for the project community. You have introduction to what is Fedora, what is Linux, or what is the Fedora Linux project, what are we doing? And it kind of goes into that, but it also talks about things like the governance model for Fedora, but it also has a way for people to see how to get started and contribute. So if they come to the front door of our project, they have a clear and accessible way to see if this is something that also solves their needs, they have a window into getting into contributing, or having an impact in the software community. After that, on the side of a more frequent use is the effective use of announcement mailing lists. The kind of thoughts that I see sometimes across open source projects is people have these resources out there for users or contributors to subscribe to, because they want to be updated and current about what's happening in your project community. And sometimes the fear or apprehension is that, well, I don't want to be too noisy and send out too many emails. And that makes sense, but when that fear is blocking the decision that whether we communicate key information about things that are happening in our project community, it doesn't make sense to me. So using the announcement mailing lists at a regular frequency, not just for really, really big news, but things that would be important to pulling, maybe people who are, you might have users who have subscribed to this mailing list, and maybe they just need an excuse to dive into your project a little bit more. And maybe by choosing to announce something on your mailing list, you're inviting them in a certain way into your project. So making sure that you're actually using this to communicate important news, even if it's not like a huge thing, like a release, using those mailing lists to their maximum potential to engage with people who are interested and at least want to engage in your project in a certain way is important. Because the idea that if they didn't want to hear about your project or learn about what's going on in your community, it was their choice to subscribe to your project's mailing list. So if they didn't want to be at least engaged or interested in what's going on in your project community, they wouldn't have subscribed to the list. And the fear is that, well, maybe they'll unsubscribe if we post too much, then they probably weren't that interested in the project community in the first place. And that could really be something. The frequency, like the exact range of frequency for that will really depend on your project size. If you're a smaller project, maybe it would be a little bit less. But if you're a larger project, there's probably a lot of things going on in your community that you could try to consciously post out to somewhere like an announcement list. Further down, you'd have the topic of writing and blogging. And this is also something that's a little bit different, depending on the project size. For a larger community that has, let's say, so for the instance of Fedora, we have contributors, thousands of contributors from all over the world. And many of them have their own personal blog as well. But when you're trying to figure out like what's going on in Fedora right now, well, you can go to the Fedora planet and you can read 50 different blog posts from all these different people. And some of them might not be about Fedora. Some of them might be like these really cool things that are happening. And like, wow, why isn't this being promoted more? But for a larger project community, having like a centralized source of information, whether it's like a community, like for Fedora. In November 2015, we started the Fedora community blog. And the Fedora community blog acts as a central hub of contributor-oriented news or topics that people find is important to communicate to contributors in our community. And I believe as one of the things I do is I'm the editor-in-chief of the community blog. And I feel that the role that this platform serves is that if somebody wants to explore what's happening in Fedora, they can go to the blog, scroll through the first few posts, they can sort by category to see the different sub-projects that are, the different sub-projects and the news that they are publishing. It's very easy, it's much easier than going through hundreds of different contributors blog posts to get an idea about what's going on in Fedora, because you can filter the kind of information you're looking for to what you're interested in. So for a larger project community, it makes a lot of sense to have all of this into a central platform. So you don't have to send your contributors across a large span of blogs or other places to figure out what the hell is going on in your project. But, and for a smaller project, if it's a small Git repo and you maybe have 10 people working on your project, then a smaller like a personal blog would be a good idea, having a category or a tag or something where you can point people who are interested in your project, be here's where we're posting news about our project or what we're working on, upcoming features or chances to get involved, look here for this, but for both of these the key thing is communicating that they're out there and that they're resources for users or contributors to follow and engage with your project. And lastly, the last part that you could, I would say is the thing you could use most frequently is social media, and that also would vary depending on the size of your project community. For a larger project that might have like a Linux distribution that might have 60,000 plus followers across different channels, a more frequent use of the social media channels would make sense. Whether it's daily or a few times a week, people who are engaged with your social media accounts, they're also interested in your project. But you don't have to write a full blog post in a Twitter and a 140 character tweet or a Google Plus post. So using social media for shorter more to-the-point updates about your project community is also important. Whether it's like, hey, we're working on this feature and here's an issue of what we're doing this week. It makes it very easy for someone who is at least vaguely interested in your project to have an idea about what's going on. And you don't have to sit down and write a 1000 character blog post about a single issue you've been working on in that week. So it's kind of like a nice little scale about things that you can do and utilizing these tools to their maximum potential. Because I think there's often a fear that by using some of these things you're going to scare people away because you're going to be another person or another thing in their feed. But the important thing you need to remember as well is that these people are following or engaging with your project community because they are interested and they are engaged enough to want to see what's happening in your project community. And another really important part is tying your efforts into results. So how do you measure success? The case study that I present is Fedora and FedMessage, which if you're not familiar with what FedMessage is, it's really the magic of Fedora's infrastructure. Every single commit, build, bug, blog post, translations, ansible, playbook runs, ticket comments, ask Fedora questions, they all emit an event on the FedMessage box. So you can actually see this in the channel on Freenote, Fedora-FedMessage. You'll join and you'll see hundreds of messages a minute of all these things happening in Fedora. It's like kind of like a fire hose of seeing what's happening in there. By itself, not helpful because it's hundreds of messages flowing in your screen. How are you supposed to interpret and read any of this? But when it starts to become more valuable is when you whittle it down and you can start focusing in on specific things and to see your impact. So let's say you're starting to write more frequently like the posts on a community blog or you're starting to try to use some of your communication channels more effectively. Well, in Fedora we can see well as the number of account signups increased. Have we noticed an increase in the number of commits in a certain part of the project? Maybe we did a blog post about this new application we're working on. And after we started communicating about it, did we see an increase in this? And actually a really cool example of this was on the Fedora magazine back in December. We published an article about the Fedora security spin and that month had about a 500 to a thousand downloads spike in the number of downloads for Fedora security spin. And it was directly tied to the time frame that that article was released. So we're kind of lucky in Fedora to have this incredible infrastructure that lets us tune in so finally to so many things. And it's an ongoing story that we're writing every day or trying to better write and illuminate for our own community. And that's part of the work that we're doing in the community operations team is trying to find a way to help tell that story better. And it's definitely an ongoing process. But let's say you're in a project community that doesn't have something that's incredible or is really helpful as like the Fedora Fed message bus. There are still patterns you can use to understand success. So in this case let's say you're just a regular Git repository and you're communicating about a specific issue or something that's happening whether it's an issue or some kind of thing that you're trying to do in your project community. For a smaller project you can try looking at the number of commits in your project, the number of issues that are filed against your project. It is there increased in number of pull requests over a certain period of time. For larger projects you can see if there's a correlation in the number of account registrations that happen. The list of things you can look at is really dependent on your own project community. But the odds are even if you don't have these super fancy tools available you can still find things that are in your own project community that you can look at and that you can understand and make real conclusions to see if your efforts are actually making results. So how do you show on, this is kind of what I mentioned here but so you can also see with that conference and event engagement and there's this really cool blog post that a Fedora contributor named B. Padalkar wrote for last year's FOSDA and it analyzed three years of we have badges in Fedora that someone can come up to our table at a conference and with a QR code they can scan it and to the Fedora account they get a badge and she analyzed three years of these badges that people would come up to the table and claim and from that we were able to draw really firm conclusions about our impact about our perceived impact at an event like FOSDA. Like what are we really getting out of it? What's the point of us going there? And her blog post which I'll be working I'll post the slides soon but she has a very great blog post that really dives into these details and it's one of like my favorite things to read. And another thing that you could also look at is the number of translated streams or languages for your project too if you have a very strong localization effort. So the end thing that I'd like to say is that for J.K. Rowling she was one person who saw a world of wizards, witches and magic and all these other things and she inspired billions. You have a story in your project community. Find your story and share it and tell it. Thank you. Now if anyone has questions I'd be happy to answer. Sure. So the question is for Copper is having the Fed message notifications. Cockpit? Or are you telling them? Absolutely. So the one thing that I would recommend is like the Fedora community blog is a very good place to get very contributor focused and oriented. So for me I would want to know like what's happening in the cockpit community because it's a very relevant part of the Fedora server group. So I would like to see if there's some kind of new feature that was coming up like in the past release of Fedora I think it was an SC Linux troubleshooting module that came out and like for me that was really cool to read about and I was like wow this is awesome and I would think a really great way for a project like cockpit to communicate that would be through the Fedora magazine because that's a very the difference between the Fedora magazine and the community blog the magazine is very focused towards users. The community blog is very focused towards contributors. So I would think an effective way of communicating that out would be on the Fedora magazine having someone put together like a pitch or some kind of article idea to say hey here's this thing we're working on in the cockpit community and we're working like an upcoming feature we're having a way to even do like a call for action like we'd love to have new contributors and check out these things that we're working on and having a way to very clearly pull that out. So I would suggest like there's something that's really cool that's going to make it in the next release of Fedora let's let people know. So I think a Fedora magazine article would be a really great way of communicating that not just to our contributors who might be interested in Fedora server like the ambassadors who would talk about it at an event like here but also to our users who are very interested in learning more about cockpit. So I hope that answers the question a little bit. In-defend message. In the contributor stream, Dynac is composed of a number of various sources. Do we have obviously a very small team and be able to do this automatically? I don't know the full technical implementations for how you could get like a Fed message integration into your project community but I'm sure there'd be an effective way at finding a way to integrate it whether if your project's hosted on Pazure it's already in the Fed message bus for every commit and and issue that's filed a pull request that's already on the Fed message bus. So if you're using actually like Fedora Pazure for your Git repo and hosting you're already on the Fed message bus if it's somewhere else that's a like let's say GitHub there's also a GitHub integration you can use where you can add a GitHub specific GitHub repositories into the Fed message bus. So that's also something you may want to look at too because if it's just something simple like getting like commits to even show up in the bus if it's in Pazure you're already good if it's on GitHub there is a tool in Fedora and I could I'm sure if you search for Pazure or Fed message GitHub integration it'll pop up pretty quickly I remember the specific tool but it's GitHub is the most interesting you can have the Fed message is the tool but that would be a really easy way to get those commits and pull requests and bugs and issues all that traffic into the Fed message bus and then you could try to like think about how you want to use it If anyone ever wants to reach me I'm J Flory 7 on IRC or J Flory 7 at Fedora Project got away Thank you everyone