Moral lessons from free software and GNU Emacs

Moral lessons about learning

Reference: https://protesilaos.com/codelog/2021-04-16-emacs-moral-lessons/

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

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.

Lesson 2 - You must always assess someone on their own merits. Do not judge people for trying and failing to meet some other person’s standards.

The second lesson before the transition to free software

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.

In retrospect, I would speculate 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.

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. 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.

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.

Lesson 3 - autonomy comes at a cost. It presupposes responsibility, and that is predicated on discipline.

(The third lesson after switching to GNU/Linux)

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.

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.

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.

Lesson 4 - be modest, patient, persistent, and courageous. Read the documentation.

(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!”. 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.

Emacs is just another tool

The main takeaway from this 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.


Links to this note