About this talk
This talk features a panel discussion on enhancing contributions to open source projects by fostering mentorship and community engagement. The panelists share their experiences and strategies from different perspectives, such as community management in the Chaos Project and teaching open source software at universities. Ruth discusses her efforts in building the Chaos Africa community and simplifying the entry process for new contributors. Stephen elaborates on how he incorporates real projects to prepare students for the software development workforce. Peculiar highlights the importance of the Chaos education program in guiding newcomers and creating structured pathways to contributions. Throughout the session, the significance of mentorship and community support in nurturing the next wave of contributors is emphasized.
Full transcript
[music] so much. So, uh, thanks everybody for for coming. I'm Don Foster. I will be your moderator today. Uh, just a a quick introduction for me. So, I've I've been in the tech industry and working in open source for for a few decades. Uh most recently I've been working on data science at the chaos project where I'm also a working group lead and co-chair of the chaos
governing board. I'm also on the board of open UK and I do various other bits and pieces of things in in open source. So so welcome everyone. Uh what I'm going to do with the panel is I'm going to give each of them a question that they're going to use to also introduce themselves. So we'll kick it off that way. And if you have any questions throughout
the panel, if you want to just put them in the um in the online platform, we can we can take questions at at any time. So it's with a panel, it's always great if we can get some audience questions. So um so don't hesitate to to interrupt us if you want to ask a question from the audience. So let's just go ahead and kick it off with
with Ruth. So why don't you tell us a little bit about yourself and talk about how Chaos Africa has been helping grow the next wave of contributors. >> Hi everyone. Um afternoon here. So good afternoon. Um I'm joining from Lagos, Nigeria. Um I would have loved to make it in person but yeah this tomorrow is my birthday so yeah I couldn't [laughter] I couldn't travel. So I
wanted to spend it at home with family. So it's nice to see everyone. I see some familiar faces there as well. Um yeah, my name is Ruth. Like um Don introduced I I do a lot of things in open source. I am a community manager. Um I do program management. Um and this topic again is is a topic that myself, Don and Steven had have spoken about
and we are all passionate about you know bringing in new people into open source and I have been focused on that for the past six years of my career. um joining um tech you know from a non-technical background I you know had those challenges with you know engaging with people that had very expansive like experience in open source in tech right so at the time I joined
I think the first year I started contributing to open source chaos was my first actual project and if you're not familiar with the chaos project Um we're a project under the Linux Foundation that creates metrics um and software to help other open source communities you know measure health um in their project and communities. So when I joined the chaos project at the time like I said I
was really very new to tech new to everything um new to open source as well and I had these challenges with interacting with um in meetings understanding what's going on um understanding how to use specific platforms and tools um and I I think very pecular to the open source chaos project is it wasn't just software so it wasn't just contrib contribute code and you know go it
was there were different things we were contributing metrics and at the time I did not understand what use what was the use for metrics like why do we need to measure stuff so it was very confusing to me as a new contributor and I I could see that around me as well around the the area I was in people were trying to contribute to open source from
my country from my region and they were finding it difficult to understand how do I make a first contribution. So, you know, I I I think I'm very I'm very um dedicated sometimes when I want to learn how to do something. So, I went into it and started learning how to make contributions and I was successful at it. So, it was like how do I bring in
more people? I I really love this project. How do I get in more people to um make their first contributions? And I know at the time I started running very small. I would open up a Zoom link and share it for people to come and learn how to make a pull request to GitHub, right? And that was how people started, you know, being part of the chaos
project, joining the project gradually. So now when people started coming in, I saw that I was building a community organically like it was just word of mouth, right? Um over the period of two years I realized that we had a lot more contributors from Africa based off of the advocacy the advocacy I was doing unknowingly to me at that time. So I think in after 2 years
uh we had we initially had chapters when I joined. So we now started how about I think Matt was the one that popped the question would you want to create a chapter in you know in Africa for example and I was like yeah cool that's that that that would be great and what we now focused on was finding ways for Africans to contribute to the chaos project
and that was a really interesting time because at the time when people join they were confused um but they could see that things were going on um where could I join how do I how do I participate in this big project or in this project where there are different things different moving parts so we created different small working groups or I call them focus groups for instance
because we needed people to meet in smaller groups and discuss within themselves um and find connection with the project. So those working groups for example design which is something that in open source that um you know people sometimes would overlook. So we created design working groups because there were people that were designers that were interested in contributing to open source or even researchers for example. So as
we started creating those smaller groups where people could meet. We saw that over time people were beginning to contribute meaningfully to the project in ways that maybe we had not originally thought of. And maybe to as to wrap this up ending with one example is I think one of the proudest um contributions that I hold is the design group in the sense that before before that group
um we would the working group leaders of chaos coup would like design things on their own. But now requests go to that group to be able to design things that um you know would use graphics different brand assets to use in the chaos project generally. So yeah that's that has been my experience and just even building chaos chaos Africa in sense that I am bringing in people
to attach their skill sets to things that originally they would not know how to contribute to. So beyond code um beyond the software we're like making room for people different people with different skill sets research um writing to get involved social media to get involved in making open source contributions. >> Thanks Ruth. Um let's shift over to uh Stephen who has a very very different perspective on
this I think. So why yourself and what you've been doing to educate the next generation of contributors in a university setting. >> Hey, good afternoon everybody. Uh it's very early in the morning for me right now. I'm on the west coast of America. Um so I've just retired uh after 45 years uh in the industry and uh I was I just finished up at Microsoft. I'm still
teaching a course and I guess the the course has been really interesting. We've been building it over the last six years now. Uh it's it's taught in a a western university setting and the first couple of years it was me talking about open-source software and software engineering practice and I came into it uh from a very different perspective. I came back to Microsoft eight years ago and
I was noticing that software engineering skills weren't as strong as what I remembered they should be kind of thing the last time I was active in in a software engineering setting and I was looking at how how do we tool up that next generation and to me open- source software projects are this fantastic lab and so I I said about I I started at John's Hopkins University.
I was inter introduced into that setting and I spent two years and and the kind of aha moment is let's get students these are all undergraduates with uh you know give them a project in an open- source project with an industry mentor and I' I'd kind of decorate the top of that with some lectures. uh you know I was the entertainment value rather than the uh actual
meat of the course where the student was doing real work in real in a real software setting because most undergraduates don't know what real software looks like. Um that program we ran that for 2 years in a semester system and it was interesting. We got all of the students, there was about 60 uh students over that two years through the program and everybody made meaningful contribution, but
we knew it didn't scale. Uh you know, the mentor the mentors and I were tired getting those students over the finish line and we uh I was really lucky. Uh I had an opportunity to teach it as a summer internship uh with a another professor uh at Carnegie Melon University. And what we've discovered is that setting in the summer where students aren't kind of finding a few
hours each week over a semester with five other courses, you know, banging for their attention. Instead, it's a it's a software internship. And the big aha for us was to shove the students together into teams of five so that the students are supporting each other like they've never se they're often working in a programming language they've never seen and they're working with a tool chain that they
didn't know existed. And so these are big pieces of work where two industry mentors are bringing them up through through that learning curve, but they're teaching each other the tool sets and they're teaching each other that this in that setting. And we've just seen some phenomenal outcomes for the students. The students are are walking away. You can watch their confidence build through that summer experience. And each
year we run it uh we continue to run it in a slightly different way. We ran it completely virtual last year and you know it it's been a really satisfying experience and we're we're looking for new ways to try and expand it and hand it out so we really can scale this in a bigger way. So it's been very exciting. >> Thank you so much Stephen. All
right, so let's shift over to our third panelist. Uh, Peculiar, maybe you can tell us a how you've been using the chaos education program to bring people into >> Hi everybody. Um, my name is Ume. I'm a software developer project and community manager. I lead a KC education project. Um my journey into open source uh began as my way to upskill and work on real life project.
I know then I came across Opia Android project and because I was at that time writing um uh learning Android development. So and an opia Android project has to do with mathematics and education which is mathematics was my course I mean course I read in so that attracted so and after some period of contribution I started working contracting with learning community and I also you know join
and handle the learning community uh opensource program but my experience and I contributed to uh Opia Android um that was my first open source uh project at first it was challenging to navigate the such the code base but at times As time went by, I got handle on it and uh quality code. Then at Learning Community, we had this open-source program I decided to join because of
my passion and just from things I got while contributing to Opia Android. I for that period I helped um learners and uh some engineers uh taught some how to uh collaborate in opensource project and build uh an open source uh project. So after that the challenge I faced uh why working on these two uh open source projects you know later inspired me to create pathways for others
and make contributing to opensource uh projects or community as it wasn't easy like I mentioned at first having to a code base and then understand the other engineers code and being able to send PR and then navigate the community get help from other things who are there in the community ask questions and get response wasn't that easier at first but then when I succeeded I decided to
create this pathway for others to join into opensource and make it easier for them to navigate this opensource landscape. So I took the lead on kios education program when I joined kios. The chaos education program was designed to simplify on boarding process into opensource project or community and not only that is also to empower contributors by developing courses on opensource concepts metrics and other related uh developers
topics. You know, this is just to create that simple way, make things easier for people to just join or be able to locate an open source project to contribute to or join an opensource uh community and even understand some opensource topics. Okay. instead of just telling people okay go to GitHub search like like I was told search for project open source project then start contributing then allow
them to navigate it their own way with curios education project program we provide a structured model based course that explain the how the why and the how of opensource So through this program contributors not only learn but also um actively contribute to the project and creating a a chain of knowledge transfer. So just like I have learned then I had other contributors coming to work on this
project and they are also creating this knowledge transfer for others who are coming in or who are there but they need to know and understand some certain opensource topic. So um some of our contributors do not just join curios community or contribute only to our project but they have found over time we've seen that they found other opensource project also to contribute to and they are staying
in open source and then doing a whole lot of work contributions. We've even seen one of them who is at the moment uh co-leading a working group uh at kios. So seeing that growth is really uh incredibly rewarding. So for the queer education project we have developed about 27 courses I may say and have seen an increasing uh increasing number of users since it was launched uh
at January 2025. >> that's great. Thanks peer. Um I'm gonna ask one more question and uh any of the panelists are are welcome to to answer it. But I would say for the audience think about if you have any questions um because after this I'll see if there are any questions from the audience and if not I certainly have other questions for the panelists. Uh but for
the for the next question let's talk about the role of mentoring in educating new open source contributors. Uh who'd like to go first on that one? I'm happy to tackle that. I I it's been really interesting. I I came I like I said I came into this from a very different angle. Uh a friend shoved a paper from Peter Nau in front of me 10 years ago
now and it kind of it was a fascinating paper. Peter Nau, this is Peter Nauer from Bakasnau format back in you know how do you how do you express a language in a compiler in the 60s and he wrote this paper in the mid80s. So this is end of career for him and his big observation was you need to mentor people into complex software systems. He he
was his his research was he was basically asking the question why is maintenance so hard and he and he the aha for him was when a team builds they're building a theory of how the world works and the only way you can properly maintain that complex software is you have to mentor the next generation of programmers into the software and and that was a huge aha for
him but it's also something I think we've forgotten along Ong the way uh around the same time I I encountered the work of you know I I had to as I started building the coursework I have no background in pedagogy so I don't know how to teach people and so I started digging into things and I discovered uh Jean Le's work she's an anthropologist who was her
graduate work back in the 80s was working with tailor as in sewing in West Africa and her her big aha moment was to discover that all learning is social learning and you start putting these ideas together and you end up in this space where it's all about mentorship all the time and so that's where I've been really you know very lucky with the folks that I've worked
with and that have helped me over this last six years uh as we build courseware is to step into the space were were finding new and interesting ways to mentor the students into these complex projects. But it was even the frustration and and the joy that uh a different colleague shoved a paper in front of me and I think the paper was nearpeer mentorship in coding boot
camps and I I have a real bias against coding boot camps just because of my background. And that's not a fair bias at all. I want to be clear there there's lots of ways to teach people things. But the joy of it was I was reading this paper and I really wanted to hate the paper because it was about coding boot camps, right? And it was talking
about nearpeer mentorship in these programs while I was watching the students in front of me mentoring each other up these complex tool chain learning curves. And it was it it really is like how do you construct these learning opportunities for folks that are new to software? I mean I'm working with computer science students and you know they've got a basic set of programming skills in their first
couple of years but they still don't know what real software looks like. And I think that's the opportunity is how do you create these learning moments for students where it really isn't about me at the front of the class educating them and trying to tell them stories. It really is about giving them things to do which get progressively harder. And so all of the course design that
I've been going through with with colleagues is about getting better mentoring opportunities for the students. And it it holds them in these big projects as well because they suddenly discover a a collection of people around them. It it becomes that family for them to help them find their way into the project. So I I'm a big fan of mentorship. I think that's really at the end of
the day what all of it is about. >> Yeah. >> Um okay, I can go. [laughter] >> Okay. So I say mentoring plays an important role in educating new opensource contributors. Honestly, while working on chaos education project I've come across are in contact with different types of contributors especially those that new contributors who come in with passion you know and doesn't know where to start from but
mening them has got us this far you know mentoring new uh contributors is about guiding them um teaching them sometimes s encouraging them and helping them navigate the complexity of open source landscape. You know I participated in allin opensource program for Africa as waste African region ambassador. I think Ruth can testify of this. A lot of participants we we had then they were complet some of them
were completely new to open source contributions. So um we went as far teaching how to find a good fixed issue to uh to work on how to submit first PR, how to collaborate effectly in open source and what it means when your PR fails and what you need to do because um personally my first time when I started contributing to a Android project uh my first PR
failed And that was really like as if as if I somebody doesn't want me to do this as if I mean there's something wrong as if it was like what have I done you know that kind of you know situation for me so but I when I went back and then I try again I try to figure out what happened and ask my mentor question then he
explained and that helped me contribute. So I I I this set of uh contributors we had then I feel this might be the question I asked myself then might be one of the way they will be feeling at that moment. So that was the passion or the drive to like assist them and help them understand what it means when your first PR failed and you know mentor
them and help them to pass through that. I remember my first mentor I mean Raja Is it tens something like that was a real mentor. He his constructive code review feedback and guidance on my on my peers you know it was one of the things that magnetized me I can say magnetized me and kept me continue uh continuing my open source contribution honestly remmentors know that you
know investing time in today's uh contributors means you are developing maintainers and leaders that will sustain opensource projects tomorrow. You see, I'm still in open source just because uh Raja is an Indian name. So, forgive me if I'm pronouncing it wrong. Raja uh was my mentor then and he encouraged me and he he made sure that uh I get all the I got all the help that
I need and just that uh what he did then is still what is keeping me in open source. So the role of mentoring a new open source contributors cannot be overemphasized honestly an open source project you can see around you the tribe when contributors feel supported they valued and that they are seen and so their efforts are not going in for ways so they keep contributing. Thank
you. Yeah, I think there have been so many great points from Stephen and Peculia. So, I'll just add a bit of comments. So, for me, I see mentorship as having familiar faces. Um, you know, mentorship in itself, it's having an experienced contributor, an experienced individual um show you and guide you through the process and even with constructive feedback. And when I heard Stephen talk about like nearpeer
mentorship, you know, I think over the years there's a way we've wrapped mentorship to be that we're losing what it is in its in its raw form in the sense that even with near pair mentorship, it's limited in a way because um [clears throat] people can figure things out themselves um not everybody can um but then when people figure things out there's it limits to where they
can figure it out. So if a peer is mentoring another peer, while it's helpful, it's helpful to get people involved in the project, you know, it's helpful to get people on the same, they're on the same page, so they learn together, but then there's a limit they can go in the sense that they don't know the entirety of the project. So for me I see mentorship as
um having familiar faces and also moving like picking from more peculiar set moving beyond the first contribution sticking around. So if um you in your open source project right you need those familiar faces around for people that are joining the project because contributing to open source and figuring out a project code base um figuring out how to participate in meetings or how do people do this thing
in this particular project sometimes it differs so I think um what I'll just end here with is being familiar to the people that are coming into your project like are you how are you creating space for them right so I I think mentorship is it's very very important it moves people like Peculia said moves people from just making that first contribution to sticking around to staying back
because I know that this person when I submit this work they can tell me how to do it better they can tell me what I can do to make it better they can appreciate the work that I'm doing. So I will come back again to make um a contribution to that project or I will stick around because this person is there or this set of people are
there that are cheering me on. So yes um I think mentorship is is so important and we should um really stick to the core of it and the raw form of it. >> All right, thanks everybody. So we have 10 minutes left. So I wanted to see if there were any questions from the room. Hi, thanks for that presentation. Um, I I'm curious how you with with
the emphasis on mentorship, how do you scale that to communities that have a dozen or a hundred people showing up? Okay. So, how you can scale that when you have uh a lot of people, not just hundred, a lot of people showing up. like in Kio's community we have about 3,000 or more people showing up is if you start with one person give them opportunity mentor them
the next person you know just like a shame of of knowledge transfer. So you have like three or four persons you have mentored and you empower them to mentor others. Give them opportunities to work on a project. Give them a open hand to to lead a community or to lead a working group or to uh be in charge of one thing. It might be just minute might
be just documentation and then you give them a charge to do that. Then as other people in your community like let's say this 100 people in your community you are not just putting them just under on one umbrella you are like diversifying moving them into different under these other groups you have created under these other people you have mentored. So those ones you mentored are will go
a long way to mentor others under them. Right? So you are not just doing it yourself. You have like a a tree, you have branches and these branches are also growing other branches. So these other people you've mentored are the branches you have and those branches others coming in are then attaching themselves under them and they are branches. They're also mentoring those ones and as time goes
on that's how you able to like cover all these people you have. You can also create a mentoring program for your community where you can capture those that needed this mentorship to go in and then those leaders you've already mentored are going to be the ones mentoring all the other ones. Yeah. >> Yeah. Um so just to add one more thing um first I acknowledge how difficult
that can be um having a lot of people show up in a project. Um, I found the office hours to be something quite helpful. Like in the chaos project, we do these newcomer hangouts every I think it's about Tuesdays. Every Tuesdays so people that are new to the project can come around to ask questions. I think um usually with contributors um on the flip side some not
everybody wants to be mentored to be very honest. So and then there's that funnel of people coming in. There are some people that just come in they just want to be around not everybody would in that hundred might get into mentorship right so I think from using office hours you get to interact with the people that are joining the project for the first time you get to
know what they are looking for and then through office hours then you direct them to and and to be very honest when you start that first phase you begin to see that that number reduces sometimes Um, so I just wanted to acknowledge how difficult that can be, but using office hours as a first layer to get in touch with people that are joining your projects could be
really really helpful. >> Yeah, I I really like uh Ruth's idea of office hours. that that's something that we we don't we don't use enough in the in the formal structure that we're doing and I think we can I mean we we've got a a different scaling problem because ours is trying to figure out how to actually scale this out across other projects. Uh, I' I've had
to be very picky about the pro the the projects that I work with because I I'm not I'm not running Google Summer of Code here in a university setting. I I have students paying money to learn something. So, they need a a somewhat more predictable outcome. Um, so we've been looking at challenges and how to scale things directly as as to scale the project up to accommodate
more projects and more uh people teaching it. But I really like that idea uh Ruth because it it's just that's the way to scale it down into a project properly. I've, you know, like I said, I've been uh very I've had to choose carefully when I bring projects into the program because I'm bringing like there's uh I've brought in Apache projects. There's a few Eclipse projects that
I'm working with and some OpenStack projects typically and those have really strong environments of mentorship. So I and they're they're big projects, so they've got lots of strong mentors and I know that it's always funny to watch the students hit their first poll requests kind of halfway through the course because they they're used to talking directly to their mentors and then all of a sudden a community
shows up to have opinions about their code. And so that that's this kind of aha moment for them that this this is a much larger group of people. And so it it's trying to kind of manage them in. But I know that I'm working with communities that welcome new people in. I I don't know. I I've been lucky in that path. I'm not sure if I had
to start over again in a smaller project how I'd do it. >> Thank you. We are running a bit over time. So um thank you for the panel and see you later. >> Thanks everybody. >> Thank you everyone. [music] Bye >> bye.
More from this event
See all 47 talks →
Seyi Kuforiji – Bridging the Gap: Encouraging African Talent to Open Source #FOSSBack
23:57
Jan Dittrich – Best practices and (very) small projects #FOSSBack
24:03
Johannes Näder – Let’s tackle Openwashing! #FOSSBack
24:58
Zainab Daodu – Narrative Infrastructure: Storytelling to Grow Open Source #FOSSBack
32:24