426 lines
		
	
	
		
			No EOL
		
	
	
		
			25 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			426 lines
		
	
	
		
			No EOL
		
	
	
		
			25 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
<p>Raw link: <a href="https://www.youtube.com/watch?v=OE3mfOp5ZDI">https://www.youtube.com/watch?v=OE3mfOp5ZDI</a></p>
 | 
						|
         
 | 
						|
         <p>This is a republication of my presentation at EmacsConf 2021.  I am
 | 
						|
posting it on my own channel for archiving purposes.  Original:
 | 
						|
<a href="https://emacsconf.org/2021/talks/freedom/">https://emacsconf.org/2021/talks/freedom/</a>.</p>
 | 
						|
 | 
						|
<p>The video was recorded on November 5, 2021.</p>
 | 
						|
 | 
						|
<p>What follows is the text of the presentation in Org notation.  Note that
 | 
						|
I had mistakenly said “consubstantive” instead of “consubstantial” but
 | 
						|
only realised it after I concluded the recording…  This is rectified
 | 
						|
in the text:</p>
 | 
						|
 | 
						|
<pre><code class="language-org">#+TITLE: EmacsConf 2021: How Emacs made me appreciate software freedom
 | 
						|
#+AUTHOR: Protesilaos Stavrou (https://protesilaos.com)
 | 
						|
#+DATE: 2021-11-27
 | 
						|
 | 
						|
* About me and this talk
 | 
						|
 | 
						|
Hello EmacsConf!  My name is Protesilaos, also known as "Prot".  I am
 | 
						|
joining you from the mountains of Cyprus.  Cyprus is an island in the
 | 
						|
Eastern Mediterranean Sea.
 | 
						|
 | 
						|
My presentation focuses on the intersection between software freedom and
 | 
						|
what we find in the Emacs milieu.  Here "the Emacs milieu" encompasses
 | 
						|
two magnitudes: (i) the program we use and (ii) the diverse, global
 | 
						|
community of people that has grown organically around it.  I will talk
 | 
						|
to you about how Emacs made me appreciate software freedom and helped me
 | 
						|
exercise it to its full potential.  Personal anecdotes are not the main
 | 
						|
focus of this talk.  Rather, they serve the ancillary role of making
 | 
						|
certain insights more relatable.
 | 
						|
 | 
						|
The presentation is theoretical in nature and targeted at a general
 | 
						|
audience.  No knowledge of programming is required.  It is assumed,
 | 
						|
however, that you are familiar with some basic concepts, such as the
 | 
						|
fact that Emacs is extended with the Emacs Lisp programming language, or
 | 
						|
that Emacs is a GNU project that champions end-user software freedom.
 | 
						|
 | 
						|
Let's start with a few words about me before elaborating further:
 | 
						|
 | 
						|
+ I was born in Greece in 1988 and was raised there. As a kid I was not
 | 
						|
  into tech-related activities.  All I cared about was playing football
 | 
						|
  (soccer) and staying outdoors.  My formal education is in the
 | 
						|
  humanities (liberal arts).  I had a career in politics.  I lived in
 | 
						|
  Brussels, Belgium and worked at the European Parliament, among others.
 | 
						|
 | 
						|
+ After some intense soul-searching I realised I did not want to be a
 | 
						|
  political operator any more and made radical changes in my life.  I
 | 
						|
  have since come to terms with the fact that I am a philosopher.
 | 
						|
 | 
						|
+ I am not a programmer.  Neither by trade nor formal education.  I code
 | 
						|
  for leisure.  I was not tech-savvy until my mid-20s.  I have been
 | 
						|
  using GNU/Linux distributions since the summer of 2016.  While I
 | 
						|
  switched to Emacs full-time in the summer of 2019.  Before that switch
 | 
						|
  I was running a bespoke environment that involved several standalone
 | 
						|
  programs like Vim, Tmux, and a tiling window manager.
 | 
						|
  
 | 
						|
