From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: James Lu Newsgroups: gmane.emacs.devel Subject: Re: How to make Emacs popular again. Date: Mon, 28 Sep 2020 14:12:39 -0400 Message-ID: References: <20200926163008.GS1349@protected.rcdrun.com> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="000000000000cd085c05b0639e32" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="37090"; mail-complaints-to="usenet@ciao.gmane.io" To: Jean Louis , emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Mon Sep 28 20:20:33 2020 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kMxlI-0009Xq-Rd for ged-emacs-devel@m.gmane-mx.org; Mon, 28 Sep 2020 20:20:33 +0200 Original-Received: from localhost ([::1]:58760 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kMxlH-0001Ya-Qa for ged-emacs-devel@m.gmane-mx.org; Mon, 28 Sep 2020 14:20:31 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:35634) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kMxeK-0006SX-AS for emacs-devel@gnu.org; Mon, 28 Sep 2020 14:13:20 -0400 Original-Received: from mail-ot1-x32a.google.com ([2607:f8b0:4864:20::32a]:46408) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kMxeH-0006cP-6q for emacs-devel@gnu.org; Mon, 28 Sep 2020 14:13:19 -0400 Original-Received: by mail-ot1-x32a.google.com with SMTP id 95so1832940ota.13 for ; Mon, 28 Sep 2020 11:13:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to; bh=VRnjCShaeUYDzorVVFxAy/qcpB8QrSWYyPhmNvQjzMQ=; b=H7rCoQk4cqbIHTFStS3orEuYPvLsx5ZPYGX2jYXrBrssWsQicfz6DihhmcKLedQjpP r2ZnlUkW5HP/hclPo+nyHJHg3yLnJ+QWXPrC/dGVKb15LV4SWRODWwqp0Lsk/FOVuzdN PBzrG4zVwisLuwtxow6VTgaw7jBVB7wnQbKMymivf27Jc9y/FBqQprRHhP0yhYuUPUCk SQPQFND9DzuZ/1OukGb35XkIBzsufsFk3sqQKWaTSaw9d1BVzyCFfjq/XCdt2OyzksJ/ Ze+15G4xl9WykQMaTrRpkZfaDAmnamUA8nqNdAGpKepHuiB5biSD7qjxIYPmIhnRAhR8 Auyw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=VRnjCShaeUYDzorVVFxAy/qcpB8QrSWYyPhmNvQjzMQ=; b=K9VK7w6+8JVGvjnFXfdUQHw2XG9DNvsmeGWfrRUH8uYRB8TJStW2aVDF6TXM8bCuc3 QeyPwQxCtHdalSJ+uhx1XB/B0HFNNQsBjF0WSHvG1oETzttIkQfyzadSJuNkzUtSAzTa /E6ruzaFD23vN75QItmMsXdVU5T1VBVzeRjWPXdrsxfHxL+XT+clnsRFw4CptEWGq3Fg mgllrsMo6AzGIl4P5eSKrz7ox/REUcPSkTHj1uwn0g1qt2V3Inr51kMvWvNee+evO2q7 /98SeLIK0nnqj7g0TGilTm82X37iyE4eocaHwRDZGGNX4045XBNmRsXrvc/7h97YNALb 7kGg== X-Gm-Message-State: AOAM531RZtthAkHYvhiMNqH9qCFBj043Q/SlmltrELB3EELHMlxATQhr DcR62QmwiD44y41Ovt7MGuPmZpHIzeeRdB++TZfqwcpKgVI= X-Google-Smtp-Source: ABdhPJzgDToQX+S06z8qzjUiEnHMfCwj4dwWABktUWmhW6GkLdxJd9Y7kIdtvAHH9vbm+dIAGFflsMynnGUiHtKRnQA= X-Received: by 2002:a05:6830:1e8a:: with SMTP id n10mr138480otr.371.1601316796040; Mon, 28 Sep 2020 11:13:16 -0700 (PDT) In-Reply-To: <20200926163008.GS1349@protected.rcdrun.com> Received-SPF: pass client-ip=2607:f8b0:4864:20::32a; envelope-from=jamtlu@gmail.com; helo=mail-ot1-x32a.google.com X-detected-operating-system: by eggs.gnu.org: No matching host in p0f cache. That's all we know. X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:256633 Archived-At: --000000000000cd085c05b0639e32 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable I agree greatly with what Jean Louis said here. On Sat, Sep 26, 2020 at 12:30 PM Jean Louis wrote: > * James Lu [2020-09-26 16:40]: > > I am a new (2020 started) Emacs user. > > > > Sell customer support packages, so > > > 1) You can focus on gaining users giving more users computer user > > freedom and user empowerment. > > I understand what you mean. That is right and valid for any > software. And I am sure you mean it for interaction with the software. > > > 2) You can better understand the problems with Emacs' documentation > > and user interface > > Major problem there are abbreviations, words, terms, that are easily > misunderstood by users which may cause rejections. > > If I am faced with a Chinese menu and I do not speak Chinese, > obviously this will cause rejection and I will soonest possible stop > using such editor. For a Chinese person, that editor or piece of > software may become best thing they found and they may love it. > > By introducing a lot of Chinese-like terminology, let us call it > simply potential misunderstoods, users are rejecting whatever they > have in front of them. > > The remedy is already there, is it just not good enough. Good example > of remedy are tooltips. Example is what I have here on the mode line: > > -:**- > > So that is where the misunderstoods start, with -:**- so that looks > like Chinese to me, even though I know what it means as experienced > Emacs user. But from a view point of empowering a user, I have no clue > how is that empowering me. > > If I move the mouse point there to the first - I can see following > words inside of a tooltip: > > Buffer coding system (multi-byte): undecided-unix > Mouse-1: describe coding system > Mouse-3: set coding system > > So it is a tip, it should tell me some indications, but words are too > hard for new users, one could ask himself what really applies to that > definition of "buffer": > > * Overview of noun buffer > > The noun buffer has 7 senses (first 1 from tagged texts) > 1. (8) buffer -- ((chemistry) an ionic compound that resists changes in > its pH) > 2. buffer zone, buffer -- (a neutral zone between two rival powers that i= s > created in order to diminish the danger of conflict) > 3. fender, buffer, cowcatcher, pilot -- (an inclined metal frame at the > front of a locomotive to clear the track) > 4. buffer, buffer storage, buffer store -- ((computer science) a part of > RAM used for temporary storage of data that is waiting to be sent to a > device; used to compensate for differences in the rate of flow of data > between components of a computer system) > 5. buffer, polisher -- (a power tool used to buff surfaces) > 6. buffer, fender -- (a cushion-like device that reduces shock due to an > impact) > 7. buff, buffer -- (an implement consisting of soft material mounted on a > block; used for polishing (as in manicuring)) > > So there are plenty of ways how new user can get misunderstoods. Do > not assume that such has a ready Wordnet dictionary to do > {M-x wordnut-search} like I do. They most probably don't have it. > > A tooltip in Emacs user interface should have the option to be > "caught" or examined, that it does not disappear, so that now user can > click on words such as "buffer" and find out the definition of it, > that user can understand what means "coding" in the context of buffer > coding system, that user can understand what means "multi-byte", and > what does it mean UNIX and what does it mean "undecided-unix", as if > user does not know that, there is no reason or point to use the > Mouse-1 to describe the coding system, as it really does not describe > nothing to the user: > > > - -- undecided-unix (alias: unix) > > Why is it undecided?! It is unclear. Why is alias "unix"?! It is > unclear, why not call it unix?! Why is it alias? What is alias? > Consider my questions with !? hypothetical questions that user could > be asking. > > > No conversion on encoding, automatic conversion on decoding. > > This sentence says nothing. It is clear to developer what it means, > but is unclear to average user. > > Conversion of what?! It is not specified. > > Encoding of what?! It is no specified. > > What would mean "automatic conversion"?! > > Decoding of what?! > > > Type: undecided (do automatic conversion) > > Who is undecided?! User or computer? If it is undecided why is it > automatic?! > > > EOL type: LF > > No definition for this if I do: "!define EOL" inside of > duckduckgo.com, I get this: https://www.thefreedictionary.com/EOL > > For LF I am asking myself, is it left field or low frequency: > https://www.thefreedictionary.com/LF > > Of course I do know what Line Feed means, but average beginner will > not know it. > > And there is no recourse within Emacs to find out about it. > > Thus to conclude my example here: > > - Making Emacs friendlier will be easier with a built-in dictionary > that will describe any terminology in easy English > > - all tooltips, all words, should be describable and definable by > clicking the mouse or choosing {M-x define-word} or similar > function. Just all. I am talking about easy English description of > Menus, it is analogous to {C-h k} to describe the menu, but in easy > way, without confusing the user more and more. > > Another practical example of nonsense within Emacs, but don't take me > for a negative critic, I like Emacs now so much more because of > nonsense descriptions, but look at this: > > - I press {C-h k} and then choose Tools -> Search Files (Grep)... > > Side comment: if it runs "grep" command, I don't know why it is > capitalized, but alright. > > I wanted to find out about "Search Files..." so the menu option is > pretty clear, it helps me search files, but then description about > "Search files" does not even mention the word "search". > > It mentions other things, like I would not know why is it > so written, tools, grep, it does not help me understand what "grep" > means, I cannot find it in my Wordnet dictionary as definition, and > the the Duck is redirecting "!define grep" to Unix word, so I have no > option to understand what "grep" would mean, it is confusing me and I > am prone to reject it. > > Look what I read as description of a "Search Files (Grep...)" option > menu: > > > > runs the command grep (found in global-map), > > which is an autoloaded interactive compiled Lisp function in > > =E2=80=98grep.el=E2=80=99. > > > It is bound to . > > > (grep COMMAND-ARGS) > > > Probably introduced at or before Emacs version 1.4. > > > Run Grep with user-specified COMMAND-ARGS. > > The output from the command goes to the "*grep*" buffer. > > > While Grep runs asynchronously, you can use C-x ` (M-x next-error), > > or RET in the *grep* buffer, to go to the lines where Grep found > > matches. To kill the Grep job before it finishes, type C-c C-k. > > > Noninteractively, COMMAND-ARGS should specify the Grep command-line > > arguments. > > > For doing a recursive =E2=80=98grep=E2=80=99, see the =E2=80=98rgrep=E2= =80=99 command. For running > > Grep in a specific directory, see =E2=80=98lgrep=E2=80=99. > > > This command uses a special history list for its COMMAND-ARGS, so you > > can easily repeat a grep command. > > > A prefix argument says to default the COMMAND-ARGS based on the current > > tag the cursor is over, substituting it into the last Grep command > > in the Grep command history (or into =E2=80=98grep-command=E2=80=99 if = that history > > list is empty). > > > [back] > > For a new user, only two things make sense there: > > - The term "Search files", that is what makes sense > > - within the description of menu option "Search files" the only thing > that makes sense is [back] link > > > because people will email you support questions on them, > > Emacs should have a built in support question system, so that every > user can straight send a support question, and which would be answered > by using referenced or hyperlinked easy English, and such question > would be then automatically placed on some website, or integrated > into Emacs, so next users could then inquire answers in easier and > easier manner. > > Jean > --000000000000cd085c05b0639e32 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
I agree = greatly with what Jean Louis said here.

