unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Christopher Lemmer Webber <cwebber@dustycloud.org>
To: Karl Fogel <kfogel@red-bean.com>
Cc: Emacs developers <emacs-devel@gnu.org>, ndame <ndame@protonmail.com>
Subject: Re: What is the most useful potential feature which Emacs lacks?
Date: Thu, 14 May 2020 12:35:47 -0400	[thread overview]
Message-ID: <87sgg2scd8.fsf@dustycloud.org> (raw)
In-Reply-To: <87y2pvqhuj.fsf@red-bean.com>

Karl Fogel writes:

> If the proposed starter pack is going to mitigate effects like that
> for newcomers, it can only do so by making the keybound functionality
> space sparser -- which of course then lowers the reward-for-investment
> rate as the user gains expertise.  How do you propose solving that?
> Do we make an explicit "I'm ready to leave newcomer mode now" command?
> But that requires the user to make a guess about the moment of their
> graduation from newcomer to non-newcomer -- and this moment is
> mythical, since the learning is a continuous process with no discrete
> boundary.

I've talked about this with a friend who is a prominent Blender user;
the program Blender has a similar issue where it has a perceived amount
of UI complexity; a lot of it also because things were foreign.  (It
also has not quite as much but a similar-ish level of extensibility.)

Users for years complained that the program is inaccessible.  Apparently
they did go through many UI improvements and eventually the UI did get
much easier to use (last time I opened it up though, since my experience
was from much older versions, *I* was confused... eg they switched the
order of right and left mouse buttons to be what other programs do).

For years, many of the suggestions for improving it though were around
changing or removing features.  It seems that recently they have made
many changes and managed to not remove features... I wonder how they did
it?  New users seem to be increasingly happy with the changes.  But of
course, some still complain that it's "too complicated", but a certain
amount of this is a domain problem: Blender chooses to be a powerful 3d
tool, and to a certain degree there will always be a certain amount of
overwhelmingness to it that's unavoidable.  Notably, this is also true
with the command line, which is also something that many have to become
convinced to become unafraid of.

Here are two lessons that I've thought about since those Blender
conversations though:

 - One thought is: you can change the defaults to be not what the
   current group is familiar with, but what matches the
   mainstream... and do compatibility in the *opposite* direction.  What
   if instead of turning on cua-mode, you turn on legacy-mode?

   I know this won't be a popular choice here, but it's worth proposing.
   When I opened Blender again, I reversed the mouse buttons because it
   was more "what I was used to from the old days" since Blender (like
   Emacs) made some convention decisions before there was a "mainstream
   choice".  But I could set it back.

   Notably this happened in a small way in emacs already: the scrollbars
   moved from the left to the right by default.  Well!  I rebound them
   back.  But I'm glad they're in the right by default now: that's the
   right decision.

   Still, this is maybe a harder sell for eg many of Emacs' keybindings,
   and the history list is very long on things like "kill"... I suspect
   the current community would be up in arms too much to accept such
   change.  But it's worth proposing the complete alternative.

   Let's not forget: some ideas in emacs are the way they are because
   they're more powerful.  Some of them are the way they are because
   Emacs predates modern UIs.  Maybe the result for what we choose to
   (not) do is the same.  But we shouldn't forget that these are
   (sometimes, not always) two different things.

 - An alternate line of thinking mentioned by my friend, frustrated by
   the calls to "streamline Blender", was to bring up a talk or paper or
   something they heard about Super Mario Bros being an excellent first
   UI: the game has a significant amount of complexity, but that
   complexity is *gradually introduced to the player*, and in an
   intuitive way.

   I don't know what talk or paper or article they were talking about,
   but this article has some degree of summary:

     https://medium.com/swlh/the-perfect-game-tutorial-analyzing-super-marios-level-design-92f08c28bdf7

   You enter the world, you find out you can move to the right.  But you
   keep moving to the right, you run into your first enemy and die.

   You discover jump.  You try to jump, you accidentally hit this block
   above you, it does something interesting.

   You get far enough along in the level, you've absorbed those patterns
   already... so now you get to encounter new challenges.

   Eventually new game elements being introduced becomes more rare, and
   instead you reach the level of combinatorial introduction of elements
   together.

