From 3d9ad5862f8643861543acb25aa6f97953ad4f0a Mon Sep 17 00:00:00 2001 From: Amin Bandali Date: Sun, 19 Jul 2020 14:54:42 -0400 Subject: 2019/talks/: import the remaining ones adding transcripts on-site when possible --- 2019/talks/24.md | 379 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 379 insertions(+) create mode 100644 2019/talks/24.md (limited to '2019/talks/24.md') diff --git a/2019/talks/24.md b/2019/talks/24.md new file mode 100644 index 00000000..cc909e43 --- /dev/null +++ b/2019/talks/24.md @@ -0,0 +1,379 @@ +[[!meta title="GNU Emacs as software freedom in practice - Greg Farough"]] +[[!meta copyright="Copyright © 2019 Greg Farough"]] + +[[!template id=vid +src="https://mirror.csclub.uwaterloo.ca/emacsconf/2019/emacsconf-2019-24-gnu-emacs-as-software-freedom-in-practice--ggoes.webm" +type="video/webm"]] + +### Download + +- [Video](https://mirror.csclub.uwaterloo.ca/emacsconf/2019/emacsconf-2019-24-gnu-emacs-as-software-freedom-in-practice--ggoes.webm) (720p) + +### Transcript + +```org +* Transcript +First of all, I should give an introduction to myself. I'm Greg +Farough and my talk's going to be about GNU Emacs as an example of +software freedom in practice. That's not practice in the sense of +"training for something," but practice as in enacting the core values +of GNU as a project. + +I'm the campaigns manager at the Free Software Foundation, but this is +not an FSF talk. So all of my opinions are my own. I don't think I'll +be saying anything especially controversial during this -- at least I +hope not. + +I've been an Emacs user since about 2006, when I was age 12. That +does not mean I'm especially good at Emacs. I'm not a programmer. +Not at all, really. My college education was in Ancient Greek, not +computer science. So while I know one or two things about one kind of +lambda, I don't know much at all about the other kind of lambda. My +use of Emacs has always been about cobbling together a lot of +different things from various config files all over the place. It's +been a little hodgepodge over the years. + +So even though I use Emacs for everything, and have used it for such a +long time, it's not something I consider myself a big expert at. Some +proofs I'm not a hacker: first of all, the delay in this presentation. +[Story about breaking laptop shortly before presentation.] So, I +clearly don't have the MIT AI Lab spirits behind me. + +I can't use Org-mode very well (as evidenced by this presentation), +and I still can't record Emacs macros reliably. That's the whole +"-mac" part, right? But I still can't do it. I can write Greek +letters, though, thanks to its brilliant Unicode support. + +But there's a little bit of a catch to that, right? Some of the +earliest Emacs users weren't much of programmers either. + +In his account of his days at the AI Lab and the development of GNU +Emacs, RMS said that "programming new editing commands was so +convenient that even the secretaries in [Bernie Greenberg]'s office +started learning how to use it. They used a manual someone had +written which showed how to extend Emacs, but didn't say it was a +programming. So the secretaries, who believed they couldn't do +programming, weren't scared off. They read the manual, discovered +they could do useful things and they learned to program. + +That's always been an interesting quote to me because it highlights +what I'll call that "mind expansion" moment that I was just talking to +someone about the other day. If you used to typical programs, or +nonfree programs like Microsoft Office, etc., and you go to Emacs, you +think it's this weird, arcane thing and you don't understand why the +"M" actually refers to the "Alt" key on your keyboard. You have to +feel like you're an octopus to use it. + +But most everyone I know that has used Emacs for a long time can point +to one moment where things seemed to "click" for them. They come to +an understanding of Emacs' extensibility for the first time, and are +empowered by all that they suddenly realize they're able to do. And I +mean "empowered" in a very actual sense of empowerment. They're like: +"Wow, I can suddenly do all this stuff! It's incredible that I can do +this with a computer." + +Tangentially, that's something you don't get in [computer literacy] +education that involves proprietary software, because you're learning +to use one "office suite." You're not learning any general purpose +computing concept. I think it's important to mention that when people +come to Emacs they have a moment like: "Oh, my gosh, I'm not terrible +at computers after all. I can actually adapt it to fit my needs!" + +But these people often suffer from impostor syndrome. Sometimes they +never end up considering themselves "real" Emacs users. I'm guilty of +that, even though most people in the FSF office consider me to be the +quintessential Emacs user. I don't feel that way, personally. I've +just slowly accumulated everything into Emacs. It's just taken over +my life gradually. Maybe that's more owing to it than me. But it's +something that's important, especially when you start to think about +contributing to Emacs. You might say, "I can't do anything. My +patches don't matter. They'll reject them," or whatever. That's +something that I feel like we should be counteracting when we talk +about contributing to Emacs. + +I've come up with my own criteria for being an Emacs hacker. If you +have customized Emacs to any degree, to cleverly help it fit your +needs, you are an Emacs hacker. I'm the FSF campaigns manager, and +I'm telling you that right now. If you've had that "Emacs experience" +that I mentioned earlier, you're an Emacs hacker as well. There's no +high barrier of entry. If you enjoy the program, if you enjoy its +incredibly bizarre, arcane, baroque complexity -- great. Hop on board +the Emacs train, because we're happy to have you there. + +Emacs's ability to blow people's minds comes from more than its +sitting on top of a Lisp interpreter. And I think it comes from more +than just its being around for a long time. Software freedom itself +plays a large part of it. I'd argue that its the most crucial reason +for its success. + +How does software freedom help Emacs? Well, the whole "catch" of +Emacs is that anyone and at any time can study and edit the code of +Emacs. Without recompiling it, without doing anything difficult. +That's software freedom #1 in a nutshell, right? The Free Software +Definition calls it, "The freedom to study how the program works, and +change it so it does your computing as you wish (freedom 1). Access +to the source code is a precondition for this." And that says it. +You could write that on the Emacs family crest. You can see all of +the source code; you can edit it at any moment, and that's phenomenal. + +That's a lot of what makes Emacs accessible to people. Once they go +beyond using it and learning certain key commands -- when they +actually start doing that first cool C-x C-e -- and they evaluate +something for the first time, that's a very good feeling. I think of +Emacs being in some ways the "flagship" GNU program. It's not the one +that's the most used by everybody, that's Coreutils or Bash, but it +emphasizes the GNU philosophy in a special way. While it's so gnarly +and crazy, every feature is welcome in it. Even M-x butterfly and the +kitchen sink. The old Emacs logo used to literally be a kitchen sink. + +The only requirement placed on you is to be a good member of the Emacs +community: to share your work back to the community, even if it's not +something that's considered "useful" to the working world, like +implementing a psychotherapist in an underused programming language, +or writing a Tetris clone. That's something that I think could only +happen in a free software environment. Nobody at Microsoft could go, +"Hey! Why don't we add a Rogerian therapist to Microsoft Office +instead of Clippy? That would be a great idea!" That would get shot +down really quickly, I think. + +Another key part of Emacs are the other software freedoms. You can +modify and distribute it. It's extremely difficult to imagine an +Emacs that wasn't modifiable, or where modifiable versions couldn't be +shared back to the community. If at the beginning Emacs had been +licensed permissively, say under the MIT or BSD licenses, something +like this might have happened. We could have had a less wonderful +"core" Emacs. All the good bits like the psychotherapist, and Magit, +and my favorite theme wouldn't have been there if the only free part +of Emacs was its core. Copyleft is very integral to the success of +Emacs, and why it's so unique and widely spread. + +So! Here's a quote about being divided and helpless. + +"This is a matter of the freedom to cooperate. We're used to thinking +of freedom and cooperation with society as if they are opposites. But +here they're on the same side. With free software you are free to +cooperate with other people as well as free to help yourself. With +non-free software, somebody is dominating you and keeping people +divided. You're not allowed to share with them, you're not free to +cooperate or help society, anymore than you're free to help yourself. +Divided and helpless is the state of users using non-free software." + +We've heard multiple times about how that's what it's like to use +nonfree productivity programs in general, and nonfree software in +general. Everything you [would want to add] depends on your sending +an email to a developer saying something like, "Oh, please, please add +this feature for me! I'll give you so much money!" But in the free +software community, just throw it in. It's likely to get included - +if not in ELPA, then in the core Emacs. That's something that's +really cool. + +So we have the GPL, cool. We have Emacs, cool. But what else is +contributing to Emacs's success? There's one license that I haven't +mentioned. I hope it's the most controversial thing I say today, but +maybe it won't be. + +The GNU Free Documentation License has a clause for invariant +sections. That's a section that you can't take out of the +documentation. That pertains to a particular part of the Emacs +documentation: the part describing the motivations describing the GNU +Project, and the origin story of the GNU Project. Due to the GFDL, +every version of Emacs, no matter what operating system it's running +on, no matter whether it's free or nonfree, has included that. The +political "splash screen" Emacs starts up with was many people's +introductions to free software concepts. It was mine. I just saw +this weird, cursive cow logo and said, "Oh, what's this link?" I +clicked it and ended up reading a political manifesto without using +it. + +To paraphrase another quote from RMS's Emacs origin story, "Emacs was +part of an explicit political campaign to make software free." At its +best, Emacs is exactly still that way. + +We need to keep things going. How can we ensure the Emacs spirit +stays with us? I have one or two things that I can recommend. + +First, use copyleft wherever possible. If you write software, please +consider releasing it under the GPL or another strong copyleft license +to benefit the community. After all, this was a core part of Emacs's +success. It doesn't bar you from selling the software. The FSF used +to sell Emacs on reel-to-reel tape for $150 way back in the day. +There are actually some behind me right now, but you can't see them. + +Insist on free software in other areas: in your operating system, in +your phone, even in your GNU/Linux distribution, which may not be +fully free. Nominally, it could be "free software," but don't be +content with 50%, 60%, or even 80%. Always be pushing for the extra +bit to be freed, even if that's a tiny bit at a time, and even if that +seems impossible. With cell phones, right now it seems impossible that +the mobile baseband could be freed. It seems inconceivable. But I +think if we rally everyone together, we could get there. That's a +core element of campaigning for software freedom and what has made +Emacs so successful. It has always strongly pushed the copyleft +philosophy. + +Second, do all that you can do to make the community welcoming. This +includes tolerance of the "non-hacker hackers" like me and many +others, who are not the most technical, but do genuinely love Emacs. +Setting standards for good behavior are a necessary part of this, in +the case of underrepresented groups, and people who feel like the +audience that writes Emacs is not their own. Their contributions are +also extremely valuable, because Emacs could get even more incredible +and strange if it's being contributed to by people who don't share the +same perspective as you or share the same background as you. + +Please support the Free Software Foundation. Not only do because they +pay my salary, but because they write the GPL. They are also the +copyright holder for Emacs, and take its legal protection extremely +seriously. + +Contribute to Emacs, and every other free software project, even +non-GNU projects, as much as you can. No matter what it is, and no +matter how small you think your contribution may be. Chances are, +there's someone that has that one nagging bug; that they're saying, +"if only someone could fix this for me!" I've seen that happen with +Emacs multiple times. It's happened to me. Most recently, Gnus was +always marking my read emails as unread again, and there was nothing I +could do. And then someone ended up fixing it with a single line +commit a few weeks ago. So if you notice anything like that, please +contribute. Every part benefits the community. + +Thanks very much. +``` + +### Slides + +```org +* Slides +** GNU Emacs as software freedom in practice +*** Greg Farough +** What I do +*** Campaigns Manager at Free Software Foundation +*** (Opinions are my own) +*** Emacs user since 2006 (age 12) +** But I'm not really a programmer. +*** My college education was in Ancient Greek, not CS. +*** So while I know one or two things about one kind of lambda, I don't know anything about the real λ we care about. +** Proofs I'm not a hacker +*** I am giving this presentation form a 14 year-old laptop because I broke mine while trying to fix it. +*** I can't use Org-mode well (as evidenced by this presentation). +*** I still can't record Emacs macros reliably. +*** But I can write Greek letters reliably! Έμάκς! +** But there's a catch +** Some of the earliest Emacs users weren't really "programmers" either. + "[P]rogramming new editing commands was so convenient that even the + secretaries in his office started learning how to use it. They + used a manual someone had written which showed how to extend Emacs, + but didn't say it was a programming. So the secretaries, who + believed they couldn't do programming, weren't scared off. They + read the manual, discovered they could do useful things and they + learned to program." - RMS, 'My Lisp Experiences and the + Development of GNU Emacs + + +** Mind-expansion + Most everyone who's been introduced to Emacs has that *one* moment + where things seemed to "click" for them. They come to an + understanding of Emacs' extensibility for the first time, and are + empowered by all that they suddenly realize they're able to do. +** Note on impostor syndrome + But sometimes, these people don't ever consider themselves "real" + Emacs users. I'm guilty of that, even though most people consider + me to be a quintessential Emacs user, as I do everything in it. +** Greg's criteria + If you have customized Emacs to any degree, to cleverly help it fit + your needs, you are an Emacs hacker. + + If you've had that "Emacs experience," you're an Emacs hacker. +** So what does that mean? + Emacs's ability to blow people's minds comes from more than just + Lisp, and more than just its being around for so long. + + Software freedom plays a large part of it: maybe the most crucial + part. +** How does it help Emacs? + The ability for anyone, at any time, to study and alter the code of + the Emacs text editor is software freedom 1. + + "The freedom to study how the program works, and change it so it + does your computing as you wish (freedom 1). Access to the source + code is a precondition for this." - Free Software Definition + + +** Study and share + Being in some ways the "flagship" GNU program, Emacs emphasizes its + core philosophy in a special way. While complex and baroque, every + feature is welcome: even M-x butterfly and the kitchen sink. + + The only requirement placed on you is to be a good member of the + Emacs community: to share your work with us; even if it's the Emacs + psychotherapist, and even if it's M-x tetris. +** Modify and distribute + It's extremely difficult to imagine an Emacs that wasn't + modifiable, or where modifiable versions couldn't be shared. + + If at the beginning Emacs had been licensed permissively, something + like this might have happened. We could have had a less wonderful + "core" Emacs, and all the good bits (like the psychotherapist), + could have been made part of a proprietary distribution. +** "Divided and helpless" + "This is a matter of the freedom to cooperate. We're used to + thinking of freedom and cooperation with society as if they are + opposites. But here they're on the same side. With free software + you are free to cooperate with other people as well as free to help + yourself. With non-free software, somebody is dominating you and + keeping people divided. You're not allowed to share with them, + you're not free to cooperate or help society, anymore than you're + free to help yourself. Divided and helpless is the state of users + using non-free software." RMS, 'My Lisp Experiences and the + Development of GNU Emacs + + +** Spreading the message + OK, great, we have the GPL and we have Emacs. What else has + contributed? + + There's one more license we haven't mentioned. + + And it should be the only controversial thing I bring up today. +** The Manifesto + - The GNU Free Documentation License (GFDL) and its invariant + sections have ensured that the origin story and motivations for + GNU have been included with every version of Emacs -- no matter + what operating system it's running on. + + The political "splash screen" Emacs starts up with was many + people's introductions to free software concepts. Mine, for + example. + + "[Emacs] was part of an explicit political campaign to make + software free." [ED: This is also a quote from 'My Lisp + Experiences and the Development of GNU Emacs.'] +** Keeping things going + How can we ensure that the Emacs spirit stays with us? + + We can recommend a few things. +** Use copyleft wherever possible + If you write software, please consider releasing it under the GPL + or another strong copyleft license to benefit the community. After + all, this was a core part of Emacs's success. + + Insist on free software in other areas: in your operating system, + in your phone, even in your GNU/Linux distribution, which may not + be fully free. Don't be content with 50%, 60%, or even 80%. +** Do all that you can to make the community welcoming + This includes tolerance of the "non-hacker hackers" like me and + many others, who are not the most technical, but do genuinely love + Emacs. + + Setting standards for good behavior -- codes of conduct -- are a + necessary part of this. +** Support + Please support the Free Software Foundation. Not only do we write + the GPL: we are also the copyright holder for Emacs, and take its + legal protection very seriously. + + Contribute to Emacs (and every other free software project!) as + much as you can. No matter what it is, and no matter how small you + think your contribution may be. +** Thanks very much. +``` -- cgit v1.2.3