Moral lessons from free software and GNU Emacs

Raw link: https://www.youtube.com/watch?v=gwT5PoXrLVs

In this video blog I talk about my background with computers. This experience helped me learn five important lessons that apply to life in general and free software in particular, especially GNU Emacs.

Below you can find the text of the presentation in org-mode notation (this is plain text, in case you do not know). I just noticed a few typos and an error in the “forgo […] a loss” statements, but I hope you get what I wanted to say (“to accept a loss…”).


#+TITLE: Vlog: Moral lessons from switching to Emacs
#+AUTHOR: Protesilaos Stavrou (https://protesilaos.com/)

In this video blog I want to share with you a topic that comes up from
time to time in my private email exchanges.  And that is my background
in computers and, basically, how I became an Emacs user.

I want to share with you my story, though I also wish to draw some
lessons from it and generalise them into insights that might be useful
for other people.

I think that as with life in general, our experience with computers goes
through various phases in which we become better at adapting to or
coping with evolving states of affairs, once we gain some familiarity
with the case-specific surroundings or parameters.

Each person is different and there is no one way of learning things.  I
feel though that hearing another person's experiences can broaden our
horizon, the same way we can read a book and get the essence of its
author's years of labour to accumulate the requisite knowledge.

* The first lesson from the early years of adulthood

I did not have a computer growing up.  I first started using one in the
university where I had to submit all my assignments in doc or pdf format
(circa 2006).  At the time I would visit the university's computer lab
to type in my work which I had prepared a manuscript for.

Even my typing skills back then were rudimentary and extremely clumsy.
I was using the index finger on both of my hands to hit the keys and had
to always look down to make sure I was typing the right thing.

This was true for all my years at the university, where I was enrolled
in the humanities.  I did, nonetheless, set up a blog in 2011 which
later evolved into my current website, though I had no technical
understanding of things back then: I just had essays which I thought
were worth publishing.

Then I got a job at the European Parliament and moved to Brussels,
Belgium (2012).  There I would have to use the computer at the office
every single day for most of my tasks.  I would have to write analyses,
edit or prepare amendments to legislation, deal with emails... You get
the idea.

At some point I was working on a colleague's laptop because I did not
have one myself.  The task involved switching between two apps to copy
and paste text back and forth.  By "copy and paste", I mean to right
click, find the "copy" action, then move the mouse and right click again
for "paste".  It was a tedious process and I was still not competent as
a computer user.  So the colleague asked me why I was not using Alt+Tab.
My reaction was to ask what kind of app that is and how to enable it...

That day I learnt how to use a keyboard shortcut.  It was a revelation!
Soon thereafter I followed it up with Ctrl+c, Ctrl+v, Ctrl+z, Ctrl+a.

The first lesson from this experience is that when you have no access to
learning resources, when you are not exposed to a superior paradigm, you
are always trapped in a cycle of self deprecation and perceived
powerlessness.  Humans are good at rationalising their own condition, so
we can come up with plausible explanations such as that "my dexterity is
not good enough", or "it actually helps me write better, as it is more
deliberate", and the like.

Knowledge or a means of learning is key to emancipate yourself from your
own inadequacies.  Never make excuses that hinder your potential to
learn something new.  Always keep an open mind.

* The second lesson before the transition to free software

I was eventually granted a laptop at my work.  It was a Macbook Pro of
some sort, though I still have no idea what its model was.  It did not
matter.  What I cared about was that it was the first time in my life
where I had my own computer---I could use it from home and start
learning more about it in my free time!

So I started personalising my computer experience over time.  This meant
that I would buy various apps that were supposed to help me with
boosting my productivity.  That is when the next set of post-hoc
rationalisations started developing.  I was deluding myself into
thinking that "oh, my efficiency was not good enough, but thankfully
this app has fixed the problem".  It did not.  It could not.

And this is something that relates to Emacs as well.  There is no
magical way to boost your productivity by changing the software you use,
while keeping your mindset constant.  To become productive you have to
identify the patterns in your method or workflow that hamper your
output.  Apps are tools that you use.  And, despite its extensibility,
Emacs can neither read your mind, nor reprogram it.  It all starts with
your mentality and with how you conduct yourself.

I had thus wasted a fair bit of money on shiny apps that claimed to fix
my perceived problems.  I would speculate, in retrospect, that the
absence of tools for self learning that is prevalent in the proprietary
app ecosystem conditions users, perhaps inadvertently, into not
questioning things and conforming with the status quo.

