Transcript of SFP#4 about REUSE with Carmen Bianca Bakker
This is a transcript created with the Free Software tool Whisper. For more information and feedback reach out to podcast@fsfe.org
WEBVTT 00:00.000 --> 00:18.400 Welcome to the fourth episode of the Software Freedom Podcast. 00:18.400 --> 00:21.960 This podcast is presented to you by the Free Software Foundation Europe. 00:21.960 --> 00:24.920 We are a charity that empowers users to control technology. 00:24.920 --> 00:28.840 I'm Matthias Kirschner, I'm the President of the Free Software Foundation Europe and 00:28.840 --> 00:31.840 I'm doing this podcast with Bonnie Merring, our current intern. 00:31.840 --> 00:34.880 Hello, our guest for today is Carmen Bianca Baca. 00:34.880 --> 00:38.640 Carmen was an intern at the FSFE, a volunteer and freelancer. 00:38.640 --> 00:44.120 Besides the FSFE, she also volunteers for GNOME and Fedora and translates the user interface 00:44.120 --> 00:45.800 into Esperanto. 00:45.800 --> 00:50.760 Today we have invited Carmen, as she worked together with Max Mehl on the Reuse Initiative. 00:50.760 --> 00:53.400 The Reuse Initiative is developed by the FSFE. 00:53.400 --> 00:58.800 It aims at making license information better understandable by humans as well as machines. 00:58.800 --> 01:00.400 So, welcome Carmen. 01:00.400 --> 01:01.400 Thank you. 01:01.400 --> 01:02.960 How did you get involved in Free Software Carmen? 01:02.960 --> 01:07.200 I got involved in Free Software through Linux basically. 01:07.200 --> 01:12.640 I was bored out of my mind one day and I figured let's do something weird, let's install 01:12.640 --> 01:13.640 Linux. 01:13.640 --> 01:19.000 So I started using Linux, I really liked it and through Linux or GNU-Slasher Linux, the 01:19.000 --> 01:24.120 philosophy of Free Software started seeping through and I started really agreeing with 01:24.120 --> 01:27.160 that and really being like excited about that. 01:27.160 --> 01:29.800 And how did you get started with the FSFE then? 01:29.800 --> 01:33.760 I was reading up on Free Software, like just generally doing some reading up. 01:33.760 --> 01:38.560 I got on the website of the FSFE and the very first news article is we're looking 01:38.560 --> 01:42.840 for interns and I was looking for an internship at the time. 01:42.840 --> 01:47.840 So it was very, I'll just send an email immediately and I got email back like within a couple 01:47.840 --> 01:51.040 of hours I believe and I was like, yeah, sure, come over and I was like, what? 01:51.040 --> 01:54.240 This is the easiest internship ever. 01:54.240 --> 01:59.040 Well, so and then you started with your internship and during the internship you got involved 01:59.040 --> 02:00.440 in our reuse initiative. 02:00.440 --> 02:02.680 Yes, that wasn't the goal though. 02:02.680 --> 02:07.360 I was initially going to work on some kind of backend software but that didn't really 02:07.360 --> 02:10.240 work out because of some communication problems. 02:10.240 --> 02:13.760 So I had nothing to do in the office and I said, oh, there's this reuse thing and it's 02:13.760 --> 02:16.680 really cool but there's no tool for it. 02:16.680 --> 02:21.520 So what if I just, you know, what have I made that and I made that and then well, it was 02:21.520 --> 02:23.920 actually really good and I kept working on that. 02:23.920 --> 02:29.360 Going one step bare can you quickly explain what reuse is and what problem it wants to fix? 02:29.360 --> 02:35.840 Reuse is a project that aims to solve the problem of licensing which is very broad but very 02:35.840 --> 02:42.440 specifically it wants to make it so that if you have a project with which consists of 02:42.440 --> 02:47.920 many files that you know which exact licenses every single file is under where currently 02:47.920 --> 02:51.240 there is a lot of ambiguity and a lot of projects. 02:51.240 --> 02:58.440 Okay, so going back a step there when we were talking at the beginning with people working 02:58.440 --> 03:02.920 in the compliance area, we also had workshops and then we asked people like, what do you 03:02.920 --> 03:07.880 have to keep in mind to make sure that the software is really compliant and then we had 03:07.880 --> 03:13.880 many, many bullet points there of things you should consider but our goal was always 03:13.960 --> 03:18.640 that reuse should be something for people who don't have a lot of time. 03:18.640 --> 03:24.560 So we asked them like, what is the most important of those points for you? 03:24.560 --> 03:29.560 And in the end, I didn't have that many sticky notes with me where people can vote for 03:29.560 --> 03:35.560 the points so everybody just got three and could put them there and in the end we had three 03:35.560 --> 03:40.320 points which were the real winners of that and people realized, oh yeah, if people do 03:40.320 --> 03:44.280 those three things, the other parts are not that problematic anymore. 03:44.280 --> 03:49.680 So can you explain what are those three points we came up with in the end? 03:49.680 --> 03:54.560 Yes, they've changed a little bit since the third iteration of reuse. 03:54.560 --> 04:00.080 Very briefly, the first step is to choose your license and to provide it verbatim to the 04:00.080 --> 04:01.080 user. 04:01.080 --> 04:05.720 So if you use a license, you say you use the GPL, you have to actually include it with 04:05.720 --> 04:07.600 your software. 04:07.600 --> 04:12.880 Then you add copyright and licensing information to every single file in your project, just 04:12.880 --> 04:18.680 a tiny little commentator that says who the copyright holder is and what licenses this 04:18.680 --> 04:21.000 file is available under. 04:21.000 --> 04:26.560 And as a third option, you check this, you confirm whether you did it right and towards 04:26.560 --> 04:33.400 that end I wrote a very handy little tool that just checks everything and if it works 04:33.400 --> 04:35.400 you get a smiley face at the end. 04:35.400 --> 04:36.880 Do they really get a smiley face? 04:36.880 --> 04:38.360 You really got a smiley face. 04:38.360 --> 04:43.480 Okay, I have a question here because you mentioned the GPL, could you briefly explain to 04:43.480 --> 04:45.960 me what a license actually covers? 04:45.960 --> 04:51.640 Because there are so many differences between licenses, could you just give us an overview. 04:51.640 --> 04:55.880 The most important thing towards understanding licenses is copyright. 04:55.880 --> 05:00.200 If you don't understand copyright, you cannot understand licenses and copyright very briefly 05:00.600 --> 05:07.080 is if I create something like a document, I have copyright over that, so I can, I make 05:07.080 --> 05:12.200 it, I show it to people and it's fine, but you can't then copy it and show to other people 05:12.200 --> 05:14.120 without my permission. 05:14.120 --> 05:18.080 That's just a right, a copyright that I have. 05:18.080 --> 05:22.760 And a license is a way of saying, okay, I want you to have this, but I also want you 05:22.760 --> 05:25.880 to be able to share it afterwards. 05:25.880 --> 05:30.880 And the license determines the terms under which you are allowed to use this. 05:30.880 --> 05:35.440 So there are free software licenses and non-free licenses, what exactly do the difference 05:35.440 --> 05:36.440 between them? 05:36.440 --> 05:40.680 The difference between those licenses is whether they grant you certain rights. 05:40.680 --> 05:47.360 So a free program, a free license will always give you the right to use the program, study 05:47.360 --> 05:51.160 the program, share the program and improve the program. 05:51.160 --> 05:58.840 If any of those rights are missing for the user, then it is not a free program or a non-free 05:58.840 --> 06:00.400 license if you will. 06:00.400 --> 06:04.200 So any license that doesn't give those freedoms is a non-free license. 06:04.200 --> 06:06.000 Add a different free licenses. 06:06.000 --> 06:08.160 Yes, there are different free licenses. 06:08.160 --> 06:15.000 There are the very basic ones that just cover the four freedoms, such as MIT, BSD, Aviva 06:15.000 --> 06:16.440 Apache as well. 06:16.440 --> 06:20.840 And there are slightly more complicated copy-lapped licenses. 06:20.840 --> 06:25.640 And what they do is you get the source code, you get all the freedoms and it's really cool 06:25.640 --> 06:29.120 and you start hacking on it yourself and modifying it a little bit. 06:29.120 --> 06:33.080 And you give it to someone else and then the condition of giving it to someone else is 06:33.080 --> 06:36.320 that they must also have the four freedoms again. 06:36.320 --> 06:38.200 So what does this offer license covers? 06:38.200 --> 06:42.320 Like, does it cover the code or do it read me? 06:42.440 --> 06:46.760 Technically, it covers everything that is copyrightable. 06:46.760 --> 06:50.880 That's kind of an issue we're running into sometimes with reviews like our configuration 06:50.880 --> 06:52.360 files copyrightable. 06:52.360 --> 06:58.360 But technically, something that is copyrightable is anything that has some kind of usually 06:58.360 --> 07:00.840 artistic effort put behind it, but like efforts. 07:00.840 --> 07:04.080 Like, someone else couldn't have made this up. 07:04.080 --> 07:08.400 This is your personal expression, which is a bit weird when it comes to software, but 07:08.400 --> 07:09.800 that's what we've got. 07:09.800 --> 07:16.680 So if I have a program, yes, and I have many files there, because usually programs exist 07:16.680 --> 07:17.680 with many files. 07:17.680 --> 07:22.760 What do you need to license then, like, do it just have to make one file where the license 07:22.760 --> 07:23.760 is? 07:23.760 --> 07:27.440 That's how many people used to do it, but with reuse we're trying to change that and 07:27.440 --> 07:32.800 just put a tiny little comment header inside of every single file in the project, which 07:32.800 --> 07:37.240 is a lot of files, that's we find the best way to do it. 07:37.240 --> 07:43.120 And it's also why the name of the project is reuse, because very often, I'll find a 07:43.120 --> 07:47.520 very handy file on the internet, and I'll just take it like, oh, that's a good code. 07:47.520 --> 07:48.520 I'll take it. 07:48.520 --> 07:49.520 I'll put it in my own projects. 07:49.520 --> 07:54.360 But the problem you find is that that file that I just took doesn't have a nice header 07:54.360 --> 07:57.600 that says who the copyright holder is and what the license is. 07:57.600 --> 08:00.760 And I have to search for myself who is the copyright holder. 08:00.760 --> 08:01.760 What license is it on it? 08:01.760 --> 08:06.840 And usually it's like somewhere in the read me, but maybe I made a mistake. 08:06.840 --> 08:10.200 Maybe I made a mistake and I put it in my projects and I say, oh, this is copyright 08:10.200 --> 08:11.200 so and so. 08:11.200 --> 08:13.400 This is under the MIT license. 08:13.400 --> 08:19.320 And then someone else finds my version and they copy that onwards, but they also copy 08:19.320 --> 08:23.600 my mistake in when I initially detected the copyright. 08:23.600 --> 08:26.760 And to fix all of that, we just say, well, just put it in the file. 08:26.760 --> 08:27.760 You can't go wrong there. 08:27.760 --> 08:33.520 I mean, when you explain it, I think it's clear for many that that's an issue for companies 08:33.520 --> 08:38.400 or for companies in general because they include a lot of software in their products. 08:38.400 --> 08:43.320 Like when you look at some of the big, big players, they build a car, they build a train, 08:43.320 --> 08:48.280 they build other larger devices and they have many, many lines of code in there, many 08:48.280 --> 08:49.920 different components. 08:49.920 --> 08:54.840 And they have to make sure that it's all compliant with the different licenses from GPL 08:54.840 --> 08:59.440 to Apache to other licenses. 08:59.440 --> 09:04.600 So they also invest a lot of time into checking all the licensing there because else if they 09:04.600 --> 09:07.200 are sued, it's a problem for their company. 09:07.200 --> 09:13.720 But why should I as an individual developer, when I write code in my spare time, why should 09:13.720 --> 09:20.400 I care about following the rules of reuse and provocatively ask, make the life of the 09:20.400 --> 09:21.640 company's easier? 09:21.640 --> 09:23.640 Yes, that is a bit of a problem. 09:23.640 --> 09:26.920 And it's hard to definitively say, yeah, definitely. 09:26.920 --> 09:33.720 It's just like the real, real advantage, but the advantage I'd say is if you write code 09:33.720 --> 09:39.360 in your spare time, usually it's a little bit of a labor of love, at least a little bit. 09:39.360 --> 09:42.840 And you want people to actually use it, like that's the joy of software you wrote it and 09:42.840 --> 09:46.040 you see other people using it and it's just, that's great. 09:46.040 --> 09:51.280 And you make it so much easier for other people to be able to use your software if you license 09:51.280 --> 09:57.680 it correctly because some people will not touch a piece of software if it is not correctly 09:57.680 --> 09:59.800 licensed, they just won't touch it. 09:59.800 --> 10:04.360 Okay, that's one of the problems probably that occur with licensing and you already 10:04.360 --> 10:08.680 mentioned another one that maybe you don't know under which license something is and you 10:08.680 --> 10:10.040 make a mistake. 10:10.040 --> 10:13.320 What other problems occur with licensing? 10:13.320 --> 10:20.760 A problem I would have run into if I didn't use reuse in my own programs is I have a piece 10:20.760 --> 10:24.840 of code and it's all under the GPL, GPL 3 or later. 10:24.840 --> 10:29.920 And that's great, but I found a piece of code that was under the Apache 2 license and 10:29.920 --> 10:34.640 it was really good code and I wanted it in my project and that is totally possible, like 10:34.640 --> 10:38.200 I can put Apache code inside of my GPL project. 10:38.200 --> 10:43.720 The problem was I would have had to edit the readme file that says, oh, this project is 10:43.720 --> 10:48.800 under GPL, I would have had to edit that to say, oh, and it's also under Apache. 10:48.800 --> 10:53.640 Now in the end, I did do that, but let's say I also somewhere else said, oh, this is 10:53.640 --> 10:58.400 just a GPL project and like every or say, this is a GPL project and that wouldn't be true 10:58.400 --> 11:06.640 anymore because there is a bit of Apache code in there and by including the comment header 11:06.640 --> 11:12.320 inside of the file that says, oh, this is an Apache file, it is absolutely clear that 11:12.320 --> 11:17.800 this software is also licensed under the Apache license. 11:17.800 --> 11:23.000 So would you say that nowadays licenses are way more mixed than they were in the past? 11:23.000 --> 11:27.680 Yes, definitely, like you can find good code anywhere, like a lot of developers find code 11:27.680 --> 11:33.560 on Stack Overflow and that's good, like there is a little good example code on Stack Overflow 11:33.560 --> 11:37.440 and some of it is quite long, but all the stuff that you find on Stack Overflow is technically 11:37.440 --> 11:41.200 licensed under a creative commons license, I believe. 11:41.200 --> 11:46.120 And it's really good if you actually like make sure like, oh, this is creative commons 11:46.120 --> 11:47.120 code, by the way. 11:47.120 --> 11:49.720 Let's re-use help with licensing. 11:49.720 --> 11:55.720 Reuse helps with licensing by making it really, really easy, like a lot of the other resources 11:55.720 --> 12:00.080 you'll find is like, oh, put the license in the copying file and then like edit, you 12:00.080 --> 12:05.160 read me a little bit and also go to the setup.py file and make sure it's right, it's all 12:05.160 --> 12:06.160 really complicated. 12:06.160 --> 12:09.680 Whereas reuse, we have three steps and if you just follow the steps, it's like the 12:09.680 --> 12:14.040 most easy thing in the world and especially when you get to step three, you can verify 12:14.040 --> 12:17.840 whether you did it correctly and then it just says, yeah, you did it correctly and it's 12:17.840 --> 12:18.840 all good. 12:18.840 --> 12:22.320 So you think that the recommendations there are also for people who usually say, I don't 12:22.320 --> 12:27.920 care much about licensing, I just put my code somewhere without caring about the license 12:27.920 --> 12:31.480 and that's fine with me, I don't want to care about the rest. 12:31.480 --> 12:34.680 Yeah, it's like, it's fun if you don't care about the license, like if you just want 12:34.680 --> 12:38.760 people to use it, just put it on a permissive license, that's cool, but you do have to actually 12:38.760 --> 12:44.160 like care at least a little bit to at least put the headers there and that's all the 12:44.160 --> 12:47.080 efforts that is needed of you. 12:47.080 --> 12:51.800 One of the problems is that when people say, well, I don't care all about licensing and 12:51.800 --> 12:56.200 I just put the code there that it's under no license, so that means it's not free software. 12:56.200 --> 13:00.520 So you're not allowed to use that, you share and improve the software there. 13:00.520 --> 13:03.880 So at one point, you have to define what license you're using. 13:04.040 --> 13:08.760 Yes, and technically there is a very, very simple way to do that in reuse. 13:08.760 --> 13:13.720 I wouldn't recommend it, but you can like edit like a tiny file and just say, oh, everything 13:13.720 --> 13:15.800 is under GPL and then you're also covered. 13:15.800 --> 13:19.560 It's a bit of a hack, you can do it, I wouldn't recommend it, but it's totally possible. 13:19.560 --> 13:22.680 How is reuse at the moment maintained and developed? 13:22.680 --> 13:26.840 It has currently maintained, co-maintained by me and Max Mail. 13:26.840 --> 13:32.040 I do it in my volunteer time, Max chooses his paid time, I imagine, by the FTAV. 13:32.760 --> 13:37.960 And we've got a bit of a cooperation going on, but it is a little bit of a volunteer project, 13:37.960 --> 13:42.360 like everything concerning reuse is available or on the internet, currently on GitHub, 13:42.360 --> 13:44.520 hopefully soon we'll move off of that. 13:44.520 --> 13:47.480 And you can just drop in and say, oh, I'd like to change this. 13:47.480 --> 13:49.400 Is it possible or even do poor requests? 13:49.400 --> 13:51.000 I really like poor requests. 13:51.000 --> 13:56.280 One of the next steps is to move it away from GitHub and what are the other next steps for reuse? 13:57.240 --> 14:01.640 Moving away from GitHub is kind of a big one, because GitHub is not free software. 14:01.720 --> 14:04.520 And it is a little bit difficult when you're the free software 14:04.520 --> 14:08.680 finished in Europe and you're on GitHub, but for getting reuse started, 14:08.680 --> 14:12.680 it was very good to collaborate with a lot of people who were on GitHub. 14:12.680 --> 14:16.040 That helped a lot, moving off of GitHub is a little bit difficult, 14:16.040 --> 14:19.160 because we do have our own GitHub instance, GitHub year I believe, 14:19.720 --> 14:23.240 but it's not trivial for other people to create an account there, 14:23.240 --> 14:27.160 or I don't know if anything changed recently, but it wasn't easy in the past. 14:27.160 --> 14:31.800 So that would be like the larger steps and then your future to move it away. 14:31.800 --> 14:35.320 Are there any other things you want to do with reuse in the future? 14:38.360 --> 14:40.760 There are a lot of things that I'd like to generally improve, 14:40.760 --> 14:43.800 but I think the foundation for use has very much been settled. 14:44.440 --> 14:49.560 There are some really cool suggestions with regard to how we can alter the spec a little bit, 14:49.560 --> 14:53.640 but the spec is always very difficult to change the specification, 14:53.720 --> 14:57.320 because then you upset people and they have to change their stuff again. 14:57.320 --> 15:00.440 So probably not going to do that for a while, but the tool, 15:00.440 --> 15:02.360 like there's a lot of stuff I could add. 15:02.360 --> 15:08.040 In a previous version, I added a way to automatically add headers to files, 15:08.600 --> 15:10.680 though you can just say, oh, I've got all these files, 15:10.680 --> 15:12.520 just add headers to them for me, please. 15:12.520 --> 15:13.800 I don't want to do that myself. 15:13.800 --> 15:15.720 That's really busy work. I don't want to care. 15:16.760 --> 15:18.600 And there are a lot of improvements to me made there. 15:19.240 --> 15:21.960 Currently, it only supports 20 file types, 15:21.960 --> 15:25.320 and you have to kind of muck about a little bit if you want to do other file types. 15:25.880 --> 15:28.200 Ideally, very soon, I'd like to have a mechanism 15:28.920 --> 15:33.960 where you don't even need, like, specify your own name in the command line. 15:33.960 --> 15:36.040 Just say, oh, you already know my name. 15:36.040 --> 15:39.240 It's in my Gitconfig. Just take that and it's fine. 15:39.240 --> 15:40.280 That sounds easy. 15:40.280 --> 15:41.240 Yeah, it's really easy. 15:42.280 --> 15:46.360 What are the biggest hurdles for making software reuse compliant? 15:46.360 --> 15:50.440 Because it sounds really easy, and now I'm sure a lot of people want to use it. 15:51.080 --> 15:54.440 So what do they need to do to be able to use it? 15:55.240 --> 15:58.760 Getting started for very big projects is usually a bit of a hurdle. 15:58.760 --> 16:02.120 Because very big projects, like they have had a lot of contributors, 16:02.680 --> 16:07.320 they aren't sure which licenses all of those contributions were under. 16:07.320 --> 16:09.720 You mean projects like the Linux kernel? 16:09.720 --> 16:11.000 Yes, project like Linux kernel. 16:11.000 --> 16:16.200 I know very famously Firefox ones tried to re-license their code, 16:16.200 --> 16:20.040 and they had to rewrite bits because they couldn't determine the licenses 16:20.040 --> 16:24.520 under which that was licensed, or they couldn't contact the author 16:24.520 --> 16:27.080 to give them permission to re-license their code. 16:27.080 --> 16:29.640 So they had to literally rewrite bits of code 16:30.280 --> 16:33.320 to be able to be compliant with their own license. 16:33.880 --> 16:35.320 But yeah, that is the biggest hurdle. 16:35.320 --> 16:41.960 Like finding the actual copyright holders and licenses of every single file. 16:42.680 --> 16:44.680 And there is going to be a lot of busy work there, 16:44.680 --> 16:49.720 and probably you might want to find like a legal expert for that. 16:50.520 --> 16:54.280 But once you've got that settled, it's really easy. 16:54.280 --> 16:56.840 For all the other contributors, just keep it going. 16:56.840 --> 17:00.760 You can add reuse to your continuous integration. 17:00.760 --> 17:03.320 So every commit you do, it will just be tested. 17:03.320 --> 17:06.360 And if there's something wrong, a red button will show up and say, 17:06.360 --> 17:07.880 over the way, fix reuse, please. 17:08.760 --> 17:11.640 So you have to smite first and you have a red button that shows up 17:11.640 --> 17:15.160 if something is wrong and tells them what to do to fix it? 17:15.160 --> 17:16.920 Yes, that's exactly it. 17:16.920 --> 17:19.400 Technically, you get a side face if it fails. 17:20.040 --> 17:24.360 And now I mean, with reuse, we thought about what are good recommendations. 17:24.360 --> 17:29.480 We created tools for which help you to make your software reuse compliant. 17:29.480 --> 17:35.640 Now, I mean, for me, the big step is that people actually use those recommendations 17:35.640 --> 17:39.240 so that we then, afterwards, have the benefits where almost everybody agreed 17:39.240 --> 17:42.520 we talked to that those steps are very important steps. 17:42.520 --> 17:43.880 So where are we there? 17:43.880 --> 17:45.240 Who's already using it? 17:45.960 --> 17:50.120 I know that the Linux foundation is using a variety of reuse. 17:50.120 --> 17:54.920 Basically, we got in contact with the Linux people very early on 17:54.920 --> 17:58.360 in the development of reuse and they took some of that, 17:58.360 --> 18:01.560 they added some of their own and they went ahead and did all of that. 18:02.360 --> 18:05.160 So you find almost every single file in the Linux kernel 18:05.160 --> 18:08.600 now has a kind of reuse compliant header and that's really cool. 18:09.320 --> 18:13.080 We also have our project called Next Generation Internet 18:13.080 --> 18:17.400 where we are involved and also help projects which are accepted there 18:17.400 --> 18:21.080 to check if their software is compliant. 18:21.080 --> 18:23.080 And we also use the reuse tools there. 18:23.080 --> 18:28.040 So two of our staffers, Gabriel and Lukas are working on that 18:28.040 --> 18:29.480 and they're the feedback. 18:29.480 --> 18:31.000 It's quite mixed till now. 18:31.000 --> 18:35.000 I mean, we have people, they're very happy that you informed them about that 18:35.000 --> 18:37.800 and they just implemented it and all's fine. 18:37.800 --> 18:41.320 They have of course also some others who, for them, 18:41.400 --> 18:44.680 like licensing is more hurdle and they might already have some code 18:44.680 --> 18:47.720 and you explain that well then it's also some more effort 18:47.720 --> 18:48.920 to implement it there. 18:48.920 --> 18:51.880 When you talk with people about reuse till now, 18:51.880 --> 18:54.360 what was the feedback you received about it? 18:54.360 --> 18:59.000 Well, specifically the NGIO, I've noticed a lot of stuff coming from there. 18:59.000 --> 19:01.880 Like they come to the reuse tool and they write issues like, 19:01.880 --> 19:04.360 oh, this is broken and I'll fix it and it's fine. 19:04.920 --> 19:09.160 But you definitely notice some people who are really, really like collaborative 19:09.160 --> 19:11.720 and they want to help fix the tool and you know, 19:11.720 --> 19:16.120 they've got all cool sort of ideas and they like really get involved. 19:16.120 --> 19:17.800 But you also have other people who are like, 19:17.800 --> 19:19.080 oh, I just want it to work. 19:19.080 --> 19:23.480 Can I just do this and after all, no, you can't really do that. 19:23.480 --> 19:25.960 I mean, you could maybe, but it's a little bit hard. 19:26.840 --> 19:29.400 As for the other comments I've received about reuse, 19:29.400 --> 19:31.080 it's mostly been really positive. 19:31.080 --> 19:34.280 Like, oh yeah, I've never really thought about licensing much 19:34.280 --> 19:35.800 and I don't really know how to do it. 19:35.800 --> 19:38.520 But if it's really that easy, then I might. 19:39.800 --> 19:41.640 So a lot of positive feedback. 19:41.640 --> 19:44.200 Just a little positive feedback and then some negative feedback 19:44.200 --> 19:47.400 about people who just really, really don't want to bother with licensing. 19:47.400 --> 19:50.280 You've worked on reuse during your internship. 19:50.280 --> 19:54.600 What was the motivation for you to continue working on that afterwards? 19:55.240 --> 20:00.920 This is an obligation that I feel that a lot of programmers have. 20:00.920 --> 20:03.400 Like, they've started a project that's kind of like their baby 20:03.400 --> 20:08.040 and they feel like a responsibility towards keeping maintaining it. 20:08.120 --> 20:11.480 And that's what I did and it wasn't a lot of time and I really like the people 20:11.480 --> 20:14.520 in the efforts of years well and I really like free software. 20:14.520 --> 20:17.400 So I just kind of stuck around and it's been really good. 20:17.400 --> 20:21.000 I've been to Barcelona to talk about what licensing, 20:21.000 --> 20:24.680 well, I'm here currently in Bosano to also talk about licensing. 20:24.680 --> 20:27.080 I'll have a talk later about reuse. 20:27.080 --> 20:29.880 Okay, one last question regarding reuse. 20:29.880 --> 20:33.080 And the virtual license is the reuse tool itself. 20:33.080 --> 20:36.360 The reuse tool itself is on the GPL three or later 20:37.160 --> 20:38.840 and a couple of other licenses. 20:38.840 --> 20:41.640 It's also under the Creative Commons license 20:41.640 --> 20:43.720 for some of the documentation. 20:43.720 --> 20:46.680 It's under the Creative Commons zero license 20:46.680 --> 20:50.280 for some of the configuration files and it's under the Apache license 20:50.280 --> 20:52.680 for that really good bit of code that I stole. 20:52.680 --> 20:55.080 Well, not stole but borrowed. 20:55.080 --> 20:56.520 Reused. Reused. 20:58.280 --> 21:01.640 Okay, then the last question I have, as you know, 21:01.640 --> 21:06.440 on February 14th we are always celebrating the I love free software day 21:06.440 --> 21:10.440 because during the year we complain a lot. 21:10.440 --> 21:13.320 People complain about bugs in the reuse, 21:13.320 --> 21:17.880 linter tool, people complain about problems with the documentation 21:17.880 --> 21:19.800 and how you can further improve it. 21:19.800 --> 21:22.680 They might complain that, well, it's still too complicated 21:22.680 --> 21:27.000 and we try to fix that but people often forget to say thank you 21:27.000 --> 21:30.760 and we ourselves also have to remind ourselves to say thank you 21:31.000 --> 21:35.160 to all the people whose code we reuse in our tools 21:35.160 --> 21:39.640 and so on 14th of February we encourage people to say thank you 21:40.280 --> 21:45.640 and use it as a one-day reminder but of course you can also say thank you 21:45.640 --> 21:48.440 all the rest of the year when we think about it like we do now. 21:48.440 --> 21:53.640 So my question would be which program or which developer would you like to thank? 21:54.600 --> 21:59.000 In the spirit of the question I think I'd like to thank the GNOME programmers 21:59.080 --> 22:01.400 I know I can't really do a little bit to GNOME myself 22:01.400 --> 22:03.880 mostly translations, I haven't done a lot of coding for GNOME 22:04.680 --> 22:07.800 but I really, really like the GNOME projects. 22:07.800 --> 22:12.920 They make my life a lot easier just having a very nice tidy interface 22:12.920 --> 22:15.240 and they don't get a lot of love sometimes. 22:15.240 --> 22:19.800 There's a lot of criticism towards GNOME and I'm sure some of it's valid 22:20.440 --> 22:25.160 but I'd like to make sure that they also feel loved in a way 22:25.880 --> 22:27.560 for all the amazing work they do. 22:29.080 --> 22:31.000 Okay thank you very much Carmen. 22:31.000 --> 22:31.880 Thank you so much. 22:31.880 --> 22:32.840 Thank you for having me. 22:33.480 --> 22:35.480 This was the Software Freedom Podcast. 22:35.480 --> 22:39.000 If you liked this episode please recommend it to your friends and rated. 22:39.000 --> 22:41.960 Also subscribe to make sure you're the next episode. 22:41.960 --> 22:45.080 This podcast is presented to you by the free Software Foundation Europe 22:45.080 --> 22:48.600 we are a charity that works on promoting Software Freedom. 22:48.600 --> 22:52.040 If you like our work please consider supporting us with a donation 22:52.040 --> 22:56.360 you find more information under my.fsfe.org slash donate. 22:56.360 --> 22:59.560 I've been looking forward to our next episode and I hope you will 22:59.560 --> 23:00.760 then again listen to us. 23:00.760 --> 23:01.560 Thank you very much. 23:16.760 --> 23:19.320 Here's another voice from our large community. 23:20.680 --> 23:22.040 My name is Florian. 23:22.040 --> 23:25.400 I've been a volunteer with the FSFE since 2012 23:26.120 --> 23:31.640 and I continue volunteering for the FSFE because whenever I have an idea 23:31.640 --> 23:35.160 and I approach someone about it and I say I'm willing to do the work 23:35.160 --> 23:37.960 people actually let me and I find that very motivating.