[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Emacs history, and "Is Emacs difficult to learn?"

From: Emanuel Berg
Subject: Re: Emacs history, and "Is Emacs difficult to learn?"
Date: Tue, 30 Jul 2013 13:38:18 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.4 (gnu/linux)

Rustom Mody <> writes:

> I started using Emacs in the early 90s because I wanted
> something better than an interactive shell for teaching
> interaction with a (pre)haskell interpreter.  Dunno if comint
> mode existed then -- I at least did not know about it.  Wrote my
> own mode which used to crash not just Emacs but even Linux in
> interesting ways! Couple of years later, found scheme-mode
> written on top of comint and search-n-replaced it for my
> purposes.

A couple of years back a made a very small project in Haskell
[1]. I used Emacs, of course, and cannot recall any
problems. Wasn't there even a Haskell mode to deal with it?

Haskell is a bit too advanced and ambitious for me. Programming
isn't pure and it will never be. Recursion in every conceivable
direction, set functions, and a phobia for "side-effects", and all
other functional programming hangups, they just get me thinking to
much *how* I do things, instead of the desired balance of how,
what, why, when, etc.

> I am frequently asked to use something more 'modern/reasonable'
> etc than Emacs (Eclipse/sublime-text etc).

I did Eclipse once on a project with some other people. We were
all on the same level so I couldn't force them to use Emacs, but
regardless of any lack of support for Java in Emacs (which by the
way I never noticed, but thankfully my Java experience is limited)
-- regardless of that I'd prefer Emacs without the slightest
doubt, because Eclipse really got my blood boiling with
frustration. I remember my and my Spanish friend wading through
the jungle of menus for a good 15 minutes just to get to the place
to increase the font *size*. But even though he was from Spain, I
was the guy who lost my head, because I was so used to everything
just working in Emacs.

> Some of the reasons are simply noob-acclimatization issues like
> tutorial uses C-f/b/n/p instead of cursor keys, non-use of cua
> keystrokes etc.

While I think the Emacs kill ring, and the shell kill ring for
that matter, is a lot better than the Windows/Mac OS cua
"clipboard" (or whatever they call it), the cursor keys (as you
mention) are the huge advantage because then you don't have to
reach all the time, and then reset, to make an edit. Instead, you
just type and type.

But to call it "keys" - the cursor movement keys in Windows and
Mac OS that correspond to Emacs keystrokes are but a subset of all
such Emacs functionality. Besides, there is always Elisp if you
need more.

I agree that this is the obstacle newcomers have to overcome, but
this is only a matter of patience. Or perhaps attitude: if they
start Emacs, and find their cua stuff doesn't work, and
immediately start hammering the Escape key in panic, and then
never use Emacs again, of course Emacs "sucks". If they don't do
that, they shouldn't have any problems.

Muscle memory is apt at learning. People that are right handed,
and get their right hand cut off in a machine, will be just as
good ping pong players with their left hand, in almost no time,
because not having a right hand will force them to do *everything*
(including opening doors) with their left. There is no better
sparring partner than necessity.

By the way, what you mention is what made me "fall" for Emacs, the
shortcuts, in combination with the US keyboard layout that I use
for typing. Some guys told me I should change, and I told them,
"Why? I don't care the US people have different shortcuts for the
programming special chars, I know the ones *I* have." But then I
changed, and I instantly (in one evening) realized that it is not
about "other" shortcuts, it is about *better* shortcuts. Emacs and
a new keyboard layout made for an all new, incredible typing and
programming experience.

> However some things are from the POV of an old user more
> crucial: poor support for refactoring - poor support for
> mainstream languages like Java


As for Java, I don't think it is a coincidence that Emacs offers
poor support for that... (Again, I never experienced that, but I
believe you.)

> which make it quite hard to sell Emacs in an Eclipse-d world

I gave up changing other people a long time ago. First, I never
succeeded even once, and believe me, I tried. Second, if I'd do
that all my efforts would amount to that, and I'd never do
anything productive at all (and be frustrated by failure on top of


Emanuel Berg - programmer (hire me! CV below)
computer projects:
internet activity:

reply via email to

[Prev in Thread] Current Thread [Next in Thread]