Transcript - Open practices for open projects @FOSDEM

By kattekrab, 9 February, 2024…

Transcript generated by

[00:00:00]: Introduction and Welcome

[00:01:33]: The Open Practice Library

[00:02:47]: Open and Agile Working Together

[00:05:35]: The Mobius Loop and Practices

[00:07:50]: Group Discussion

[00:11:11]: Interruption and Sharing Challenges

[00:14:16]: Strategies for Encouraging Contributions

[00:19:23]: Discover, Decide, Deliver

[00:21:45]: Creating a Culture of Gratitude

[00:26:41]: Contributing to the Open Practice Library


Shirley (00:05)
Live stream is on. So yours. Everybody. Welcome. Donna Benjamin.

Donna (00:15)
Hello, everyone. Hello. Hello. This is my first Fosdem. I have wanted to come to FOSDEM for so long, and I've come from all the way on the other side of the planet. Is there anyone in the room right now from New Zealand? Because if you're from New Zealand, you've come further than me. And if you're not from New Zealand, then I'm probably have travelled the furthest to be here today. I'm from Melbourne, Melbourne, Australia. My name is Donna Benjamin. I'm the product owner and maintainer of the Open Practise Library, which I'm very proud to be emblazoned, and being a public billboard today, and the stickers that I've just passed your way are the very simplest and easiest way of contributing to my project is to spread the word, wear your sticker with pride somewhere, and help tell the world about the open practise library. But wait, I hear you say, why would I want to tell the world about the open practise library? Well, my answer is, well, why wouldn't you?

Donna (01:33)
Well, let me tell you why. I think it's awesome. Way back in well over a decade ago now, for a little while, I was a born again idealist. I did a Scrum master course and I thought, wow, this is amazing. And I became like a Scrum Padawan, learning everything about scrum and thinking it was awesome. And I'd been involved in the open source community for a long time before that, and I felt like there was all this like similarities between like, open source and the agile stuff. And I've been to lots of open source events, and then I went to some agile events and whilst we were all talking about software. None of the agile people were talking about open source and none of the open source. People were talking about agile. It's almost like they were on different planets. And there were a few people who were, you know, familiar with both worlds, but not many. And then I came across the open practise library. Thank you. Leslie Hawthorne, who sadly isn't with us, but is one of the organisers of this of this dev room who introduced me to the open practise library.

Donna (02:47)
And I went, oh my goodness. This is the first time I've seen Open and Agile together. And for me, that was like. Because it made so much sense to me. I'd always wondered why they weren't together. I still don't know why they're not together. I have theories, but no hard evidence, shall we say. Okay, so as you can tell, I'm not doing slides. If you've bothered to read the little description of this talk, then you may have some idea. But in practise, I know most people don't bother reading the abstracts. They just kind of end up in a room at a conference. So that's okay. No judgement, right? No judgement. But what I wanted to do was to introduce this idea of open practises for open projects. So. Hands up if you're involved in an open source project. Okay. Hands up if you in that involvement have come across various needs, challenges, things that need doing. I think that's everyone. Was there anyone who didn't put up their hand?

Donna (04:06)
Do I miss you? Not good. So the thing about the open practise library is that last word. Library. I like to think of a library as two things. Obviously, it's a collection of stuff, like usually books, but other stuff. But libraries are often the hub at the centre of their community. And so I think that's a really nice kind of thing to think about in the community developer room at Fosdem. Right. And we're talking about a hub of a community and the people in that community are. And again, the clue is in the word practise owners, they practise things. And those things are practises. And the kinds of practises in the library are organised around the Mobius Loop. The Mobius Loop is an outcome based delivery framework developed by Gabriel Benefield, and it starts with a discovery. It continues with a decision making kind of chunk. And then there's delivery. And then you cycle back through your options and decisions, perhaps back to discovery or perhaps continuing to deliver based on what you've learned.

Donna (05:35)
And in the open practise library, we took Gaby's stuff because it was Creative Commons. Yeah. And we added a foundation underneath it. And I actually think of that foundation is a bit more like a seesaw because we're trying to keep in balance cultural practises. And technology practises. So on the cultural side, we'll have things like a social contract. Or a tame API or a manual of me. I think someone, I think, um, lovely Scottish chap this morning earlier Mike, Mike talked about having a manual of me or some kind of personal API. That's a practise in the open practise library as well. But those cultural or social practises are also balanced by technical practises. Stuff like CI, CD pipelines, canary releases, observability. They're the underpinning platforms. And I say it's a seesaw because you've got to have both. You've got to have those things in balance. And that foundation underpins the kind of work that you do to discover. Like we talked yesterday, we heard a bit about product management, and I think a lot of the product management, um, practises feed in that discover phase of really understanding who this thing is for, why it exists, why they need it, and the delivery side.