+ I am the creator and maintainer of the =modus-themes= (=modus-operandi=,
 | 
						|
  =modus-vivendi=).  These are designed to conform with the highest
 | 
						|
  accessibility standard for legibility and optionally support the needs
 | 
						|
  of users with red-green colour deficiency (deuteranopia).  The themes
 | 
						|
  are built into Emacs version 28 or higher.  A section of my website is
 | 
						|
  dedicated to my Emacs-related contributions.
 | 
						|
 | 
						|
For the remainder of this 40-minute talk, I will explain how Emacs made
 | 
						|
me appreciate software freedom, how it empowers me in my day-to-day
 | 
						|
computing, and the lessons I have drawn from that liberating experience.
 | 
						|
 | 
						|
* The inherent Emacs qualities for an autodidact
 | 
						|
 | 
						|
Emacs has this reputation of being extremely hard to learn and difficult
 | 
						|
to get started with.  So how does someone like me, who was not even
 | 
						|
tech-literate a few years ago, go on to use Emacs effectively?  How do
 | 
						|
you start from zero, with no knowledge of Lisp and with only a
 | 
						|
rudimentary grasp of programming, to eventually maintain packages for
 | 
						|
Emacs and even contribute directly to emacs.git and other sources?
 | 
						|
 | 
						|
The answer to these and related questions lies in the very description
 | 
						|
of Emacs as a "self-documenting" piece of software.  It means that Emacs
 | 
						|
has a robust Help system which informs you about the state of a given
 | 
						|
construct.  Such as what the original and current values of a variable
 | 
						|
are.  Or whether some function is being "advised", else dynamically
 | 
						|
adjusted, by another function and what that advice amounts to.
 | 
						|
 | 
						|
The self-documenting nature of Emacs is combined with the fact that it
 | 
						|
consists of free software.  Not only do we get information about what
 | 
						|
Emacs knows, but have the underlying code readily available to us.  For
 | 
						|
example, every Help buffer provides a link to the source of the item it
 | 
						|
references.  We can study and edit that as we wish.
 | 
						|
 | 
						|
Self-documentation and free software are blended together with a third
 | 
						|
quality of Emacs: its implementation as a Lisp machine or else its
 | 
						|
ability to evaluate Lisp code and make use of it directly.  The ubiquity
 | 
						|
and uniformity of the Lisp interpreter together with the immediacy of
 | 
						|
its results help one learn how to use Emacs and how to write Emacs Lisp
 | 
						|
expressions.  For someone who is self-taught like me and who often
 | 
						|
learns through a process of trial and error, this is of great value.
 | 
						|
 | 
						|
Learning how to use Emacs and how to write in ELisp is the basic
 | 
						|
skillset you need to also start extending Emacs for your own use, or
 | 
						|
even for publishing packages and making contributions to emacs.git.
 | 
						|
That is because the skills you acquire by tinkering with your =init.el= as
 | 
						|
a beginner will always stay with you throughout your time as an Emacs
 | 
						|
user.  That is empowering in itself.  It rewards your investment in time
 | 
						|
and effort.  The more you learn, the more capable you become to enact
 | 
						|
change, to configure things to your liking and develop the exact
 | 
						|
workflow that you want without making any compromises.
 | 
						|
 | 
						|
Compare that to, say, my tiling window manager.  I can configure it with
 | 
						|
a shell script.  So I learn POSIX shell or, let's say, Bash.  But my
 | 
						|
knowledge of the shell does not extend to modifying the behaviour of the
 | 
						|
window manager as such, because that is not implemented as a shell
 | 
						|
script but in another language.  So for an autodidact like me, it is
 | 
						|
more difficult to learn yet another paradigm before I can achieve what I
 | 
						|
want.  How do you make that extra step without self-documentation and
 | 
						|
the immediacy as well as transparency that you get from the Emacs Lisp
 | 
						|
interpreter?  It is more demanding.  Which makes Emacs comparatively
 | 
						|
easier when we account for the longer-term effort involved.
 | 
						|
 | 
						|
* The interconnectedness of the Emacs space
 | 
						|
 | 
						|
As I already mentioned, Emacs rewards you for the investment in time and
 | 
						|
