1038 lines
42 KiB
Org Mode
1038 lines
42 KiB
Org Mode
#+startup: beamer
|
||
#+TITLE: Adopting Free Software Ideals
|
||
#+AUTHOR: Mike Gerwitz
|
||
#+EMAIL: mtg@gnu.org
|
||
#+DATE: LibrePlanet 2021
|
||
#+OPTIONS: H:3 num:nil toc:nil p:nil todo:nil stat:nil
|
||
#+LaTeX_CLASS: beamer
|
||
#+LaTeX_CLASS_OPTIONS: [presentation,bigger]
|
||
#+BEAMER_THEME: Luebeck
|
||
#+BEAMER_COLOR_THEME: seagull
|
||
#+BEAMER_HEADER: \input{slides-preamble.tex}
|
||
#+TODO: DEVOID(v) LACKING(l) RAW(r) DRAFT(d) AUGMENT(A) REVIEWED(R) | READY(,) REHEARSED(.)
|
||
#+COLUMNS: %40ITEM %10DURATION{:} %8TODO %BEAMER_ENV(ENVIRONMENT)
|
||
|
||
* About :noexport:
|
||
This file represents the source code for the slides for my LibrePlanet 2021
|
||
talk, as well as the notes containing the text I originally intended to
|
||
say. There are a few things to note:
|
||
|
||
- The notes are not /necessarily/ an intended transcript. As it tends to
|
||
be, when I'm in the moment, I may decide to do things slightly differently
|
||
and adapt to the audience. I may also forget something and end up having
|
||
to restructure what I was going to say.
|
||
|
||
- This notes have not been updated to include what I did actually say. I
|
||
hope to provide a transcript in the future.
|
||
|
||
- The checklists contain my original intent for this talk; I didn't purge
|
||
what I didn't get to.
|
||
|
||
- See [[*Exporting]] for information on how to build the slides.
|
||
|
||
* Project Notes :noexport:
|
||
These notes serve as a reification of thoughts; means of organization and
|
||
balance between the three groups; and a checklist to guide the development
|
||
of the talk.
|
||
|
||
** Topics
|
||
*** All [6/8]
|
||
- [X] What ideals am I speaking of?
|
||
- [X] Be honest with yourself when you don't meet your ideals. Do not dilute
|
||
them, so that you can continue to work toward them. Do not be complacent
|
||
in your compromises.
|
||
- [X] Set your goals high and know that you will /fail to meet them/ for
|
||
some time. Keep at it.
|
||
- [X] By not admitting our faults, we set unattainable standards that drive
|
||
others away from our community.
|
||
- [X] The below three groups of roles are often blurred. Distinguish them
|
||
throughout the talk.
|
||
- [ ] Confirmation bias.
|
||
- [X] Impracticality is a self-fulfilling prophecy.
|
||
- [ ] Move forward.
|
||
|
||
*** Activist/Advocate [9/14]
|
||
- [X] My computing is unrelatable and impractical to others.
|
||
- [X] My ability to be free is in part a matter of privilege (knowledge and
|
||
money). What good are freedoms that others cannot enjoy?
|
||
- Ex: my not running JS and still being able to use the web.
|
||
- [X] We need advocates deep in communities that many of us do not
|
||
participate in, and we need to engage with those advocates, not reject
|
||
them as "open source" enthusiasts.
|
||
- [X] Are you advocating or just bragging? One of those is not necessarily
|
||
effective and could alienate or turn off others to our ideals. It doesn't
|
||
help hearing all the ways that you're right and I'm wrong.
|
||
- [ ] Waiting for everyone to realize you're right, as if the world will
|
||
change around you.
|
||
- [X] Do not victim-blame (no shaming users of non-free software).
|
||
- [X] Many users do not care about or understand the need for software
|
||
freedom. We need to be able to relate it in practical terms.
|
||
- [ ] Indoctrination in cynicism and purity.
|
||
- [ ] The concept of user freedom naturally extends to other fields,
|
||
including SaaS, DRM, privacy, security, and human rights. But we have to
|
||
be careful as a community not to adopt too many principles and alienate
|
||
those who may otherwise agree with us.
|
||
- [ ] Situational awareness: sometimes you should be an advocate instead of
|
||
an activist.
|
||
- [X] Offering someone new to free software old hardware that isn't even
|
||
fully functional (e.g. S3 with Replicant) is out of touch with reality.
|
||
- [X] Kids' games and their understanding of freedom.
|
||
- [ ] Speak out against objectionable and incorrect metaphors
|
||
- [X] People and organizations are approached by many different types of
|
||
advocates with many different types of agendas, some of them in conflict
|
||
with one-another. People only have so much bandwidth, and cannot please
|
||
everyone.
|
||
|
||
*** Developer/Distributor [2/2]
|
||
- [X] Free software should promote /practical/ freedoms---they should be /designed/ for study and modification without having to deeply understand
|
||
the system at every level. Lower the barrier to entry.
|
||
- [X] Choice of GPL as a form of advocacy.
|
||
|
||
*** User [7/11]
|
||
- [X] Cognitive dissonance.
|
||
- [ ] Users can be advocates whether they realize it or not by setting an
|
||
example for others and helping to develop social and cultural norms.
|
||
- [ ] Using non-free software /can/ be a form of anti-advocacy or a
|
||
repudiation of ideals if you encourage others to do so as well.
|
||
- [X] There is not always a free replacement available, or the replacement
|
||
may not be practical for certain users.
|
||
- [X] Certain software has a cultural aspect---using a free replacement may
|
||
not fill that gap. Games using well-known characters or storylines are an
|
||
example. Social media is another. That barrier is high, since change
|
||
involves not just oneself, but others in the community to adopt similar
|
||
changes and ideals.
|
||
- [X] Freedom is not all-or-nothing. Work toward it incrementally.
|
||
- [X] If freedom is put above all else, sometimes it requires
|
||
sacrifice. But that should not be /expected/---that's a personal decision.
|
||
- [X] Don't feel bad or make excuses when ideals aren't met---be /proud/ of
|
||
how far you've gotten, and keep at it.
|
||
- [X] The FSF, GNU, and others provide a clear objective and guidance, but
|
||
what of the /transition/, which involves a mix of free and non-free?
|
||
- [ ] Using non-free software on behalf of an employer
|
||
- [ ] Is there a difference in freedom lost between SaaS and ephemeral
|
||
software (e.g. a webpage you'll only visit once)? How about related
|
||
issues like privacy and security?
|
||
|
||
|
||
* REHEARSED Slides [6/6]
|
||
:PROPERTIES:
|
||
:ID: slides
|
||
:END:
|
||
** REHEARSED Summary :noexport:
|
||
#+BEGIN: columnview :hlines 2 :maxlevel 3 :indent t :id slides
|
||
| ITEM | DURATION | TODO | ENVIRONMENT |
|
||
|----------------------------------------+----------+-----------+-------------|
|
||
| Slides | 0:36:19 | REHEARSED | |
|
||
|----------------------------------------+----------+-----------+-------------|
|
||
| \_ Summary | | REHEARSED | |
|
||
|----------------------------------------+----------+-----------+-------------|
|
||
| \_ Introduction | 0:02:10 | REHEARSED | |
|
||
| \_ Spoken Intro | 00:01:30 | REHEARSED | note |
|
||
| \_ Ideals | 00:00:40 | REHEARSED | fullframe |
|
||
|----------------------------------------+----------+-----------+-------------|
|
||
| \_ Perspective | 0:10:00 | REHEARSED | |
|
||
| \_ Black Boxes | 00:01:15 | REHEARSED | fullframe |
|
||
| \_ The First Hurdle | 00:03:00 | REHEARSED | fullframe |
|
||
| \_ Unrelatable | 00:03:00 | REHEARSED | fullframe |
|
||
| \_ Change | 00:01:30 | REHEARSED | fullframe |
|
||
| \_ Journeys Have A Beginning | 00:01:15 | REHEARSED | fullframe |
|
||
|----------------------------------------+----------+-----------+-------------|
|
||
| \_ My Story | 0:12:40 | REHEARSED | |
|
||
| \_ My Journey | 00:00:40 | REHEARSED | fullframe |
|
||
| \_ Discovery | 00:03:45 | REHEARSED | fullframe |
|
||
| \_ Practicality | 00:01:45 | REHEARSED | fullframe |
|
||
| \_ Copyleft and Advocacy | 00:01:50 | REHEARSED | fullframe |
|
||
| \_ Barrier to Entry | 00:01:00 | REHEARSED | fullframe |
|
||
| \_ Wifi | 00:02:20 | REHEARSED | fullframe |
|
||
| \_ Impact of Gaming | 00:01:20 | REHEARSED | fullframe |
|
||
|----------------------------------------+----------+-----------+-------------|
|
||
| \_ Social Complexities | 0:09:30 | REHEARSED | |
|
||
| \_ Brand Recognition and Trademarks | 00:01:00 | REHEARSED | fullframe |
|
||
| \_ Culture | 00:02:00 | REHEARSED | fullframe |
|
||
| \_ Balancing Ideals | 00:03:00 | REHEARSED | fullframe |
|
||
| \_ Moral Judgment | 00:02:00 | REHEARSED | fullframe |
|
||
| \_ Hold Ideals Strong | 00:01:30 | REHEARSED | fullframe |
|
||
|----------------------------------------+----------+-----------+-------------|
|
||
| \_ Conclusion | 0:02:00 | REHEARSED | |
|
||
| \_ Quell Anger | 00:00:30 | REHEARSED | fullframe |
|
||
| \_ Unless | 00:01:30 | REHEARSED | fullframe |
|
||
|----------------------------------------+----------+-----------+-------------|
|
||
| \_ Questions? | | | frame |
|
||
|----------------------------------------+----------+-----------+-------------|
|
||
| \_ Thank You | | | fullframe |
|
||
#+END:
|
||
|
||
** REHEARSED Introduction [2/2]
|
||
*** REHEARSED Spoken Intro :B_note:
|
||
:PROPERTIES:
|
||
:BEAMER_env: note
|
||
:DURATION: 00:01:30
|
||
:END:
|
||
|
||
- Introduction
|
||
- Software engineer, hacker at heart.
|
||
- Assistant GNUisance; GAC.
|
||
- But not speaking on behalf of the GNU Project.
|
||
- But I'm coming to you today primarily as an activist for user freedom.
|
||
|
||
- While I am an activist, and I'll be giving advice to others like me, I'm
|
||
also a user and author of free software.
|
||
- I'd say a user foremost, since that's what I do each and every day---use
|
||
free software.
|
||
- But it took me a long time to get where I am today.
|
||
- And it wasn't easy.
|
||
- Us activists try to put on a straight face and paint a positive picture
|
||
of everything. Neglect inconvenient truths.
|
||
- But my not admiting to our faults, we risk setting unattainable
|
||
standards that may drive others away from our movement.
|
||
- And that's really what this talk is about---those hard problems of
|
||
software freedom. The process of adopting those ideals and
|
||
incorporating them into your own life. Ascribing them meaning and
|
||
identity within the context of all of the other things that are
|
||
important to you. And maybe then advocating for those ideals.
|
||
|
||
|
||
*** REHEARSED Ideals :B_fullframe:
|
||
:PROPERTIES:
|
||
:BEAMER_env: fullframe
|
||
:DURATION: 00:00:40
|
||
:END:
|
||
|
||
#+BEAMER: \fullslidetext
|
||
Run, Study, Modify, Share
|
||
|
||
**** READY Notes :B_noteNH:
|
||
:PROPERTIES:
|
||
:BEAMER_env: noteNH
|
||
:END:
|
||
|
||
- But first: what ideals am I talking about?
|
||
- Within the context of free software, I'm referring to the four freedoms.
|
||
- The freedom to run, study, modify, and share software with others.
|
||
- We repeat these freedoms again and again, but what do they /really/
|
||
mean?
|
||
- We reject being controlled by those who write software. We believe that
|
||
everyone should be free to do their own computing in a manner that /they/ see fit. How they please. Not how someone else pleases.
|
||
|
||
** REHEARSED Perspective [5/5]
|
||
*** REHEARSED Black Boxes :B_fullframe:
|
||
:PROPERTIES:
|
||
:BEAMER_env: fullframe
|
||
:DURATION: 00:01:15
|
||
:END:
|
||
|
||
#+BEAMER: \fullslidetext
|
||
Magical Black Boxes
|
||
|
||
#+BEAMER: \fullsubtext
|
||
(Computer Literacy)
|
||
|
||
**** REHEARSED Notes :B_noteNH:
|
||
:PROPERTIES:
|
||
:BEAMER_env: noteNH
|
||
:END:
|
||
|
||
- This isn't an easy concept to grasp for many people.
|
||
- Users look at devices like magic black boxes.
|
||
- They don't understand how the apps they use and the underlying operating
|
||
system works.
|
||
- Lack of computer literacy in our cultures.
|
||
- An app a program, and a program is a sequence of instructions for a
|
||
computer that someone else wrote. Someone else is instructing your
|
||
computer what to do.
|
||
- And since computers and devices are effectively extensions of people,
|
||
they determine what we can and cannot do. How we can and cannot
|
||
act. What we can and cannot see.
|
||
|
||
*** REHEARSED The First Hurdle :B_fullframe:
|
||
:PROPERTIES:
|
||
:BEAMER_env: fullframe
|
||
:DURATION: 00:03:00
|
||
:END:
|
||
|
||
#+BEAMER: \fullslidetext
|
||
``I love the concept of free software''
|
||
|
||
|
||
**** REHEARSED Notes :B_noteNH:
|
||
:PROPERTIES:
|
||
:BEAMER_env: noteNH
|
||
:END:
|
||
|
||
- I want to tell you something my wife told me just a few weeks ago.
|
||
- Nurse, shoutout to helthcare professionals holding our society together
|
||
during the pandemic.
|
||
- "Love the concept of free software"
|
||
- That's a really powerful message.
|
||
- Of all my coworkers and interviews, I haven't heard such a direct
|
||
statement from anyone in my professional circle.
|
||
- /Some/ people know about free software, but usually in terms of "open
|
||
source".
|
||
- Yet this nontechnical person is aware of these concepts.
|
||
- I assume he's non-technical because he continued to lament how a system
|
||
comes installed with Chrome and he isn't sure how to uninstall it.
|
||
- This is one of the hardest parts of my activism! To try to get people to
|
||
internalize our ideals and understand why the are important.
|
||
- And yet, he's already done that. He's cleared the first major hurdle.
|
||
|
||
*** REHEARSED Unrelatable :B_fullframe:
|
||
:PROPERTIES:
|
||
:BEAMER_env: fullframe
|
||
:DURATION: 00:03:00
|
||
:END:
|
||
|
||
#+BEAMER: \fullslidetext
|
||
Unrelatable
|
||
|
||
**** REHEARSED Notes :B_noteNH:
|
||
:PROPERTIES:
|
||
:BEAMER_env: noteNH
|
||
:END:
|
||
|
||
- It's interesting to me how my activism was more effective through her
|
||
unintentional advocacy.
|
||
- Why is that?
|
||
- Certainly part of it is because she was there and I wasn't.
|
||
- The more people that can advocate on our behalf, the fewer places we
|
||
have to be.
|
||
- But there's a more fundamental reason.
|
||
- Compare: community members and vaccine hesitancy.
|
||
- Being able to relate culturally
|
||
- My computing with an X200 using Libreboot and Guix System.
|
||
- My use of Replicant and its issues
|
||
- Not running JavaScript on webpages.
|
||
- But I'm still able to use parts of the web despite that by privilege
|
||
of my technical knowledge, something that your average user cannot
|
||
do.
|
||
- The way I do my computing is unrelatable.
|
||
- And I lament that I cannot recommend my own practices to others.
|
||
|
||
*** REHEARSED Change :B_fullframe:
|
||
:PROPERTIES:
|
||
:BEAMER_env: fullframe
|
||
:DURATION: 00:01:30
|
||
:END:
|
||
|
||
#+BEAMER: \fullslidetext
|
||
Many People Don't Like Change
|
||
|
||
#+BEAMER: \fullsubtext
|
||
(That Includes Me)
|
||
|
||
**** REHEARSED Notes :B_noteNH:
|
||
:PROPERTIES:
|
||
:BEAMER_env: noteNH
|
||
:END:
|
||
|
||
- Wife doesn't even use free software herself
|
||
- Aware of the concepts.
|
||
- Doesn't like that people have control over her computing, but doesn't
|
||
like change.
|
||
- It's not enough to change how she does her computing. Yet.
|
||
- Compare: both of us want to be vegan, and we don't need convincing, but
|
||
haven't done it after years.
|
||
- That's how my wife thinks about software freedom.
|
||
|
||
*** REHEARSED Journeys Have A Beginning :B_fullframe:
|
||
:PROPERTIES:
|
||
:BEAMER_env: fullframe
|
||
:DURATION: 00:01:15
|
||
:END:
|
||
|
||
#+BEAMER: \fullslidetext
|
||
Every Journey Has A Beginning
|
||
|
||
#+BEAMER: \fullsubtext
|
||
(And Not Every Journey Has An End)
|
||
|
||
**** REHEARSED Notes :B_noteNH:
|
||
:PROPERTIES:
|
||
:BEAMER_env: noteNH
|
||
:END:
|
||
|
||
- When you've been familiar with software freedom for a long time, it's easy
|
||
to forget where you came from.
|
||
- It's like that with most things.
|
||
- In my profession, I suffer from being unable to think like a
|
||
beginner. Missing the obvious. I've become myopic.
|
||
|
||
- But to get from A to Z is a /process/. It's a journey, that takes time
|
||
and effort and, in the case of software freedom, completely changing how
|
||
one does their computing.
|
||
- Changing how one perceives the world.
|
||
- How one lives their life.
|
||
- It doesn't just happen.
|
||
|
||
- Further, we're always evolving.
|
||
- The goalposts of software freedom are always moving, as more and more
|
||
things become possible.
|
||
- It didn't used to be possible to run a free BIOS, for example. Now it
|
||
is. The goal has shifted.
|
||
|
||
** REHEARSED My Story [7/7]
|
||
*** REHEARSED My Journey :B_fullframe:
|
||
:PROPERTIES:
|
||
:BEAMER_env: fullframe
|
||
:DURATION: 00:00:40
|
||
:END:
|
||
|
||
#+BEAMER: \fullslidetext
|
||
The year was 1999...
|
||
|
||
**** REHEARSED Notes :B_noteNH:
|
||
:PROPERTIES:
|
||
:BEAMER_env: noteNH
|
||
:END:
|
||
|
||
- I didn't start out with free software.
|
||
- I grew up with Windows as a kid.
|
||
- I even started learning programming, about 20 years ago now, when I was
|
||
10, using a proprietary language---Microsoft's Visual Basic 6.
|
||
- As a kid, I did what kids to best, which is mimic. I sought to follow
|
||
the example of the world that was around me.
|
||
- I learned to exercise control over the user. Introduce quotas. License
|
||
keys. Direct the user in ways that I wanted the user to act.
|
||
|
||
*** REHEARSED Discovery :B_fullframe:
|
||
:PROPERTIES:
|
||
:BEAMER_env: fullframe
|
||
:DURATION: 00:03:45
|
||
:END:
|
||
|
||
#+BEAMER: \fullslidetext
|
||
A Noise and A Bubble
|
||
|
||
**** REHEARSED Notes :B_noteNH:
|
||
:PROPERTIES:
|
||
:BEAMER_env: noteNH
|
||
:END:
|
||
|
||
- But I don't have time to go into my whole life's story.
|
||
- So how did I first discover the concept of software freedom?
|
||
- But at some point, the laptop I was using, which was running Windows,
|
||
experienced hard drive issues.
|
||
- For those who don't know, hard drives contain spinning metal platters.
|
||
- It started making a grinding noise.
|
||
- I needed a way to use my system while I waited for a new hard drive, so
|
||
and I found that GNU/Linux distros have bootable live CDs, which ran in
|
||
memory, and so I could use without a hard drive.
|
||
|
||
- I was fascinated by the level of customization that could be performed,
|
||
and I started digging into the OS a bit more.
|
||
|
||
- One of the games I really liked on the system was Frozen Bubble. It was a
|
||
lot alike another non-free game I had played on Windows.
|
||
- And part of what happened next may have been a little bit of luck.
|
||
- Because a lot of games are compiled into machine code, just like on
|
||
Windows, but in a different format---ELF instead of EXE.
|
||
- But Frozen Bubble was different. When I opened the executable file, I
|
||
saw source code!
|
||
- Not minified or obfuscated source code. Actual, formatted source code
|
||
with sensible function and variable names, and comments. Source code
|
||
that looked like the preferred form of modifying the program.
|
||
- I was in excited disbelief. This was so different than what I was used
|
||
to on Windows. The operating system not only game with games, but came
|
||
with the source code!?
|
||
- Frozen Bubble is written in Perl, which is an interpreted language. I
|
||
didn't know Perl, but I decided to try to make some small
|
||
changes. Surely I was wrong. Surely I was missing /something/.
|
||
- But no. I relaunched the game and there my change was! I could modify
|
||
the game as I pleased! I was amazed. I felt empowered. I felt this
|
||
overwhelming sense of excitement.
|
||
- I wanted to know more. Why did the developer decide to do this?
|
||
- At the top of a file was the copyright header. Now, I didn't know
|
||
anything of software licensing at the time beyond the licenses designed
|
||
to /restrict/ users. To tell them what they /cannot do/.
|
||
- But this license appeared to be different.
|
||
- The license, its stated, was the GNU General Public License version 2,
|
||
published by the Free Software Foundation.
|
||
- It said that I'm free to redistribute it and/or modify it.
|
||
- So it wasn't just that I could /technically/ modify it---the author
|
||
was /encouraging/ me to do so!
|
||
- And while my memory is a bit blurry on the details, that marked the
|
||
beginning of my journey.
|
||
- I began to look into the GNU Project and the FSF and the philosophy
|
||
behind free software.
|
||
|
||
*** REHEARSED Practicality :B_fullframe:
|
||
:PROPERTIES:
|
||
:BEAMER_env: fullframe
|
||
:DURATION: 00:01:45
|
||
:END:
|
||
|
||
#+BEAMER: \fullslidetext
|
||
Practical Practicality
|
||
|
||
|
||
**** REHEARSED Notes :B_noteNH:
|
||
:PROPERTIES:
|
||
:BEAMER_env: noteNH
|
||
:END:
|
||
- So I had unlearning to do myself, as both a user and as a software
|
||
developer.
|
||
- I didn't have anyone to help to guide me.
|
||
- I did have the FSF and GNU to serve as a beacon of light. As an
|
||
anchor. A lighthouse, as Snowden put it.
|
||
- It gave me something to work toward. To constantly improve upon.
|
||
- But it didn't give me advice that was /practical/ at the time.
|
||
- And that's setting off alarm bells for certain people, so let me
|
||
explain.
|
||
|
||
- People often say that free software isn't practical.
|
||
- Not just opponents, but also users who /want/ to use free software.
|
||
- We counter, saying we've done it. Clearly I have. Clearly this
|
||
conference has. We're doing it now, as we speak.
|
||
- But are we trying to help, begin defensive, or just bragging?
|
||
- We have to be careful no to dismiss users' legitimate concerns.
|
||
- I just mentioned how my computing today is not relatable, right?
|
||
- What I consider to be practical for myself is absolutely not practical
|
||
to someone without the requisite understanding.
|
||
|
||
- Someone saying that they're already there---that they have
|
||
freedom---isn't necessarly helpful
|
||
- I know the goal. Help me get to where you are.
|
||
- Don't just dismiss me.
|
||
|
||
- We have to be practical about what we consider to be practical for other
|
||
users, especially those less experienced than us.
|
||
- Keep that in mind. We'll continue to explore that concept as we go.
|
||
|
||
*** REHEARSED Copyleft and Advocacy :B_fullframe:
|
||
:PROPERTIES:
|
||
:BEAMER_env: fullframe
|
||
:DURATION: 00:01:50
|
||
:END:
|
||
|
||
#+BEGIN_CENTER
|
||
#+ATTR_LATEX: :height 1.5in
|
||
[[./images/tp/copyleft.png]]
|
||
#+END_CENTER
|
||
|
||
|
||
**** REHEARSED Notes :B_noteNH:
|
||
:PROPERTIES:
|
||
:BEAMER_env: noteNH
|
||
:END:
|
||
|
||
- Now, I want to pause there for a moment.
|
||
- We touched on the ideals of software freedom previously.
|
||
- But how is that actually enforced?
|
||
- Software is covered by Copyright law. Copyright grants a rather long
|
||
monopoloy over the ability to, well, make copies of the work. By
|
||
default, software is proprietary. Non-free.
|
||
- To grant users back the freedoms they ought to have, Richard Stallman
|
||
turned copyright on its head with the concept of Copyleft. This
|
||
philosophy is embodied in the GPL. The GNU General Public License.
|
||
- Now, some developers write free software for technical reasons. This is
|
||
the focus of open source.
|
||
- But some write it for philosophical reasons. And some write it as a form
|
||
of advocacy or activism.
|
||
- What happened here?
|
||
- What lead me to discover software freedom?
|
||
- This program and its license. This game.
|
||
- I can't say whether the author set out to do that. But that's what
|
||
happened. Those of you writing software may never realize the true
|
||
impact that you actually have.
|
||
- And that's why the choice of license is so important.
|
||
- Choosing the GPL isn't just about ensuring that your software remains
|
||
free.
|
||
- It's also about making a statement. Advocating for the principles and
|
||
ideals of software freedom.
|
||
|
||
|
||
*** REHEARSED Barrier to Entry :B_fullframe:
|
||
:PROPERTIES:
|
||
:BEAMER_env: fullframe
|
||
:DURATION: 00:01:00
|
||
:END:
|
||
|
||
#+BEAMER: \fullslidetext
|
||
Barrier To Entry
|
||
|
||
**** REHEARSED Notes :B_noteNH:
|
||
:PROPERTIES:
|
||
:BEAMER_env: noteNH
|
||
:END:
|
||
|
||
- I also want to emphasize another aspect of Frozen Bubble.
|
||
- The low barrier to entry for modification.
|
||
- It helped demonstrate to me not just the freedom that I had, but the
|
||
viability of that freedom.
|
||
- When we think about software freedom, we shouldn't think about it just
|
||
in terms of licensing. We should also consider /practical/
|
||
freedoms. How to make the freedom to study and modify the software more
|
||
available for more users.
|
||
- That doesn't mean you have to write your software in a scripting
|
||
language, though certainly that might help.
|
||
- But it does mean being mindful to how high the barrier of entry is to
|
||
your program. Be mindful to the abstractions you create.
|
||
- Document the design and philosophy of the program and how it works.
|
||
- Empower as many users as you can.
|
||
- A skill that takes time to acquire.
|
||
|
||
*** REHEARSED Wifi :B_fullframe:
|
||
:PROPERTIES:
|
||
:BEAMER_env: fullframe
|
||
:DURATION: 00:02:20
|
||
:END:
|
||
|
||
#+BEAMER: \fullslidetext
|
||
Device Drivers
|
||
|
||
#+BEAMER: \fullsubtext
|
||
E.g. Wifi
|
||
|
||
**** REHEARSED Notes :B_noteNH:
|
||
:PROPERTIES:
|
||
:BEAMER_env: noteNH
|
||
:END:
|
||
|
||
- Alright, back to my story.
|
||
- One of the most notorious problems when users switch to GNU/Linux is the
|
||
issue of wireless drivers.
|
||
- Back in the day I had to use a tool called =ndiswrapper= which was able to
|
||
load Windows XP drivers on GNU/Linux. =ndiswrapper= is free software, but
|
||
the Windows drivers were non-free.
|
||
- Nowadays, more devices Just Work with a Linux-based system, but there's a
|
||
catch---it usually works because of what we call "binary blobs"
|
||
distributed with the kernel Linux. These are opaque and non-free.
|
||
- The linux-libre project strips those blobs to provide a fully free
|
||
kernel, but then many users notice their devices don't work properly.
|
||
|
||
- Generally, the recommendation for Wifi on Linux-based systems is to use a
|
||
card or dongle based on Atheros (hold it up). But that does not help you
|
||
if you don't have the money to spare.
|
||
- And so we have a bit of a problem.
|
||
- On one hand, the wireless situation for a fully free GNU/Linux system is
|
||
wonderful compared to my experience 15 years ago.
|
||
- But that's only if you have money to spare.
|
||
- What of people that do not?
|
||
- What about people who wish to repurpose old hardware? Some people
|
||
consider e-waste to be a major ethical issue.
|
||
- In those cases, they may have systems that are fully free except for
|
||
one exception: the wireless drivers.
|
||
|
||
- Let's think about someone exploring free software.
|
||
- They want to dip their toes into GNU/Linux. Surely they want to use the
|
||
hardware they already have, not purchase something else just to give it a
|
||
try.
|
||
- But if they use a distribution that we recommend---me as an activist, or
|
||
the FSF on their list of endorsed distributions---then their hardware
|
||
may not work.
|
||
- What do we tell this person?
|
||
- Let's let that sit for a moment and move on. We'll be coming back to
|
||
it.
|
||
|
||
*** REHEARSED Impact of Gaming :B_fullframe:
|
||
:PROPERTIES:
|
||
:BEAMER_env: fullframe
|
||
:DURATION: 00:01:20
|
||
:END:
|
||
|
||
#+BEAMER: \fullslidetext
|
||
Change Coupled With Addiction
|
||
|
||
|
||
**** REHEARSED Notes :B_noteNH:
|
||
:PROPERTIES:
|
||
:BEAMER_env: noteNH
|
||
:END:
|
||
|
||
- Let's talk about my desktop, where I did most of my computing.
|
||
- Around the time that I built it, I was dual-booting Windows and
|
||
GNU/Linux.
|
||
- For those who don't know, dual booting means that, when I started by
|
||
system, I had the choice of whether to boot into Windows or GNU/Linux.
|
||
- Why? Why would I do that?
|
||
- The simple answer is: old habits die hard.
|
||
- It /takes time/ to upend the computing you've done for so long. To
|
||
learn new ways of doing things.
|
||
- This process was /incremental/.
|
||
|
||
- But the biggest thing keeping me booting into Windows was a game.
|
||
- It was a very popular MMO that I'm not going to name. I was quite
|
||
addicted to it at the time.
|
||
|
||
- Games are influential.
|
||
- I'm not even a gamer, and yet I've mentioned games twice so far.
|
||
- How about a third: I first started programming at the age of 10 because
|
||
of a game that provided a level editor; I wanted to do more than what
|
||
it allowed.
|
||
|
||
- I want to stay on this topic for a bit, because it's an important one.
|
||
- There are a number of aspects to games beyond addiction that make them a
|
||
bit different than other software.
|
||
|
||
** REHEARSED Social Complexities
|
||
*** REHEARSED Brand Recognition and Trademarks :B_fullframe:
|
||
:PROPERTIES:
|
||
:BEAMER_env: fullframe
|
||
:DURATION: 00:01:00
|
||
:END:
|
||
|
||
#+BEAMER: \fullslidetext
|
||
Brand™
|
||
|
||
**** REHEARSED Notes :B_noteNH:
|
||
:PROPERTIES:
|
||
:BEAMER_env: noteNH
|
||
:END:
|
||
|
||
- Games are more than just software.
|
||
- They're also art. And with that, we have some additional complexities.
|
||
- It may challenging to find a free replacement for a game because of issues
|
||
surrounding trademarks.
|
||
- For example, my kids want to play certain games because they have
|
||
certain characters that they recognize.
|
||
- It's not that it's impossible to make free software to replicate some of
|
||
these games---it is---but they'd be of no practical use to my children
|
||
if they didn't contain the characters they want.
|
||
|
||
- And then to further complicate things, many AAA games have budgets in the
|
||
tens or even hundreds of millions of dollars and seem to me to be more
|
||
like interactive movies.
|
||
- That's something the free software community is not currently
|
||
well-positioned to counter.
|
||
- It's not that we /can't/, but to counter such a massive undertaking, we
|
||
need more people who believe in our ideals to work toward it.
|
||
|
||
*** REHEARSED Culture :B_fullframe:
|
||
:PROPERTIES:
|
||
:BEAMER_env: fullframe
|
||
:DURATION: 00:02:00
|
||
:END:
|
||
|
||
#+BEAMER: \fullslidetext
|
||
Social Pressure
|
||
|
||
**** REHEARSED Notes :B_noteNH:
|
||
:PROPERTIES:
|
||
:BEAMER_env: noteNH
|
||
:END:
|
||
|
||
- There's something else too.
|
||
- Games are something that people can gather around and enjoy together.
|
||
- It can be ingrained in culture.
|
||
- Getting rid of a game, or replacing it with something free, may be more
|
||
challenging if all of your friends also play it.
|
||
|
||
- We have this problem with social networks too---what good is a social
|
||
network that none of your peers use?
|
||
|
||
- I avoid a lot of these problems by breaking social norms, or simply not
|
||
associating with certain people.
|
||
- I'm okay with doing this.
|
||
- But many people aren't. Or can't.
|
||
|
||
- I used a vegan metaphor previously.
|
||
- But it was a bit shallow.
|
||
- Consider a party: you can be a vegan at a party and abstain from certain
|
||
meals. Or bring your own. Kind of like I do with free software.
|
||
|
||
- But with certain games like MMOs, or popular social networks, the
|
||
software isn't just a /component/ of a social even, it /is/ the
|
||
event---the means of communication.
|
||
|
||
- There is no abstaining or substituting while also communicating.
|
||
- Severing non-free software in such cases may mean severing social ties,
|
||
unless there's free software that is compatible.
|
||
|
||
- And while I've done that, and I'm okay with it, that's /me/.
|
||
- We can't demand or /expect/ that of others.
|
||
- We need to work with people to adopt replacements, to help them move
|
||
their community to another platform that respects their freedom, and /then/ they can all enjoy freedom together.
|
||
- Freedom shouldn't have to mean isolation from one's peers just because
|
||
they don't share the same ideals.
|
||
- Not to mention that just creates echo chambers, and also removes our
|
||
voice from that community.
|
||
- It perpetuates or even worsens the divide.
|
||
|
||
|
||
*** REHEARSED Balancing Ideals :B_fullframe:
|
||
:PROPERTIES:
|
||
:BEAMER_env: fullframe
|
||
:DURATION: 00:03:00
|
||
:END:
|
||
|
||
#+BEAMER: \fullslidetext
|
||
Compounding Ideals
|
||
|
||
#+BEAMER: \fullsubtext
|
||
Small Contributions Grow
|
||
|
||
**** REHEARSED Notes :B_noteNH:
|
||
:PROPERTIES:
|
||
:BEAMER_env: noteNH
|
||
:END:
|
||
|
||
- However, there /are/ situations that I can't just escape from. Where I
|
||
have to confront the unfortunate reality that I live in head-on.
|
||
|
||
- Let's take schools for example.
|
||
- Say you live in a district where students use non-free software or
|
||
services. Which is highly likely.
|
||
|
||
- Now, there's something you have to understand.
|
||
- That school has already invested money into hardware, services, training
|
||
of staff and students, has put data into the chosen platform, and so on.
|
||
- Given all of that, one person voicing dissent isn't going to change all
|
||
of that. It's too expensive.
|
||
|
||
- In my case, I arrived too late to my district to voice any input on the
|
||
process.
|
||
- I did meet with assistant superintendents of the district to voice some
|
||
concerns, but again, I'm just one person.
|
||
- Why are my ideals more important than the opinions of others?
|
||
|
||
- But what if it were different?
|
||
- What if there were dozens of parents? Or more?
|
||
- They could have possibly prevented this before it started.
|
||
- They don't have to subscribe fully to our ideals. They just need to
|
||
know enough to /advocate/ for them. To care.
|
||
- They may not care enough about freedom for themselves, but maybe
|
||
they'll care for their children.
|
||
- Kind of how we may eat whatever we please as adults, but want our
|
||
children to eat healthy because it's good for them as they grow.
|
||
|
||
- But how do we get those parents?
|
||
- Through advocacy.
|
||
- But what advice do we have to offer those parents?
|
||
- Don't let your child use non-free software?
|
||
|
||
- I put the social and emotional well-being of my children above my ideals
|
||
of software freedom.
|
||
- And I suspect that most, if not all, parents do the same.
|
||
- But but forcing your child to participate in your activism when they're
|
||
too young to understand is not doing that.
|
||
- If they're old enough to understand and want to do so on their own,
|
||
great.
|
||
- But if they're young, like my children, then having them do things
|
||
differently in class than the other kids will increase social
|
||
anxiety. Decrease learning. Possibly open them to ridicule.
|
||
- It's one thing to ask myself to be strong in that situation. It's
|
||
another thing to ask my child to be.
|
||
|
||
- And so we find ourselves in this situation that, unless we can connect
|
||
with parents and offer them better guidance, they're going to just see us
|
||
as extremeists, and not engage.
|
||
- This situation will simply perpetuate.
|
||
- And this is one of the ways non-free software is introduced to the next
|
||
generation---these companies gain strongholds in schools and push their
|
||
software so that students will get used to them and use them outside of
|
||
school. People don't like change.
|
||
- But imagine if we taught /freedom/ in school. Sharing. Imagine what
|
||
impact that might have on our activism and advocacy. It would be done /for/ us, by those who know how to teach best.
|
||
|
||
*** REHEARSED Moral Judgment :B_fullframe:
|
||
:PROPERTIES:
|
||
:BEAMER_env: fullframe
|
||
:DURATION: 00:02:00
|
||
:END:
|
||
|
||
#+BEAMER: \fullslidetext
|
||
Moral Judgment
|
||
|
||
**** REHEARSED Notes :B_noteNH:
|
||
:PROPERTIES:
|
||
:BEAMER_env: noteNH
|
||
:END:
|
||
|
||
- Let's consider this question carefully, because it's loaded, and it's a
|
||
question a lot of people ask themselves.
|
||
- Am I a bad person for using non-free software?
|
||
|
||
- Well, why is non-free software bad?
|
||
- Is it the program itself?
|
||
- When you liberate a program---make it free---the code doesn't have to
|
||
change. So clearly the program itself isn't the problem.
|
||
- What did change are the terms---the license. Copyright, and in some
|
||
cases patents and trademarks, take away freedoms we would otherwise
|
||
have.
|
||
- A free software license grants those freedoms back.
|
||
- But from whom? Who is relinquishing that power?
|
||
- The copyright holder. Or patent or trademark holder.
|
||
- They are the ones who can otherwise tell us what we can and cannot do.
|
||
- They exercise their rights /over/ us, as an instrument of power.
|
||
- /That/ is what's bad. The power they have over us when we use
|
||
non-free software.
|
||
- Users of non-free software, we say, are /victims/, not bad people.
|
||
|
||
- But we do have to be careful with the terminology that we use.
|
||
- People who don't hold our ideals as strongly as we do---or maybe some of
|
||
you watching this now---won't be happy being called victims if they don't
|
||
feel like they are.
|
||
- Because when you call them a victim for doing something they /want/ to
|
||
do, you're implying that they have poor judgement.
|
||
- They may not want to be labeled victims /or/ bad people.
|
||
|
||
*** REHEARSED Hold Ideals Strong :B_fullframe:
|
||
:PROPERTIES:
|
||
:BEAMER_env: fullframe
|
||
:DURATION: 00:01:30
|
||
:END:
|
||
|
||
#+BEAMER: \fullslidetext
|
||
Never Dilute Your Ideals
|
||
|
||
#+BEAMER: \fullsubtext
|
||
And Take Pride In Your Progress
|
||
|
||
**** REHEARSED Notes :B_noteNH:
|
||
:PROPERTIES:
|
||
:BEAMER_env: noteNH
|
||
:END:
|
||
|
||
- There's been a theme throughout this talk.
|
||
- We have these ideals, but there are a lot of challenges to meet them.
|
||
- And sometimes guidance can be hard to come by, until you reach a certain
|
||
point.
|
||
|
||
- This necessarily means that, unless you find yourself in a rather
|
||
remarkable position, you're going to find yourself using non-free software
|
||
as you try to figure out how to do without it.
|
||
- Despite being ideologically opposed to it.
|
||
|
||
- And when it gets tough, it'll be tempting to justify your use of non-free
|
||
software in a particular case by reframing the issue, or possibly by
|
||
diluting your ideals---by saying that certain parts aren't important after
|
||
all.
|
||
|
||
- Never dilute your ideals. Never.
|
||
- Don't make excuses when you don't meet them. Own up to it.
|
||
- Otherwise, you risk becoming complacent, and then stagnet in your
|
||
progress.
|
||
- That's where I was at one point.
|
||
|
||
- Instead, set your goals high, /knowing/ that you will fail to meet them
|
||
for quite some time.
|
||
- Keep those goals strong.
|
||
- This is what organizations like the FSF and GNU are good for---they do
|
||
not leave any question as to where those ideals stand. They are
|
||
unwavering.
|
||
|
||
- And then be /proud/ of the progress you make, however much, and the
|
||
freedom that you've gained.
|
||
|
||
** REHEARSED Conclusion
|
||
*** REHEARSED Quell Anger :B_fullframe:
|
||
:PROPERTIES:
|
||
:BEAMER_env: fullframe
|
||
:DURATION: 00:00:30
|
||
:END:
|
||
|
||
#+BEAMER: \fullslidetext
|
||
Anger and Cynicism Cloud Judgement
|
||
|
||
**** REHEARSED Notes :B_noteNH:
|
||
:PROPERTIES:
|
||
:BEAMER_env: noteNH
|
||
:END:
|
||
|
||
- I used to look at everyone embracing non-free software with anger and
|
||
cynicism.
|
||
- But in reality, it's just that most people don't know about these
|
||
issues. Or understand why they're important to adopt them.
|
||
- When you see schools embracing non-free software and services,
|
||
advertisements non-free software, your friend or family member using a
|
||
proprietary program, your employer embracing non-free services, and so
|
||
on, rather than getting angry, take it as a call to action. Help them
|
||
to understand.
|
||
|
||
|
||
*** REHEARSED Unless :B_fullframe:
|
||
:PROPERTIES:
|
||
:BEAMER_env: fullframe
|
||
:DURATION: 00:01:30
|
||
:END:
|
||
|
||
#+BEAMER: \fullslidetext
|
||
Unless
|
||
|
||
**** REHEARSED Notes :B_noteNH:
|
||
:PROPERTIES:
|
||
:BEAMER_env: noteNH
|
||
:END:
|
||
|
||
- Not all of us find it within ourselfs to be as free as, say, Richard. We
|
||
all lead different lives. Under different circumstances. But what we
|
||
should all strive to do is to help one another, in the spirit of freedom;
|
||
not just for ourselves, but for /everyone/.
|
||
- But why do we have trouble with our own freedoms? Because it's
|
||
impractical?
|
||
- Impracticality is a self-fulfilling prophecy.
|
||
- Not at the level of an individual user, but as a society as a whole.
|
||
- All of these issues discussed here are of humanity's own
|
||
making. Non-free software isn't a law of nature. It's non-free because
|
||
we allow it to be so.
|
||
- It doesn't have to stay that way. I hope it doesn't.
|
||
- If enough of us speak out, we can change that over time.
|
||
- The smallest steps toward freedom add up. We don't all need to be
|
||
purists. We just need to be /aware/, and care.
|
||
|
||
- And since my primary job now is a Dad, I couldn't help but end it with
|
||
this Dr. Seuss quote from the Lorax:
|
||
- "Unless someone like you cares a whole awful lot, nothing is going to
|
||
get better. It's not."
|
||
|
||
** Questions? :B_frame:
|
||
:PROPERTIES:
|
||
:BEAMER_env: frame
|
||
:END:
|
||
|
||
Some topic ideas:
|
||
|
||
- Free/Libre games my children play
|
||
- Ideals related to software freedom (SaaS, Privacy, Security, Human Rights)
|
||
- Non-free JavaScript for online shopping, banking, etc
|
||
- Employer using non-free software
|
||
|
||
** Thank You :B_fullframe:
|
||
:PROPERTIES:
|
||
:BEAMER_env: fullframe
|
||
:END:
|
||
#+BEGIN_COMMENT
|
||
Some ideas if there are no quesitons:
|
||
|
||
- Free games for children
|
||
- Ideals related to software freedom (SaaS, Privacy, Security, Huamn Rights)
|
||
- Non-free JavaScript for shopping
|
||
- SaaS, ephemeral software, reliance on another individual
|
||
- Shopping for nouveau-compatible nVidia card
|
||
- Employer using non-free software
|
||
#+END_COMMENT
|
||
|
||
#+BEGIN_CENTER
|
||
Mike Gerwitz
|
||
|
||
[[mailto:mtg@gnu.org][=mtg@gnu.org=]]
|
||
|
||
=mikegerwitz@mastodon.mikegerwitz.com=
|
||
|
||
\bigskip
|
||
|
||
Licensed under the Creative Commons Attribution ShareAlike 4.0
|
||
International License
|
||
#+END_CENTER
|
||
|
||
|
||
* Exporting :noexport:
|
||
For a non-interactive build, including all dependencies, simply run =make=.
|
||
|
||
Once all dependencies are built, you should be able to simply export this
|
||
buffer as a Beamer presentation (=C-c C-e l P=) to get an updated PDF (or
|
||
you can just run =make= again).
|
||
|
||
|
||
* Copyright and Licenses :noexport:
|
||
This file Copyright (C) 2019 Mike Gerwitz.
|
||
|
||
This file is licensed under the Creative Commons Attribution ShareAlike 4.0
|
||
International License. See [[file:COPYING.CCBYSA]] for the full license text.
|
||
|
||
|
||
* Local Variables :noexport:
|