On Sat, Sep 26, 2020 at 12:30 = PM Jean Louis <bugs= @rcdrun.com> wrote:
* James Lu <jamtlu@gmail.com> [2020-09-26 16:40]:
> I am a new (2020 started) Emacs user.
>
> Sell customer support packages, so

> 1) You can focus on gaining users giving more users computer user
> freedom and user empowerment.

I understand what you mean. That is right and valid for any
software. And I am sure you mean it for interaction with the software.

> 2) You can better understand the problems with Emacs' documentatio= n
> and user interface

Major problem there are abbreviations, words, terms, that are easily
misunderstood by users which may cause rejections.

If I am faced with a Chinese menu and I do not speak Chinese,
obviously this will cause rejection and I will soonest possible stop
using such editor. For a Chinese person, that editor or piece of
software may become best thing they found and they may love it.

By introducing a lot of Chinese-like terminology, let us call it
simply potential misunderstoods, users are rejecting whatever they
have in front of them.

The remedy is already there, is it just not good enough. Good example
of remedy are tooltips. Example is what I have here on the mode line:

=C2=A0-:**-

So that is where the misunderstoods start, with -:**- so that looks
like Chinese to me, even though I know what it means as experienced
Emacs user. But from a view point of empowering a user, I have no clue
how is that empowering me.