effort you put into it.  In my experience, this makes it easier to
 | 
						|
master than a combination of otherwise disparate tools, each with its
 | 
						|
own paradigm of interaction and particularities of implementation.
 | 
						|
 | 
						|
Before switching to Emacs, I was using a combination of standalone
 | 
						|
programs as part of a bespoke computing environment that I had pieced
 | 
						|
together.  The program called "Mutt" would handle my emails, Newsboat
 | 
						|
dealt with my RSS feeds, the Music Player Daemon took care of my music
 | 
						|
collection, while I was doing work inside of a terminal emulator which
 | 
						|
was running a multiplexer (tmux) and Vim for on-the-fly text editing.
 | 
						|
Each of these, and others related to them, are fine in their own right.
 | 
						|
But their gestalt leaves something to be desired.  Their lack of
 | 
						|
homogeneity meant that I could not develop portable skills between them.
 | 
						|
What holds true in Vim does not apply to the multiplexer.  The prevalent
 | 
						|
methods in the email client cannot be used in the RSS reader, and so on.
 | 
						|
 | 
						|
Whereas everything that is implemented in Emacs Lisp partakes in the
 | 
						|
same environment automatically.  If, say, you know how to use keyboard
 | 
						|
macros to edit code, you already know how to use the exact same skill
 | 
						|
to, say, create and delete windows in a process that involves text
 | 
						|
editing and some elaborate file management operations with Dired.  If
 | 
						|
you have a command that scrolls down half a screen, it immediately works
 | 
						|
in all your buffers regardless of whether their major mode is about
 | 
						|
reading emails, editing text, enqueuing songs to a playlist, and so on.
 | 
						|
 | 
						|
Emacs provides a level of integration that I consider peerless.
 | 
						|
Everything the user deals with is implemented in ELisp.  And all the
 | 
						|
user edits is ultimately done with ELisp.  As such, the environment
 | 
						|
itself provides the conditions for drawing linkages between different,
 | 
						|
yet +consubstantive+ consubstantial, modes of interaction.  For example, I
 | 
						|
use =bongo.el= to play back songs from my music collection.  My =~/Music=
 | 
						|
directory is configured to have a special minor mode, so when I access
 | 
						|
it with =dired= it has commands that allow me to enqueue albums/songs,
 | 
						|
create playlists, etc.  Also, I have an ~org-capture~ template which lets
 | 
						|
me store the details of the currently playing track and tag it
 | 
						|
accordingly.  Continuing with the example of Bongo, I make it interface
 | 
						|
with my RSS reader, =elfeed.el=, by having the latter add podcast and
 | 
						|
video links to the former's playback queue.  All this is done by simply
 | 
						|
re-using the same ELisp skills I learnt while configuring and extending
 | 
						|
Emacs.
 | 
						|
 | 
						|
The interconnectedness of the Emacs space empowers the end-user.  It
 | 
						|
makes such emergent workflows possible.  And the best part is that there
 | 
						|
are no dirty hacks involved: it is an innate feature of the system.  You
 | 
						|
are leveraging the freedom that Emacs gives you in a way that confers
 | 
						|
agency on you.  You assume the initiative.  It gives you confidence to
 | 
						|
continue honing your skills in anticipation of further optimising---and
 | 
						|
controlling in full---your own integrated computing environment.
 | 
						|
 | 
						|
* The documentation culture of the Emacs community
 | 
						|
 | 
						|
If what I have mentioned thus far was all there was to the Emacs
 | 
						|
experience, there would still be something to be desired.  Because while
 | 
						|
self-documentation is great, it is meant to draw from---and be a
 | 
						|
complement to---some hand-written material.  Both new and existing users
 | 
						|
must be able to read what something is supposed to do, what its main
 | 
						|
points of entry are, how it relates to other parts, and so on.  This is
 | 
						|
about the human aspect of Emacs, the strong documentation culture of its
 | 
						|
community, rather than an irreducible feature of the program we use.
 | 
						|
 | 
						|
As a matter of packaging etiquette, every non-trivial form in an Elisp
 | 
						|
