Siden er endnu ikke oversat. Nedenfor ser du den originale udgave af siden. Kig venligst på denne side for at finde ud af hvordan du kan hjælpe med oversættelser, og andre ting.

SFP#47: ILoveFS: Let’s meet our maintainers

Back to the episode SFP#47

SFP#47: ILoveFS: Let’s meet our maintainers

WEBVTT 00:00.000 --> 00:18.400 Dear listeners, thank you very much for listening to the Software Freedom Podcast. 00:18.400 --> 00:22.600 The Software Freedom Podcast is brought to you by the Free Software Foundation Europe. 00:22.600 --> 00:26.800 We are a charity that empowers users to control technology. 00:27.120 --> 00:31.760 I'm Bonnie Merring and today we have a dedicated I Love Free Software Day episode. 00:33.040 --> 00:38.240 Each year on the 14th of February we celebrate all the contributors, developers, 00:38.240 --> 00:44.720 maintainers of free software projects. I would love if this would be a regular thing and 00:44.720 --> 00:50.000 if you would not need a dedicated date for it. But so far we have the I Love Free Software Day 00:50.000 --> 00:54.240 and on this day we say thank you so much for your contribution to Software Freedom. 00:54.640 --> 01:00.800 This year on the I Love Free Software Day we highlight the extremely important work 01:00.800 --> 01:06.720 done by countless of maintainers out there. And for this I'm very happy to talk with Lorenz's 01:06.720 --> 01:12.960 K, one of the maintainers from the monitoring platforms. Lorenz, thank you so much for making 01:12.960 --> 01:16.320 the time and thank you so much for joining me in the Software Freedom Podcast. 01:16.320 --> 01:20.480 Thanks for having me. Happy to be here. 01:20.720 --> 01:24.720 Hi you coming to the I Love Free Software Day celebration in Nürnbeck. 01:24.720 --> 01:28.640 I sure am. Yes. Already planted in. 01:29.840 --> 01:35.920 Very happy. Can you very very briefly summarize for me and our listeners what the monitoring 01:35.920 --> 01:46.320 plugins are? Okay briefly might be hard because I have to add some context. So there is a family 01:46.320 --> 01:54.080 of free software systems monitoring software. So the software which helps an administrator to 01:54.880 --> 01:59.680 monitor the actual computers which are in a company institution or whatever. 02:00.320 --> 02:08.400 And we started in 90s with Nagios and they had the idea of putting the actual monitoring. 02:08.400 --> 02:14.560 So the knowledge about how things work into separate little programs which are called 02:14.560 --> 02:20.960 monitoring plugins. So they were separate from the main program and this principle this interface 02:20.960 --> 02:28.320 was kept by forks and follow ups and the monitoring plugins project is a collection of those 02:28.320 --> 02:36.080 monitoring plugins which do the actual monitoring. This is I guess quite a far collection. 02:36.080 --> 02:42.080 So there are a lot of plugins probably in it. Yes I mean the specific programs that this 02:42.080 --> 02:49.600 collection are like maintained by the project itself and they have like 30 thing different plugins 02:49.600 --> 02:57.360 which more or less provide like a basic system functionality test mostly. 02:57.920 --> 03:00.880 All right how did you get involved with the monitoring plugins? 03:00.880 --> 03:08.000 Well I started a shop at a company which provides professional services. 03:08.880 --> 03:16.480 So I encountered the monitoring plugins there and of course at some point I discovered that back 03:16.480 --> 03:22.880 was something I didn't like and well as you do in the good free software world to be a good citizen 03:22.880 --> 03:29.760 you go there you complain in the issue tracker and then nothing happens then you start up with a 03:29.760 --> 03:34.720 pool request and then nothing happens and then you start annoying the maintainers about your pool 03:34.720 --> 03:39.600 request and then they say hey how about you become proud of the project and then you're in. 03:41.280 --> 03:48.560 That's basically it. So you got sucked in. Yes you know you start up with the one thing and then 03:48.560 --> 03:55.040 you already have the code open in the editor and think that that doesn't look good or maybe I would 03:55.040 --> 04:02.000 like to have that differently and you have a second pool request then and after a few of those 04:02.000 --> 04:10.000 somebody approaches you and says hey since you're already here do you want to be part of this? 04:11.040 --> 04:12.720 Do you also try to serve others? 04:14.560 --> 04:19.040 Not successfully. No it did not happen recently. 04:19.920 --> 04:22.960 Okay should I keep fingers crossed that you get more people? 04:22.960 --> 04:26.960 I mean why not? That would might help. 04:27.360 --> 04:37.600 Okay. How did you then like you found us back right and you were like proposing a fix to it 04:37.600 --> 04:44.000 and making sure that everything is updated but what keeps you motivated to continue with this? 04:44.000 --> 04:48.400 Like is there something that you say oh I find this very interesting and I should really 04:48.960 --> 04:57.360 keep doing that. That's I think there's not one easy answer to that. 04:58.160 --> 05:06.880 Partially it's just it's a little bit my project now and I have some strong opinions about 05:08.160 --> 05:14.320 things should work and how the code should look like. This is partially an aesthetic thing, 05:15.280 --> 05:22.400 partially a functionality thing so part of my motivation now is I want to have good things 05:22.400 --> 05:29.280 so things should be proper and well and well done. I mean if I'm correct with the 05:29.280 --> 05:37.440 how how to do it well is another metaphor discussion but now I am okay I've scrolled through 05:37.440 --> 05:43.760 the code and every time I think oh that doesn't look I want to change that and I want to make 05:44.160 --> 05:50.480 better I want to have good software in a way and that keeps me motivated. 05:51.440 --> 05:58.400 Partially it's also I mean this is software that works mostly well but if you have used it 05:58.400 --> 06:03.920 for time you think okay why are we doing this this way? Can we not make it better? 06:03.920 --> 06:12.240 So not only keep it up internally but also improve the functionality, improve the the interfaces 06:12.240 --> 06:20.800 and yeah so it's yeah basically it's I want to have good software in the end and I want to make 06:20.800 --> 06:29.600 good software and somehow this keeps me keeps me at a project still after years and after the 06:29.600 --> 06:35.440 that one bug I found. But is there also a human connection for you? 06:35.440 --> 06:42.960 All right that does not have to exist is it more about technical things that you want to fix? 06:44.080 --> 06:52.800 I mean there's some human connection inside the project but like all the the other people are not 06:53.760 --> 07:00.960 locally here so and we don't have that much communication in itself but of course I have 07:00.960 --> 07:09.120 communication downstream so I I feel now responsible for software which is actually in use 07:09.120 --> 07:17.360 heavily in use and is used by a lot of people so in a way I communicate the downstream if I make 07:18.640 --> 07:27.840 less than optimal error message then people the the action monitoring somewhere works bad because people 07:28.720 --> 07:36.960 can't think or can't recognize what I try to tell them and what what their server is not doing well. 07:38.080 --> 07:50.080 So in a way I'm trying to communicate to users but it's maybe yeah and this is everyone but this 07:50.080 --> 07:56.160 is important for you to keep going this kind of communication or because like with the users it's 07:56.160 --> 08:03.440 more like you communicate to them and I guess they sometimes communicate back to you if something 08:03.440 --> 08:10.560 doesn't work. Some definitely do and that's recently has been actually a very enjoyable 08:11.520 --> 08:19.280 communication and actually that's also yes something that's motivating if you have somebody say hey 08:19.280 --> 08:24.720 I'm a maintainer of a mainstream Linux distribution and this is not working for me 08:25.600 --> 08:34.720 and there's a okay let's debug this and maybe person comes up with a fix and says oh yeah cool 08:34.720 --> 08:41.200 you solved my problem and that's actually really really nice if somebody comes by and says oh cool 08:41.200 --> 08:48.000 that works for me you really you solved the problem I had and that's cool. I can imagine if it's 08:48.000 --> 08:53.680 a bit like you're describing what's behind free software when we talk about community because 08:53.680 --> 09:00.800 this is also this interaction with each other and this exchange of ideas and all and free software 09:01.360 --> 09:06.560 really really grows from those kind of interactions at least as my feeling. 09:08.000 --> 09:18.160 Yes it definitely makes this more fun a lot more fun and I probably wouldn't do it for me 09:19.120 --> 09:27.200 if it wouldn't be like that I mean let's say in a workplace you have if you have find a bug then 09:27.200 --> 09:32.240 you have to contact support and the support has to find a developer and then as you have 09:32.240 --> 09:38.720 play email ping pong for forever and in this project it's just so somebody opens a new issue 09:38.720 --> 09:44.240 there and says hey this is broken and they say okay how is about this and this oh it is a problem 09:44.320 --> 09:51.520 and now I fix it and now I have just in a very smooth and efficient way with 09:51.520 --> 10:00.240 with no hurdles in there helped another human and that's great. Is there something that you 10:00.240 --> 10:05.440 value a lot if there's some interaction you say oh this is how I prefer things because I guess 10:05.440 --> 10:10.480 there is sometimes interaction that is not so nice but I also guess that there's interaction 10:10.480 --> 10:19.680 that keeps you really motivated to be there. I'm lucky in a way that most interaction is actually 10:19.680 --> 10:27.120 at least okay so I could imagine if you have a front end project you get a lot of people who say 10:27.120 --> 10:37.600 that's the wrong blue yeah and at least but yes sometimes I have people I mean mostly people 10:37.600 --> 10:46.320 who opened up the issue previously who said oh great that that really helped and yes that's 10:46.320 --> 10:54.240 these are moments that I which I value. How many of you are in the maintenance group 10:54.960 --> 11:01.440 like how many of them are really active because I obviously checked out the gift page 11:02.000 --> 11:10.080 from monitoring plugins but I have mentioned on the site 153 I guess not 153 people are 11:10.080 --> 11:18.400 actively maintaining this project as far as I know. Not really I think we are about four people 11:18.400 --> 11:28.560 who are more or less active and also active in different parts I would say so in recent years 11:28.560 --> 11:35.600 I have done most of the work in the C part of the project I think we have one or two loose 11:36.720 --> 11:45.200 recurring individuals who also participate there then we have a package maintainer there 11:45.840 --> 11:55.120 which is great because he's like a link to a major Linux distribution and the bugs come to us 11:55.200 --> 12:00.560 and he also managed those those bugs and issues with in the project and then he puts the patches 12:00.560 --> 12:09.120 up so there's a very good good link to the actual user base so to speak and then other people 12:09.120 --> 12:18.160 for pro and for organization but it's very a very loose group I mean it's not like we we do a lot 12:18.160 --> 12:25.920 there so it's a low burning project so to speak but yeah that's I would call this dead core 12:25.920 --> 12:34.000 group in a way. You mentioned there's one from a Linux distribution that is part of this 12:34.960 --> 12:41.840 does now brought me to a to a thread or to a line of communication that I also want to touch 12:42.000 --> 12:49.920 upon is resources because for testing software and all of this kind you need resources to figure out 12:49.920 --> 12:54.640 if this actually works with this project if this also works with that project and you already 12:54.640 --> 13:00.240 mentioned monitoring plugins are widely used on various systems so it's not on a Linux based 13:00.240 --> 13:05.680 systems they are also open the ESD freebies they want ever I'm not mentioning them all but don't 13:06.400 --> 13:11.760 they're all they're all there and they're very important don't get it wrong that means you missed 13:11.760 --> 13:22.080 that one on my toaster which one so you know what I mean like there are quite a lot of systems 13:22.080 --> 13:31.200 operating systems out there all of them equally important but how do you test the software 13:31.200 --> 13:39.920 then running for this like where do the resources come from well effectively not to be quite 13:39.920 --> 13:46.960 honest we were we are testing at different things on a few different Linux distributions 13:48.480 --> 13:56.960 but effectively we are not testing on ourselves on other Unixes 13:57.920 --> 14:05.040 partially because that's a hassle to get it up on GitHub and partially because this 14:05.040 --> 14:12.720 yeah would require resources to set up the testing to create a testing setup in itself find out 14:12.720 --> 14:19.920 how can a compiler how can I introduce tests there and for end-to-end tests what is the appropriate 14:19.920 --> 14:31.440 software there and so this is just something the group and I did not prioritize until now so 14:31.440 --> 14:40.880 sadly we rely on we would say end user testing so I have recently especially we had some very good 14:40.880 --> 14:49.760 contributions from one of the BSDs where people said oh so I said okay we're doing a release candidate 14:49.760 --> 14:55.200 for for a new release and they said okay let's let's put this in testing on our distribution and 14:55.200 --> 15:03.840 see what falls out and they then played the the connection between this BSD and us and that was 15:03.840 --> 15:10.640 very cool but of course it's not ideal so to speak to test it in production but is there something 15:10.640 --> 15:17.520 that others can do and help you with like the people with the BSD did is this something that you 15:17.520 --> 15:22.880 as a group of wish for or is this something that would put more burden on you because then there are 15:22.880 --> 15:30.320 no more issues and people coming to communicate with you and all of that no I would actually appreciate 15:30.320 --> 15:39.280 that if people if there was a good way to sort of like putting up testing pipelines on different 15:39.280 --> 15:46.400 unixes but yeah somebody if somebody would like to do that work that'd be really great 15:49.200 --> 15:55.760 yeah but so far nobody turned up but that would actually be really helpful so if we can test 15:56.400 --> 16:03.360 more and better before we put it in a release then we can smooth out bugs earlier and 16:04.160 --> 16:11.840 also do would not endanger a running system out in the wild so that also would of course be 16:11.840 --> 16:18.480 better to to make good work it's just a thing yeah to to find the time and everything for that 16:18.480 --> 16:25.440 but if people would show up with that and say okay you you have something that improves the 16:25.440 --> 16:33.280 quality here then I would love that that's very nice is there something that you would say 16:33.280 --> 16:39.680 maintain us generally speaking now I know you cannot speak for everybody but from your perspective 16:39.680 --> 16:46.480 is something that people actually need I know it's a hard question yeah it's a hard question and 16:47.040 --> 16:57.920 of course that cannot be a single answer to that I mean that the classic is to say a real 16:57.920 --> 17:08.560 probably financial contribution I mean a lot of infrastructure around the world is free software 17:08.560 --> 17:14.960 I mean probably everybody knows that it's KZD comic certainly forgot the number 17:15.840 --> 17:28.320 I will link it in the show notes thank you so an actual recognition and a free software work 17:28.320 --> 17:38.880 on which role it plays in modern infrastructure would be great here I mean there's some 17:39.680 --> 17:47.280 lonely initiatives I would say let's say an L-net which is great but like why is there not like 17:48.400 --> 17:55.200 a a national software development company where say okay I'll just hire 500 people who do the 17:55.200 --> 18:01.120 open software work in this country and they'll just support them and get them some food 18:01.440 --> 18:12.000 because they're keeping this the infrastructure and that that would be good because yeah actually 18:12.000 --> 18:22.560 some of our infrastructure is based on I find the time on a weekend to fix a bug there so that's 18:23.440 --> 18:32.160 not the most reliable way to have infrastructure apart from that it gets recognition in itself would of 18:32.160 --> 18:40.960 course be good so to have people come to you and say yeah it's great I like that thank you 18:41.760 --> 18:48.480 occasionally that's pretty nice and I guess especially for library maintainers that does not 18:48.480 --> 18:55.760 happen often if you're if you're the maintainer of lip foo nobody comes up to you and says hey I 18:55.760 --> 19:02.240 last that I have that in 300 programs on my computer running currently that's great work you did 19:02.240 --> 19:09.360 there this is a short break for our own cause thank you for listening to the software freedom 19:09.360 --> 19:16.000 podcast working for software freedom and producing podcasts costs money please consider 19:16.400 --> 19:21.600 supporting us with a donation on the fsfe.org slash donate and then the show notes 19:24.400 --> 19:31.440 I mean it would be nice of course just as on a human basis yeah so to feel seen you mean yes 19:32.400 --> 19:40.080 and so a convoyage meant into receiving to have recognition for that work but I guess the the 19:40.080 --> 19:48.960 extra physical financial aspect should not be you should also be there absolutely I can absolutely 19:48.960 --> 19:56.800 agree on that but to get the world up is there a project that you really like and would like to say 19:56.800 --> 20:04.800 thank you to I thought about this for for long and then it should be because of course this is 20:05.520 --> 20:13.440 very tricky because it's such a huge number of of projects I actually just have on my computer 20:15.760 --> 20:23.520 so I thought what would be one that actually does not get noticed very often so and I thought 20:23.520 --> 20:31.520 about a npd the music player demon which is a program to just play music and organize a playlist 20:31.520 --> 20:39.520 and a music library and it has been working on my systems for 15 years and the only trouble I had 20:39.520 --> 20:45.120 when I tried to configure the funny things and that plays music for me and it's great 20:45.840 --> 20:53.360 oh that's very cute no thank you very much last but not least what can the community do to help you 20:54.240 --> 21:03.520 I guess monitoring plugins and maintaining the maintenance of monitoring plugins of course 21:04.800 --> 21:12.480 cold contributions are always welcome issues especially notices about how their things are 21:12.480 --> 21:22.560 breaking or ideas about the improvement are welcome and although both of those create more right 21:24.000 --> 21:31.120 so things that would help in general I mean of course if people want to contribute long time 21:31.120 --> 21:40.480 and engage the project itself that would be great but of course a difficult thing but apart from 21:40.560 --> 21:48.480 that I would welcome things like static analysis and like maybe coding guidelines something they can 21:48.480 --> 21:57.840 automate which like reduces error rates my C is probably not the best C seen anywhere but so if 21:57.840 --> 22:03.760 people can come up with something that says me oh no that blind is broken because you did something 22:03.760 --> 22:10.240 wrong there and we can automate that or if people can actually build more test pipelines and 22:10.640 --> 22:21.120 build more test cases or documentation which is on my to-do list but you know so all of those 22:21.120 --> 22:29.200 things would be welcome and valued and I would be happy if people would come by and at least say 22:29.200 --> 22:35.280 hello in the IFC chat will also be nice I'm a link to IFC chat and I show lots then I just 22:35.280 --> 22:40.160 keep thinking about the documentation part because you know we have this program in competition for 22:40.160 --> 22:46.160 teenagers you've actually for freedom and in it we have eight criteria for eventually for the 22:46.160 --> 22:52.080 sure to evaluate the projects that are submitted and one of this criteria is documentation 22:55.120 --> 23:02.480 that's very appropriate I think yeah I guess so too anyway thank you very much Lorenzce for 23:02.480 --> 23:08.880 the time thank you so much for doing this with me and giving me a glamp and glimpse or an inside 23:09.600 --> 23:15.200 to say this in a better way of how maintaining works and what acts actually needed there thank you 23:15.200 --> 23:22.320 very much thank you for having me this was the software freedom podcast if you like this episode 23:22.320 --> 23:28.400 please recommend it to your friends and rated they tune for more inspiring conversations that 23:28.400 --> 23:34.160 explore the importance of software freedom and its impact on our digital lives I wish you all 23:34.160 --> 23:39.120 a very pleasant I love free software day there are some events that will be running throughout 23:39.120 --> 23:48.000 Europe so check out I love of s dot org and see if there's one happening near you and yes thank 23:48.000 --> 23:52.560 you so much for listening this podcast is presented to you by the free software foundation europe 23:52.560 --> 23:58.800 there are a charity that works on promoting software freedom if you like our book please consider 23:58.880 --> 24:05.680 supporting us with a donation you find more information under fsfe.org/donate thank you 24:05.680 --> 24:08.800 so much until the next episode bye bye

Back to the episode SFP#47