If I move the mouse point there to the first - I can see following
words inside of a tooltip:

Buffer coding system (multi-byte): undecided-unix
Mouse-1: describe coding system
Mouse-3: set coding system

So it is a tip, it should tell me some indications, but words are too
hard for new users, one could ask himself what really applies to that
definition of "buffer":

* Overview of noun buffer

The noun buffer has 7 senses (first 1 from tagged texts)
1. (8) buffer -- ((chemistry) an ionic compound that resists changes in its= pH)
2. buffer zone, buffer -- (a neutral zone between two rival powers that is = created in order to diminish the danger of conflict)
3. fender, buffer, cowcatcher, pilot -- (an inclined metal frame at the fro= nt of a locomotive to clear the track)
4. buffer, buffer storage, buffer store -- ((computer science) a part of RA= M used for temporary storage of data that is waiting to be sent to a device= ; used to compensate for differences in the rate of flow of data between co= mponents of a computer system)
5. buffer, polisher -- (a power tool used to buff surfaces)
6. buffer, fender -- (a cushion-like device that reduces shock due to an im= pact)
7. buff, buffer -- (an implement consisting of soft material mounted on a b= lock; used for polishing (as in manicuring))

So there are plenty of ways how new user can get misunderstoods. Do
not assume that such has a ready Wordnet dictionary to do
{M-x wordnut-search} like I do. They most probably don't have it.

