Moral lessons from free software and GNU Emacs
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
(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.