From 63d356203843b60a856a13164132f92846cc7d51 Mon Sep 17 00:00:00 2001 From: Bhavin Gandhi Date: Wed, 30 Dec 2020 23:24:11 +0530 Subject: Add subtitles for 39 Q&A --- ...39-nongnu-elpa--questions--richard-stallman.vtt | 2707 ++++++++++++++++++++ 1 file changed, 2707 insertions(+) create mode 100644 2020/subtitles/emacsconf-2020--39-nongnu-elpa--questions--richard-stallman.vtt (limited to '2020/subtitles/emacsconf-2020--39-nongnu-elpa--questions--richard-stallman.vtt') diff --git a/2020/subtitles/emacsconf-2020--39-nongnu-elpa--questions--richard-stallman.vtt b/2020/subtitles/emacsconf-2020--39-nongnu-elpa--questions--richard-stallman.vtt new file mode 100644 index 00000000..41325095 --- /dev/null +++ b/2020/subtitles/emacsconf-2020--39-nongnu-elpa--questions--richard-stallman.vtt @@ -0,0 +1,2707 @@ +WEBVTT + +00:00:00.640 --> 00:00:04.160 +Okay. So, the first question is, "What is an + +00:00:04.160 --> 00:00:08.800 +example of a package currently in + +00:00:08.800 --> 00:00:12.160 +a non-ELPA repo that does not work well + +00:00:12.160 --> 00:00:13.759 +with Emacs?" + +00:00:13.759 --> 00:00:18.000 +Well, one of them is s.el, + +00:00:18.000 --> 00:00:19.760 +and this is what made me aware that + +00:00:19.760 --> 00:00:21.920 +there was an issue here that caused + +00:00:21.920 --> 00:00:25.760 +problems. Well, s.el + +00:00:25.760 --> 00:00:29.439 +is a beautifully written package + +00:00:29.439 --> 00:00:31.279 +that appears to be very useful for + +00:00:31.279 --> 00:00:32.800 +people. + +00:00:32.800 --> 00:00:36.320 +And there's just one thing wrong with it. + +00:00:36.320 --> 00:00:39.520 +It gobbled up the name space + +00:00:39.520 --> 00:00:43.680 +of symbols starting with s dash. + +00:00:43.680 --> 00:00:47.039 +And I was shocked to discover that + +00:00:47.039 --> 00:00:49.440 +somebody who had not coordinated with + +00:00:49.440 --> 00:00:51.760 +the Emacs developers at all, + +00:00:51.760 --> 00:00:55.360 +had implemented a package using such a + +00:00:55.360 --> 00:00:56.800 +short prefix, which + +00:00:56.800 --> 00:00:58.723 +isn't the right way to do things. + +00:00:58.723 --> 00:01:01.520 +Oh, by the way, the questions have moved off the + +00:01:01.520 --> 00:01:04.000 +screen, this is no good. I can continue + +00:01:04.000 --> 00:01:05.360 +answering this one, + +00:01:05.360 --> 00:01:08.880 +but I'll be stuck when this one is over. + +00:01:08.880 --> 00:01:12.159 +Anyway, so… + +00:01:12.159 --> 00:01:15.040 +I was told that there was nothing I + +00:01:15.040 --> 00:01:16.560 +could do about it, + +00:01:16.560 --> 00:01:19.920 +that so many users, packages were using + +00:01:19.920 --> 00:01:22.960 +s.el and thus essentially using that + +00:01:22.960 --> 00:01:24.240 +definition + +00:01:24.240 --> 00:01:28.080 +of the s-* symbols, + +00:01:28.080 --> 00:01:31.360 +that any attempt to use them + +00:01:31.360 --> 00:01:34.720 +publicly or privately for anything else + +00:01:34.720 --> 00:01:38.079 +would lead to horrible problems. + +00:01:38.079 --> 00:01:41.680 +And I don't like that. + +00:01:41.680 --> 00:01:45.520 +I decided, I wanted to do something + +00:01:45.520 --> 00:01:49.040 +a) so that wouldn't happen again + +00:01:49.040 --> 00:01:52.320 +and b) to make it unhappen + +00:01:52.320 --> 00:01:55.119 +in that case. Well, the way to make it + +00:01:55.119 --> 00:01:57.840 +unhappen in that case is with a new + +00:01:57.840 --> 00:02:02.240 +symbol renaming feature. The idea is, + +00:02:02.240 --> 00:02:05.360 +you rename that file to something else, + +00:02:05.360 --> 00:02:09.119 +and then you define an s.el that + +00:02:09.119 --> 00:02:11.520 +sets up symbol renaming and then loads + +00:02:11.520 --> 00:02:13.040 +the something else. + +00:02:13.040 --> 00:02:15.590 +So, it actually runs the same code, + +00:02:15.590 --> 00:02:16.400 +it just + +00:02:16.400 --> 00:02:20.879 +doesn't globally define the symbols + +00:02:20.879 --> 00:02:23.920 +s dash whatever, but they + +00:02:23.920 --> 00:02:26.160 +appear to work for the programs that + +00:02:26.160 --> 00:02:32.640 +explicitly require s.el + +00:02:32.640 --> 00:02:36.000 +or the s package. So, this gets the same + +00:02:36.000 --> 00:02:38.080 +behavior for all the programs that are + +00:02:38.080 --> 00:02:40.239 +using that library + +00:02:40.239 --> 00:02:43.360 +and doesn't interfere + +00:02:43.360 --> 00:02:47.840 +with the global name space at all. + +00:02:47.840 --> 00:02:50.319 +However, to do that we need to have a + +00:02:50.319 --> 00:02:52.080 +package + +00:02:52.080 --> 00:02:55.360 +s.el, that isn't the same + +00:02:55.360 --> 00:02:57.760 +totally. A short one file that's totally + +00:02:57.760 --> 00:02:58.640 +different. + +00:02:58.640 --> 00:03:01.440 +Plus, we've got to have the file that + +00:03:01.440 --> 00:03:02.840 +normally is called + +00:03:02.840 --> 00:03:06.239 +s.el available, but + +00:03:06.239 --> 00:03:10.319 +under another name. Well, + +00:03:10.319 --> 00:03:13.040 +how are we going to do that? We can't put + +00:03:13.040 --> 00:03:18.879 +this into Emacs in a nice way that + +00:03:18.879 --> 00:03:24.560 +won't make the maintainer angry. + +00:03:24.560 --> 00:03:28.159 +(or the developer of that package.) + +00:03:28.159 --> 00:03:32.080 +But we can do it with NonGNU + +00:03:32.080 --> 00:03:34.640 +ELPA. We can put those two things into + +00:03:34.640 --> 00:03:36.239 +NonGNU ELPA + +00:03:36.239 --> 00:03:38.720 +without any difficulty. And this shows + +00:03:38.720 --> 00:03:40.720 +one of the advantages. + +00:03:40.720 --> 00:03:43.280 +We can put files, we can put packages + +00:03:43.280 --> 00:03:45.440 +into NonGNU ELPA + +00:03:45.440 --> 00:03:48.400 +and make changes in them. Now, in general + +00:03:48.400 --> 00:03:49.599 +we wouldn't + +00:03:49.599 --> 00:03:51.760 +go to the effort of making big changes. + +00:03:51.760 --> 00:03:54.319 +That's just too much to do + +00:03:54.319 --> 00:03:56.400 +unless something's really important. But + +00:03:56.400 --> 00:03:58.000 +small changes + +00:03:58.000 --> 00:04:01.120 +that help things fit in are + +00:04:01.120 --> 00:04:04.319 +easy to do. + +00:04:04.319 --> 00:04:07.120 +Okay, oh, so basically the recording + +00:04:07.120 --> 00:04:10.319 +didn't get anything until now. I just saw + +00:04:10.319 --> 00:04:13.439 +a note pop up, "this session is now being + +00:04:13.439 --> 00:04:14.319 +recorded". + +00:04:14.319 --> 00:04:16.320 +I hope it's been recorded all along. It + +00:04:16.320 --> 00:04:18.160 +would be a shame to + +00:04:18.160 --> 00:04:21.280 +spoil… Oh, good okay. + +00:04:21.280 --> 00:04:27.120 +So, that's one of the issues. + +00:04:27.120 --> 00:04:30.479 +"Does NonGNU ELPA already exist + +00:04:30.479 --> 00:04:33.840 +or is this a sort of "plan"?" I don't + +00:04:33.840 --> 00:04:35.360 +know why you have to + +00:04:35.360 --> 00:04:37.919 +put scare quotes around the word plan. + +00:04:37.919 --> 00:04:40.400 +It's sort of in between. + +00:04:40.400 --> 00:04:44.160 +The creation of it is started. You + +00:04:44.160 --> 00:04:45.440 +will find + +00:04:45.440 --> 00:04:48.160 +that there is an archive that it's + +00:04:48.160 --> 00:04:51.520 +possible to download packages from, + +00:04:51.520 --> 00:04:54.880 +and there is a repository to put them in, + +00:04:54.880 --> 00:04:57.120 +but that's not the way it's really + +00:04:57.120 --> 00:04:58.560 +supposed to work. + +00:04:58.560 --> 00:05:02.800 +This is not supposed to be like the + +00:05:02.800 --> 00:05:04.320 +GNU ELPA, where there's + +00:05:04.320 --> 00:05:07.280 +one repo for all the packages and thus + +00:05:07.280 --> 00:05:09.039 +anyone who wants to edit any of them, + +00:05:09.039 --> 00:05:11.199 +anyone that we want to have edit any of + +00:05:11.199 --> 00:05:11.680 +them, + +00:05:11.680 --> 00:05:13.280 +has got to have access to the whole + +00:05:13.280 --> 00:05:15.440 +thing for one thing. + +00:05:15.440 --> 00:05:18.560 +Some packages will make + +00:05:18.560 --> 00:05:21.840 +an arrangement with the developers, + +00:05:21.840 --> 00:05:25.120 +and they'll assure us that they will + +00:05:25.120 --> 00:05:27.039 +do things as things should be done, and + +00:05:27.039 --> 00:05:28.400 +then we'll + +00:05:28.400 --> 00:05:32.080 +have their repo copied automatically + +00:05:32.080 --> 00:05:35.919 +or in other cases, say, + +00:05:35.919 --> 00:05:38.160 +copied manually with a little checking + +00:05:38.160 --> 00:05:40.160 +every so often. + +00:05:40.160 --> 00:05:46.400 +In other cases we'll need to have our own + +00:05:46.400 --> 00:05:49.440 +repo for a particular package. + +00:05:49.440 --> 00:05:52.479 +But we shouldn't have a single repo for + +00:05:52.479 --> 00:05:54.400 +all the packages. We should have a repo + +00:05:54.400 --> 00:05:55.919 +for each package, + +00:05:55.919 --> 00:05:57.840 +so that the people working on that can + +00:05:57.840 --> 00:06:01.120 +get access to modify it. + +00:06:01.120 --> 00:06:04.319 +This has to be finished setting up, + +00:06:04.319 --> 00:06:06.080 +and we're still working out the + +00:06:06.080 --> 00:06:07.680 +procedures. + +00:06:07.680 --> 00:06:11.039 +For instance, for making the arrangements + +00:06:11.039 --> 00:06:14.400 +with the developers of a package so that + +00:06:14.400 --> 00:06:15.440 +we can, + +00:06:15.440 --> 00:06:18.840 +we hope, entrust its development to + +00:06:18.840 --> 00:06:24.800 +them and rely on them directly. + +00:06:24.800 --> 00:06:26.560 +And there may be more that needs to be + +00:06:26.560 --> 00:06:29.840 +worked on. + +00:06:29.840 --> 00:06:36.639 +Oh! There's so many questions. + +00:06:36.639 --> 00:06:39.280 +Well, I hope you… The third question is, + +00:06:39.280 --> 00:06:40.880 +what are the benefits? + +00:06:40.880 --> 00:06:43.680 +I hope that people now see the benefits. + +00:06:43.680 --> 00:06:46.240 +I've described them. + +00:06:46.240 --> 00:06:49.599 +Next question, "Is it possible to work + +00:06:49.599 --> 00:06:51.440 +with the MELPA team + +00:06:51.440 --> 00:06:54.720 +to integrate that into Emacs?" + +00:06:54.720 --> 00:06:59.440 +No, because the goal doesn't make sense. + +00:06:59.440 --> 00:07:03.759 +MELPA the way it's done, does not belong + +00:07:03.759 --> 00:07:07.199 +inside Emacs in any sense. Well, first of + +00:07:07.199 --> 00:07:08.560 +all, it can't literally be + +00:07:08.560 --> 00:07:11.280 +inside Emacs. We don't have copyright + +00:07:11.280 --> 00:07:13.280 +assignments for that code + +00:07:13.280 --> 00:07:18.160 +and to get it would be unfeasible, + +00:07:18.160 --> 00:07:20.560 +but we're not asking for copyright + +00:07:20.560 --> 00:07:21.520 +assignments for + +00:07:21.520 --> 00:07:25.280 +NonGNU ELPA so that's + +00:07:25.280 --> 00:07:27.599 +you might wonder could MELPA be merged + +00:07:27.599 --> 00:07:31.440 +with NonGNU ELPA? The problem is, + +00:07:31.440 --> 00:07:35.039 +MELPA doesn't modify the packages. + +00:07:35.039 --> 00:07:38.240 +It's just a place to find releases of + +00:07:38.240 --> 00:07:41.360 +packages wherever they happen to be, + +00:07:41.360 --> 00:07:44.800 +and they put packages in with + +00:07:44.800 --> 00:07:48.319 +only a little bit of checking. + +00:07:48.319 --> 00:07:51.520 +So, no. There are a lot of packages + +00:07:51.520 --> 00:07:51.919 +that are + +00:07:51.919 --> 00:07:55.280 +in MELPA that we'd like to get into + +00:07:55.280 --> 00:07:58.479 +NonGNU ELPA. I don't know the names of + +00:07:58.479 --> 00:08:00.800 +most of them, but I expect most of them + +00:08:00.800 --> 00:08:04.160 +would be fine to have. But they've got to + +00:08:04.160 --> 00:08:08.560 +be looked at one by one. + +00:08:08.560 --> 00:08:12.000 +There are some rules for NonGNU ELPA, + +00:08:12.000 --> 00:08:14.479 +and the only way to check them is to + +00:08:14.479 --> 00:08:18.000 +check them on one package at a time, + +00:08:18.000 --> 00:08:22.160 +and that's going to take effort. + +00:08:22.160 --> 00:08:25.039 +Now, with the people who work on MELPA + +00:08:25.039 --> 00:08:26.080 +want to get involved + +00:08:26.080 --> 00:08:29.440 +of this, that would be great. + +00:08:29.440 --> 00:08:32.800 +I haven't tried asking them. First we've + +00:08:32.800 --> 00:08:33.919 +got to get this thing + +00:08:33.919 --> 00:08:37.599 +set up. I doubt they would want to, + +00:08:37.599 --> 00:08:40.479 +but if they said yes, that would be + +00:08:40.479 --> 00:08:44.159 +wonderful. + +00:08:44.159 --> 00:08:48.399 +"Any thoughts of packages being + +00:08:48.399 --> 00:09:00.959 +added…" I'm afraid. + +00:09:05.440 --> 00:09:08.959 +Any thoughts of packages being added as + +00:09:08.959 --> 00:09:11.040 +some URL I don't know anything about, but + +00:09:11.040 --> 00:09:13.120 +it talks about open source, + +00:09:13.120 --> 00:09:17.680 +which means I'm very unlikely to have much + +00:09:17.680 --> 00:09:20.959 +in common with whatever they say about + +00:09:20.959 --> 00:09:24.080 +either licensing or + +00:09:24.080 --> 00:09:27.760 +what's right and wrong. + +00:09:27.760 --> 00:09:29.959 +But this seems to be something about + +00:09:29.959 --> 00:09:33.523 +disregarding licenses altogether. + +00:09:33.523 --> 00:09:35.680 +Well, that is basically + +00:09:35.680 --> 00:09:39.360 +asking to lose. There are reasons + +00:09:39.360 --> 00:09:43.360 +why we developed GNU licenses to release + +00:09:43.360 --> 00:09:46.490 +software, why we have criteria for which + +00:09:46.490 --> 00:09:49.519 +licenses make a program free software. + +00:09:49.519 --> 00:09:52.640 +If the program doesn't carry a license + +00:09:52.640 --> 00:09:55.057 +or if it carries a non-free license, + +00:09:55.057 --> 00:09:58.323 +that program is not free software. + +00:09:58.323 --> 00:10:01.857 +Now, you can maybe get away with + +00:10:01.857 --> 00:10:04.800 +disregarding that fact unless + +00:10:04.800 --> 00:10:08.959 +somebody, an author or publisher stops you. + +00:10:08.959 --> 00:10:11.360 +But we're not going to take… we're not + +00:10:11.360 --> 00:10:12.399 +basically going to + +00:10:12.399 --> 00:10:15.200 +disregard the question of whether the + +00:10:15.200 --> 00:10:16.399 +software we + +00:10:16.399 --> 00:10:19.040 +recommend to people, really is free + +00:10:19.040 --> 00:10:21.360 +software or not. + +00:10:21.360 --> 00:10:24.560 +That's basically + +00:10:24.560 --> 00:10:27.519 +blindfolding yourself to the legal + +00:10:27.519 --> 00:10:29.120 +situation of the software you're + +00:10:29.120 --> 00:10:33.519 +distributing, it's a terrible idea. If they + +00:10:33.519 --> 00:10:35.920 +disregard our licenses they will hear + +00:10:35.920 --> 00:10:38.640 +from us about it. + +00:10:38.640 --> 00:10:40.959 +And if you want to contribute to the + +00:10:40.959 --> 00:10:42.720 +free world + +00:10:42.720 --> 00:10:46.320 +put free licenses on your code + +00:10:46.320 --> 00:10:47.823 +and choose good ones. + +00:10:47.823 --> 00:10:50.000 +To get this information, + +00:10:50.000 --> 00:10:57.120 +look at gnu.org/licenses, + +00:10:57.120 --> 00:10:59.839 +and one page that's important + +00:10:59.839 --> 00:11:05.040 +is license-recommendations.html, + +00:11:05.040 --> 00:11:07.360 +that's where we advise you on what + +00:11:07.360 --> 00:11:09.279 +license we would recommend you use + +00:11:09.279 --> 00:11:11.360 +depending on the circumstances. + +00:11:11.360 --> 00:11:15.600 +There's also license-list.html + +00:11:15.600 --> 00:11:20.160 +which describes a lot of licenses and + +00:11:20.160 --> 00:11:22.160 +says which ones are free, + +00:11:22.160 --> 00:11:23.957 +which ones are compatible + +00:11:23.957 --> 00:11:26.160 +with the GNU GPL. + +00:11:26.160 --> 00:11:28.640 +It's really important to use only GPL + +00:11:28.640 --> 00:11:31.519 +compatible licenses + +00:11:31.519 --> 00:11:34.320 +so that the various programs can be + +00:11:34.320 --> 00:11:40.720 +combined together or linked. + +00:11:40.720 --> 00:11:43.120 +You can also get other information about + +00:11:43.120 --> 00:11:44.240 +GNU licenses + +00:11:44.240 --> 00:11:47.040 +and the reasons why they are written the + +00:11:47.040 --> 00:11:55.279 +way they are. + +00:11:55.279 --> 00:12:03.200 +Oh sorry, I don't see the next question. + +00:12:03.200 --> 00:12:07.519 +"Why do I insist on using per and pers?" + +00:12:07.519 --> 00:12:11.680 +I'm not happy with using + +00:12:11.680 --> 00:12:14.959 +they, which is a plural pronoun with a + +00:12:14.959 --> 00:12:17.440 +singular antecedent. + +00:12:17.440 --> 00:12:20.480 +It's bad because it causes + +00:12:20.480 --> 00:12:24.800 +confusion that is completely gratuitous. + +00:12:24.800 --> 00:12:28.639 +Many sentences become a lot of work + +00:12:28.639 --> 00:12:33.200 +to parse and understand if you + +00:12:33.200 --> 00:12:36.480 +add that ambiguity, that source of + +00:12:36.480 --> 00:12:39.839 +regular ambiguity. Now, + +00:12:39.839 --> 00:12:42.720 +I do not accept the demands of other + +00:12:42.720 --> 00:12:43.680 +people + +00:12:43.680 --> 00:12:47.519 +in regard to changing my grammar. + +00:12:47.519 --> 00:12:50.800 +You can try to convince me, but + +00:12:50.800 --> 00:12:54.240 +no one is entitled to give me orders + +00:12:54.240 --> 00:12:55.440 +about that + +00:12:55.440 --> 00:12:58.880 +or state their desires and expect + +00:12:58.880 --> 00:13:03.200 +obedience, not for me and not from you + +00:13:03.200 --> 00:13:06.560 +or anyone. We are all + +00:13:06.560 --> 00:13:09.839 +equally entitled to decide + +00:13:09.839 --> 00:13:13.200 +how we will speak and how we won't speak. + +00:13:13.200 --> 00:13:18.000 +I've spelled out all of these points + +00:13:18.000 --> 00:13:19.857 +in a file called + +00:13:19.857 --> 00:13:29.423 +stallman.org/articles/genderless-pronouns.html + +00:13:29.423 --> 00:13:31.600 +(corrected), + +00:13:31.600 --> 00:13:33.760 +of course, this is not a GNU project + +00:13:33.760 --> 00:13:36.000 +policy, + +00:13:36.000 --> 00:13:46.839 +it's my own personal ideas on the + +00:13:46.839 --> 00:13:53.920 +subject. + +00:13:53.920 --> 00:13:57.120 +If any of you feels offended + +00:13:57.120 --> 00:14:01.040 +by my referring to you with a singular + +00:14:01.040 --> 00:14:04.320 +gender-neutral pronoun, feel free + +00:14:04.320 --> 00:14:07.680 +to contact me privately + +00:14:07.680 --> 00:14:10.720 +and explain to me your reasons. + +00:14:10.720 --> 00:14:14.000 +I will pay attention to them, I'll + +00:14:14.000 --> 00:14:16.639 +think about them assuming that they're + +00:14:16.639 --> 00:14:18.399 +not something I've already + +00:14:18.399 --> 00:14:24.079 +considered and decided to dismiss before. + +00:14:24.079 --> 00:14:27.760 +But you must not speak to me as if I had + +00:14:27.760 --> 00:14:30.240 +no business not obeying you because + +00:14:30.240 --> 00:14:31.690 +that's rude, + +00:14:31.690 --> 00:14:34.320 +and it is not likely to convince me + +00:14:34.320 --> 00:14:40.720 +to change my mind. + +00:14:40.720 --> 00:14:44.240 +I believe it is not actually + +00:14:44.240 --> 00:14:48.320 +of stating offense to anyone, + +00:14:48.320 --> 00:14:50.560 +and the fact that somebody disagrees + +00:14:50.560 --> 00:14:52.880 +with me does not mean I'm wrong, + +00:14:52.880 --> 00:15:00.720 +but I always can be wrong. + +00:15:00.720 --> 00:15:02.560 +"When you wrote that you could add a + +00:15:02.560 --> 00:15:05.680 +package to NonGNU ELPA, + +00:15:05.680 --> 00:15:07.120 +are you implying that you would add + +00:15:07.120 --> 00:15:09.199 +packages with or without package + +00:15:09.199 --> 00:15:11.120 +maintainer's knowledge?" + +00:15:11.120 --> 00:15:15.279 +Of course, the packages we would + +00:15:15.279 --> 00:15:18.000 +distribute in this way are free + +00:15:18.000 --> 00:15:19.519 +software. + +00:15:19.519 --> 00:15:22.720 +Everyone is entitled to redistribute them + +00:15:22.720 --> 00:15:26.560 +and everyone is also entitled to modify + +00:15:26.560 --> 00:15:26.959 +them + +00:15:26.959 --> 00:15:29.199 +and redistribute them, that's part of the + +00:15:29.199 --> 00:15:31.680 +meaning of free software. + +00:15:31.680 --> 00:15:35.040 +I have been unable to understand + +00:15:35.040 --> 00:15:38.320 +how there came to be an idea + +00:15:38.320 --> 00:15:42.560 +that those who redistribute packages + +00:15:42.560 --> 00:15:49.360 +have some obligation to be mere mirrors + +00:15:49.360 --> 00:15:54.480 +and not modify things themselves. + +00:15:54.480 --> 00:15:58.560 +Well, if a package is + +00:15:58.560 --> 00:16:01.440 +being maintained by developers who are + +00:16:01.440 --> 00:16:03.440 +cooperating with us, + +00:16:03.440 --> 00:16:06.240 +we'll normally just leave it to them. + +00:16:06.240 --> 00:16:07.360 +After all, + +00:16:07.360 --> 00:16:09.590 +we have lots of other work to do. + +00:16:09.590 --> 00:16:12.390 +They are clearly experts on + +00:16:12.390 --> 00:16:15.600 +the packages they've developed, + +00:16:15.600 --> 00:16:18.399 +let's leave it to them if they make that + +00:16:18.399 --> 00:16:22.800 +sort of arrangement with us. But + +00:16:22.800 --> 00:16:26.480 +that's up to them, we can't insist that + +00:16:26.480 --> 00:16:29.120 +anyone make an arrangement with us, + +00:16:29.120 --> 00:16:30.720 +but since those programs are free + +00:16:30.720 --> 00:16:35.723 +software, anyone is free to redistribute them, + +00:16:35.723 --> 00:16:41.839 +and we will do that. + +00:16:41.839 --> 00:16:45.519 +"Have you ever used vi or vim or + +00:16:45.519 --> 00:16:52.079 +evil mode?" No. + +00:16:52.079 --> 00:16:53.920 +"Are there any plans to implement + +00:16:53.920 --> 00:16:56.800 +security considerations in NonGNU + +00:16:56.800 --> 00:16:58.657 +ELPA?" + +00:16:58.657 --> 00:17:01.890 +We probably should, + +00:17:01.890 --> 00:17:04.959 +and this will have to be implemented, + +00:17:04.959 --> 00:17:08.559 +but at the moment + +00:17:08.559 --> 00:17:12.000 +developer Emacs maintainers will copy + +00:17:12.000 --> 00:17:13.280 +packages + +00:17:13.280 --> 00:17:18.160 +into it, and so as long as they are + +00:17:18.160 --> 00:17:20.160 +verifying the packages and getting the + +00:17:20.160 --> 00:17:22.480 +packages from the right place + +00:17:22.480 --> 00:17:24.690 +that will take care of the security. + +00:17:24.690 --> 00:17:25.919 +Once there is… + +00:17:25.919 --> 00:17:30.160 +When with automatic copying in, + +00:17:30.160 --> 00:17:33.200 +will have to do something to + +00:17:33.200 --> 00:17:35.200 +make sure that we're fetching the + +00:17:35.200 --> 00:17:40.320 +packages securely. + +00:17:40.320 --> 00:17:44.000 +Some of you might be interested in + +00:17:44.000 --> 00:17:46.080 +helping to design and implement this + +00:17:46.080 --> 00:17:48.000 +system. + +00:17:48.000 --> 00:17:52.559 +"What distro do I use?" + +00:17:52.559 --> 00:17:56.720 +Well, which distro of GNU/Linux + +00:17:56.720 --> 00:17:58.000 +do I use? + +00:17:58.000 --> 00:18:03.520 +I use Trisquel, + +00:18:03.520 --> 00:18:07.200 +I haven't tried most of the free distros + +00:18:07.200 --> 00:18:10.080 +and the reason is, it's not crucial that + +00:18:10.080 --> 00:18:11.120 +I do so, + +00:18:11.120 --> 00:18:13.520 +we don't need me to rate the various + +00:18:13.520 --> 00:18:14.799 +free distros on + +00:18:14.799 --> 00:18:17.520 +practical questions because anyone can + +00:18:17.520 --> 00:18:20.000 +do that as well as I can. + +00:18:20.000 --> 00:18:24.400 +And so you can tell people what + +00:18:24.400 --> 00:18:27.760 +you think of using them. For me, what's + +00:18:27.760 --> 00:18:29.360 +important to me + +00:18:29.360 --> 00:18:32.400 +is to inform people of the difference + +00:18:32.400 --> 00:18:34.160 +between the free distros + +00:18:34.160 --> 00:18:36.799 +and the non-free distros, making sure + +00:18:36.799 --> 00:18:38.799 +people are aware that if you + +00:18:38.799 --> 00:18:42.000 +install a non-free GNU/Linux + +00:18:42.000 --> 00:18:45.600 +distro, you'll get a free operating + +00:18:45.600 --> 00:18:46.720 +system with + +00:18:46.720 --> 00:18:49.919 +non-free stuff in various quantities + +00:18:49.919 --> 00:18:54.160 +added, thus you will not reach freedom, + +00:18:54.160 --> 00:18:56.240 +although you'll make a lot of + +00:18:56.240 --> 00:18:57.520 +progress compared + +00:18:57.520 --> 00:19:01.039 +with using for instance, Windows or + +00:19:01.039 --> 00:19:03.919 +macOS or whatever vicious thing it + +00:19:03.919 --> 00:19:06.160 +might be. + +00:19:06.160 --> 00:19:09.760 +I'd like people to be aware + +00:19:09.760 --> 00:19:12.799 +of this next step towards + +00:19:12.799 --> 00:19:14.720 +getting freedom for yourself and your + +00:19:14.720 --> 00:19:16.160 +own computing, + +00:19:16.160 --> 00:19:24.480 +so that you can do that if you want to. + +00:19:29.039 --> 00:19:31.360 +"Who gets to make the final decision + +00:19:31.360 --> 00:19:35.157 +regarding NonGNU ELPA?" + +00:19:35.157 --> 00:19:38.690 +The Emacs maintainers are + +00:19:38.690 --> 00:19:40.960 +going to be in charge of this, + +00:19:40.960 --> 00:19:44.480 +because it's not + +00:19:44.480 --> 00:19:47.760 +just a technical decision it has with + +00:19:47.760 --> 00:19:51.360 +only technical consequences + +00:19:51.360 --> 00:19:54.960 +but in general unless there's some + +00:19:54.960 --> 00:19:57.760 +severe problem with the package we will + +00:19:57.760 --> 00:20:03.600 +want to put it in, + +00:20:03.600 --> 00:20:05.757 +and I expect most packages + +00:20:05.757 --> 00:20:07.440 +won't have a problem, + +00:20:07.440 --> 00:20:09.357 +and we can just put them in + +00:20:09.357 --> 00:20:11.679 +when we get to them. + +00:20:11.679 --> 00:20:15.919 +"Won't the ELPA link to non-free sites + +00:20:15.919 --> 00:20:17.600 +like GitHub?" + +00:20:17.600 --> 00:20:20.799 +It's a mistake to talk about a + +00:20:20.799 --> 00:20:25.760 +non-free site, + +00:20:25.760 --> 00:20:29.120 +because a site is not a program. + +00:20:29.120 --> 00:20:32.123 +A program is either free or non-free, + +00:20:32.123 --> 00:20:32.960 +and we have + +00:20:32.960 --> 00:20:36.480 +clearly stated criteria for that in + +00:20:36.480 --> 00:20:42.457 +gnu.org/philosophy/free-sw.html + +00:20:42.457 --> 00:20:45.360 +we have the free software definition, + +00:20:45.360 --> 00:20:51.919 +but a site, well, there're programs on it, + +00:20:51.919 --> 00:20:54.000 +but it doesn't make sense to ask whether + +00:20:54.000 --> 00:20:55.120 +the site is + +00:20:55.120 --> 00:20:58.000 +free or not, it's too simplistic a + +00:20:58.000 --> 00:20:58.880 +question + +00:20:58.880 --> 00:21:02.000 +to have a meaningful answer. Now, one + +00:21:02.000 --> 00:21:05.679 +thing you can ask about is, does the site + +00:21:05.679 --> 00:21:08.799 +send JavaScript to the user's machine, + +00:21:08.799 --> 00:21:11.760 +to the user's browser and if so, is that + +00:21:11.760 --> 00:21:12.960 +JavaScript + +00:21:12.960 --> 00:21:17.120 +non-free. Well, GitHub + +00:21:17.120 --> 00:21:19.919 +does send non-free JavaScript for some + +00:21:19.919 --> 00:21:21.200 +operations, + +00:21:21.200 --> 00:21:24.240 +so we consider it unsatisfactory as a + +00:21:24.240 --> 00:21:26.159 +repository, + +00:21:26.159 --> 00:21:29.600 +but that doesn't mean linking to it + +00:21:29.600 --> 00:21:33.360 +is a bad thing to do regardless of + +00:21:33.360 --> 00:21:34.720 +what the purpose is. + +00:21:34.720 --> 00:21:36.640 +For instance, if the purpose is to refer + +00:21:36.640 --> 00:21:38.240 +to some things + +00:21:38.240 --> 00:21:40.799 +that you can access without running the + +00:21:40.799 --> 00:21:42.880 +non-free JavaScript, + +00:21:42.880 --> 00:21:47.200 +then it's okay for that purpose. + +00:21:47.200 --> 00:21:50.480 +So, if now that you understand the + +00:21:50.480 --> 00:21:52.559 +details of this issue, + +00:21:52.559 --> 00:21:54.880 +you think that there is a problem with + +00:21:54.880 --> 00:22:00.080 +the link to caml…, there's, + +00:22:00.080 --> 00:22:03.679 +sorry, a link in caml.html, + +00:22:03.679 --> 00:22:08.823 +well, report it to bug-gnu-emacs, + +00:22:08.823 --> 00:22:10.880 +report it as an Emacs bug, + +00:22:10.880 --> 00:22:14.159 +but do think about the criteria I've + +00:22:14.159 --> 00:22:15.840 +just said because maybe it's not a + +00:22:15.840 --> 00:22:18.000 +problem. + +00:22:18.000 --> 00:22:21.840 +"Is it okay to use the GNU Affero GPL + +00:22:21.840 --> 00:22:24.559 +for Emacs packages?" + +00:22:24.559 --> 00:22:28.880 +Yes it is. + +00:22:28.880 --> 00:22:31.120 +"Which is your favorite programming + +00:22:31.120 --> 00:22:32.080 +language? + +00:22:32.080 --> 00:22:35.200 +If Lisp, which variant?" + +00:22:35.200 --> 00:22:38.400 +Well, I don't exactly have a + +00:22:38.400 --> 00:22:41.760 +favorite variant, but + +00:22:41.760 --> 00:22:45.120 +when I designed Emacs Lisp, I + +00:22:45.120 --> 00:22:47.520 +did the best thing I could think of at + +00:22:47.520 --> 00:22:48.799 +the time, + +00:22:48.799 --> 00:22:52.559 +subject to the need to keep it small. + +00:22:52.559 --> 00:22:55.520 +For the first few years it was important + +00:22:55.520 --> 00:22:56.960 +for GNU Emacs + +00:22:56.960 --> 00:22:59.840 +to run in a machine which could only + +00:22:59.840 --> 00:23:00.799 +give it half + +00:23:00.799 --> 00:23:04.480 +a meg of user space. + +00:23:04.480 --> 00:23:06.559 +So, there are a lot of constructs that + +00:23:06.559 --> 00:23:09.200 +clearly were desirable to include + +00:23:09.200 --> 00:23:12.320 +that I left out because we could + +00:23:12.320 --> 00:23:16.880 +make it work without them + +00:23:16.880 --> 00:23:18.960 +and then a lot of those have been added + +00:23:18.960 --> 00:23:20.640 +since because + +00:23:20.640 --> 00:23:23.200 +it's been a long time since we needed to + +00:23:23.200 --> 00:23:40.960 +keep Emacs so rigorously small. + +00:23:40.960 --> 00:23:44.240 +Someone is + +00:23:44.240 --> 00:23:47.679 +asking about the + +00:23:47.679 --> 00:23:51.360 +FSF's repository project. Well, + +00:23:51.360 --> 00:23:54.400 +we agreed that there would be another + +00:23:54.400 --> 00:23:55.440 +virtual machine + +00:23:55.440 --> 00:23:59.919 +running one of those for the GNU project, + +00:23:59.919 --> 00:24:15.840 +but that's as far as the discussion went. + +00:24:15.840 --> 00:24:20.480 +Question 17 is extremely insulting! + +00:24:20.480 --> 00:24:25.600 +I have not engaged in sexual harassment, + +00:24:25.600 --> 00:24:28.720 +don't expect me to plead guilty to such + +00:24:28.720 --> 00:24:32.640 +a nasty claim. + +00:24:32.640 --> 00:24:35.600 +People have been accusing me of many + +00:24:35.600 --> 00:24:36.799 +things, + +00:24:36.799 --> 00:24:39.919 +some of which are + +00:24:39.919 --> 00:24:43.120 +basically mole hills and some of which + +00:24:43.120 --> 00:24:44.423 +are false. + +00:24:44.423 --> 00:24:50.640 +So, I'm not going to give them + +00:24:50.640 --> 00:24:53.840 +anything, I have been bullied in a + +00:24:53.840 --> 00:24:59.679 +horrible way, that was wrong. + +00:24:59.679 --> 00:25:02.720 +I would like the bullies to apologize to + +00:25:02.720 --> 00:25:03.520 +me, + +00:25:03.520 --> 00:25:06.320 +and when I see that they're not bullying, + +00:25:06.320 --> 00:25:08.960 +I will forgive them. + +00:25:08.960 --> 00:25:11.279 +I would like to have conversations with + +00:25:11.279 --> 00:25:14.799 +them if any of the mole hills + +00:25:14.799 --> 00:25:17.840 +annoyed someone, I'm happy to talk + +00:25:17.840 --> 00:25:20.880 +with per and thus + +00:25:20.880 --> 00:25:31.120 +help resolve things with peace. + +00:25:31.120 --> 00:25:39.200 +And my opinion on "diversity" within + +00:25:39.200 --> 00:25:42.720 +Emacs. Well, Emacs is + +00:25:42.720 --> 00:25:45.679 +never going to be diverse, it is extended + +00:25:45.679 --> 00:25:49.760 +in one language, Emacs Lisp. + +00:25:49.760 --> 00:25:53.279 +Well, I don't know, we did have an idea + +00:25:53.279 --> 00:25:55.840 +of implementing extensibility using + +00:25:55.840 --> 00:25:58.400 +Scheme and the hope was that Guile + +00:25:58.400 --> 00:26:01.120 +could be integrated with Emacs, that + +00:26:01.120 --> 00:26:02.960 +turned out to be difficult, it may be + +00:26:02.960 --> 00:26:05.279 +impossible but in principle + +00:26:05.279 --> 00:26:07.520 +it might be a good thing, that would be a + +00:26:07.520 --> 00:26:11.039 +small amount of diversity, + +00:26:11.039 --> 00:26:14.960 +but it's not that important. + +00:26:14.960 --> 00:26:16.960 +What I think is really important for + +00:26:16.960 --> 00:26:18.880 +developing Emacs + +00:26:18.880 --> 00:26:22.799 +is to make it do word processing. + +00:26:22.799 --> 00:26:27.039 +I sometimes use LibreOffice, + +00:26:27.039 --> 00:26:30.080 +and yeah I can make it do things. + +00:26:30.080 --> 00:26:32.799 +It has features for WYSIWYG which are + +00:26:32.799 --> 00:26:34.880 +very nice, + +00:26:34.880 --> 00:26:38.000 +but it's in other regards, + +00:26:38.000 --> 00:26:40.400 +it's not Emacs, and it doesn't have the + +00:26:40.400 --> 00:26:42.400 +abilities of Emacs, + +00:26:42.400 --> 00:26:45.600 +and it should. + +00:26:45.600 --> 00:26:48.400 +So, I urge people to work on extending + +00:26:48.400 --> 00:26:49.039 +Emacs + +00:26:49.039 --> 00:26:51.600 +in that direction adding the features + +00:26:51.600 --> 00:27:13.600 +that a word processor has to have. + +00:27:13.600 --> 00:27:17.957 +The last question I can answer is 18. + +00:27:17.957 --> 00:27:21.679 +Yes, it's a very sad thing + +00:27:21.679 --> 00:27:24.960 +how many companies + +00:27:24.960 --> 00:27:28.399 +insist on using non-free software. + +00:27:28.399 --> 00:27:33.200 +Well, I would get a different kind of job, + +00:27:33.200 --> 00:27:36.799 +that's a decision I made many years ago + +00:27:36.799 --> 00:27:40.320 +early in the GNU project, + +00:27:40.320 --> 00:27:42.799 +I decided, I would not… first I would not + +00:27:42.799 --> 00:27:47.679 +get a job developing non-free software. + +00:27:47.679 --> 00:27:50.960 +And later on I decided, + +00:27:50.960 --> 00:27:54.880 +once I could stop using non-free + +00:27:54.880 --> 00:27:57.120 +software, that is once we had + +00:27:57.120 --> 00:28:00.799 +a GNU/Linux system that we could + +00:28:00.799 --> 00:28:08.320 +switch over to and… + +00:28:08.320 --> 00:28:11.679 +Oh, wait. I thought magic wand + +00:28:11.679 --> 00:28:16.240 +time meant it was time to stop, + +00:28:16.240 --> 00:28:21.039 +but now I rather ask the question. + +00:28:27.760 --> 00:28:32.480 +So, what do you do, well, if I were you, + +00:28:32.480 --> 00:28:35.679 +I'd probably not work for any of those + +00:28:35.679 --> 00:28:37.440 +companies. + +00:28:37.440 --> 00:28:39.679 +If I needed to make money, I'd get a job, + +00:28:39.679 --> 00:28:40.799 +but I get some + +00:28:40.799 --> 00:28:43.840 +other kind of job + +00:28:43.840 --> 00:28:48.080 +that didn't involve using software + +00:28:48.080 --> 00:28:51.039 +or that let me choose the + +00:28:51.039 --> 00:28:53.600 +software I would use. + +00:28:53.600 --> 00:28:56.880 +But I would live cheaply, you know, the + +00:28:56.880 --> 00:28:58.000 +less you spend, + +00:28:58.000 --> 00:29:00.640 +the less you need to make and the more + +00:29:00.640 --> 00:29:01.120 +time + +00:29:01.120 --> 00:29:04.720 +you can take away from your paid work + +00:29:04.720 --> 00:29:07.200 +and the more flexibility you have in + +00:29:07.200 --> 00:29:08.640 +which paid work + +00:29:08.640 --> 00:29:13.039 +you can do. Being in a position + +00:29:13.039 --> 00:29:16.399 +to say no to avoid being + +00:29:16.399 --> 00:29:23.679 +desperate to say yes + +00:29:23.679 --> 00:29:27.440 +strengthens your position, + +00:29:27.440 --> 00:29:31.200 +and you need that. One way you can help + +00:29:31.200 --> 00:29:33.279 +do that is by + +00:29:33.279 --> 00:29:36.559 +not having children. Now, that is a + +00:29:36.559 --> 00:29:38.960 +tangent, but it can't be denied that + +00:29:38.960 --> 00:29:41.760 +raising children is very expensive, I + +00:29:41.760 --> 00:29:42.399 +have heard + +00:29:42.399 --> 00:29:45.559 +many people say that they are + +00:29:45.559 --> 00:29:48.080 +uncomfortable with their jobs, + +00:29:48.080 --> 00:29:50.880 +but they have to do those jobs to make + +00:29:50.880 --> 00:29:52.240 +enough money + +00:29:52.240 --> 00:29:55.440 +to support their children. + +00:29:55.440 --> 00:29:59.120 +Well, think about that, be aware + +00:29:59.120 --> 00:30:01.520 +that's likely to happen to you, before + +00:30:01.520 --> 00:30:06.159 +you make that decision. + +00:30:06.159 --> 00:30:13.279 +"What would I change about free software?" + +00:30:13.279 --> 00:30:16.960 +Well, since this is + +00:30:16.960 --> 00:30:20.880 +magic, I would magically find + +00:30:20.880 --> 00:30:25.600 +a way of showing everyone why + +00:30:25.600 --> 00:30:28.000 +most free software needs to be copy + +00:30:28.000 --> 00:30:29.679 +lefted, + +00:30:29.679 --> 00:30:32.480 +so that our community would not + +00:30:32.480 --> 00:30:34.880 +basically + +00:30:34.880 --> 00:30:38.640 +submit to abuse by proprietary software + +00:30:38.640 --> 00:30:45.919 +developers. + +00:30:45.919 --> 00:30:49.760 +Of course, I could go further if I could + +00:30:49.760 --> 00:30:53.279 +magically recruit a hundred thousand + +00:30:53.279 --> 00:30:55.760 +good programmers to do lots of work + +00:30:55.760 --> 00:30:57.919 +improving free software. + +00:30:57.919 --> 00:31:01.039 +We might… Well, if we could do this 20 + +00:31:01.039 --> 00:31:03.279 +years ago, we might have wiped out + +00:31:03.279 --> 00:31:06.559 +non-free systems, and then we wouldn't + +00:31:06.559 --> 00:31:07.200 +have had + +00:31:07.200 --> 00:31:10.320 +horrible things like + +00:31:10.320 --> 00:31:14.480 +World Wide Web DRM, that + +00:31:14.480 --> 00:31:18.000 +no one has the courage to resist + +00:31:18.000 --> 00:31:20.480 +if they're desperately trying to get + +00:31:20.480 --> 00:31:22.640 +money for anything, + +00:31:22.640 --> 00:31:26.240 +and if they need approval of companies, + +00:31:26.240 --> 00:31:29.519 +of the big companies that push for DRM, + +00:31:29.519 --> 00:31:32.960 +then they don't dare even resist as + +00:31:32.960 --> 00:31:38.240 +much as they can resist. + +00:31:38.240 --> 00:31:40.880 +And look what happened to the World Wide + +00:31:40.880 --> 00:31:43.200 +Web consortium, + +00:31:43.200 --> 00:31:47.279 +they surrendered blatantly + +00:31:47.279 --> 00:31:50.399 +and ignominiously by + +00:31:50.399 --> 00:31:55.760 +endorsing the DRM system. + +00:31:55.760 --> 00:31:59.600 +So what can you do? I don't have a magic + +00:31:59.600 --> 00:32:00.880 +wand, + +00:32:00.880 --> 00:32:04.720 +I'm a human being with the capabilities + +00:32:04.720 --> 00:32:09.919 +I have, but the advantage of + +00:32:09.919 --> 00:32:12.840 +great firmness in campaigning for free + +00:32:12.840 --> 00:32:14.000 +software, + +00:32:14.000 --> 00:32:18.240 +and this enables me to do things + +00:32:18.240 --> 00:32:27.679 +that no one else will do. + +00:32:27.679 --> 00:32:30.480 +"What tools from pre-UNIX days do you + +00:32:30.480 --> 00:32:31.519 +miss?" + +00:32:31.519 --> 00:32:34.240 +Well, I don't. I don't think about them + +00:32:34.240 --> 00:32:38.640 +with missing them actually. + +00:32:38.640 --> 00:32:42.080 +It was sort of nice to have + +00:32:42.080 --> 00:32:46.240 +ddt as your login shell. + +00:32:46.240 --> 00:32:49.600 +So, in using modern terminology, + +00:32:49.600 --> 00:32:52.640 +because that meant at any time you could + +00:32:52.640 --> 00:32:55.519 +stop a program, load its debugging symbols, + +00:32:55.519 --> 00:32:57.519 +and start examining the data in the + +00:32:57.519 --> 00:32:58.799 +instructions. + +00:32:58.799 --> 00:33:01.519 +You could debug it that way, and then you + +00:33:01.519 --> 00:33:03.039 +could even + +00:33:03.039 --> 00:33:06.720 +patch in instructions to continue + +00:33:06.720 --> 00:33:09.760 +running that job with the bug fixed, + +00:33:09.760 --> 00:33:11.600 +in fact, you could even do this with the + +00:33:11.600 --> 00:33:13.919 +system kernel, + +00:33:13.919 --> 00:33:16.423 +so that your jobs wouldn't get lost. + +00:33:16.423 --> 00:33:17.840 +I did that + +00:33:17.840 --> 00:33:20.559 +quite a few times, of course, sometimes I + +00:33:20.559 --> 00:33:22.720 +saw what was wrong, and I just had to + +00:33:22.720 --> 00:33:25.919 +fix a piece of data, but sometimes + +00:33:25.919 --> 00:33:28.240 +it took me a long time to figure out how + +00:33:28.240 --> 00:33:29.679 +to get the system to + +00:33:29.679 --> 00:33:32.480 +keep on going. But with the work I had + +00:33:32.480 --> 00:33:34.240 +done, + +00:33:34.240 --> 00:33:39.279 +I didn't want to lose that work, + +00:33:39.279 --> 00:33:41.600 +and, so one of the first features I put + +00:33:41.600 --> 00:33:43.039 +into GNU Emacs was + +00:33:43.039 --> 00:33:47.760 +auto save. + +00:33:47.760 --> 00:33:50.640 +I'm not going to try to figure out + +00:33:50.640 --> 00:33:54.320 +which packages I actually used. + +00:33:54.320 --> 00:33:56.480 +"If I knew, I would get hit by a bus + +00:33:56.480 --> 00:33:59.039 +tomorrow, + +00:33:59.039 --> 00:34:02.320 +say because of a fortune-teller." + +00:34:02.320 --> 00:34:05.039 +No, a fortune-teller doesn't give you any + +00:34:05.039 --> 00:34:06.240 +knowledge, it's just + +00:34:06.240 --> 00:34:10.159 +superstitious hand waving. + +00:34:10.159 --> 00:34:13.760 +So, assuming that I + +00:34:13.760 --> 00:34:16.480 +talked… that I got a reading from a + +00:34:16.480 --> 00:34:18.879 +fortune-teller, which is + +00:34:18.879 --> 00:34:23.119 +implausible enough to begin with, + +00:34:23.119 --> 00:34:25.040 +that wouldn't give me any knowledge + +00:34:25.040 --> 00:34:28.320 +about what was going to happen to me. + +00:34:28.320 --> 00:34:32.879 +Oh, by the way fortune-tellers generally + +00:34:32.879 --> 00:34:34.960 +play back to you facts that they've + +00:34:34.960 --> 00:34:36.879 +discovered about you + +00:34:36.879 --> 00:34:40.480 +together with cold reading, which means, + +00:34:40.480 --> 00:34:43.440 +they say things calculated to make it + +00:34:43.440 --> 00:34:44.639 +appear that they know + +00:34:44.639 --> 00:34:49.119 +more than they do or things that + +00:34:49.119 --> 00:34:52.399 +sound wise to anyone, + +00:34:52.399 --> 00:34:55.679 +so you can say the same thing to, + +00:34:55.679 --> 00:34:58.800 +say, 100 people + +00:34:58.800 --> 00:35:02.000 +and 80 or 90 of them will say, "boy that + +00:35:02.000 --> 00:35:06.480 +was really accurate". + +00:35:06.480 --> 00:35:15.119 +But what if for some reason… + +00:35:15.119 --> 00:35:17.440 +"What advice would I give for + +00:35:17.440 --> 00:35:18.560 +stewardship of + +00:35:18.560 --> 00:35:25.359 +Emacs?" Well, basically focus on + +00:35:25.359 --> 00:35:28.480 +keeping the community strong in + +00:35:28.480 --> 00:35:29.280 +defending + +00:35:29.280 --> 00:35:32.640 +freedom, if you have a choice between + +00:35:32.640 --> 00:35:34.400 +keeping the community strong in + +00:35:34.400 --> 00:35:36.079 +defending freedom + +00:35:36.079 --> 00:35:38.800 +and getting more people to participate + +00:35:38.800 --> 00:35:40.720 +in the development, + +00:35:40.720 --> 00:35:42.890 +you've got to choose the freedom. + +00:35:42.890 --> 00:35:44.400 +It is very + +00:35:44.400 --> 00:35:48.400 +easy for free software projects to + +00:35:48.400 --> 00:35:52.320 +subordinate freedom to other criteria, + +00:35:52.320 --> 00:35:55.359 +and once that happens, it's + +00:35:55.359 --> 00:35:58.079 +easy for those who don't care much about + +00:35:58.079 --> 00:35:58.720 +freedom, + +00:35:58.720 --> 00:36:00.800 +such as, sometimes companies that might + +00:36:00.800 --> 00:36:02.640 +offer you some money + +00:36:02.640 --> 00:36:08.160 +to purchase your soul, + +00:36:08.160 --> 00:36:10.560 +not that there are really things that + +00:36:10.560 --> 00:36:14.240 +exist called souls, it's a metaphor, but + +00:36:14.240 --> 00:36:16.560 +it's an important metaphor for something + +00:36:16.560 --> 00:36:18.800 +important. + +00:36:18.800 --> 00:36:20.880 +People in the community have to be + +00:36:20.880 --> 00:36:24.320 +thinking about freedom + +00:36:24.320 --> 00:36:27.280 +when they make decisions about what is + +00:36:27.280 --> 00:36:31.839 +wise to do. + +00:36:31.839 --> 00:36:36.480 +The decision to set up NonGNU ELPA + +00:36:36.480 --> 00:36:39.357 +has a drawback, it was a compromise. + +00:36:39.357 --> 00:36:41.520 +Now, a lot of people will + +00:36:41.520 --> 00:36:44.560 +tell you that I am uncompromising and + +00:36:44.560 --> 00:36:46.240 +say that, that's a flaw. + +00:36:46.240 --> 00:36:48.720 +Well, they're wrong. I make little + +00:36:48.720 --> 00:36:50.320 +compromises + +00:36:50.320 --> 00:36:53.040 +very often, and occasionally I make a + +00:36:53.040 --> 00:36:55.359 +medium-sized compromise. + +00:36:55.359 --> 00:36:58.880 +The compromise is, in the past we wanted + +00:36:58.880 --> 00:36:59.359 +to get + +00:36:59.359 --> 00:37:01.599 +copyright assignments for the packages + +00:37:01.599 --> 00:37:03.823 +in GNU ELPA, + +00:37:03.823 --> 00:37:06.240 +so that we could move them into + +00:37:06.240 --> 00:37:09.119 +core Emacs, and of course, sometimes we + +00:37:09.119 --> 00:37:11.200 +move packages in the other direction, + +00:37:11.200 --> 00:37:14.480 +that way where we distribute a + +00:37:14.480 --> 00:37:16.160 +given package, + +00:37:16.160 --> 00:37:18.160 +is something we can decide purely + +00:37:18.160 --> 00:37:20.880 +technically. + +00:37:20.880 --> 00:37:25.200 +And however make insisting on getting + +00:37:25.200 --> 00:37:26.800 +copyright assignments for all the + +00:37:26.800 --> 00:37:28.640 +packages in GNU ELPA + +00:37:28.640 --> 00:37:32.079 +meant that we had to say "sorry, no, + +00:37:32.079 --> 00:37:35.119 +we will not install that + +00:37:35.119 --> 00:37:38.560 +package in GNU ELPA, unless the + +00:37:38.560 --> 00:37:40.957 +authors sign copyright assignments". + +00:37:40.957 --> 00:37:44.079 +And sometimes that's a lot of trouble. + +00:37:44.079 --> 00:37:47.520 +Well, NonGNU ELPA + +00:37:47.520 --> 00:37:50.123 +won't require copyright assignments. + +00:37:50.123 --> 00:37:51.520 +If there's a free package, + +00:37:51.520 --> 00:37:54.560 +we can make whatever changes, presumably + +00:37:54.560 --> 00:37:57.200 +small, otherwise, we would probably say + +00:37:57.200 --> 00:38:00.560 +we don't have time, and then + +00:38:00.560 --> 00:38:04.560 +put it in. But it does have the drawback + +00:38:04.560 --> 00:38:05.599 +that, + +00:38:05.599 --> 00:38:07.680 +in general we won't be able to move + +00:38:07.680 --> 00:38:09.119 +those packages + +00:38:09.119 --> 00:38:12.960 +into core Emacs without + +00:38:12.960 --> 00:38:14.960 +getting the legal papers then that we + +00:38:14.960 --> 00:38:20.160 +didn't get before. + +00:38:20.160 --> 00:38:24.320 +"How do you see the future of GNU Emacs?" + +00:38:24.320 --> 00:38:27.599 +I don't see the future. + +00:38:27.599 --> 00:38:29.839 +I used to say that my crystal ball is + +00:38:29.839 --> 00:38:31.680 +cloudy today, + +00:38:31.680 --> 00:38:35.680 +unfortunately, that has another + +00:38:35.680 --> 00:38:38.423 +meaning which is quite ironic. + +00:38:38.423 --> 00:38:41.200 +We certainly don't want + +00:38:41.200 --> 00:38:44.800 +our lives to be + +00:38:44.800 --> 00:38:48.480 +somewhere in a cloud, because + +00:38:48.480 --> 00:38:51.119 +that clouds remind, and then people + +00:38:51.119 --> 00:38:51.599 +start + +00:38:51.599 --> 00:38:54.240 +cheating you and taking advantage of you, + +00:38:54.240 --> 00:38:56.880 +and it's horrible. + +00:38:56.880 --> 00:39:00.160 +But I don't see the future, I just + +00:39:00.160 --> 00:39:02.720 +can be sure from the past that there + +00:39:02.720 --> 00:39:03.839 +will be + +00:39:03.839 --> 00:39:07.599 +challenges where some of the people + +00:39:07.599 --> 00:39:10.720 +involved want to make a big compromise + +00:39:10.720 --> 00:39:12.960 +that isn't worth it, + +00:39:12.960 --> 00:39:16.880 +and they may even get the + +00:39:16.880 --> 00:39:18.079 +impression that it's + +00:39:18.079 --> 00:39:21.200 +up to them. Well, actually + +00:39:21.200 --> 00:39:24.480 +Emacs has appointed maintainers just as + +00:39:24.480 --> 00:39:27.440 +every GNU package does, and they are the + +00:39:27.440 --> 00:39:29.280 +ones in charge of developing that + +00:39:29.280 --> 00:39:30.480 +package, + +00:39:30.480 --> 00:39:34.400 +and this is for a good reason + +00:39:34.400 --> 00:39:38.200 +because the appointed maintainers take + +00:39:38.200 --> 00:39:39.760 +responsibility + +00:39:39.760 --> 00:39:42.240 +to carry out the GNU project policies, + +00:39:42.240 --> 00:39:44.079 +and most important of all + +00:39:44.079 --> 00:39:46.160 +are the ones that make the whole system + +00:39:46.160 --> 00:39:47.520 +work together, + +00:39:47.520 --> 00:39:52.640 +and the ethical standards + +00:39:52.640 --> 00:39:59.920 +to respect freedom and defend freedom. + +00:39:59.920 --> 00:40:02.240 +"Is there any plan to move more packages + +00:40:02.240 --> 00:40:04.960 +from core Emacs into ELPA?" + +00:40:04.960 --> 00:40:08.480 +I don't know + +00:40:08.480 --> 00:40:11.440 +whether there is a plan, I suppose if + +00:40:11.440 --> 00:40:12.720 +there's a plan, + +00:40:12.720 --> 00:40:15.680 +we probably would have done it. If there + +00:40:15.680 --> 00:40:16.960 +had been a plan, + +00:40:16.960 --> 00:40:18.657 +some have been moved. + +00:40:18.657 --> 00:40:20.319 +I don't see this as a + +00:40:20.319 --> 00:40:22.400 +fundamentally important issue, it's a + +00:40:22.400 --> 00:40:24.160 +matter of what's convenient for + +00:40:24.160 --> 00:40:26.640 +the users, and their advantages and + +00:40:26.640 --> 00:40:29.599 +disadvantages to each choice. + +00:40:29.599 --> 00:40:32.800 +"What is your opinion on higher education + +00:40:32.800 --> 00:40:35.760 +requiring non-free software, for + +00:40:35.760 --> 00:40:36.720 +instance…" + +00:40:36.720 --> 00:40:40.400 +Well, I wouldn't + +00:40:40.400 --> 00:40:43.440 +matriculate in a school which did that, + +00:40:43.440 --> 00:40:50.960 +unless I saw a way I could refuse. + +00:40:50.960 --> 00:40:54.960 +Now, of course, I do this + +00:40:54.960 --> 00:40:57.760 +because I can get away with it, and + +00:40:57.760 --> 00:41:00.240 +therefore my doing it is extremely + +00:41:00.240 --> 00:41:04.960 +important to show somebody does resist. + +00:41:04.960 --> 00:41:08.400 +I don't expect most people who support + +00:41:08.400 --> 00:41:09.359 +free school, + +00:41:09.359 --> 00:41:12.319 +who advocate free software to go that + +00:41:12.319 --> 00:41:13.599 +far. + +00:41:13.599 --> 00:41:17.760 +I published an article in the spring + +00:41:17.760 --> 00:41:21.040 +entitled saying no even once + +00:41:21.040 --> 00:41:24.640 +is helping, saying no to non-free + +00:41:24.640 --> 00:41:25.359 +software + +00:41:25.359 --> 00:41:29.040 +even once, because + +00:41:29.040 --> 00:41:32.240 +the more you do it, the more you help, but + +00:41:32.240 --> 00:41:34.640 +even doing it a little in a way that + +00:41:34.640 --> 00:41:36.640 +other people notice, + +00:41:36.640 --> 00:41:39.920 +is starting to help. So, + +00:41:39.920 --> 00:41:43.440 +please don't think that your choices + +00:41:43.440 --> 00:41:45.119 +are either + +00:41:45.119 --> 00:41:48.480 +be as firm and stubborn as I am + +00:41:48.480 --> 00:41:52.240 +or just give up and let yourself drift + +00:41:52.240 --> 00:41:56.240 +helplessly as if you had no volition. + +00:41:56.240 --> 00:41:58.079 +There are a lot of points in between + +00:41:58.079 --> 00:42:00.720 +there, and you can surely + +00:42:00.720 --> 00:42:04.079 +manage to say no some of the time + +00:42:04.079 --> 00:42:07.839 +and show people an example of saying no + +00:42:07.839 --> 00:42:11.040 +some of the time, for instance, you could + +00:42:11.040 --> 00:42:12.720 +say to people, + +00:42:12.720 --> 00:42:15.520 +"You know I hate the fact that my school + +00:42:15.520 --> 00:42:16.000 +makes me + +00:42:16.000 --> 00:42:20.400 +use Zoom, so whenever + +00:42:20.400 --> 00:42:22.240 +I'm not being forced, I'm not going to + +00:42:22.240 --> 00:42:25.760 +use it". + +00:42:25.760 --> 00:42:29.200 +Or "I hate the fact that the only way I + +00:42:29.200 --> 00:42:31.200 +can talk to that group of people + +00:42:31.200 --> 00:42:35.200 +is with Zoom, + +00:42:35.200 --> 00:42:38.400 +but for anything else I will feel better + +00:42:38.400 --> 00:42:40.079 +about myself if I don't". + +00:42:40.079 --> 00:42:42.880 +See, lots of ways to say no some of the + +00:42:42.880 --> 00:42:44.000 +time, + +00:42:44.000 --> 00:42:47.040 +and yield some of the time, + +00:42:47.040 --> 00:42:50.960 +and when you try saying no occasionally, + +00:42:50.960 --> 00:42:53.920 +you may just develop the ability to say + +00:42:53.920 --> 00:42:56.400 +no more often. + +00:42:56.400 --> 00:42:58.800 +Now, whether you would ever get to be as + +00:42:58.800 --> 00:43:00.640 +stubborn as I am? + +00:43:00.640 --> 00:43:04.480 +I don't know, but what I find is that + +00:43:04.480 --> 00:43:08.480 +I like the fact that I've never made + +00:43:08.480 --> 00:43:12.480 +this kind of compromise. + +00:43:12.480 --> 00:43:15.839 +I feel I have a reputation to maintain, + +00:43:15.839 --> 00:43:19.319 +nobody's forcing me, but I get + +00:43:19.319 --> 00:43:21.119 +satisfaction + +00:43:21.119 --> 00:43:24.319 +out of maintaining…, out of being able to + +00:43:24.319 --> 00:43:26.400 +continue to say + +00:43:26.400 --> 00:43:30.880 +I will not. + +00:43:30.880 --> 00:43:34.480 +And that also + +00:43:34.480 --> 00:43:40.480 +can happen at various different levels, + +00:43:40.480 --> 00:43:43.520 +so, you can get that satisfaction + +00:43:43.520 --> 00:43:46.640 +of fully maintaining a refusal + +00:43:46.640 --> 00:43:54.400 +that applies only to certain areas. + +00:43:54.400 --> 00:43:57.040 +(Amin: since it's noon already, let's maybe + +00:43:57.040 --> 00:43:58.880 +take one or two more questions and then + +00:43:58.880 --> 00:43:59.599 +break for + +00:43:59.599 --> 00:44:03.200 +the lunch break) Okay. (Amin: Thank you). + +00:44:03.200 --> 00:44:05.757 +"How often do you personally use Emacs?" + +00:44:05.757 --> 00:44:10.640 +is the lowest question now. + +00:44:10.640 --> 00:44:16.640 +Well, I use it most of the day. + +00:44:16.640 --> 00:44:18.880 +I occasionally do use other things, in + +00:44:18.880 --> 00:44:20.160 +fact, I occasionally edit with + +00:44:20.160 --> 00:44:21.599 +LibreOffice, + +00:44:21.599 --> 00:44:24.240 +I occasionally use media players, + +00:44:24.240 --> 00:44:32.480 +I occasionally ssh to a machine and type + +00:44:32.480 --> 00:44:34.000 +some commands on it, + +00:44:34.000 --> 00:44:35.440 +which occasionally includes running + +00:44:35.440 --> 00:44:42.319 +Emacs on it. + +00:44:42.319 --> 00:44:45.760 +I read PDF files a lot, + +00:44:45.760 --> 00:44:47.520 +would be nice if you could get those + +00:44:47.520 --> 00:44:49.599 +into Emacs, so that I could read them + +00:44:49.599 --> 00:44:52.240 +with Emacs commands, + +00:44:52.240 --> 00:44:55.040 +and I maybe even edit them with the Emacs + +00:44:55.040 --> 00:44:56.160 +commands + +00:44:56.160 --> 00:44:59.440 +when they can be edited. I use + +00:44:59.440 --> 00:45:02.960 +Xournal sometimes + +00:45:02.960 --> 00:45:10.079 +to write on a PDF file. + +00:45:10.079 --> 00:45:12.160 +"Are there any more interesting projects + +00:45:12.160 --> 00:45:13.760 +you have in mind over and above + +00:45:13.760 --> 00:45:18.400 +NonGNU ELPA?" + +00:45:18.400 --> 00:45:22.079 +I can't think of one right now, well, + +00:45:22.079 --> 00:45:25.520 +there are things that + +00:45:25.520 --> 00:45:27.119 +the GNU project needs + +00:45:27.119 --> 00:45:30.560 +doing, there are packages that don't have + +00:45:30.560 --> 00:45:32.319 +maintainers or could use + +00:45:32.319 --> 00:45:35.839 +more maintainers. + +00:45:35.839 --> 00:45:38.880 +Talk with maintainers@gnu.org, + +00:45:38.880 --> 00:45:42.000 +and the assistant GNUisances will + +00:45:42.000 --> 00:45:44.960 +help you find a package where you can do + +00:45:44.960 --> 00:45:48.400 +good. + +00:45:48.400 --> 00:45:50.560 +Not for beginners though, + +00:45:50.560 --> 00:45:52.079 +you got to learn + +00:45:52.079 --> 00:45:55.599 +a substantive substantial level of + +00:45:55.599 --> 00:45:58.160 +capacity to develop and debug programs + +00:45:58.160 --> 00:45:59.440 +before you can + +00:45:59.440 --> 00:46:00.823 +be a maintainer. + +00:46:00.823 --> 00:46:04.480 +"Have I ever looked at Magit?" + +00:46:04.480 --> 00:46:08.400 +No, I haven't, + +00:46:08.400 --> 00:46:11.920 +but I believe + +00:46:11.920 --> 00:46:14.880 +work is being done to get it put into + +00:46:14.880 --> 00:46:16.560 +Emacs, + +00:46:16.560 --> 00:46:22.240 +and at that point I'll give it a try. + +00:46:22.240 --> 00:46:25.200 +I do not want to share my configuration + +00:46:25.200 --> 00:46:29.520 +files they're personal. + +00:46:29.520 --> 00:46:33.599 +How about if we end this now? + +00:46:33.599 --> 00:46:36.880 +(Amin: sounds good to me, + +00:46:36.880 --> 00:46:38.880 +thank you very much Richard for joining + +00:46:38.880 --> 00:46:41.520 +in for live questions.) + +00:46:41.520 --> 00:46:43.839 +Okay. -- cgit v1.2.3