 All right. Well, welcome, everybody. So who here is this their very first Apache con? All right, we got some new folks. So you guys having a good time? All right, so I'm so excited that you guys came to my talk because this talk is really about how you can bring this experience home with you So if you're having a good time here, my goal is to give you guys the tools and the knowledge of why you might want to Get involved in user groups what you can do with user groups and how user groups may benefit you as an ASF Committer contributor or just even just somebody interested So we'll start off with just a little bit about me. So I'm an independent consultant from Chicago So it's actually warm there right now. So I'm actually don't have that much of a bump in the temperature I've been an ASF member for about a year now My work I was recently made a Java champion, which essentially is I'm involved in a Java user group and as part of my work with the group We do a number of programs which I'm going to talk about with you today Which led to my election into that body of people. I'm currently the CFO of the Chicago Java user group So we're one of the largest Organizations in Chicago for the user group community So gay And I'm also a podcaster. I do two different podcasts So if you're interested in technology and learning about Java and how the JVM works the Java pub house Podcast is what I do with Freddie Gimmie where we go deep into different things in the JVM we go into how to write Software using a lot of different open-source libraries And it's really you know kind of an approachable podcast if you're just getting into Java and you want to learn New things about the language the other one off heap is more of the pundits podcast Who's who here has heard of the Java posse anybody heard of them? Okay, not a whole lot there. They've been Gone for some time now, but it's basically a pundits podcast where we talk about news things in open source You know like the you know the Google oracle lawsuit and things that are relevant for the JVM there So these are things that I've been working on for the past couple of years, but most recently I've been working on an app so Recently went into production about a month and a half ago So I just wanted to share that with you guys. This is my app so you know we've been working out for about nine months he's in production he's doing great and This is what this talk is really about as well. It's about building for the future Building for people that are going to be using open source 20-30 years from now because what it ends up coming down to is it's all about community And this guy is an MVP. He does three things very well. He eats. He sleeps and he poops very well Those are the three things and we're going to build a community around different things for Apache So let's talk about you So who here Has been is involved with an Apache project Got a lot of folks expected a lot of folks great Who here also attends user groups? Okay, so we got some user group folks who thinks user groups are all about drinking beer and socializing No, really nobody. Okay, Tom. I knew I'd get Tom But who here is like wait, there's beer and pizza at these things. How do I can you do a talk about that? Because I want that Really, nobody you guys have already figured out the beer thing then. All right. Well, I've got tips on that later as well So is anybody involved in like the actual running of a user group Okay, got a few folks perfect So this is my ideal audience folks that go to user groups are involved in Apache and Are at my talk so you might be interested in doing more All right, so When I was looking to write this talk I kind of started off with this philosophical question about you know How did I get here? How did we get here? Becoming ASF members At the end of the day you think back to when you get into Into Apache or how you got involved and it's really you think about it's very much a revisionist history We kind of reinvent how we got in and or how difficult it was and what it felt like Getting into the organization Sometimes we'll forget you know if it was a specific Jira or if there was a specific person involved and What I like to do is try to get back to that and try to bring you back to that experience and think of how it was and think of Were there is there easier ways that that could have happened for you? And then think back on the impact that it had on your life and getting involved in the ASF You know for many of us it was a pretty big deal pretty big career Thing for our careers it could have just been a big thing for a socially or just our self-esteem having that You know either member committer contributor having a patch in it feels really good, right? So what we're trying to do is we're trying to get that out to more people so When you think about what we're trying to do here what it makes the ASF special to us So I mean is it code of course we produce code Is it the process the process where we have community over code in our in our Ecosystem is it the fact of how we do releases? Is it that is it the brand? Is it the fact that we have this brand of what Apache makes that is unique and is difficult to replicate? well When you're thinking of what an organization is about it usually comes back to the mission statement And when you start with Apache you're making software for the public good So we're all just all truest, right? That's that's really all there is to this We're just trying to do good it by by creating open-source software Well, if you keep reading there's an there's an additional spot to this where it talks about providing services and support for the people Like for many like-minded software projects and communities So I mean if you think open source is important the foundation's goal is to support Those like-minded people and to bring them together The organization the foundation is really about growing people and growing communities So in order to serve that You know kind of like my app We're trying to grow people that are maybe getting into open source or maybe they're just trying to figure out the way to Get in and have them have a successful experience with that You know Specifically, you know people that were trying to produce useful software with these communities So growing them is extremely important But often The part we forget is how hard it was to get in or maybe it was easy for you But maybe that's revisionist history because when we think about what we did to take that first step There's kind of a survivorship bias, you know the people that got in well you're already in so Must have been something I did right right sometimes We don't even know what we were actually doing properly that that got us into what we're doing right now and we forget about all of these other things that go on that Maybe our resistance to people trying to get into open source, you know when you sent off that first pull request or that first patch in a Jira You weren't really sure what was going to happen with it most of the time You're just waiting for somebody to bring back judgment or perhaps tell you what they well maybe this and do this differently and You know there's cases We're perhaps some encouragement or some things along the way would have And maybe we didn't even notice it that was very important. Well, we all got past it and the people in this room and the people that are involved with the ASF have kind of a Have some sort of status or you could call it just a kind of an achievement that not a lot of people have Right, so if you look at your general user group community and you walk around and talk to people How many people that you run into that are ASF committers that are ASF members? You're kind of in the minority so people are looking to you and that and you have something that a lot of these people in user groups want So keep that in mind and when you're working with people and that are saying well, well, how did you get into it? You know the first thing that came out of my mouth Just when when people ask this question is well, you got to go join the mailing list, you know get involved in the mailing list and You know when that Comes out, you know, you do think about back and you're like well, I just got involved in the mailing list and You know everything just kind of worked out from there But people forget what getting introduced to a mailing list feels like right often You're not really sure what that reply is going to look like is somebody going to come and tell me that oh What I'm doing is not really what we want to do in this project it leaves open to chance that that person may have a good or a bad experience and again, it's because we're thinking in terms of where this distributed group of software engineers and You know, we don't always have a local face-to-face community to bring us together to help people through Some of these things that they would be facing on their own So what we really need is An incubator for people we have incubators for software But we need incubators for people to help people cross that large chasm that's sometimes there between somebody that's just a casual open-source user to a Committed open source committer member that's contributing back and providing value to their community so, you know how Do we bring these people together so that we can help them cross this chasm and a lot of times it is just having some support there for these people to to learn how to Contribute properly to open source and engage the community in ways that we've all learned but is not necessarily that intuitive So here's where user groups can help and this is this is my pitch to the Apache community Because with beer and pizza we can fix anything right as developers. That's the only two inputs. We really require And user groups because nobody else raised their hand for the beer question. I'm assuming you're getting that So what we can do with user groups is create incubators for people within the user groups You know user groups allow face-to-face interactions between developers Which takes some of the sting out of something coming from the other side of the world over the internet It is a low bar of entry right for me to go to a user group. I don't have to do anything I just have to sign up and show up And take time out of my day to go to that user group And it's usually because I have some sort of itch that I wanted to scratch Maybe I'm not getting something that I that I wanted to out of my work environment and You can meet like-minded developers there And when you think about the average user group attendee There's a lot of overlap between what we're looking for in people that are committed to the ASF so My first experience going to a user group was I was at a place We were building software. They're still using very outdated stack a lot of it was kicks in cobalt and open source was sort of used but not really and You know the company was as a Developer of their technology people they didn't always have Resources that could help you grow your career So I started looking outside to other places that were available to me and one of those were that was the Java user group And in going to the Java user group I started finding those people that I could engage on conversation and at the very first time It was like wow these people are so much smarter than me. They're doing all of these cool things with all this new technology How do I do more of that? So being brought into that community Already kind of you know it kind of pulled me in These people are already interested in doing things after work user groups don't happen during the day They're kind of inconvenient. You know if you're just trying to work and go home It's like two hours and then if you have to commute You're spending more time either in the city or wherever you're working to go to these user group meetings So people already interested I work generally that's that's a good thing for asf projects You're looking to be a part of something like I said as I was working through my work environment I wanted to be a part of something else that was important to me and Then finally they usually have an itch like they're selecting a user group for a reason It's like I wanted to be a better Java developer or I want to be to learn something about go or I want to learn something about Apache Spark You have user groups there that are specific that can teach you Specific things and I can self-select which of these things that I want very much like an Apache project So great. Hopefully I've made some Compelling argument that user group folks are people that we actually want to go out and actively recruit into our projects As an asf member committer contributor What is it that I have that I can offer people in the user group community? The very first thing that we can provide is often speaking about the topics at the user groups user groups many of them are hurting for speakers. They're always looking for somebody to provide content and Apache members Committers contributors are usually the best types of speakers because they're not ones pushing some sort of a white paper, right? You're you become an Apache committer contributor by submitting patches and actually getting to know the code base and we have one kind of basic rule at the Chicago Java user group and what we want out of our speakers and that is when you give a talk Whether it's proprietary or open source no matter what I should be able to learn something Without having to pay you anything to learn that thing I should be able to take home something that you've taught me and work on it at home without having to go through some sort of a paywall a Apache projects already fit that definition. So we happen to do a lot of talks on a patchy And You don't have to do it all yourself You know the one great thing about being a part of a community of developers is you have Contacts within your community within other communities that are maybe related and integrating with your project So if it's like well, I'm in the you know the car off Community while car off has integrations with camel and we really want a camel talk Can I post something out to look for somebody that's a camel contributor to come in and give a talk? Oh and camel integrates everything. So well now I want PDF box now I want Tika now I want you know I can branch out from there in order to make those connections that a lot of these user group leaders may not have Without being fully engaged in open source The other thing is mentorship again when we talked about crossing that chasm of becoming going from an open source user to an open source contributor Most people just have no idea where to get started or what the expectations are people that actually have Sent patches into open source that kind of feel dejected by it's usually like well I put this pull request out there, but nobody's looking at it. Nobody's doing anything with it So everybody must hate me or they don't like what what I put out there And that's usually not the case because teams have projects right there They have processes in place of what it you're supposed to do in order to commit code to the repository and Somebody that is aware of these kind of policies or can point people in the right direction Can kind of say well, okay, did you did you mention something on the devilist? You know did you read some of the conversations that happened before maybe this was something that was raised before and You know there they came up with a reason why the community did not want this specific feature The other thing that often comes up is you know, what should I work on? you know, is there a specific project out there that I should be that I should be watching and You know being involved in Some of the other projects out there an incubator is you kind of have some inside baseball on what's going on and who's Looking for people to help out and in truth everybody's looking for people to help out right We all want more people in our communities But often there's specific skill sets that people have that may benefit one community or another like so What are you using at work? Right, maybe that's something that you could look into. What is your work? You know, do you even have a job that may make being an open source contributor? Difficult so so that they don't put themselves in a position. Maybe they have an employment contract where the employer owns everything You know at least having that conversation and making people aware of Different things that are going to happen if they do get involved Can be important if you can have them up front, you know One of the things that I had with another member of the C-jugg is they were like well, you know for your patchy projects You don't have to like Like if you take a patch from somebody else There's no agreement that that person that you took the patch from had to sign It's just the committers that sign it So what happens if what they gave you is something that's bad and I'm like, oh There should be something on that and I get went through the lists and it's like well If you're the one applying the patch you're kind of have some responsibility for that. So it's like well I'm glad that I read up on that before just applying patches just in case I thought that hey I'm off the hook, you know, I'm just I'm just committing it to the repo this guy gave it to me So, you know having people there that are able to guide people is very very important And we're all everyone in this room is is is a good candidate to be to do that type of mentoring The other thing is street credibility. So like I mentioned There's not if you go to a user group anywhere You're not necessarily going to find a lot of other people that are committers and members of the ASF So in general you may get kind of looked up to in these communities and kind of be able to serve as a role model to people So they're going to look to you at how you interact on your on with your communities How you interact with people in person? And this can you know, this can get you some some street credibility You know when I go around the meetup and talk about things that are going on in the on Projects and and you know things things that I've done You know, I don't think some of them are really that big of a deal anymore But people that haven't done this to them. It's like a huge deal It's like wait you contributed to a project and people are running your code like at all of these companies That's that's pretty awesome, and we sometimes forget. Oh, yeah, that is pretty awesome so The street credibility thing, you know, we can be role models in these in these user group communities and people to model off of All right, so who's ready to do this, right? Nobody, okay Tom are you ready to do this? He's thinking about it All right, so let's get into the meat of this is what How does this stuff work and if I want to get involved in it? What is it exactly you're asking me to do? So the first thing is just selecting a group and some of this comes down to you know What you want to be involved in Chicago? We have a ton of user groups We have groups that we've these are just some of the ones we've worked with The Chicago women's developers group, which is again just kind of focused on on women developers The chug is the Hadoop user group as you can see they've solved the beer issue as well There's a Chicago ACM DevOps You've got choices. So which one should I pick? They're not all created equal So you kind of have to maybe go to a few and and figure out what you're looking for Just like in the ASF user groups often get stuck with this There's some user groups out there that under the guise of an open source user group or a language-based user group are Really just marketing the departments of some corporation that's either looking for recruitment or looking to market a product My suggestion is to avoid these If if you go to these meet-ups or get involved with them You're going to find that most of it is just a big sales pitch And it's usually very very obvious from the onset what those are Because you'll go in and you'll get pitched immediately and you won't see any code And you won't be able to take anything home with you. It'll violate all of the rules that we have for speakers The other decision you have is do you want to be in a specific group or a general group? So one of the things that happens if you have a really rich ecosystem So Chicago I think has a really rich one is you'll have like a user group for something very very specific like We'll have a user group just for a specific open source like a there's a user group just for Hadoop Now they've branched out because the Hadoop ecosystem is now huge But you know at the time if it's just Hadoop you can kind of get Siloed into one specific technology stack and maybe that's what you want There's also groups that are general and cover a lot of things are the C jug is more of a general group We'll cover anything on the JVM The thing with generat generality is a lot of times you'll get different people each meetup depending on what you're presenting on and you Don't get a lot of cohesion with the people that are coming in you want kind of regulars coming in so that you can start getting a relationship with people Otherwise, you know mentoring the same first person You know 20 times in a row is not really that effective. You want to start building a community where the same people show up The other thing is you want people that you can work with so meeting with the people running the group and figuring out You know what they're doing this for and what's important to them is very important with figuring out if you're gonna get heavily involved in user Because it does take time it's just like working on a project where sometimes you get kind of hooked on it because you're you're able to talk to speakers and You're able to talk with companies and find out what everybody's doing You're going to spend a lot of time with people if you get involved with them on on a board or actually in the running of the group okay, so Now if you've signed up What are some things that are helpful and these are kind of tips that that we've found along the the years of how to run this The sea jugs successfully, you know, we have about 2,500 members We've been doing it for probably the last five or six years You know what makes user groups successful and what can I do in order to get you know The free beer every week and and to have a group of people that as I mentor as we grow Can start becoming and influencing and doing good things in the ASF as well The first thing again back to getting speakers and one of the things that to think about is think big One of the really crazy things when you're thinking about asking someone to speak is we usually think in terms of us It's like man really asking this person to do a huge favor for me The big secret about speakers is they like to do this They like to come up in front of people and talk especially user groups because if the if the speaker is writing a book or trying to run a conference or You know, they're they're trying to do some self-promotion for themselves Speaking is what gives them the opportunity to do that by thinking big You're going to bring in the or at least give yourself the opportunity to bring in the top-notch talent But one thing that we decided right off the bat with the sea jug is that we wanted the content to be the best it possibly could Nothing else would really matter as long as we had really good content. We would all the other things would fall into place One of the things that happens though if you get too focused on getting the big names is you forget about your local community And the goal is to have a good mix of speakers So one thing we started doing in order to try to engage other people and bring people in our community So when we go to conferences, we have people there that we know right off the bat Is encouraging lightning talks and getting regular members to come up and talk about some of the technology They're using, you know, the last project. They did at work and we found this really effective and not only recruiting new members to our To our board but getting people more involved in the jug and to care about what we're doing in the user group So assuming you can find somebody to talk the next hardest thing is getting the Venue for them to talk in and this was was our biggest challenge because as it turns out there's a lot of good speakers in Chicago that we just didn't even know about until we started asking and And We were lucky for the first couple years when we were doing this because we had one place That would just give us space and pizza and beer and life was good But then their budget dried up and they said well, we can't really do this for you anymore So we were running to a tailspin. It's like what do we do? We talked to a place. I said, well, yeah We can cover you for next month But the month after that. Yeah, we don't know So we kept moving to different places and one of the things that we discovered was that by moving it around as long as you Stay in a similar proximity Is a really healthy thing for your community because what we pitch now to our members is if you're looking for a job You're looking to understand, you know, what kind of work is going around in the Chicago area You just have to come to see jug because we're going to keep moving around to all the people and companies That are willing to support the community and provide space for people to gather and have these sort of activities to happen So really it's this huge win-win that you're looking to focus on when you're looking for for venues You get to offer and say well company You're going to have developers coming in and you're they're going to be able to interact with your development team That's the one thing I tell them is make sure your development team is coming to the meet-up Because you just don't want your recruiter standing up there and saying how great the company is because we all know that we can trust the recruiters, right? They're not going to give us an overly rosy picture of the company But if you have your developers there and you have conversations like meaningful conversations with them and say I can see myself Working with this person it turns out it's very effective and as it turns out your membership is also looking for jobs a lot You know we in technology we change jobs all the time So it's good to have a you know a way for people to make those connections and then growing your membership so One of the things that we learn so you once you get the venue and the speaker thing worked out you've basically achieved the basic Maslow Order of needs so you have speakers you have venue you have beer and pizza So like from a sustainability perspective if all you do is that you're at least going to live But once you are able to do that Frequently you can achieve like much higher levels where you get to have more fun And one of the things that you can do is get more involved So we started expanding our topic list to start covering like alternative languages We started covering things that maybe weren't even technology topics necessarily But we're interests of our of our community and What this did is it allowed us to start partnering with other groups So if we did something on Scala Chicago's got a scholar user group We would partner with the scholar user group and then we got to meet all the leaders in the scholar user group The pie expanded for us again even with the fragmentation of the the develop of the user group communities We were able to kind of bridge that and partner with other user groups The other thing we did and this is this is Apache But we did get involved in the JCP. So don't boot me off the stage right now I know there's issues with Apache and the JCP. It's not an open process But as a user group getting involved in that process did give our developers a voice in What they wanted or at least a way for us to communicate back to The JCP process of what was happening with what our developers wanted with Java We also started working to adopt a JSR which allowed You know us to get involved in some of the JSR spec writing processes and provide feedback on those things So, you know, you can just like Apache in many ways, you know, we don't always We don't dictate what people should and shouldn't do we just kind of provide, you know The basic layout and say, okay, here's here's the basic things but you guys can take this where you want to go with it All right, and finally encouraging open source Contributions so once you are getting involved you have meetings you have you have speakers the next step is Let's try to get people building stuff so what we found is a Couple of things that will do so holding hack nights where people are not just listening to speakers But actually building things with their hands and these can be Apache projects, you know One one thing we did last year was we did a hackathon with on Apache groovy. It was like let's welcome groovy to the ASF They're new Let's bring them in and this could be done for any incubator project But the first time we did something like this we found it was it was difficult to figure out what people should be working on Because some people were just like well, I'm just learning groovy So going through and curating some of the jurors and this is actually something I've heard in a number of talks so far But it really does work going through a Jira before you have the hack night and saying, you know These are three four five jurors that we think even if you're fairly junior We might be able to get a pull request or a patch out in an evening Makes people feel really good about themselves and again It's that feeling that we're trying to propagate so that people are willing to make that next step and say all right I'm gonna try to do this more regularly or maybe on my own Without people around Another thing we've tried just this year is holding office hours. So these are hours where we set aside and people can come to us and we'll have It'll just be open conversation. You can bring your project in I'm trying to Learn spring boot or I'm trying to make this work in Apache Camel and it's not working And it's not free consulting. There's really a limit to what you know You can get done, but it's only an evening right and it's just however many people show up. It's a conversation And what I'd like to see this evolve into is almost like some pairing Where people bring in their projects and we set aside the jurors even just for the office hours and do some hacking there For people to learn the language The other thing is having talks on open source again covering some of the things that people just don't know by default Like you know, what is my responsibility when I'm a committer is extremely useful What are the differences between joining one foundation like the ASF or joining cloud foundry or the eclipse foundation? I did a talk earlier this year with with one of my friends Michael Manila who works at Pivotal And he talked about being a spring committer and how that works Versus, you know, what it would be like working in the ASF and I kind of took the ASF perspective on things You know, and there are differences that can be important if you're looking to get involved in it And so they don't have to be technical, you know, that the talks just should cover, you know Hey, I'm interested. What would what do I need to know before I get involved and Then finally encouraging other people to give talks again the lightning talks and being and putting them in a position Where they take that next step to learn the software well enough to give a talk on it Because this is actually what got me into user groups and Apache So Getting an open source is a journey and mine started about five years ago being encouraged to get it into a talk It was on a patchy sling and I thought I knew something about this open source project because I'd worked with it for a few years But when I was trying to condense it into a talk, I ended up finding. Oh wait There's a bug in this release or there is there's something that didn't work in my talk the way I expected it to and it started You know, oh, well, maybe I should sub a juror for this And the funniest thing is the timing of this talk was exactly five years ago today So it's kind of ironic being here and giving this talk five years after I Started getting brought into this because there's another really significant thing that happened that day And if you can think of all of the worst possible things they're not worse But interesting things that can happen when you're giving a talk This happened for me. So it's my five year olds birthday today and I got a call During the well, I got texted during my talk About my wife going to the hospital for him. Now, of course, it was covered up because my text messages were full But I went off and gave my talk Had a kid and then started continuing to think about open source So but this is really why we do this, right? We have the ability to create software that's going to be used for a very very very long time And even if it dies and you know, the the processes and the things we have in place are important So being able to bring people in to do the work and to have them understand what the value add is for them To do this for their career is really critical So this is me these are some links to my podcast Is anybody wondering so you guys did math, right? So there's three of them there I just had one last month. So is anybody like wait a minute. You have Four kids and you're involved in a user group and you contribute to open source and so how do you do that? So I kind of put this together because there there's some things that are really important if you're a busy person And you want to get involved in these things. So this is Yeah, so how do you run a user group and get involved it go to and go to Apache con a month and a half later So basically I looked at it at like a load test. So this is what it looks like right now So this is my wife over here. She's got all four of them I get to go to Apache con and so far this is working very well She's a little bit overloaded, but in order to make this work long term. This is what happens after Apache con I'm not sure if I'm completely ready for the load over here I might have to solve some device mapping issues But she gets to go away with her sister after after this So really the compromise thing if you have a significant other that's like why are you doing all of these things? This is generally one way that you can make it work so Just keep that in mind if you're if you're ever trying to sell these things to your wife or husband to Try to balance them out a little bit And then you could do these things longer term so That's all I got and there should be some time for questions if you guys want to have asked any questions I was kind of hoping if if anybody here is running a user group and they they have Things that they want to talk about things that are working things that aren't working Would love to have that discussion Yes Yeah, so the question is you have a thousands of members. How many people actually end up coming to the meetups so it varies per topic and what we have found is is The longer that we've been around The worst the no-show rate actually got and we also record everything So that also has made the no-show rate go up But what's really interesting is it's extremely consistent is we're always at right about 50% so if we get you know our typical meetup is between 40 and 80 people Somewhere in that range. So if we get 80 sign-ups We know we're like right about the 40 mark So if you're if you're trying to work with a vendor and say well, how much pizza and beer do we need? We just say well just cut it in half and we should be fine It's one of those things that's held now for about two and a half years So it's almost out. We tried like making people feel guilty for not showing up and it doesn't work the only time it really becomes an issue is if we do have hard limits and We need to make sure that if people aren't going to show up They do you register to make room for people that are actually going to show up then we'll we'll do a little guilt-tripting but for the for the most part We're We're right at that 50% show rate. It's a good question though But when you're just starting out, it's sometimes like 70% if you know everybody But that eventually goes away Any other questions? Okay. Well, thank you very much