A tooltip in Emacs user interface should have the option to be
"caught" or examined, that it does not disappear, so that now use= r can
click on words such as "buffer" and find out the definition of it= ,
that user can understand what means "coding" in the context of bu= ffer
coding system, that user can understand what means "multi-byte", = and
what does it mean UNIX and what does it mean "undecided-unix", as= if
user does not know that, there is no reason or point to use the
Mouse-1 to describe the coding system, as it really does not describe
nothing to the user:

> - -- undecided-unix (alias: unix)

Why is it undecided?! It is unclear. Why is alias "unix"?! It is<= br> unclear, why not call it unix?! Why is it alias? What is alias?
Consider my questions with !?=C2=A0 hypothetical questions that user could<= br> be asking.

> No conversion on encoding, automatic conversion on decoding.

This sentence says nothing. It is clear to developer what it means,
but is unclear to average user.

Conversion of what?! It is not specified.

Encoding of what?! It is no specified.

What would mean "automatic conversion"?!

Decoding of what?!

> Type: undecided (do automatic conversion)

Who is undecided?! User or computer? If it is undecided why is it
automatic?!

> EOL type: LF

No definition for this if I do: "!define EOL" inside of
duck= duckgo.com, I get this: https://www.thefreedictionary.com/E= OL

For LF I am asking myself, is it left field or low frequency:
https://www.thefreedictionary.com/LF

Of course I do know what Line Feed means, but average beginner will
not know it.

And there is no recourse within Emacs to find out about it.

Thus to conclude my example here:

- Making Emacs friendlier will be easier with a built-in dictionary
=C2=A0 that will describe any terminology in easy English

- all tooltips, all words, should be describable and definable by
=C2=A0 clicking the mouse or choosing {M-x define-word} or similar
=C2=A0 function. Just all. I am talking about easy English description of =C2=A0 Menus, it is analogous to {C-h k} to describe the menu, but in easy<= br> =C2=A0 way, without confusing the user more and more.

Another practical example of nonsense within Emacs, but don't take me for a negative critic, I like Emacs now so much more because of
nonsense descriptions, but look at this:

- I press {C-h k} and then choose Tools -> Search Files (Grep)...

Side comment: if it runs "grep" command, I don't know why it = is
capitalized, but alright.

I wanted to find out about "Search Files..." so the menu option i= s
pretty clear, it helps me search files, but then description about
"Search files" does not even mention the word "search".=

It mentions other things, like <menu-bar> I would not know why is it<= br> so written, tools, grep, it does not help me understand what "grep&quo= t;
means, I cannot find it in my Wordnet dictionary as definition, and
the the Duck is redirecting "!define grep" to Unix word, so I hav= e no
option to understand what "grep" would mean, it is confusing me a= nd I
am prone to reject it.

Look what I read as description of a "Search Files (Grep...)" opt= ion
menu:


> <menu-bar> <tools> <grep> runs the command grep (fou= nd in global-map),
> which is an autoloaded interactive compiled Lisp function in
> =E2=80=98grep.el=E2=80=99.

> It is bound to <menu-bar> <tools> <grep>.

> (grep COMMAND-ARGS)

>=C2=A0 =C2=A0Probably introduced at or before Emacs version 1.4.

> Run Grep with user-specified COMMAND-ARGS.
> The output from the command goes to the "*grep*" buffer.

> While Grep runs asynchronously, you can use C-x ` (M-x next-error), > or RET in the *grep* buffer, to go to the lines where Grep found
> matches.=C2=A0 To kill the Grep job before it finishes, type C-c C-k.<= br>
> Noninteractively, COMMAND-ARGS should specify the Grep command-line > arguments.

> For doing a recursive =E2=80=98grep=E2=80=99, see the =E2=80=98rgrep= =E2=80=99 command.=C2=A0 For running
> Grep in a specific directory, see =E2=80=98lgrep=E2=80=99.

> This command uses a special history list for its COMMAND-ARGS, so you<= br> > can easily repeat a grep command.

> A prefix argument says to default the COMMAND-ARGS based on the curren= t
> tag the cursor is over, substituting it into the last Grep command
> in the Grep command history (or into =E2=80=98grep-command=E2=80=99 if= that history
> list is empty).

> [back]

For a new user, only two things make sense there:

- The term "Search files", that is what makes sense

- within the description of menu option "Search files" the only t= hing
=C2=A0 that makes sense is [back] link

> because people will email you support questions on them,

Emacs should have a built in support question system, so that every
user can straight send a support question, and which would be answered
by using referenced or hyperlinked easy English, and such question
would be then automatically placed on some website, or integrated
into Emacs, so next users could then inquire answers in easier and
easier manner.

Jean
--000000000000cd085c05b0639e32--