Donna (06:56)
Once you've built something, you need to be able to measure and learn. So that gives you kind of high level idea of the practise library. What I want to do now, and this is the worst room to try and do this is actually. Have you talked to each other for a little bit. Sorry. Live stream. This is not going to be much fun for you, but maybe you could jot down some thoughts on pen and paper or just have a think while we have this little section. Okay. Yeah. Good. Oh, awesome. You guys rock. Okay, so you who are here? I know it's tricky. So what I want you to try and do is kind of look around you, who's sitting beside you or maybe behind you and just huddle a little bit. That question I asked you before, you're involved in an open source project tech, and you have some stuff that needs doing or thinking about or changing or whatever. And I want you to just have a chat about that stuff.

Donna (07:50)
What are the things you want to tackle? Do you need to imagine something new, a new set of features? Do you need to tackle a thorny community problem, as Angie and I have done on the odd occasion? Um, whatever it is, whatever the stuff is, no judgement. Could be technical, could be social, could be infrastructure, could be finance, whatever it is, I just want you to have a little huddle and talk about the stuff and I'm going to give you. Three minutes if I can count based on this clock. Okay. Your time starts now. That's counting down. Yeah. So I'm going at 13.

Donna (11:27)
Sorry to rudely interrupt your conversations. Um, that it was. It was kind of fascinating watching from down here because some of you were, like, into it, sort of. You're like, uh. And that's fine. So, um, I'm hoping that you stimulated a few ideas, exchanged some maybe commonalities, maybe contrasts. What I'd love to do now, and I don't know that I'm not going to try and make you run with the mix to try and get to everybody. I'll repeat. So what I'd love to do now is hear a little bit what happened to my bit of chalk. Um, some different strategies. Uh, sorry. Not strategies, different challenges and stuff. Thank you.

Room Volunteer (12:15)
Jump in the box and show up there in the table.

Donna (12:17)
Well, good. All right. So, um, I'm going to write down here, you know what? You're not going to be able to see it, but I can reach it. Practical. Right. Practises. Practical. So who would like to start the bidding with a challenge for me?

Audience member (12:37)
Getting developers to document.

Donna (12:39)
Getting developers to document. We just had this fabulous talk about that as well. Right. Getting developers to document. And I think one of the things I really heard Aaron say is around prioritisation. How do you prioritise things. And there are in the open practise library, a couple of different practises actually probably more than a couple focusing on prioritisation activities that you can do. Some of the famous ones that's called the Eisenhower Matrix or how now? Wow. So. Document prioritisation is a good one. For which we have practises. Awesome. Thank you.

Audience member 2 (13:22)
Overcoming single maintainership. Sorry. Overcoming single person.

Donna (13:27)
Overcoming single person maintainer ship. Oh, that's a good one. I don't know if I've got a single practise for that, but I think that's about creating a space that invites collaboration. And a lot of our practises are, um, are designed to be collaborative and have people come together. So I guess it may even be part of this, starting with docs and putting the call out and one of our other, um, speakers this morning around communication strategies. Right. How do you get people to come on board and help? So I can't answer that one, I like it. So let me put single maintainer challenge. All right. My writing is terrible. Don't judge. Yes.

Cat (14:16)
Getting your technical leads to write down a roadmap.

Donna (14:20)
Roadmap, getting your technical leads to write down a roadmap. Getting your technical leads to write down a roadmap. Kat I'm not sure that's a practise. But practising. Yeah, but I think it's a good one, though. Does anyone want to shout out some, you know, some strategies for that. How do you get stuff out of people's head? And onto the page. Document and prioritise. Gold star.

Audience member 3 (14:51)

Donna (14:53)

Lorna (14:54)
Start with. Start with a wrong answer. Someone will correct you.

Donna (15:03)
And someone will correct it. Yes indeed, yes indeed.

Audience member 4 (15:06)
Yes, I Listen to them.

Donna (15:08)
Listen to them? What if they're not talking?

Audience member 4 (15:14)
But they don't want to write it down.

Donna (15:15)
They don't want to write it down? Right! but maybe they don't need to write it down. And this is where the collaboration piece comes in, right? A lot of the practises in the library are about helping teams do their stuff, collaborate either how to make sure they're building the right thing and building the thing right. But not everyone is a writer and not everyone is a coder or a community manager. So what you want is this diverse perspectives and skills. And for someone to work with the tech lead to. At least talk about what is in their heads, and then maybe someone else can write it down. Good one. All right. Another. Sage? 

