From 9be9a10f2622086bf086af0ce82a0febed155c7a Mon Sep 17 00:00:00 2001 From: Grant Shangreaux Date: Mon, 28 Dec 2020 19:29:35 -0600 Subject: Add: initial test of jump to timestamp for talk videos - add vidid to the vid template in order to set an id attribute on the video element - add onload event to set main video variable - add test of setting the time in one talk transcript link --- 2020/info/05.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to '2020') diff --git a/2020/info/05.md b/2020/info/05.md index 69af293e..ad57c007 100644 --- a/2020/info/05.md +++ b/2020/info/05.md @@ -1,7 +1,7 @@ # Bard Bivou(m)acs - Building a bandcamp-like page for an album of music Grant Shangreaux -[[!template id=vid src="https://mirror.csclub.uwaterloo.ca/emacsconf/2020/emacsconf-2020--05-bard-bivoumacs-building-a-bandcamp-like-page-for-an-album-of-music--grant-shangreaux.webm" subtitles="/2020/subtitles/emacsconf-2020--05-bard-bivoumacs-building-a-bandcamp-like-page-for-an-album-of-music--grant-shangreaux.vtt"]] +[[!template id=vid vidid="mainVideo" src="https://mirror.csclub.uwaterloo.ca/emacsconf/2020/emacsconf-2020--05-bard-bivoumacs-building-a-bandcamp-like-page-for-an-album-of-music--grant-shangreaux.webm" subtitles="/2020/subtitles/emacsconf-2020--05-bard-bivoumacs-building-a-bandcamp-like-page-for-an-album-of-music--grant-shangreaux.vtt"]] [Download compressed .webm video (20.3M)](https://mirror.csclub.uwaterloo.ca/emacsconf/2020/smaller/emacsconf-2020--05-bard-bivoumacs-building-a-bandcamp-like-page-for-an-album-of-music--grant-shangreaux--vp9-q56-video-original-audio.webm) [View transcript](#transcript) @@ -118,7 +118,8 @@ with Unabridged Software in Lincoln, Nebraska. Long time Emacs user, relatively new Emacs hacker. Hopefully, I'll be able to show you my workflow, with how I publish music with Emacs. All right. -(00:30) So as a musician, I would like to publish my music online. I could +(00:30) +So as a musician, I would like to publish my music online. I could publish with popular online music services, but I'm more of a DIY-type, so I chose to go ahead and publish with Emacs. What's the motivation behind this? A lot of it comes down to some fundamental -- cgit v1.2.3 From 6980ed89cbbe372138167cf1263f154fff67a201 Mon Sep 17 00:00:00 2001 From: Grant Shangreaux Date: Tue, 29 Dec 2020 11:50:05 -0600 Subject: Add: timestamp seek script to main template page, test talk05 links --- 2020/info/05.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to '2020') diff --git a/2020/info/05.md b/2020/info/05.md index ad57c007..db18f39a 100644 --- a/2020/info/05.md +++ b/2020/info/05.md @@ -118,7 +118,7 @@ with Unabridged Software in Lincoln, Nebraska. Long time Emacs user, relatively new Emacs hacker. Hopefully, I'll be able to show you my workflow, with how I publish music with Emacs. All right. -(00:30) +(00:30) So as a musician, I would like to publish my music online. I could publish with popular online music services, but I'm more of a DIY-type, so I chose to go ahead and publish with Emacs. What's the @@ -134,7 +134,8 @@ something that should be shared and should be freely enjoyed by everyone. Of course, artists should be compensated as well, but that's a whole different topic. -(01:39) So when I want to share my music, I want to do it without +(01:39) +So when I want to share my music, I want to do it without impacting anyone's freedom. Using GNU software like Emacs is a good way that I can ensure that I won't be requiring people to sign away their freedoms for anything. There's a lot more I could say about this -- cgit v1.2.3 From dd9c9e4225b220a30c132effba1bca2482dfa8cb Mon Sep 17 00:00:00 2001 From: Grant Shangreaux Date: Tue, 29 Dec 2020 12:09:57 -0600 Subject: Fix: use parsing of html instead of data attribute for timestamp --- 2020/info/05.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to '2020') diff --git a/2020/info/05.md b/2020/info/05.md index db18f39a..78ac43ea 100644 --- a/2020/info/05.md +++ b/2020/info/05.md @@ -118,7 +118,7 @@ with Unabridged Software in Lincoln, Nebraska. Long time Emacs user, relatively new Emacs hacker. Hopefully, I'll be able to show you my workflow, with how I publish music with Emacs. All right. -(00:30) +(00:30) So as a musician, I would like to publish my music online. I could publish with popular online music services, but I'm more of a DIY-type, so I chose to go ahead and publish with Emacs. What's the @@ -134,7 +134,7 @@ something that should be shared and should be freely enjoyed by everyone. Of course, artists should be compensated as well, but that's a whole different topic. -(01:39) +(01:39) So when I want to share my music, I want to do it without impacting anyone's freedom. Using GNU software like Emacs is a good way that I can ensure that I won't be requiring people to sign away -- cgit v1.2.3 From 2a87e229da13ecfd72c4ef72978f2df41da15507 Mon Sep 17 00:00:00 2001 From: Bastien Versini Date: Tue, 29 Dec 2020 22:27:08 +0100 Subject: Answer to 'what is the icon in the address bar?' --- 2020/info/12.md | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to '2020') diff --git a/2020/info/12.md b/2020/info/12.md index b56abe97..d8d077c4 100644 --- a/2020/info/12.md +++ b/2020/info/12.md @@ -44,11 +44,9 @@ etc…) in one single place. ## Do you switch between British and French accents? -## What's the Emacs icon -Browser extension for org-protocol (anyone got the link / name?) is -this or -this - +## What's the Emacs icon in the firefox address bar? +Browser extension for org-protocol made by vifon: + ## How do you feel about archive files in org mode, how can that work in? -- cgit v1.2.3 From db056548315275f8ecba6611c57c053ecfc84fec Mon Sep 17 00:00:00 2001 From: Grant Shangreaux Date: Tue, 29 Dec 2020 21:04:05 -0600 Subject: Add: time links for 2020/info/05.md and fix a typo --- 2020/info/05.md | 38 +++++++++++++++++++++++++------------- 1 file changed, 25 insertions(+), 13 deletions(-) (limited to '2020') diff --git a/2020/info/05.md b/2020/info/05.md index 78ac43ea..0da4c0a6 100644 --- a/2020/info/05.md +++ b/2020/info/05.md @@ -149,7 +149,8 @@ access... All the tools I need are right under my fingertips with this tool that I use every day for a long time. I don't need to look elsewhere. -(02:31) It was a challenge. I wanted to see if I could do this all +(02:31) +It was a challenge. I wanted to see if I could do this all within Emacs itself. So, how do you use Emacs to publish music? Well, for me, I needed a couple of things. I needed to be able to audition and label unlabeled audio tracks. I have a lot of files that I don't @@ -159,7 +160,8 @@ whatever audio format it is and rename the files based on that metadata, potentially. And in the end, I wanted to take those files and programmatically produce a web page for people to consume. -(03:08) I found out that Emacs scores a hundred percent on all of +(03:08) +I found out that Emacs scores a hundred percent on all of these requirements that I had for this, and a lot of that came from EMMS, the Emacs multimedia system. EMMS is great. If you haven't checked it out, please do. It's a little bit unintuitive, but once you @@ -167,7 +169,8 @@ get into it, you know it works. Basically, what EMMS gave me was the ability to listen to the tracks, organize playlists. On top of that, it gave me super-powered metadata authoring. -(03:42) I'm going to demonstrate that to you. So in order to do this, +(03:42) +I'm going to demonstrate that to you. So in order to do this, you have to require markable playlists, so (require 'emms-mark). I'm going to go through, and I'm going to open the red... I've got this. These files here. So you can see these files are mp3s. They're @@ -177,7 +180,8 @@ these files and I can do EMMS add to .., and now they've been loaded into a playlist. So you can see the playlist here. There's some leftover files. -(04:30) So I've got these three files in my playlist, and as +(04:30) +So I've got these three files in my playlist, and as you can see, it's just the file name, the path. I don't have any metadata associated with them. In this playlist, I can hit E, and it'll bring up a buffer showing the tag information that I have. I @@ -195,7 +199,8 @@ had much more than three files to do this with. Submit the changes with C-c C-c, and now we've got the playlist. You can see the artist and track number have been updated here. -(6:15) And then the final piece of this is that if you look at this, +(6:15) +And then the final piece of this is that if you look at this, you can see that the file name is still the same. So if I were looking at the directory, I would still have this file name. When packaging these up for a release, for people to download, it's nice to be able @@ -208,14 +213,16 @@ it--you'll see it's been updated with the artist, track number and track name. This format is a format string, so it's customizable of course. I just decided to go with the default. -(7:21) So that's pretty great, this workflow just with EMMS. I didn't +(7:21) +So that's pretty great, this workflow just with EMMS. I didn't have to do anything. This is all there. It's all built in. It gave me exactly what I was looking for in terms of being able to process a lot of raw audio files add metadata to them and get them ready for publishing. And this is for publishing for playback in any media player. It'll be useful. Not just for the web page that I'm building. -(7:48) So the final part, of course, is to build the web page. Emacs +(7:48) +So the final part, of course, is to build the web page. Emacs makes authoring HTML trivial. As I was going through this, I wanted to challenge myself and just be, like, can I do this just all with Emacs? Can I just make this? I don't need a... I don't need Ruby. I don't @@ -233,7 +240,8 @@ in, you can build some strings together. Here you can see I'm doing a random number, so every time I execute this, my content change. I can generate dynamic content in HTML blocks with Elisp. -(9:04) For my web page builder, It's a little more complex. I'm +(9:04) +For my web page builder, It's a little more complex. I'm pulling data out using EMMS data structures, so it's pulling that out from the track data. And then I'm using some program to generate list elements, so each track is going to have the title and track number, @@ -260,7 +268,8 @@ of of tracks here. It's kind of messy to look at, but this track list, this whole div here, is all generated by my generator code, and it works. It's great. Okay, moving on. -(11:27) So the other thing was that as I was developing this, I +(11:27) +So the other thing was that as I was developing this, I decided to use Org Babel and some of his its features for multi-language things because I needed to style it with CSS and and put actions in Javascript, and also I used SVG for authoring stuff. It @@ -292,14 +301,16 @@ just run org-babel-tangle and get my thing out and just edit one file instead of multiple files. Not for everyone, but I thought it was kind of fun. All right. -(13:45) Oh, and the final thing is that in Emacs, you can author and +(13:45) +Oh, and the final thing is that in Emacs, you can author and view SVG. So this is just an Org. This SVG, I used to make the play and pause buttons. I didn't know this, but if you edit an SVG file, you can toggle back and forth between the code and the image. It's pretty sweet. So I can iteratively work through this because of how Emacs is. -(14:20) Final considerations here, like when doing this, I want it to +(14:20) +Final considerations here, like when doing this, I want it to be all free, so I want to use fonts that use a free license. I found GNU Unifont. It's kind of cool. The content license... I chose Creative Commons Attribution ShareAlike, which is kind of like the @@ -310,13 +321,14 @@ that you can just click or link to a playlist on your favorite player, even EMMS if you want, and then packing up those albums in like a ZIP or .tar file. -(15:04) So you can go to churls.world . It just has a link to this +(15:04) +So you can go to churls.world . It just has a link to this album. I'll display it here in just a second. You can contact me. I'm shoshin on #emacs in IRC and on sourcehut. You can email me grant@churls.world, personal, or grant@unabridgedsoftware.com. All right, now. Let's see about this... This is up online, so if you want to listen to my college band's album from 20 years ago, here it is: -Cassiopeia Basement Days. Whoops. I made this art in Krita. You can +Casiopeia Basement Days. Whoops. I made this art in Krita. You can press play. You can skip around. I do have the playlist up here too. So yeah, thanks for listening. I hope you enjoyed it, and enjoy the rest of EmacsConf. Goodbye! -- cgit v1.2.3 From 6891dbc467940fa6052694e98ef55e07b48a40b9 Mon Sep 17 00:00:00 2001 From: Grant Shangreaux Date: Tue, 29 Dec 2020 21:52:55 -0600 Subject: Add: Q&A video jump to time --- 2020/info/05.md | 35 +++++++++++++++++++++++------------ 1 file changed, 23 insertions(+), 12 deletions(-) (limited to '2020') diff --git a/2020/info/05.md b/2020/info/05.md index 0da4c0a6..6dee63c8 100644 --- a/2020/info/05.md +++ b/2020/info/05.md @@ -5,7 +5,7 @@ Grant Shangreaux [Download compressed .webm video (20.3M)](https://mirror.csclub.uwaterloo.ca/emacsconf/2020/smaller/emacsconf-2020--05-bard-bivoumacs-building-a-bandcamp-like-page-for-an-album-of-music--grant-shangreaux--vp9-q56-video-original-audio.webm) [View transcript](#transcript) -[[!template id=vid src="https://mirror.csclub.uwaterloo.ca/emacsconf/2020/emacsconf-2020--05-bard-bivoumacs-building-a-bandcamp-like-page-for-an-album-of-music--questions--grant-shangreaux.webm" download="Download Q&A video, 720p" subtitles="/2020/subtitles/emacsconf-2020--05-bard-bivoumacs-building-a-bandcamp-like-page-for-an-album-of-music--questions--grant-shangreaux.vtt"]] +[[!template id=vid vidid="qnaVideo"src="https://mirror.csclub.uwaterloo.ca/emacsconf/2020/emacsconf-2020--05-bard-bivoumacs-building-a-bandcamp-like-page-for-an-album-of-music--questions--grant-shangreaux.webm" download="Download Q&A video, 720p" subtitles="/2020/subtitles/emacsconf-2020--05-bard-bivoumacs-building-a-bandcamp-like-page-for-an-album-of-music--questions--grant-shangreaux.vtt"]] [Download compressed Q&A .webm video (15.7M)](https://mirror.csclub.uwaterloo.ca/emacsconf/2020/smaller/emacsconf-2020--05-bard-bivoumacs-building-a-bandcamp-like-page-for-an-album-of-music--questions--grant-shangreaux--vp9-q56-video-original-audio.webm) [View transcript for Q&A](#transcript-questions) @@ -358,7 +358,8 @@ the webcam.) Yeah, okay. (Amin: I'll maximize your webcam.) Okay, thanks. I'll get to the answer for my color theme here in a bit in IRC. -(1:31) Next question on the Etherpad, does this metadata workflow also +(1:31) +Next question on the Etherpad, does this metadata workflow also support unsynchronized lyrics within ID3 tags, multi-line metadata? I don't know, actually. It's funny because I was trying out different things with metadata, and really the biggest thing was to figure out @@ -372,7 +373,8 @@ if you can't do it out of the box, I think you could script EMMS to do that. I'd like to know more, and I'm certainly going to be investigating it. I will try and post my findings somewhere online. -(2:39) Is it possible to import batch metadata? I'm not sure. I would +(2:39) +Is it possible to import batch metadata? I'm not sure. I would guess yes is the answer. EMMS can connect to metadata services. I haven't done that because I was just using audio files that I created myself. I know that on the back end, it calls out to shell programs @@ -382,7 +384,8 @@ I was working with. You can also use tiny tag, and there's some other... That might be the python library. I can't remember. There's two other libraries that I can shell out to for doing metadata. -(3:24) My current workflow for tagging music is to first apply replay +(3:24) +My current workflow for tagging music is to first apply replay gain in fubar 2000, fix egregious mistakes, use beats to apply metadata from music brains, or discogs, go over remaining albums with fubar 2000 again. Is there a chance textual tagging could allow doing @@ -395,7 +398,8 @@ work with text, and being able to use Emacs as a front end for those updates would be really fantastic. So really, it's just a matter of writing the interface to the external tool. -(4:22) Is there a link to some info expanding philosophy of how to +(4:22) +Is there a link to some info expanding philosophy of how to compensate musicians? No, I don't really have a lot of philosophy around that. I guess the first thing I could say would be something like a universal income. I feel like that would solve a lot of @@ -404,12 +408,14 @@ about their pay. I will think about it more. This is one of my first forays into getting public with some of these ideas, so I will try to do more and let the community know. -(4:54) What Emacs theme am I using? Can't remember. It's one of the +(4:54) +What Emacs theme am I using? Can't remember. It's one of the Kaolin themes. I think it was Aurora or or Bubble Gum, maybe, but the Kaolin themes are nice. I recommend them. Not using Doom Emacs, Doom mode line though. It's very pretty. -(5:17) SVG support built into Emacs? I'm using Emacs 27.1, and yes, +(5:17) +SVG support built into Emacs? I'm using Emacs 27.1, and yes, SVG support is built in. I may have had to compile it with some Cairo support. I don't remember for sure. But yes, you can even take screenshots of your Emacs from within Emacs in SVG. It's pretty great. @@ -423,17 +429,20 @@ it's been fun so far. How did I manage? I can post a snippet of that, or actually I can share my screen, can't I... Okay. I actually have it up right here. -(6:49) So I think I got this from alphapapa, to be honest. I define +(6:49) +So I think I got this from alphapapa, to be honest. I define screenshot-svg. It's an interactive command. Oh yeah, there's alphae.papa Okay, there we go. I would like to change this so that I can get it into the copy-paste buffer so I don't have to copy the file in, but I haven't really hacked on it yet. -(7:20) Okay, org heading colors. That might be a good question. I know, the +(7:20) +Okay, org heading colors. That might be a good question. I know, the presentation... Sorry, it's hard to think and type at the same time. Think and talk and type. -(7:41) So the presentation is just a normal org file, right, so I have my +(7:41) +So the presentation is just a normal org file, right, so I have my headers, and the author--you can even stick your email and other headers in there. But there's a package called org-tree-slide. Whoops, why is it not... I must have not required it. Good question. (Amin: @@ -456,7 +465,8 @@ as well, because it's still just an Org document using narrowing, you know. It doesn't actually change anything. Definitely recommend org-tree-slide mode. Okay, let's see, what else... -(10:29) Share my screen to demo. Oh, that's the SVG. Let's see. Okay, so I +(10:29) +Share my screen to demo. Oh, that's the SVG. Let's see. Okay, so I don't know if you can see this now, but I'm actually viewing the SVG screenshot that I took with Emacs. See here's the source of it. So Emacs made that. And here's the image. It's cool because you can even @@ -472,7 +482,8 @@ remembering correctly. I got Emacs 27. I'm not on a Mac. I saw alphapapa's comment on reddit, and then I recompiled it with Cairo support. Yes. -(12:18) Okay, lots of good conversation on here. Yep, I have like one or two +(12:18) +Okay, lots of good conversation on here. Yep, I have like one or two more minutes. Okay I guess while I'm here, I might as well say thank you to the organizers. I really appreciate everybody's work on this. It's fun to be a part of this community. I'm enjoying the other talks -- cgit v1.2.3 From ac4aa51dc0cb2bf6acdd091075bb7b1f3870eb37 Mon Sep 17 00:00:00 2001 From: Grant Shangreaux Date: Tue, 29 Dec 2020 22:02:18 -0600 Subject: Fix: Q&A video links and template error --- 2020/info/05.md | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) (limited to '2020') diff --git a/2020/info/05.md b/2020/info/05.md index 6dee63c8..852caff3 100644 --- a/2020/info/05.md +++ b/2020/info/05.md @@ -5,7 +5,7 @@ Grant Shangreaux [Download compressed .webm video (20.3M)](https://mirror.csclub.uwaterloo.ca/emacsconf/2020/smaller/emacsconf-2020--05-bard-bivoumacs-building-a-bandcamp-like-page-for-an-album-of-music--grant-shangreaux--vp9-q56-video-original-audio.webm) [View transcript](#transcript) -[[!template id=vid vidid="qnaVideo"src="https://mirror.csclub.uwaterloo.ca/emacsconf/2020/emacsconf-2020--05-bard-bivoumacs-building-a-bandcamp-like-page-for-an-album-of-music--questions--grant-shangreaux.webm" download="Download Q&A video, 720p" subtitles="/2020/subtitles/emacsconf-2020--05-bard-bivoumacs-building-a-bandcamp-like-page-for-an-album-of-music--questions--grant-shangreaux.vtt"]] +[[!template id=vid vidid="qnaVideo" src="https://mirror.csclub.uwaterloo.ca/emacsconf/2020/emacsconf-2020--05-bard-bivoumacs-building-a-bandcamp-like-page-for-an-album-of-music--questions--grant-shangreaux.webm" download="Download Q&A video, 720p" subtitles="/2020/subtitles/emacsconf-2020--05-bard-bivoumacs-building-a-bandcamp-like-page-for-an-album-of-music--questions--grant-shangreaux.vtt"]] [Download compressed Q&A .webm video (15.7M)](https://mirror.csclub.uwaterloo.ca/emacsconf/2020/smaller/emacsconf-2020--05-bard-bivoumacs-building-a-bandcamp-like-page-for-an-album-of-music--questions--grant-shangreaux--vp9-q56-video-original-audio.webm) [View transcript for Q&A](#transcript-questions) @@ -358,7 +358,7 @@ the webcam.) Yeah, okay. (Amin: I'll maximize your webcam.) Okay, thanks. I'll get to the answer for my color theme here in a bit in IRC. -(1:31) +(1:31) Next question on the Etherpad, does this metadata workflow also support unsynchronized lyrics within ID3 tags, multi-line metadata? I don't know, actually. It's funny because I was trying out different @@ -373,7 +373,7 @@ if you can't do it out of the box, I think you could script EMMS to do that. I'd like to know more, and I'm certainly going to be investigating it. I will try and post my findings somewhere online. -(2:39) +(2:39) Is it possible to import batch metadata? I'm not sure. I would guess yes is the answer. EMMS can connect to metadata services. I haven't done that because I was just using audio files that I created @@ -384,7 +384,7 @@ I was working with. You can also use tiny tag, and there's some other... That might be the python library. I can't remember. There's two other libraries that I can shell out to for doing metadata. -(3:24) +(3:24) My current workflow for tagging music is to first apply replay gain in fubar 2000, fix egregious mistakes, use beats to apply metadata from music brains, or discogs, go over remaining albums with @@ -398,7 +398,7 @@ work with text, and being able to use Emacs as a front end for those updates would be really fantastic. So really, it's just a matter of writing the interface to the external tool. -(4:22) +(4:22) Is there a link to some info expanding philosophy of how to compensate musicians? No, I don't really have a lot of philosophy around that. I guess the first thing I could say would be something @@ -408,13 +408,13 @@ about their pay. I will think about it more. This is one of my first forays into getting public with some of these ideas, so I will try to do more and let the community know. -(4:54) +(4:54) What Emacs theme am I using? Can't remember. It's one of the Kaolin themes. I think it was Aurora or or Bubble Gum, maybe, but the Kaolin themes are nice. I recommend them. Not using Doom Emacs, Doom mode line though. It's very pretty. -(5:17) +(5:17) SVG support built into Emacs? I'm using Emacs 27.1, and yes, SVG support is built in. I may have had to compile it with some Cairo support. I don't remember for sure. But yes, you can even take @@ -429,19 +429,19 @@ it's been fun so far. How did I manage? I can post a snippet of that, or actually I can share my screen, can't I... Okay. I actually have it up right here. -(6:49) +(6:49) So I think I got this from alphapapa, to be honest. I define screenshot-svg. It's an interactive command. Oh yeah, there's alphae.papa Okay, there we go. I would like to change this so that I can get it into the copy-paste buffer so I don't have to copy the file in, but I haven't really hacked on it yet. -(7:20) +(7:20) Okay, org heading colors. That might be a good question. I know, the presentation... Sorry, it's hard to think and type at the same time. Think and talk and type. -(7:41) +(7:41) So the presentation is just a normal org file, right, so I have my headers, and the author--you can even stick your email and other headers in there. But there's a package called org-tree-slide. Whoops, @@ -465,7 +465,7 @@ as well, because it's still just an Org document using narrowing, you know. It doesn't actually change anything. Definitely recommend org-tree-slide mode. Okay, let's see, what else... -(10:29) +(10:29) Share my screen to demo. Oh, that's the SVG. Let's see. Okay, so I don't know if you can see this now, but I'm actually viewing the SVG screenshot that I took with Emacs. See here's the source of it. So @@ -482,7 +482,7 @@ remembering correctly. I got Emacs 27. I'm not on a Mac. I saw alphapapa's comment on reddit, and then I recompiled it with Cairo support. Yes. -(12:18) +(12:18) Okay, lots of good conversation on here. Yep, I have like one or two more minutes. Okay I guess while I'm here, I might as well say thank you to the organizers. I really appreciate everybody's work on this. -- cgit v1.2.3 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 --- 2020/info/39.md | 2 +- ...u-elpa--questions--richard-stallman-autogen.vtt | 2833 -------------------- ...39-nongnu-elpa--questions--richard-stallman.vtt | 2707 +++++++++++++++++++ 3 files changed, 2708 insertions(+), 2834 deletions(-) delete mode 100644 2020/subtitles/emacsconf-2020--39-nongnu-elpa--questions--richard-stallman-autogen.vtt create mode 100644 2020/subtitles/emacsconf-2020--39-nongnu-elpa--questions--richard-stallman.vtt (limited to '2020') diff --git a/2020/info/39.md b/2020/info/39.md index 459d478d..60d9cbf4 100644 --- a/2020/info/39.md +++ b/2020/info/39.md @@ -4,7 +4,7 @@ Richard Stallman [[!template id=vid src="https://mirror.csclub.uwaterloo.ca/emacsconf/2020/emacsconf-2020--39-nongnu-elpa--richard-stallman.webm" size="282M" subtitles="/2020/subtitles/emacsconf-2020--39-nongnu-elpa--richard-stallman.vtt" duration="6:56"]] [Download compressed .webm video (20.8M)](https://mirror.csclub.uwaterloo.ca/emacsconf/2020/smaller/emacsconf-2020--39-nongnu-elpa--richard-stallman--vp9-q56-video-original-audio.webm) -[[!template id=vid src="https://mirror.csclub.uwaterloo.ca/emacsconf/2020/emacsconf-2020--39-nongnu-elpa--questions--richard-stallman.webm" download="Download Q&A video"]] +[[!template id=vid src="https://mirror.csclub.uwaterloo.ca/emacsconf/2020/emacsconf-2020--39-nongnu-elpa--questions--richard-stallman.webm" size="470M" subtitles="/2020/subtitles/emacsconf-2020--39-nongnu-elpa--questions--richard-stallman.vtt" duration="46:42" download="Download Q&A video"]] [Download compressed Q&A .webm video (44M)](https://mirror.csclub.uwaterloo.ca/emacsconf/2020/smaller/emacsconf-2020--39-nongnu-elpa--questions--richard-stallman--vp9-q56-video-original-audio.webm) diff --git a/2020/subtitles/emacsconf-2020--39-nongnu-elpa--questions--richard-stallman-autogen.vtt b/2020/subtitles/emacsconf-2020--39-nongnu-elpa--questions--richard-stallman-autogen.vtt deleted file mode 100644 index 82fc005a..00000000 --- a/2020/subtitles/emacsconf-2020--39-nongnu-elpa--questions--richard-stallman-autogen.vtt +++ /dev/null @@ -1,2833 +0,0 @@ -WEBVTT - -00:00:00.640 --> 00:00:04.160 -okay so the first question is what is an - -00:00:04.160 --> 00:00:05.680 -example of a car - -00:00:05.680 --> 00:00:08.800 -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 dot 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.e.l - -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:59.760 -isn't the right way to do things oh by - -00:00:59.760 --> 00:01:01.520 -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 uh - -00:01:12.159 --> 00:01:15.040 -and 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 -swl 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 dash star 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 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.e.l 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:16.080 -so it actually runs the same code it - -00:02:16.080 --> 00:02:16.400 -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:28.319 -explicitly - -00:02:28.319 --> 00:02:32.640 -require that require sdl - -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 uh 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.e.l that isn't the same - -00:02:55.360 --> 00:02:57.760 -totally a short 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.e.l available but - -00:03:06.239 --> 00:03:10.319 -uh 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:14.800 -this into - -00:03:14.800 --> 00:03:18.879 -into Emacs in a nice way that - -00:03:18.879 --> 00:03:21.920 -won't make the uh won't make the - -00:03:21.920 --> 00:03:24.560 -maintainer angry - -00:03:24.560 --> 00:03:26.480 -of the mate to the developer of that - -00:03:26.480 --> 00:03:28.159 -package - -00:03:28.159 --> 00:03:32.080 -but we can do it with non-gnu - -00:03:32.080 --> 00:03:34.640 -elpa we can put those two things into - -00:03:34.640 --> 00:03:36.239 -non-gnu 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 non-gdu 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 and - -00:04:04.319 --> 00:04:07.120 -uh 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 -okay good so uh that's one of the issues - -00:04:27.120 --> 00:04:30.479 -uh does non-gnu eopa already exist - -00:04:30.479 --> 00:04:33.840 -or is this a sort of quote 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 -it's 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 -uh this is not supposed to be like the - -00:05:02.800 --> 00:05:04.320 -new 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:43.199 -uh and then uh in - -00:05:43.199 --> 00:05:46.400 -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 uh entrust its development to - -00:06:18.840 --> 00:06:20.400 -them and - -00:06:20.400 --> 00:06:24.800 -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 -uh next question is it possible to work - -00:06:49.599 --> 00:06:51.440 -with the melba 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 -melba 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 -non-gnu 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 non-venue 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 we 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 -non-canoe 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 non-glpa - -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 melba - -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 -uh any thoughts of packages being - -00:08:48.399 --> 00:09:00.959 -added I'm afraid - -00:09:00.959 --> 00:09:05.440 -um - -00:09:05.440 --> 00:09:07.200 -I'm afraid any thoughts of packages - -00:09:07.200 --> 00:09:08.959 -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:16.800 -which means I'm very unlikely to have - -00:09:16.800 --> 00:09:17.680 -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 uh - -00:09:27.760 --> 00:09:29.959 -but this seems to be something about - -00:09:29.959 --> 00:09:31.920 -disregarding licenses - -00:09:31.920 --> 00:09:35.680 -altogether 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:45.600 -software why we have criteria - -00:09:45.600 --> 00:09:48.320 -for which licenses make a program free - -00:09:48.320 --> 00:09:49.519 -software - -00:09:49.519 --> 00:09:52.640 -if the program doesn't carry a license - -00:09:52.640 --> 00:09:55.519 -or if it carries a non-free license that - -00:09:55.519 --> 00:09:56.080 -program - -00:09:56.080 --> 00:09:59.760 -is not free software now you can - -00:09:59.760 --> 00:10:02.839 -maybe get away with disregarding that - -00:10:02.839 --> 00:10:04.800 -fact uh unless - -00:10:04.800 --> 00:10:07.600 -somebody an author or publisher stops - -00:10:07.600 --> 00:10:08.959 -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 uh - -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:30.480 -distributing - -00:10:30.480 --> 00:10:33.519 -it's a terrible idea uh 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:48.640 -and choose good ones to get this - -00:10:48.640 --> 00:10:50.000 -information - -00:10:50.000 --> 00:10:53.440 -look at gnu.org slash licensing - -00:10:53.440 --> 00:10:57.120 -in particular slash licenses - -00:10:57.120 --> 00:10:59.839 -and one page that input that's important - -00:10:59.839 --> 00:11:01.120 -is license - -00:11:01.120 --> 00:11:05.040 -dash 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 dash list dot 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:25.040 -which ones are compatible with the new - -00:11:25.040 --> 00:11:26.160 -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:35.519 -combined together - -00:11:35.519 --> 00:11:40.720 -or linked and - -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:05.600 -oh why do I insist on using per and - -00:12:05.600 --> 00:12:07.519 -purrs - -00:12:07.519 --> 00:12:11.680 -uh 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 him 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 -now I've spelled out all of these points - -00:13:18.000 --> 00:13:22.880 -in a file called stolman.org - -00:13:22.880 --> 00:13:30.120 -articles slash - -00:13:30.120 --> 00:13:31.600 -genderneutrality.html - -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 ex 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:30.800 -that's - -00:14:30.800 --> 00:14:34.320 -rude 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 non your new 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 -maintainers knowledge - -00:15:11.120 --> 00:15:15.279 -of course the packages we would - -00:15:15.279 --> 00:15:18.000 -we would distribute in this way are free - -00:15:18.000 --> 00:15:19.519 -software - -00:15:19.519 --> 00:15:21.920 -everyone is entitled to redistribute - -00:15:21.920 --> 00:15:22.720 -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:45.600 -have some idea to be mere - -00:15:45.600 --> 00:15:49.360 -some obligation to be near 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:10.079 -we have lots of other work to do they - -00:16:10.079 --> 00:16:10.399 -are - -00:16:10.399 --> 00:16:14.000 -clearly experts on the packages they've - -00:16:14.000 --> 00:16:15.600 -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:33.279 -software anyone c is - -00:16:33.279 --> 00:16:36.639 -free to redistribute them and we will do - -00:16:36.639 --> 00:16:41.839 -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 non-gnu - -00:16:56.800 --> 00:17:00.720 -elpa uh we probably - -00:17:00.720 --> 00:17:02.959 -should and this will have to be - -00:17:02.959 --> 00:17:04.959 -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:25.199 -that will take care of the security once - -00:17:25.199 --> 00:17:25.919 -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:43.360 -and uh some of you might be interested - -00:17:43.360 --> 00:17:44.000 -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 -uh what distro do I use - -00:17:52.559 --> 00:17:56.720 -uh well which distro of gnu slash linux - -00:17:56.720 --> 00:17:58.000 -do I use - -00:17:58.000 --> 00:18:03.520 -I use tree scale - -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 slash 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 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 -mac os or whatever vicious thing it - -00:19:03.919 --> 00:19:06.160 -might be - -00:19:06.160 --> 00:19:08.559 -I'd like to I'd like to people to be - -00:19:08.559 --> 00:19:09.760 -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:24.480 --> 00:19:29.039 -uh - -00:19:29.039 --> 00:19:31.360 -so who gets to make the final decision - -00:19:31.360 --> 00:19:32.799 -regarding - -00:19:32.799 --> 00:19:36.640 -non-gnu elpa the - -00:19:36.640 --> 00:19:39.200 -emax maintainers are going to be in - -00:19:39.200 --> 00:19:40.960 -charge of this - -00:19:40.960 --> 00:19:44.480 -but 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:06.400 -and I expect most packages won't have a - -00:20:06.400 --> 00:20:07.440 -problem - -00:20:07.440 --> 00:20:09.919 -and we can just put them in when we get - -00:20:09.919 --> 00:20:11.679 -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 -uh 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.159 -a program is either free or non-free and - -00:20:32.159 --> 00:20:32.960 -we have - -00:20:32.960 --> 00:20:36.480 -clearly stated criteria for that in - -00:20:36.480 --> 00:20:39.679 -gnu.org philosophy slash - -00:20:39.679 --> 00:20:43.039 -free dash sw.html we have the free - -00:20:43.039 --> 00:20:45.360 -software definition - -00:20:45.360 --> 00:20:51.919 -but a site well their 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 uh that doesn't mean linking to it - -00:21:29.600 --> 00:21:33.360 -for 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:21:55.919 -the - -00:21:55.919 --> 00:22:00.080 -link to camel there's - -00:22:00.080 --> 00:22:03.679 -sorry a link in camel dot html - -00:22:03.679 --> 00:22:06.799 -well report it to - -00:22:06.799 --> 00:22:10.880 -uh bug gnu emax reported 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 of pharaoh gpl - -00:22:21.840 --> 00:22:24.559 -for emax packages - -00:22:24.559 --> 00:22:28.880 -yes it is - -00:22:28.880 --> 00:22:31.120 -uh 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 gdu 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 -um 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:28.960 -a - -00:24:28.960 --> 00:24:32.640 -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:46.559 -are false so - -00:24:46.559 --> 00:24:50.640 -uh 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:56.400 -horrible way - -00:24:56.400 --> 00:24:59.679 -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 her and thus - -00:25:20.880 --> 00:25:31.120 -uh help help resolve things with peace - -00:25:31.120 --> 00:25:35.120 -and my opinion on - -00:25:35.120 --> 00:25:39.200 -quote 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:46.480 -in - -00:25:46.480 --> 00:25:49.760 -one language Emacs lisp - -00:25:49.760 --> 00:25:53.279 -well I don't know uh 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 libra office - -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:16.640 -the last question I can answer is - -00:27:16.640 --> 00:27:21.679 -18 but 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 slash linux system that we could - -00:28:00.799 --> 00:28:08.320 -switch over to and uh - -00:28:08.320 --> 00:28:11.679 -oh wait I thought 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:21.039 --> 00:28:27.760 -uh - -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 -I would 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 -uh 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:10.000 -what would I - -00:30:10.000 --> 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 -lifted - -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 -uh 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 -uh 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:06.559 -I have - -00:32:06.559 --> 00:32:09.919 -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:34.880 -with - -00:32:34.880 --> 00:32:38.640 -missing them actually but - -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 lotus 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.640 -so that your jobs wouldn't get lost I - -00:33:16.640 --> 00:33:17.840 -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 gdu Emacs was - -00:33:43.039 --> 00:33:47.760 -auto save - -00:33:47.760 --> 00:33:50.640 -uh I'm not going to try to figure out - -00:33:50.640 --> 00:33:54.320 -which packages I re I actually used - -00:33:54.320 --> 00:33:56.480 -uh 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 -uh 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 uh 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 uh - -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 are - -00:34:49.119 --> 00:34:52.399 -uh that 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 -uh 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:10.400 -but what if for some reason - -00:35:10.400 --> 00:35:15.119 -uh about - -00:35:15.119 --> 00:35:17.440 -what what advice would I give for - -00:35:17.440 --> 00:35:18.560 -stewardship of - -00:35:18.560 --> 00:35:22.079 -Emacs well basically - -00:35:22.079 --> 00:35:25.359 -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:43.839 -you've got to choose the freedom it is - -00:35:43.839 --> 00:35:44.400 -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 devel to set up non-glpa - -00:36:36.480 --> 00:36:39.839 -has a drawback it was a compromise now a - -00:36:39.839 --> 00:36:41.520 -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:02.400 -in gnu - -00:37:02.400 --> 00:37:06.240 -elpa 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 we are 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 packages in - -00:37:35.119 --> 00:37:38.560 -packaging dewey lpa unless the - -00:37:38.560 --> 00:37:41.520 -authors sign copyright assignments and - -00:37:41.520 --> 00:37:44.079 -sometimes that's a lot of trouble - -00:37:44.079 --> 00:37:47.520 -well non-glpa - -00:37:47.520 --> 00:37:50.160 -won't require copyright assignments if - -00:37:50.160 --> 00:37:51.520 -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 but 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 -we 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 gdu Emacs - -00:38:24.320 --> 00:38:27.599 -uh 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:39.040 -meaning which is quite ironic uh we - -00:38:39.040 --> 00:38:41.200 -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 your mind 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 uh 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 some 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 gdu 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 -uh I don't know uh - -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:19.839 -some have been moved I don't see this as - -00:40:19.839 --> 00:40:20.319 -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 -uh 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 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 -uh 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 -uh 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 uh 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 resume but when - -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 -you are now unmuted 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 -citizens uh 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 thank you - -00:44:03.200 --> 00:44:06.000 -how often do you personally use Emacs as - -00:44:06.000 --> 00:44:07.440 -the - -00:44:07.440 --> 00:44:10.640 -lowest question now uh - -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 I - -00:44:24.240 --> 00:44:25.280 -occasionally - -00:44:25.280 --> 00:44:29.040 -uh - -00:44:29.040 --> 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 max - -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 -uh journal 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 -non-gnu elpa uh - -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 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 uh - -00:45:35.839 --> 00:45:38.880 -talk with maintainers at canoe.org - -00:45:38.880 --> 00:45:42.000 -and the assistant candusences 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 you got to get - -00:45:50.560 --> 00:45:52.079 -you got to learn - -00:45:52.079 --> 00:45:55.599 -uh 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:02.800 -be a maintainer uh have I ever looked at - -00:46:02.800 --> 00:46:04.480 -maggot - -00:46:04.480 --> 00:46:08.400 -uh 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:25.760 -files - -00:46:25.760 --> 00:46:29.520 -they're personal but - -00:46:29.520 --> 00:46:33.599 -how about if we end this now - -00:46:33.599 --> 00:46:36.880 -you are now unmuted 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 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 From 32784042c421652386b185bac5d5f4eef0143fb9 Mon Sep 17 00:00:00 2001 From: Bhavin Gandhi Date: Fri, 1 Jan 2021 22:45:45 +0530 Subject: Update organizers-notebook --- 2020/organizers-notebook.md | 75 +++++++++++++++++++++++++++++++++++++++----- 2020/organizers-notebook.org | 5 +-- 2 files changed, 70 insertions(+), 10 deletions(-) (limited to '2020') diff --git a/2020/organizers-notebook.md b/2020/organizers-notebook.md index 107214e8..caffeb40 100644 --- a/2020/organizers-notebook.md +++ b/2020/organizers-notebook.md @@ -1,7 +1,8 @@ [[!toc levels=4]] -[Export and tangle]((progn (org-md-export-to-markdown) (org-babel-tangle))) +- [Export and tangle]((progn (org-md-export-to-markdown) (org-babel-tangle))) +- [Execute buffer]((org-babel-execute-buffer)) # Tasks @@ -42,9 +43,9 @@ I modified the `subed` package to work with VTT files. The modified version is a - [X] sachac <./subtitles/emacsconf-2020--13-experience-report-steps-to-emacs-hyper-notebooks--joseph-corneli-raymond-puzio-cameron-ray-smith-autogen.vtt> - [X] sachac <./subtitles/emacsconf-2020--14-readme-driven-design--adam-ard-autogen.vtt> - [X] sachac <./subtitles/emacsconf-2020--15-moving-from-jekyll-to-orgmode-an-experience-report--adolfo-villafiorita-autogen.vtt> -- [ ] <./subtitles/emacsconf-2020--16-org-roam-presentation-demonstration-and-whats-on-the-horizon--leo-vivier-autogen.vtt> -- [ ] <./subtitles/emacsconf-2020--17-org-mode-and-org-roam-for-scholars-and-researchers--noorah-alhasan-autogen.vtt> -- [ ] <./subtitles/emacsconf-2020--18-org-roam-technical-presentation--leo-vivier-autogen.vtt> +- [X] sachac <./info/16.md> <./subtitles/emacsconf-2020--16-org-roam-presentation-demonstration-and-whats-on-the-horizon--leo-vivier.vtt> +- [X] sachac <./info/17.md> <./subtitles/emacsconf-2020--17-org-mode-and-org-roam-for-scholars-and-researchers--noorah-alhasan.vtt> +- [ ] sachac <./info/18.md> <./subtitles/emacsconf-2020--18-org-roam-technical-presentation--leo-vivier.vtt> - [ ] <./subtitles/emacsconf-2020--19-sharing-blogs-and-more-with-org-webring--brett-gilio-autogen.vtt> - [ ] <./subtitles/emacsconf-2020--20-omg-macros--corwin-brust-autogen.vtt> - [ ] <./subtitles/emacsconf-2020--21-on-why-most-of-the-best-features-in-eev-look-like-5-minute-hacks--eduardo-ochs-autogen.vtt> @@ -64,9 +65,9 @@ I modified the `subed` package to work with VTT files. The modified version is a - [ ] <./subtitles/emacsconf-2020--33-maxima-a-computer-algebra-system-in-emacs--fermin.vtt> - [ ] <./subtitles/emacsconf-2020--34-extend-emacs-to-modern-gui-applications-with-eaf--matthew-zeng-autogen.vtt> - [ ] <./subtitles/emacsconf-2020--35-waveing-at-repetitive-repetitive-repetitive-music-zmusic--questions--zachary-kanfer-autogen.vtt> -- [ ] <./subtitles/emacsconf-2020--38-emacs-development-update--john-wiegley-autogen.vtt> -- [ ] bhavin192 <./subtitles/emacsconf-2020--39-nongnu-elpa--questions--richard-stallman-autogen.vtt> -- [X] bhavin192 <./subtitles/emacsconf-2020--39-nongnu-elpa--richard-stallman-autogen.vtt> +- [ ] bhavin192 <./subtitles/emacsconf-2020--38-emacs-development-update--john-wiegley-autogen.vtt> +- [X] bhavin192 <./subtitles/emacsconf-2020--39-nongnu-elpa--questions--richard-stallman.vtt> +- [X] bhavin192 <./subtitles/emacsconf-2020--39-nongnu-elpa--richard-stallman.vtt> - [ ] <./subtitles/emacsconf-2020--40-closing-remarks-part-1-autogen.vtt> - [ ] <./subtitles/emacsconf-2020--40-closing-remarks-part-2-autogen.vtt> - [ ] <./subtitles/emacsconf-2020--41-opening-remarks-autogen.vtt> @@ -765,7 +766,8 @@ Here's the original version which compresses audio too. Usage: compress-video-co ### Upload to alternative video hosting platforms once main announcement has been out for a few days -Create playlist, too +- Create playlist, too +- Try to do Peertube via Toobnix first (bandali's in charge) ### Add subtitles @@ -804,6 +806,63 @@ and run like this: `fix.py emacsconf-2020--04-music-in-plain-text--jonathan-gregory.sbv`. +### Add transcript sections + + (defvar conf/wiki-directory "~/vendor/emacsconf-wiki" "Directory that has the public conference wiki.") + + (defmacro conf/with-talk-info-file (talk &rest body) + "Evaluate BODY in the info file for TALK. + If TALK is not specified, do it in the current buffer." + (declare (indent 1)) + `(if ,talk + (with-current-buffer + (find-file-noselect + (expand-file-name (format "%d/info/%s.md" conf/year + (plist-get talk :talk-id)) + conf/wiki-directory)) + ,@body) + ,@body)) + + (defun conf/add-transcript (&optional talk) + "Try to add transcript for the current talk." + (interactive) + (conf/with-talk-info-file talk + (goto-char (point-min)) + (let (subtitles subed-auto-find-video all) + (while (re-search-forward "subtitles=\"/\\(.+?\\)\"" nil t) + (setq subtitles (cons (match-string 1) subtitles)) + (when (re-search-forward "^$\\|\\[View transcript" nil t) + (unless (string= (match-string 0) "[View transcript") + (insert + (if (string-match "questions" (car subtitles)) + "[View transcript for Q&A](#transcript-questions)\n" + "[View transcript](#transcript)\n"))))) + (when subtitles + (mapc + (lambda (subtitle-file) + (with-current-buffer (find-file-noselect (expand-file-name subtitle-file conf/wiki-directory)) + (goto-char (point-min)) + (subed-mode) + (let (text) + (while (subed-forward-subtitle-text) + (setq text (cons (subed-subtitle-text) text))) + (setq all (mapconcat 'identity (reverse text) "\n")))) + (if (re-search-forward (format "[ \t]*\n\\([.\r\n]*?\\)" (regexp-quote subtitle-file)) nil t) + (progn + (goto-char (match-beginning 1)) + (delete-region (match-beginning 1) (match-end 1))) + (goto-char (point-max)) + (insert (format "\n\n\n\n" subtitle-file)) + (insert (if (string-match "questions" subtitle-file) + "\n# Transcript: Q&A\n\n" + "\n# Transcript\n\n")) + (save-excursion (insert "\n\n\n"))) + (save-excursion (insert all))) + (reverse subtitles)))))) + + ;; (conf/add-transcript (conf/find-talk "03")), or call from a talk info page + + # Other useful tidbits diff --git a/2020/organizers-notebook.org b/2020/organizers-notebook.org index f4f4b2f3..cf390b1d 100644 --- a/2020/organizers-notebook.org +++ b/2020/organizers-notebook.org @@ -65,8 +65,8 @@ I modified the =subed= package to work with VTT files. The modified version is a - [ ] [[./subtitles/emacsconf-2020--33-maxima-a-computer-algebra-system-in-emacs--fermin.vtt]] - [ ] [[./subtitles/emacsconf-2020--34-extend-emacs-to-modern-gui-applications-with-eaf--matthew-zeng-autogen.vtt]] - [ ] [[./subtitles/emacsconf-2020--35-waveing-at-repetitive-repetitive-repetitive-music-zmusic--questions--zachary-kanfer-autogen.vtt]] -- [ ] [[./subtitles/emacsconf-2020--38-emacs-development-update--john-wiegley-autogen.vtt]] -- [ ] bhavin192 [[./subtitles/emacsconf-2020--39-nongnu-elpa--questions--richard-stallman-autogen.vtt]] +- [ ] bhavin192 [[./subtitles/emacsconf-2020--38-emacs-development-update--john-wiegley-autogen.vtt]] +- [X] bhavin192 [[./subtitles/emacsconf-2020--39-nongnu-elpa--questions--richard-stallman.vtt]] - [X] bhavin192 [[./subtitles/emacsconf-2020--39-nongnu-elpa--richard-stallman.vtt]] - [ ] [[./subtitles/emacsconf-2020--40-closing-remarks-part-1-autogen.vtt]] - [ ] [[./subtitles/emacsconf-2020--40-closing-remarks-part-2-autogen.vtt]] @@ -893,4 +893,5 @@ If TALK is not specified, do it in the current buffer." # org-indent-indentation-per-level: 2 # org-pretty-entities: nil # org-edit-src-content-indentation: 0 +# org-src-preserve-indentation: t # End: -- cgit v1.2.3