We are all different and this means that what works for one may not
apply to another.  Thus, a user who is not offered genuine alternatives,
a method that helps them decide for themselves, is eventually led to
rationalise their condition as a fault of their own.  This happened to
me.  I bought apps for productivity but did not really change anything
in my life.  Instead I thought that the real reason for not being
productive was with my awkwardness as a computer user, or something
along those lines.

The second lesson I learnt the hard way is that you must always assess
someone on their own merits.  Do not judge people for trying and failing
to meet some other person's standards.  And, extended to computers, do
not fall into the trap of T.I.N.A., which is an acronym for "There Is No
Alternative".  There always are alternatives---always---provided you
change your mindset and stop internalising your induced victimhood as
some supposedly intrinsic quality of yours.  It is not your fault.

* The third lesson after switching to GNU/Linux

I still had that Macbook laptop in 2016 when I finally decided to switch
to free software.  I had read a bit about Linux and how it was
Unix-like, though I did not understand what that meant.  It was too far
removed from my knowledge at the time.  Instead, what helped me get
started was the GNU Image Manipulation Program; a good tool, which goes
by an unfortunate acronym.  Alas!

Anyhow, I installed the GNU IMP on my laptop because I wanted to do some
basic image editing and was not willing to spend money on yet another
shiny app from the store.  The program was good enough for my needs, so
I thought I would check their website in case they were making some
other programs as well.  At the time I was still thinking that "free
software" meant free of charge.  But I soon learnt about the moral
qualities of free software, about liberty and being in control of your
own computer, which means to be in control of a large part of your life.

So I decided to nuke the Mac and replace it with Linux Mint.  This
happened in the summer of 2016.  After a weeks, I decided to distro hop
and went with Arch Linux.  I still had no idea what I was doing.  I just
read the wiki and it somehow worked!

Moving to free software changed my life for the better because it put me
in a course of escaping from /heteronomy/: rule by another.  I wanted
/autonomy/: rule by one self.  My time buying apps for the Mac was one of
heteronomy not only because I did not control the software, but mostly
due to the mentality that is associated with using tools that you do not
understand: you are always dependent on someone else, you are trapped in
that cycle of powerlessness and victimhood that I alluded to earlier.

The third lesson is that autonomy comes at a cost.  It presupposes
responsibility, and that is predicated on discipline.  If you do not
want to be responsible, if you prefer to be spoon-fed what life has to
offer, then you remain in a state of heteronomy with its fake comforts.
This is not about the Mac per se.  It is about understanding your
system.

Here I must stress that discipline is not the same as conformity with
the established order.  No!  Discipline is a virtue.  It is about
overcoming your pernicious rationalisations; those that keep you trapped
in a state of perceived helplessness.  It is about deciding to be in
charge of yourself and being prepared to deal with the challenges from a
position of control.  Discipline is about adding structure to a
theretofore chaotic life.

Never mistake conformism or obedience with virtue.

* The fourth lesson that brought me to GNU Emacs

I had not fully understood the third lesson of autonomy even after I had
switched to GNU/Linux because I retained one very bad habit from the old
days: I was not reading the wealth of documentation on offer.  Instead I
would search the Web for some quick and easy fix, copy-paste it, and
move on to the next task.

This mentality held back my potential.  I was still behaving
heteronomously and I was still rationalising it as "oh, this is too
difficult for me---I was just a student of liberal arts!".  That is
nonsense.  It is a mindset that sets you up for failure.

What made me change habits was the realisation that there is no "cheat
code" or "secret life hack" to gaining expertise in any given field.
You have to earn it.  And this means you have to put some serious effort
into it.

I understand how people feel for finding themselves in such a
predicament.  I was just like that until not too long ago.  Just look
around you: the zeitgeist, the general spirit of our times, is to do
things quickly.  The most common example is some formulaic video
tutorial that promises to make you a pro in five minutes: "here are 10
tricks to be happy!".

We can discern the same pattern in the Emacs space.  You must have
noticed this type of post where someone claims to want to switch to
Emacs but they do not wish to lose any of their productivity.  That only
shows that they do not understand what they want.  They have been led to
believe in this narrative of the quick fix, the secret life hack, the
one magic thing that provides a shortcut to wisdom, and so on.  There is
none of that.  It is all a lie.  You are chasing chimeras.  As for Emacs
in particular, you simply cannot be an Emacs tourist---it does not work
that way.

To learn your way with free software, and to gain expertise in general,
you must commit to it with an open mind.  This means that you must have
already prepared yourself mentally, which implies that you are willing
to forgo some short-term loss in productivity in pursuit of a longer
term transition to a more autonomous modus vivendi.

