"DMA's interoperability is against fundamental rights" claims Apple. The FSFE disagrees. If you also think interoperability is key for software freedom, support us!

Transcript of SFP#4 about REUSE with Carmen Bianca Bakker

Back to the episode SFP#4

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.

Back to the episode SFP#4