Sage (16:00)
Aaaaah, Finding and encouraging mentoring (inaudible).

Speaker 1 (16:05)
Finding encouraging and nurturing mentors. Awesome. Do we have a practise for that? No, but I think outreachy does and patches welcome. Yes.

Speaker 6 (16:25)
How do you create a welcoming space for all the type of contributions to come in, like documentation?

Speaker 1 (16:32)
How do you create a welcoming space for other types of contributions to come in, like documentation, like community management, like social media? Great question. Again, I'm not sure we've got I'm not sure we've got a specific practise for that. But from community involvement at various times. Be welcoming. It's like the first step. Be surprised how often and how unwelcoming so many open projects have been. Traditionally, I think it's actually changed. I'm beginning. I've got grey hairs now. I'm beginning to sort of see a then and now, but being welcoming and making that an explicit value. Is probably the first step. Um. And having consequences for behaviour that turns people away is probably the second. Really nice. Nice point. I like that one. Thank you. Yes.

Speaker 8 (17:37)

Speaker 10 (17:37)
A moderator is usually also a good mentor. Not that you have to train the moderator.

Speaker 1 (17:46)
Train. The moderator is also usually a good mentor, but you also have to train the moderator. But some moderators I agree with you, but I also disagree because some moderators can turn people away by saying no, that's not welcome here. But then again, it's always it's never simple, right? Sometimes you need to actively turn people away to ensure you have a welcoming project. Tricky to balance that seesaw again. Yes.

Speaker 11 (18:15)
How to do the right thing. Right and convince your leadership that this is the right way and.

Speaker 1 (18:19)
A good one. How to do the right things and do things right. And because that wasn't enough, convince your leadership that that's the way it should be. Okay. Okay, so this one I think we've got a good answer for. And that's the Mobius loop at the heart of the Open Practice library. Gabby's outcome based model is really, really it really pauses to say, we need to understand the who and the why, and we need to be clear on what we're trying to achieve. So our target outcomes too often in software development, sort of in agencies or in in companies, probably less in the open source world, we're basically given some spec and then told to just go build it. And we have we've had no involvement in the the design, the ideation, the who, the what, the why part of it. Just just build this thing and you could go build this thing real fast. But if it's the wrong thing, how much effort has been wasted. Right. So I think this discover phase is really, really important.

Speaker 1 (19:23)
Actually, I'm not a cult phase. Gabby told me. It's more like a part. So the discover part of the whole picture. Understanding who? Understanding why. Being really clear on what you're trying to achieve and how are you going to measure if you've achieved it? You've got to get that clear before you rush into building. So once you've got that stuff clear, you're going to have a whole bunch of ideas of how to go about it. Right. And that's your options phase. You've got to develop, um, create, ideate, get those ideas up and then sort them. You can't do everything. You have to prioritise. And that's your options phase. You'll decide, discover, decide before you go on to deliver the right thing. Hopefully has been you now know you're building the right thing and you can focus on that technical excellence, bringing in those technical practises to ensure you're building it right. One more. Yes.

Speaker 12 (20:20)
A little bit on the welcoming.

Speaker (20:24)
How do you create? A sense of awe and gratitude, feeling seen.

Speaker 12 (20:30)
In balance, and also with that personal development.

Speaker (20:35)
And a little bit of room for experimentation. To me about my allegiance to.

Speaker 12 (20:42)
You know, like where people can grow into the project and.

Speaker 1 (20:46)
I love everything you just said, and I'm not going to be able to say it back for the live stream perfectly, but it was building on the welcoming thing that we mentioned a bit before. How do you create a culture of gratitude? How do you create a space where it's safe to experiment? And there was a last little bit which I didn't catch. It's about personal and personal development in the project. And how do you create space for personal development and growing in the project? Beautiful. Okay, so the welcoming space. I think making a culture of gratitude is really important. The fact that someone has stepped into your project and offered a contribution. And I do this with the open practise library. I get first contributors and I go, thank you so much for contributing to the open practise library. It is the first thing I say, even if the contribution is not particularly right or perfect. For now, the fact that they made the effort to contribute is just awesome and I am always like overwhelmed with joy.

Speaker 1 (21:45)
So that's one way in a in a physical space, we've done things like having a kudos wall or a, you know, we get sticky notes. Um, if you're having regular team meetings, you can start with gratitude. What are we thankful for? There's lots of ways, and I think it's a really beautiful, um, a really beautiful practise. And there is something in the open practise library about I thank you all. So yeah, that's lovely. The personal development piece. I don't think I've got something explicit about that, but I. I kind of seem to think that almost every step you take together as a community is an opportunity for personal growth. But it's not always sunshine and roses. Sometimes the personal growth comes out of quite hard work, emotional work and disappointments, and I think that's one of the biggest things that we can learn as a community is to not shy away from the stinky, hard messiness, because that's really human. We talk a lot about code and technical excellence and but really, we're human beings and we're not always it's not always right.