library must have a documentation string.  What a variable or function
 | 
						|
does needs to be spelt out in clear terms.  Furthermore, the best and
 | 
						|
most well maintained packages, whether those are built into Emacs or
 | 
						|
distributed via an Emacs Lisp Package Archive, come with their own Info
 | 
						|
manual.  Unlike a generic README, those manuals are more like fully
 | 
						|
fledged books, with a table of contents, cross-references, and indices
 | 
						|
for concepts, functions, variables, key bindings...  In short, there is
 | 
						|
a tradition around programming with Emacs Lisp which values informative,
 | 
						|
high quality guidelines intended for end-users.
 | 
						|
 | 
						|
Apart from what each individual package does, Emacs itself ships with a
 | 
						|
helpful tutorial for newcomers, a comprehensive manual, a book targeted
 | 
						|
at non-programmers titled "An Introduction to Programming in Emacs
 | 
						|
Lisp", as well as a reference manual for Emacs Lisp itself.  All this
 | 
						|
material, all that wealth of knowledge, is readily available to the
 | 
						|
end-user through the built-in Info reader.  The details on how to access
 | 
						|
the Info reader are already explained in the initial learn-by-doing
 | 
						|
tutorial.  For people like me who are self-taught, the documentation
 | 
						|
culture of the community ensures that we are not left behind.  It gives
 | 
						|
us the chance to learn from the experts and to become better ourselves.
 | 
						|
 | 
						|
Writing concise and clear documentation is also beneficial for those who
 | 
						|
do it: it helps them clarify their ideas and improve their communication
 | 
						|
skills.  These contribute to fostering a more humane social element.  In
 | 
						|
my experience, the Emacs community has a propensity against becoming
 | 
						|
elitist.  It helps integrate new members by not hiding anything from
 | 
						|
them, on top of Emacs' inherent emancipatory qualities as described
 | 
						|
before (self-documentation, Elisp interpreter, free software).  At the
 | 
						|
same time, the community strives for excellence so it expects newcomers
 | 
						|
to do their part in reading what is generously offered to them.  There
 | 
						|
is a difference between sharing knowledge and spoon-feeding it to users.
 | 
						|
The latter method keeps users dependent on it and is thus detrimental to
 | 
						|
them in the long run.  The Emacs community disseminates what it knows
 | 
						|
and wants newcomers to assume agency and be responsible for doing their
 | 
						|
part in learning how things work.  The community's documentation culture
 | 
						|
and uncompromising standards ensure that even once-unskilled users like
 | 
						|
me can be productive with Emacs and unleash its full potential.  What
 | 
						|
newcomers need is commitment and an open mind to study what they have.
 | 
						|
 | 
						|
* The Promethean Ideal of freeing know-how and expertise
 | 
						|
 | 
						|
The documentation culture of the Emacs community springs from a
 | 
						|
consideration of practicality.  When you explain what your program does,
 | 
						|
it is more likely that others will show interest in it and incorporate
 | 
						|
it in their workflow.  Whereas freed source code that is distributed
 | 
						|
without any accompanying documentation will most likely only attract a
 | 
						|
handful of enthusiastic hackers.  Still good, but could be better.
 | 
						|
 | 
						|
Apart from its practical use though, writing documentation for the
 | 
						|
end-user shows a spirit of altruism, an ethos of caring for others and
 | 
						|
wanting to empower them in their endeavours.  It essentially is the same
 | 
						|
as helping someone; helping them escape from the ignorance that
 | 
						|
contributes to their sense of powerlessness.  I experienced this myself:
 | 
						|
by reading the docs, I was able to go from an unskilled rookie to a
 | 
						|
competent Emacs user.  Part of that competence consists in maintaining
 | 
						|
Elisp packages and contributing code directly to emacs.git.  Writing
 | 
						|
documentation is about disseminating knowledge and expertise, not
 | 
						|
keeping it as an exclusive right of some elite.
 | 
						|
 | 
						|
Allow me then to liken this to the ancient Greek myth of Prometheas
 | 
						|