What I like about the latter approach is it doesn't suggest needing to
switch between a binary transition point of "beginner mode" and "expert
mode".  Instead, you have a gradual "just in time" introduction of
complexity.

Now, how to map that to Emacs?  I'm not sure yet... but maybe it's a
perspective worth starting from that allows for easing in newcomers
without throwing out expressive power.

Or maybe I just play too many video games, and that's why I appreciate
the analogy. :)

 - Chris



  parent reply	other threads:[~2020-05-14 16:35 UTC|newest]

Thread overview: 188+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-11 20:09 What is the most useful potential feature which Emacs lacks? ndame
2020-05-12  6:57 ` Arthur Miller
2020-05-12  7:13   ` ndame
2020-05-12 12:54     ` Stefan Kangas
2020-05-12 13:07       ` ndame
2020-05-12 14:56         ` Arthur Miller
2020-05-13  0:39   ` HaiJun Zhang
2020-05-13  1:34     ` Eduardo Ochs
2020-05-13  1:50       ` Eduardo Ochs
2020-05-12 10:00 ` H. Dieter Wilhelm
2020-05-12 11:10   ` Michael Albinus
2020-05-13  3:55     ` Richard Stallman
2020-05-13 10:32       ` Michael Albinus
2020-05-14  5:11         ` Richard Stallman
2020-05-14 10:34           ` Michael Albinus
2020-05-15  3:25             ` Richard Stallman
2020-05-15  8:15               ` Michael Albinus
2020-05-16  4:18                 ` Richard Stallman
2020-05-16 22:07                   ` H. Dieter Wilhelm
2020-05-18  3:45                     ` Richard Stallman
2020-05-18  8:05                       ` Tramp and crypted files (was: What is the most useful potential feature which Emacs lacks?) Michael Albinus
2020-05-19  4:01                         ` Richard Stallman
2020-05-19 14:38                           ` Tramp and crypted files Michael Albinus
2020-05-20  4:00                             ` Richard Stallman
2020-05-19  8:51                         ` Deus Max
2020-05-19 14:48                           ` Michael Albinus
2020-05-20  8:27                             ` Deus Max
2020-05-20  8:49                               ` Michael Albinus
2020-05-20 17:49                                 ` Deus Max
2020-05-20 19:09                                   ` Michael Albinus
2020-05-25 18:48                               ` Michael Albinus
2020-05-26  4:13                                 ` Richard Stallman
2020-05-26  7:13                                   ` Michael Albinus
2020-05-27  3:09                                     ` Richard Stallman
2020-05-28 13:05                                 ` Deus Max
2020-05-29  9:16                                   ` Michael Albinus
2020-05-29 16:33                                     ` Deus Max
2020-06-07 15:08                                       ` Michael Albinus
2020-06-13 12:06                                         ` Deus Max
2020-06-13 13:15                                           ` Michael Albinus
2020-05-29 18:22                                     ` Deus Max
2020-05-17  8:28                   ` What is the most useful potential feature which Emacs lacks? Michael Albinus
2020-05-12 11:57   ` Eric S Fraga
2020-05-12 15:34     ` Michael Albinus
2020-05-12 16:33       ` Eric S Fraga
2020-05-12 17:39         ` Tramp nextcloud (was: What is the most useful potential feature which Emacs lacks?) Michael Albinus
2020-05-12 18:12           ` Tramp nextcloud H. Dieter Wilhelm
2020-05-13  8:59           ` Eric S Fraga
2020-05-13  9:33             ` Tramp nextcloud (SOLVED) Eric S Fraga
2020-05-13 10:45               ` Michael Albinus
2020-05-13 11:10                 ` Eric S Fraga
2020-05-12 15:04   ` What is the most useful potential feature which Emacs lacks? Arthur Miller
2020-05-12 16:00   ` Drew Adams
2020-05-12 12:30 ` Helmut Eller
2020-05-13  1:22   ` Jose A. Ortega Ruiz
     [not found]     ` <5AYrQ3kvagEiLsXcUuMZvkDj1gBHT4YnJyVCX6RsvMkayS1ZbGWk18lJOyo_m8XanhsUygUtEqZw8OOOQOlwkg==@protonmail.internalid>
2020-05-13  2:45     ` Stefan Monnier
2020-05-13  3:58       ` jao
2020-05-13 23:12   ` João Távora
2020-05-14  0:04     ` Stefan Kangas
2020-05-14 10:08       ` Helmut Eller
2020-05-14 10:17         ` tomas
2020-05-14 10:34           ` Robert Pluim
2020-05-14 10:40             ` tomas
2020-05-15  3:25               ` Richard Stallman
2020-05-15  3:39                 ` Dmitry Gutov
2020-05-15  3:25               ` Richard Stallman
2020-05-15  3:51                 ` Dmitry Gutov
2020-05-16  4:18                   ` Richard Stallman
2020-05-16  9:29                     ` Dmitry Gutov
2020-05-17  2:55                       ` Richard Stallman
2020-05-15  3:17       ` Richard Stallman
2020-05-15  6:56         ` Eli Zaretskii
2020-05-16  4:18           ` Richard Stallman
2020-05-16  7:13             ` Eli Zaretskii
2020-05-16 12:56               ` Stefan Monnier
2020-05-17  2:56               ` Richard Stallman
2020-05-17  7:22                 ` Andreas Schwab
2020-05-18  3:42                 ` Richard Stallman
2020-05-18 14:29                   ` Eli Zaretskii
2020-05-19  3:56                     ` shr.el rename? Richard Stallman
2020-05-19  5:50                       ` Drew Adams
2020-05-19 12:41                       ` Lars Ingebrigtsen
2020-05-19 15:04                         ` Stefan Monnier
2020-05-19 16:47                           ` T.V Raman
2020-05-20  3:59                           ` Richard Stallman
2020-05-20  4:02                         ` Richard Stallman
2020-05-18 15:20             ` What is the most useful potential feature which Emacs lacks? Filipp Gunbin
2020-05-18 15:26               ` Eli Zaretskii
2020-05-15  9:10         ` Robert Pluim
2020-05-15 10:21           ` Eli Zaretskii
2020-05-15 11:07             ` Robert Pluim
2020-05-15 11:28               ` Eli Zaretskii
2020-05-15 11:49                 ` Robert Pluim
2020-05-15 11:58                   ` Eli Zaretskii
2020-05-15 12:14                     ` Robert Pluim
2020-05-15 12:56                       ` Eli Zaretskii
2020-05-15 15:22                       ` Stefan Monnier
2020-05-15 15:28                         ` Robert Pluim
2020-05-16  4:18               ` Richard Stallman
2020-05-16  4:17           ` Richard Stallman
2020-05-16  6:50             ` Andreas Schwab
2020-05-16  8:24               ` Yuri Khan
2020-05-17  2:56               ` Richard Stallman
2020-05-14 11:57   ` Dmitry Gutov
2020-05-12 12:44 ` Christopher Lemmer Webber
2020-05-13 16:36   ` Karl Fogel
2020-05-14  3:01     ` Christopher Lemmer Webber
2020-05-14  4:08       ` Karl Fogel
2020-05-14 10:01         ` Robert Pluim
2020-05-14 16:35         ` Christopher Lemmer Webber [this message]
2020-05-17  1:31           ` Dmitry Gutov
2020-05-18  3:43             ` Richard Stallman
2020-05-15  3:16         ` Richard Stallman
2020-05-28  4:00           ` Karl Fogel
2020-05-28 13:18             ` Stefan Monnier
2020-05-28 17:19               ` Karl Fogel
2020-05-28 18:05                 ` Drew Adams
2020-05-28 18:45                 ` Dmitry Gutov
2020-05-28 20:52                   ` Alan Third
2020-05-28 21:02                     ` Stefan Monnier
2020-05-28 21:10                       ` Alan Third
2020-05-28 21:27                         ` andres.ramirez
2020-05-28 21:54                         ` Stefan Monnier
2020-05-29 13:24                         ` Arthur Miller
2020-05-28 21:14                       ` Joost Kremers
2020-05-29 13:24                         ` Arthur Miller
2020-05-29  1:24                       ` Karl Fogel
2020-05-29  3:36                         ` Drew Adams
2020-05-29  3:06                     ` Richard Stallman
2020-05-29  3:41                       ` Drew Adams
2020-05-29 13:19                       ` Arthur Miller
2020-05-30  5:23                         ` Thibaut Verron
2020-05-29 13:11                     ` Arthur Miller
2020-05-13 17:48 ` ndame
2020-05-14  1:15   ` Arthur Miller
2020-05-14  4:10     ` ndame
2020-05-14  4:28       ` Arthur Miller
2020-05-15 10:38       ` Eli Zaretskii
2020-05-17  5:37         ` ndame
2020-05-17 12:42           ` Stefan Kangas
2020-05-17 13:18             ` Arthur Miller
2020-05-19  3:47               ` Richard Stallman
2020-05-17 22:03             ` chad
2020-05-13 21:05 ` Vasilij Schneidermann
2020-05-14 14:35 ` Björn Lindqvist
2020-06-03 11:39 ` What is the most useful potential feature which Emacs lacks? A: Autocompletion Konstantin Kharlamov
2020-06-03 12:36   ` Dmitry Gutov
2020-06-03 12:50     ` Konstantin Kharlamov
2020-06-03 13:10       ` Dmitry Gutov
2020-06-03 13:59         ` Konstantin Kharlamov
2020-06-03 14:21           ` Dmitry Gutov
2020-06-03 14:40             ` Konstantin Kharlamov
2020-06-03 18:49               ` Dmitry Gutov
2020-06-03 14:49   ` Drew Adams
2020-06-03 20:15     ` Konstantin Kharlamov
2020-06-03 20:36       ` Drew Adams
2020-06-03 20:49         ` Drew Adams
  -- strict thread matches above, loose matches on Subject: below --
2020-05-12  7:11 What is the most useful potential feature which Emacs lacks? Zhu Zihao
2020-05-12  7:22 ndame
2020-05-27 15:58 Van Ly
2020-05-28  3:13 ` Richard Stallman
2020-05-30  7:17   ` Van Ly
2020-05-31  7:10     ` Richard Stallman
2020-05-31 10:01       ` Van Ly
2020-05-31 12:49         ` excalamus--- via Emacs development discussions.
2020-06-01  3:54           ` Richard Stallman
2020-06-01  5:21             ` Yuri Khan
2020-06-02  2:55               ` Richard Stallman
2020-06-02  3:57             ` Karl Fogel
2020-06-02  5:15               ` Ihor Radchenko
2020-06-02 13:42               ` Stefan Monnier
2020-06-01  9:11           ` Bastien
2020-06-01 15:03             ` Eli Zaretskii
2020-06-01 23:32               ` Bastien
2020-06-01 23:50                 ` Jean-Christophe Helary
2020-06-06  9:42                   ` Eli Zaretskii
2020-06-06  9:58                     ` tomas
2020-06-06 10:11                       ` Eli Zaretskii
2020-06-06 10:29                         ` tomas
2020-06-06 14:19                         ` Stefan Monnier
2020-06-06 14:58                           ` Arthur Miller
2020-06-06 20:18                         ` tomas
2020-06-06 22:20                           ` Stefan Monnier
2020-06-06  9:59                     ` Thibaut Verron
2020-06-06 10:12                       ` Eli Zaretskii
2020-06-06 10:18                       ` tomas
2020-06-06 12:05                     ` Jean-Christophe Helary
2021-03-04 11:46 Evgeny Zajcev

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87sgg2scd8.fsf@dustycloud.org \
    --to=cwebber@dustycloud.org \
    --cc=emacs-devel@gnu.org \
    --cc=kfogel@red-bean.com \
    --cc=ndame@protonmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).