Speaker 1 (22:58)
It's not always perfect, and it's often very much the opposite. So I think they're real opportunities for personal growth as well. And then I've forgotten the middle bit again. Too many things for me to think about at once. Well, that. Will that do? Thank you. Awesome. All right. I think we're just about out of time. One more two minutes because we're doing the questions as well. So then I can have more. Ah.

Speaker 6 (23:30)
In that case, question what?

Speaker 1 (23:32)
You've you've had a lot of goals. Wait wait wait wait. Anyone else? Yes.

Speaker 5 (23:38)
Uh, a team that feels overwhelmed by too many things to do.

Speaker 1 (23:41)
A team that feels overwhelmed by too many things to do. Our prioritisation for em again. Um, but one of the things that I like to do and, and I think we've played with this is just to start with the list, actually just get it all out of people's heads and fears and worries and get it down. And then you can say, okay, let's sort this. Let's come up with some criteria for how we want to sort it. Are we optimising for impact? Some people say, are we looking for low hanging fruit so we can get some quick wins? Or are we looking to tackle something really, really challenging because we want to strive together? So I think, you know, getting it out of people's heads because I sometimes I think the overwhelm is just it hasn't been quantified. But once you get it down into a list, you can say, hey, this stuff matters. And actually, if we never get around to this stuff down here, does it matter? Maybe we can lighten our load and just say, no, we're not doing those things.

Speaker 1 (24:41)
Yeah. Anything else.

Speaker 13 (24:48)
Any questions, folks?

Speaker 1 (24:52)
So one thing I want to kind of add into this is I was cheeky at the start and I passed around my open practise library stickers. Did you all get one? So that's one way of contributing, of sharing. Sharing the fact that the open practise library exists. Another way of contributing, and we've heard it today open collective. So funding, open practise library. I've put us on open open collective common open practise library by us, a coffee a month. That's another way of contributing, but also some of the ideas that you've, you know, you've had or perhaps practises that you're using, scan the open practise library and maybe, maybe your favourite practise isn't there. Maybe we could you could add it and we've got a really low, um, low barrier to entry. Will accept most things before they're perfect because, hey, it can always be improved. It can always be iterated upon. So I very much want to invite every single one of you to think of yourselves as contributors to the open practise library as being welcome at our community hub.

Speaker 1 (26:14)
Feel free to use the practises. There's absolutely no nothing stopping you. Feel free to raise issues if something's a bit clunky. And hey, feel free to make a pull request at a new practise. Help us fix our website or all of the above. Thank you so much!

Speaker 13 (26:41)
Thank you. Just checking.

Speaker 1 (26:43)
Yeah. Now, any standard questions? You don't have to follow my script. No.

Speaker 14 (26:49)
It's more about. Hold on, hold.

Speaker 8 (26:50)
On, hold on.

Speaker 13 (26:51)
You should know this by now.

Speaker 15 (26:52)
No thank you. It's more about what do you find as a practise and what is not a practise, so that we know what to put there and what not to put there. Thank you.

Speaker 1 (27:01)
Excellent question. What's a practise and what's not a practise. And how do you know the difference? Uh, on the website there's a menu and there's a contributors guide. We've got editorial guidelines there and a little bit of an outline of what we think a practise is. But that said, if it's not a practise, we can talk about it in the pull request and go, this isn't quite right, so don't let that stop you. Great question. Anyone else all the way over there? Laura, run.

Speaker 8 (27:30)
The pizza now!

Speaker 13 (27:31)
One moment please. Coming. Here we go.

Speaker 8 (27:34)
Don't fall.

Speaker 12 (27:37)
No. I just want to express my gratitude and and acknowledge how brave you are to come to this conference with a full room, and to not use a slideshow and to really tap deep into the collective intelligence.

Speaker 1 (27:57)
Thank you. That is very kind and and also very validating because I was like, I'm not going to do slides. I'm just I'm just not going to do slides. So thank you very much. Thank you. Well, unless there's anything else, I am going to express my gratitude again to all of you for coming and sitting through this, but also for having that conversation in the middle there and sharing with each other. I wish we had a bit more of that here, to be honest. But hey, I'm new, so forgive me. Thank you.

Speaker (28:27)
Thank you very much.