(Prometheus).  Prometheas was a titan, or else a deity, who decided to
 | 
						|
teach the know-how of handling fire to humanity.  The art of fire is an
 | 
						|
allegory about know-how in general, not specifically pyrotechnics.  So
 | 
						|
Prometheas liberated that key knowledge by taking it away from the
 | 
						|
exclusivity of the gods and bringing it into the domain of humankind as
 | 
						|
a libre resource.  This act of altruism propelled humanity to new
 | 
						|
heights.  Every field of expertise is about handling "fire", in the
 | 
						|
figurative sense of implementing essential know-how.
 | 
						|
 | 
						|
Why would Prometheas, an exalted being, ever bother with the fallible
 | 
						|
and frail humanity?  Why did a god want to empower humans instead of,
 | 
						|
say, making them dependent on the know-how of "fire"?  If we look at the
 | 
						|
world around us, we witness how its overlords are unscrupulously trying
 | 
						|
to enclose the commons and take advantage of expertise in order to
 | 
						|
exploit us.  Why would Prometheas not do the same thing and enslave us
 | 
						|
for the rest of eternity?  The answer is that unlike this world's
 | 
						|
aspiring tyrants, Prometheas represents a higher conscience, one that is
 | 
						|
not corrupted by egocentrism and the greed of short-term profiteering.
 | 
						|
This higher conscience makes sense of the bigger picture and can foresee
 | 
						|
that the distribution of know-how empowers those who access it freely to
 | 
						|
reach their potential.  It is no coincidence that the ancient sages used
 | 
						|
the name "Prometheas", meaning the "prescient one", the "foreseer".
 | 
						|
 | 
						|
This is a lesson on the outlook we ought to maintain, where we aspire to
 | 
						|
our highest.  We want to be the best version of ourselves, by being more
 | 
						|
like Prometheas.  We want our actions to be guided by this Promethean
 | 
						|
Ideal of liberating know-how, of making expertise readily available, and
 | 
						|
of providing others with the chance to prosper.  When we all do so, we
 | 
						|
are collectively better-off.  Free software is a microcosm of that.
 | 
						|
 | 
						|
* The 'killer apps' of Emacs
 | 
						|
 | 
						|
Let's be a bit more practical now.  Many new users are attracted to
 | 
						|
Emacs because it has one or a few immensely useful applications they
 | 
						|
would like to use.  This typically covers Org and/or one of its numerous
 | 
						|
accoutrements.  Though there are other excellent packages like Magit.
 | 
						|
 | 
						|
The fact that Emacs has such killer apps is good.  It shows that its
 | 
						|
extensibility is not some theoretical upside of the Lisp interpreter.
 | 
						|
It has tangible utility to a wide user base, including those who do not
 | 
						|
write Elisp themselves.  Furthermore, those killer apps are good as they
 | 
						|
help bring newcomers and potential future contributors to the fold,
 | 
						|
while they provide real value to the existing members of the community.
 | 
						|
The more people we have and the happier they are with Emacs, the higher
 | 
						|
the chances that we receive some new ideas or code from them.
 | 
						|
 | 
						|
The notion of a killer app does, however, come with a latent downside
 | 
						|
when targeted at outsiders to the Emacs milieu.  And that is because
 | 
						|
packages like Org and Magit do not have a standalone presence.  They are
 | 
						|
always used in Emacs or, rather, together with the rest of Emacs.  Which
 | 
						|
means that the user has to know what to expect from Emacs.
 | 
						|
 | 
						|
You may be aware of the type of user who proclaims that they want to
 | 
						|
boost their productivity but who also expects immediate results.  When
 | 
						|
you bring the "killer app" rhetoric to such a crowd, you run the risk of
 | 
						|
misleading them into a false sense of self-confidence and concomitant
 | 
						|
expectations of success.  Such users may be tempted to try Org, Magit,
 | 
						|
and others but are most likely going to endure a frustrating experience
 | 
						|
overall.  The reason is that they are oblivious to what Emacs is and
 | 
						|
what is required to get started with it on a sustainable basis.
 | 
						|
 | 
						|