So the fourth lesson I learnt is to be modest, patient, persistent, and
courageous.  In the free software space this set of virtues boils down
to a simple yet critical instruction: *read the documentation* and be
methodical about it.  Don't entertain unrealistic expectations of doing
it in 5 minutes.  Take your time.  Read, read, read!  And proceed slowly
from the basics to the more advanced issues.

* The fifth lesson after switching to GNU Emacs

I became an Emacs user in the summer of 2019 while I had bought my first
computer in 2018, which is the Thinkpad X220 that I am now using.  I
started from scratch, read the manual, and gradually worked my way to
where I currently am.  I am not a programmer, though that is not an
excuse: it is just a matter of fact as well as a statement of intent to
continue to improve.  But I do not want to talk to you about my
Emacs-related projects.  Those are chronicled in all the videos I have
published, as well as the relevant information I post on my website.

Instead, I want to focus on a general theme which I think hints again at
heteronomy: which is the self-description of the geek or the nerd.  Now
I understand that those terms are given a positive spin, though I am
still not happy with them.  My problem with them comes from the
dichotomy they assume where on the one side you have "normies" and on
the other you get the geeks/nerds.  My experience as a computer user
tells me that there is no such binary there is a spectrum of possible
combinations and permutations in between the extremes.  Plus, I am not
convinced that "normal" means what we want.

"Normal" signifies the norm, the common pattern.  Though it can also
hint at normativity in the form of an exhortation: this is how people
should behave.  I object to such false morality because in the computer
it translates into "people should remain trapped in arrangements they do
not control and in which they are utterly powerless to enact reform".  I
transcended those fake constraints and I believe that everyone can do
the same if only we show them the way.

Furthermore, I object to the characterisation of the free software
expert as some sort of a weirdo, even if you put a positive spin to it.
Remember that we are talking about liberty, about autonomy and a life
that is characterised by an ethos of discipline.  This is not weird: it
is about realising your potential.  It is about tearing apart that
cobweb of induced helplessness and rationalisations that keeps you
subservient to forces outside your control as an individual and as a
member of a wider community.

There is a song of an old Greek rock band which says: "what are we even
doing here in the others' night?" (Τρύπες: Τι γυρεύουμε εμείς μέσα στη
νύχτα των άλλων).  Which I think is a great metaphor for this fifth
lesson: do not live under some other person's shadow, do not use their
language or their associations to make sense of the world because that
forces you to vindicate the categories they assume as constant.

No, I am not a nerd.  I am an Emacs user as a consequence of the fact
that I want more autonomy.  I am unapologetic about it and fully
prepared to deal with the consequences.

* Emacs is just another tool

In conclusion, I must say that the main takeaway from this video blog is
that you need to check your mentality and you need to get into the
mindset of doing things that give you more control.  This involves
learning by reading, as well as through trial and error.

Couched in those terms, Emacs will not solve the problems in your life.
It will not become your powerhouse of productivity after one weekend's
worth of effort.  You are willing to commit to it for the long term
because you are driven by the spirit of liberty, of controlling your own
setup and being very deliberate about how the whole system is pieced
together.

Now I can almost hear your rationalisations speaking: "but it is hard",
"oh, but I am a dummy" and stuff like that.  You need to stop heeding
those calls.  They are not your friends.  If you set yourself up for
failure, you will always think that you are inadequate, that something
is wrong with you.  And your mind will play along, whispering to you
that you are all those things and that you deserve to remain in that
inert state.

What my journey as a computer user taught me, and what Emacs rendered
crystal clear, is that you will always think that you are an idiot for
as long as you remain heteronomous.  Things will begin changing once you
start making steps towards autonomy.  In my case that took a few years.
It is a gradual process which, I think, has made me a competent computer
user as well as a better person.

To recapitulate:

1. Without knowledge you are trapped in a cycle of self deprecation and
   perceived powerlessness.  Seek knowledge.
2. You must always assess someone on their own merits, instead of some
   other person's standards.  Do not fall into the trap of TINA (There
   Is No Alternative), because there always is an alternative.
3. Autonomy comes at cost.  You must be prepared to forgo some
   short-term comfort in order to prepare yourself for gaining control.
   This presupposes discipline (and discipline is not conformism!).
4. Be modest, patient, persistent, and courageous.  In practical terms,
   understand that there is no shortcut to gaining expertise.  For
   software, this means that you must always read the documentation.
5. Do not live under another person's shadow ("in the night of the
   others"); do not play along with their role games; do not vindicate
   their narratives and provide assent to their presumptions.

With those in mind you will be prepared to use free software in general
and GNU Emacs in particular.  You will upgrade yourself.