summaryrefslogtreecommitdiffstats
path: root/2019/talks/24.md
diff options
context:
space:
mode:
Diffstat (limited to '2019/talks/24.md')
-rw-r--r--2019/talks/24.md379
1 files changed, 379 insertions, 0 deletions
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 <gregf@gnu.org>
+** 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
+
+ <https://www.gnu.org/gnu/rms-lisp.html>
+** 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
+
+ <https://www.gnu.org/philosophy/free-sw.html>
+** 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
+
+ <https://www.gnu.org/gnu/rms-lisp.html>
+** 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.
+```