Org, Magit, and friends are fantastic tools in their own right.  But
 | 
						|
they still are part of Emacs.  To use them effectively you have to
 | 
						|
develop at least a modicum of understanding on what Emacs does.  You
 | 
						|
must be patient and approach this endeavour with an open mind.  Go
 | 
						|
through the tutorial, familiarise yourself with the Help system, make a
 | 
						|
habit out of reading Info manuals, and take things slowly.  No killer
 | 
						|
app can ever be a substitute for commitment to a cause; no vaunted life
 | 
						|
hack will ever provide a direct conduit to some fountain of wisdom.
 | 
						|
 | 
						|
With regard to software freedom and user empowerment, what I have learnt
 | 
						|
is that the impulse for the killer app ought to emanate from a position
 | 
						|
of knowledge.  First we need to temper our expectations and prefer
 | 
						|
propitious growth in learning over instant gratification.  With Emacs,
 | 
						|
we have a strong foundation for our computing freedom: it consists of
 | 
						|
the inherent qualities of the program together with the documentation
 | 
						|
culture and creativity of the community.  Once we learn how to benefit
 | 
						|
from those, we have everything we need to become proficient in all the
 | 
						|
modes of interaction that are available to us.  Think of it as choosing
 | 
						|
Emacs and Org, Emacs and Magit, Emacs and Org and Magit, et cetera.
 | 
						|
 | 
						|
* You can't be an Emacs tourist
 | 
						|
 | 
						|
What I just talked about implies that you cannot simply switch to Emacs
 | 
						|
over the weekend or on a whimsy.  You can't use it opportunistically to
 | 
						|
run a quick demo with which to impress your peers and win some inane
 | 
						|
"nerd cred".  Forget about such frivolous superficialities.  Emacs is a
 | 
						|
sophisticated tool intended for some serious work.  It has been around
 | 
						|
for several decades and it incorporates the knowledge of a diverse group
 | 
						|
of contributors.  Even if you want to use Emacs just for Org mode or
 | 
						|
whatever killer app, you still have to try to learn things in earnest.
 | 
						|
You still need to read the relevant Info manual, understand how to make
 | 
						|
changes to the plethora of user options on offer, and generally don't
 | 
						|
feel lost while working with Emacs.  This is more so if you use Emacs to
 | 
						|
its full potential as an integrated computing environment; as your
 | 
						|
general purpose interface to the computer, where you handle uniformly
 | 
						|
coding and writing prose, your email correspondence, your RSS feeds,
 | 
						|
your music collection, your agenda and to-do lists, and so on.
 | 
						|
 | 
						|
The difficulty of Emacs is much higher for those who approach it without
 | 
						|
understanding what they are getting themselves into.  Or for those who
 | 
						|
are naive enough to believe that they can cheat their way out of
 | 
						|
learning the fundamentals.  The gist is that you cannot be an Emacs
 | 
						|
tourist.  You can't go into Emacsland thinking that you will spend a
 | 
						|
couple of memorable days there and head back home to regale others with
 | 
						|
stories about your adventures.  It does not work that way.  You commit
 | 
						|
to Emacs for the long-term, for the freedom it offers you.  Freedom in
 | 
						|
the moral sense but also in the very practical ways in which you can
 | 
						|
mould and extend your personal workflows with precision.
 | 
						|
 | 
						|
Now you may wonder why do I mention those things?  Shouldn't we make
 | 
						|
Emacs easier for everyone?  Yes, we should make everything as simple as
 | 
						|
possible.  Though that still does not refashion Emacs into something
 | 
						|
entirely different.  We continue to have a potent tool at our disposal
 | 
						|
that we must treat with the requisite respect.  Take, for instance, the
 | 
						|
various frameworks that set up Emacs in an opinionated way so that
 | 
						|
newcomers get everything set up for them out-of-the-box.  There is
 | 
						|
nothing wrong with those frameworks.  In fact, a large part of the
 | 
						|
community uses them to great effect.  However, the point stands: even
 | 
						|
after every package has been set up for you, you still have to put in
 | 
						|
the work in making use of your newfound computing freedom.
 | 
						|
 | 
						|
But, you may insist, is that not some sort of gate-keeping?  Are you not
 | 
						|
being an elitist by telling people how they must invest time and effort
 | 
						|
in making the best out of their Emacs experience?  No, I think this is
 | 
						|
not elitism.  There are no secrets here, no artificial barriers to
 | 
						|
entry, no impediments to making progress, no tricks and gimmicks.  It
 | 
						|
just is a statement of fact.  Freedom entails responsibility.  It
 | 
						|
requires people to take the initiative and assert control over the
 | 
						|
factors that are within their reach.  Freedom ultimately means that we
 | 
						|
no longer remain dependent on being spoon-fed.  We assume agency.
 | 
						|
 | 
						|
* Emacs as a champion of software freedom
 | 
						|
 | 
						|
To my mind, Emacs is the embodiment of the GNU project's ethos.
 | 
						|
Everything you expect from a program that is underpinned by the values
 | 
						|
of software freedom is found in Emacs.  What you get is not merely an
 | 
						|
ethical tool, important though that is, but also a gift that will keep
 | 
						|
on giving; a gift for your further empowerment as a computer user.
 | 
						|
 | 
						|
I understood that software freedom is not about liberating the code
 | 
						|
itself.  It is about sharing libre code in order to emancipate the user.
 | 
						|
The best way to achieve that is by emulating Prometheas: don't just give
 | 
						|
people the so-called "fire"; offer them the underlying know-how.
 | 
						|
 | 
						|
Emacs taught me the virtues of software freedom in a way that nothing
 | 
						|
else in the GNU/Linux space ever did.  Here's an example from a few
 | 
						|
years ago.  I needed a Markdown editor.  I wanted it to centre the body
 | 
						|
of the text on display.  It should have configurable font families and
 | 
						|
point sizes.  Spell checking for Greek and English should be included.
 | 
						|
The colours had to be editable as well, so I could adjust them to a
 | 
						|
level of legibility I was comfortable with.  While there were plenty of
 | 
						|
libre programs, I did not find one I could control and inspect to the
 | 
						|
extent I can with Emacs.  Which made me feel that I had stagnated: there
 | 
						|
was an indelible line dividing users from developers.
 | 
						|
 | 
						|
Whereas Emacs invites you to blur the distinction between user and
 | 
						|
developer.  It furnishes the means to become proficient in it.  While
 | 
						|
the community complements those with its documentation culture and
 | 
						|
overall creativity.  You start off as a complete ignoramus but soon pick
 | 
						|
up skills that remain useful for as long as you work with Emacs.  And if
 | 
						|
you really want to take it a step further, you know where to look for
 | 
						|
inspiration and guidance.  Before you realise it, you start writing code
 | 
						|
in Elisp and can one day share it with others.
 | 
						|
 | 
						|
What I have learnt over the past 2.5 years as an Emacs user is that if
 | 
						|
you go from scratch and are meticulous in your approach, you will need a
 | 
						|
few days or weeks before everything starts to make sense.  After that
 | 
						|
initial awkward phase during which you familiarise yourself with the
 | 
						|
basics, everything else will become easier to learn.  It is a matter of
 | 
						|
gaining more experience, one step at a time.  As with every field of
 | 
						|
expertise, Emacs expects you to work for it and to earn it.  For me that
 | 
						|
is worth it.  In terms of being malleable in a consistent way and
 | 
						|
transparent in what it does, Emacs is in a league of its own.
 | 
						|
 | 
						|
In conclusion, Emacs allowed me to assert control over a great portion
 | 
						|
of my quotidian computing.  It helped me grow out of the state of
 | 
						|
ignorance I was in; a state that rendered me powerless to use the
 | 
						|
computer exactly how I wanted.  For that I am grateful.  I now consider
 | 
						|
it my duty to contribute back to this wonderful project and community.
 | 
						|
 | 
						|
Thanks for your attention!  Special thanks to the EmacsConf volunteers!
 | 
						|
</code></pre> |