all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Dmitry Gutov <dgutov@yandex.ru>
To: Karl Fogel <kfogel@red-bean.com>
Cc: "Andreas Röhler" <andreas.roehler@online.de>, emacs-devel@gnu.org
Subject: Re: GNU Emacs raison d'etre
Date: Sun, 17 May 2020 04:28:52 +0300	[thread overview]
Message-ID: <d1b52baf-6940-a34e-baf8-f06906c891db@yandex.ru> (raw)
In-Reply-To: <87d077qfmm.fsf@red-bean.com>

On 14.05.2020 07:56, Karl Fogel wrote:

 > Any guiding principle can be misused, but that doesn't make it useless.

 > The particular misuses you cite above are speculative -- no one's
 > actually saying those things, as far as I'm aware.

Actually, those examples are closer to the discussions I have taken 
part in (let's not change xxx because existing users will complain; and 
the newbies will just have to get in line, the entry barrier is high 
anyway, who cares if they have to learn one more thing to get started).

On the flip side, I don't remember anybody propose to make key bindings 
less "staggered".

> In a reply to Christopher Lemmer Webber just now [1], I got a little bit more specific:
> 
>    > If we just say "Emacs should be easier for newcomers to learn",
>    > that's not a useful rallying cry IMHO.  If we say instead "Emacs
>    > should try to attract newcomers who have a higher-than-average
>    > probability of becoming high-investment users, and should explain
>    > early on to those newcomers what the road ahead looks like", *then*
>    > we have a high-level guiding principle we can actually use.

I think we already do (the rest flocks to #1, #2 and #4 popular 
options). No need to try harder in that direction.

> So there's some concrete guidance about *how* we might seek to improve the Getting Started guide (and other things like the Emacs web site, starter videos, etc):
> 
> * Tell newcomers up front that Emacs really starts to be worth it after a few years, not a few weeks.  Set expectations right from the start.

That feels like giving up. And "worth it" depends on personal 
expectations. From reading comments on Reddit, converts from Vim, for 
instance, try Spacemacs or Doom Emacs, and seemingly become satisfied in 
a matter of days.

> * Show them some of the abilities they will eventually have, so that they can see why it's worth it to make the investment.

Not sure what you have in mind here. If it's a "here's not an Emacs 
would solve a problem", this could turn into a useful tutorial for 
journeyman emacsers.

> * Also tell them about the ways in which Emacs may frustrate them along the way, and explain that those frustrations are common and are sometimes inevitably entangled with the same things that make Emacs winning in the long term.

Not a bad advice, but deciding on such a list in official documentation 
might not be easy (people have opinions). Once we do decide, it would be 
better to try to improve these things first.

> Ultimately, I personally find it helpful in thinking about how to teach Emacs and how to write packages.  Here is the principle, reworded slightly after a suggestion from H. Dieter Wilhelm:
> 
> "GNU Emacs's raison d'être is to be the text manipulation environment that best rewards sustained user investment."

I still don't like it. It either means "you don't get much until you 
struggle for a while" (which just sounds discouraging) and/or "no other 
program comes even close at text manipulation", which is... pretty 
conceited and kind of limited at the same time. I mean, Emacs is great 
and all, but I don't have "text manipulation" as the #1 goal in my life. 
Or even among top 10 goals.

The higher-level things one can implement with Emacs Lisp are a lot more 
interesting.

>> Are you sure that this particular aspect is _bad_ for new users, though?
> 
> Yes.  I am sure.
> 
> I've taught Emacs to a lot of people -- scores of them, at least; I don't keep track, but the sample size is large enough to be beyond merely anecdotal at this point.  I've watched newcomers run into the same obstacles over and over, and this particular obstacle is always one of the first they encounter.

Okay, but is it still a problem after they've tried Emacs for a day, for 
instance? For a week?

These periods of time would of course suggest Emacs is not ideal for 
total newbies, but they're not the kind of "sustained investment" you 
described either.

>> This part is expected of a professional tool, however, and the
>> experience for newcomers could be improved without taking away much
>>from the "oldies". See the 'transient' package, for example, recently 
>> proposed for inclusion on emacs-devel.
> 
> I don't have any experience using 'transient', so I'd need more explanation from you to understand what you meant by that part.  (I tried to understand 'transient' from reading [2] and [3], but unfortunately -- and somewhat surprisingly! -- the documentation at those pages does not give a single concrete example of transient's use.)

You press 'C-x', wait a while - and it pops up a window with the 
descriptions of all commands whose bindings start with 'C-x'. Same for 
all other "incomplete" key sequences. Looks pretty handy for beginners.

> However, your assertion that "the experience for newcomers could be improved without taking away much from the 'oldies'" is exactly what I'm arguing is not true.  I actually think we can't (much) improve this particular part of the experience for newcomers without taking away one of the things about Emacs that most rewards investment.
> 
> The newcomers who eventually *do* become experts do so in part by first stumbling across new commands accidentally (in that crowded keybinding space) and then using help tools like `C-h l' to see what they just did.  So one of the things we should prioritize is teaching newcomers how important those help facilities are and how to use them in a smart way.  I'm specifically saying that this is *more important for Emacs than it is for other editors*.  Sure, users of (say) the Atom editor should eventually know how to use the built-in help there too.  But it's a difference in prioritization: for Emacs users, using that built-in help is more important than it would be in other editors, and the methods and circumstances of using the help are different too.  So we should incorporate that fact i
 nto how we present Emacs to new users.

Yes, ok. Maybe this one is harder to improve that some others.

>> Some of them, probably. At this point, I think, there are still a lot
>> of decisions that would bring us closer to newcomer-friendliness while
>> keeping no worse high-investment compatibility.
> 
> That could be true, though I'm a bit more skeptical than you are.  In any case, it does not make the principle inoperative; it is consistent with the principle.
> 
> I believe we'll make better decisions if we keep in mind that "friendly to newcomers" is not, in itself, the primary goal.

It's not like extreme user-friendliness was ever a guiding principle 
here. :-)

In this we're, again, similar to other professional software.



  parent reply	other threads:[~2020-05-17  1:28 UTC|newest]

Thread overview: 277+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-08  8:26 Making Emacs popular again with a video Nathan Colinet
2020-05-08 10:39 ` Arthur Miller
2020-05-10 20:48   ` Nathan Colinet
2020-05-08 10:41 ` Stefan Kangas
2020-05-10 16:18   ` Nathan Colinet
2020-05-08 11:33 ` Eli Zaretskii
2020-05-10 20:32   ` Nathan Colinet
2020-05-11 22:59     ` Stefan Kangas
2020-05-09  7:50 ` Andreas Röhler
2020-05-10 20:57   ` Nathan Colinet
2020-05-12  3:12     ` Richard Stallman
2020-05-12  7:04       ` Arthur Miller
2020-05-12 13:59         ` Dmitry Gutov
2020-05-12 14:47           ` Arthur Miller
2020-05-12 16:08           ` Drew Adams
2020-05-13  4:01         ` Richard Stallman
2020-05-13  8:49           ` Arthur Miller
2020-05-14  5:14             ` Richard Stallman
2020-05-14 10:22               ` Arthur Miller
2020-05-14 10:55               ` Robert Pluim
2020-05-15  3:25                 ` Richard Stallman
2020-05-15  7:55                   ` Arthur Miller
2020-05-15 10:11                     ` Eli Zaretskii
2020-05-15 10:43                       ` Arthur Miller
2020-05-15 11:23                         ` Eli Zaretskii
2020-05-15 19:15                     ` H. Dieter Wilhelm
2020-05-15 18:41                   ` H. Dieter Wilhelm
2020-05-22 19:09                   ` Ben McGinnes
     [not found]                     ` <E1jcLVP-0003SB-II@fencepost.gnu.org>
2020-05-24 19:16                       ` Ben McGinnes
2020-05-14 14:13               ` Eli Zaretskii
2020-05-14  7:38             ` Tim Cross
2020-05-14  7:51               ` Andreas Röhler
2020-05-14 14:18               ` Eli Zaretskii
2020-05-14 15:36                 ` Tim Cross
2020-05-13 10:43           ` Stefan Kangas
2020-05-12  8:23       ` Andreas Röhler
2020-05-13  3:55         ` Richard Stallman
2020-05-13  8:18           ` Andreas Röhler
2020-05-13 10:53           ` Stefan Kangas
2020-05-13 16:20             ` Drew Adams
2020-05-14  2:18             ` (emacs) Intro [was: Making Emacs popular again with a video] excalamus--- via Emacs development discussions.
2020-05-14 12:04               ` Dmitry Gutov
2020-05-14 21:31                 ` excalamus--- via Emacs development discussions.
2020-05-15  0:46                   ` Dmitry Gutov
     [not found]                   ` <d28fe30d-c192-8022-b758-d8b7019e49b5@yandex.ru-M7KnL6R----2>
2020-05-17 19:11                     ` excalamus--- via Emacs development discussions.
2020-05-19 14:14                       ` excalamus--- via Emacs development discussions.
     [not found]                         ` <d66793e5-07f9-4dd9-928d-e7e8c342b781@default>
     [not found]                           ` <M7iByNw--3-2@tutanota.com>
2020-05-21 18:18                             ` excalamus--- via Emacs development discussions.
     [not found]                             ` <M7sSK-m--3-2@tutanota.com-M7sSUVm--3-2>
2020-05-28  1:21                               ` excalamus--- via Emacs development discussions.
2020-05-28  7:08                                 ` Eli Zaretskii
2020-05-28  7:41                                   ` Andreas Röhler
2020-05-28 10:23                                 ` Stefan Kangas
2020-05-29  2:39                                   ` excalamus--- via Emacs development discussions.
2020-05-29  7:28                                     ` Eli Zaretskii
2020-05-29  7:40                                     ` Stefan Kangas
2020-05-29 15:14                                       ` Stefan Monnier
2020-05-30  1:39                                       ` Richard Stallman
2020-05-14 22:14                 ` Karl Fogel
2020-05-15  3:17               ` Richard Stallman
2020-05-15  6:36               ` Andreas Röhler
2020-05-12 12:57       ` GNU Emacs raison d'etre excalamus--- via Emacs development discussions.
2020-05-13 16:18         ` Karl Fogel
2020-05-13 16:28           ` Drew Adams
2020-05-13 19:39           ` Andreas Röhler
2020-05-13 20:05             ` Karl Fogel
2020-05-13 20:52               ` Dmitry Gutov
2020-05-13 22:04                 ` Karl Fogel
2020-05-13 22:55                   ` Dmitry Gutov
2020-05-14  4:56                     ` Karl Fogel
2020-05-14 16:37                       ` Drew Adams
2020-05-14 22:11                       ` excalamus--- via Emacs development discussions.
2020-05-15  3:16                       ` Richard Stallman
2020-05-15 21:42                         ` Karl Fogel
2020-05-15 22:14                           ` Arthur Miller
2020-05-16  0:03                             ` Dmitry Gutov
2020-05-15 22:41                           ` Drew Adams
2020-05-20 21:47                             ` Karl Fogel
2020-05-20 22:35                               ` Drew Adams
2020-05-21  0:35                                 ` Karl Fogel
2020-05-16  2:43                           ` Eduardo Ochs
2020-05-18  3:46                             ` Richard Stallman
2020-05-18 11:26                               ` Dmitry Gutov
2020-05-16  8:05                           ` Yuri Khan
2020-05-16 10:36                             ` Eli Zaretskii
2020-05-16 10:46                               ` Yuri Khan
2020-05-17  1:28                       ` Dmitry Gutov [this message]
2020-05-17  1:39                         ` Dmitry Gutov
2020-05-17  1:40                         ` Dmitry Gutov
2020-05-17  1:59                         ` Jean-Christophe Helary
2020-05-17  2:52                           ` Stefan Kangas
2020-05-17  9:32                             ` Joost Kremers
2020-05-17 11:07                             ` Arthur Miller
2020-05-18  3:43                           ` transient Richard Stallman
2020-05-18  6:58                             ` transient Joost Kremers
2020-05-18 11:29                               ` transient Dmitry Gutov
2020-05-18 18:41                               ` transient Howard Melman
2020-05-18 19:35                                 ` transient John Yates
2020-05-18 19:57                                   ` transient Howard Melman
2020-05-19  5:38                                 ` transient Drew Adams
2020-05-19 14:00                                   ` transient Arthur Miller
2020-05-20  3:14                                     ` transient Michael Heerdegen
     [not found]                                       ` <87tuztngxr.fsf@mail.linkov.net>
2020-06-03  4:32                                         ` bug#39902: transient Michael Heerdegen
2020-06-03 22:49                                           ` bug#39902: 28.0.50; Marking in dired with active region Juri Linkov
2020-06-04 12:31                                             ` Michael Heerdegen
2020-06-04 22:18                                               ` Juri Linkov
2020-05-19 22:04                                   ` transient Stefan Kangas
2020-05-19 22:53                                     ` transient Drew Adams
2020-05-19  4:02                               ` which-key Richard Stallman
2020-05-17  7:09                         ` GNU Emacs raison d'etre Drew Adams
2020-05-20 21:36                           ` Karl Fogel
2020-05-20 21:57                             ` Drew Adams
2020-05-20 22:00                         ` Karl Fogel
2020-05-20 22:07                           ` Dmitry Gutov
2020-05-21  8:03                             ` tomas
2020-05-21  9:33                               ` Arthur Miller
2020-05-21 10:04                                 ` tomas
2020-05-24 14:05                                   ` Arthur Miller
2020-05-21 16:20                                 ` xristos
2020-05-24 13:45                                   ` Arthur Miller
2020-05-24 16:52                                     ` xristos
2020-05-24 17:00                                       ` Eli Zaretskii
2020-05-24 18:31                                     ` Philip K.
2020-05-25 17:34                                   ` João Távora
2020-05-26  4:14                                     ` Richard Stallman
2020-05-26 11:32                                       ` João Távora
2020-05-27  3:08                                         ` Richard Stallman
2020-05-27  5:01                                           ` Drew Adams
2020-05-29 12:59                                           ` Arthur Miller
2020-06-23  3:59                                             ` Richard Stallman
2020-05-21 17:07                               ` Karl Fogel
2020-05-23 20:36                                 ` Dmitry Gutov
2020-05-14  6:26                   ` tomas
2020-05-14  6:16               ` Andreas Röhler
2020-05-15  3:18               ` Richard Stallman
2020-05-16  0:56                 ` Tak Kunihiro
2020-05-16  6:50                   ` Eli Zaretskii
2020-05-16  9:10                     ` Sergey Organov
2020-05-16 10:38                       ` Eli Zaretskii
2020-05-16 12:24                         ` Sergey Organov
2020-05-16 12:29                           ` Eli Zaretskii
2020-05-16 12:34                             ` Sergey Organov
2020-05-16 12:46                               ` Dmitry Gutov
2020-05-16 13:57                                 ` Sergey Organov
2020-05-16 19:35                                   ` Dmitry Gutov
2020-05-16 20:05                                     ` Stefan Kangas
2020-05-16 20:34                                       ` Dmitry Gutov
2020-05-16 20:44                                       ` Bob Newell
2020-06-24 15:37                                         ` Ricardo Wurmus
2020-05-16 23:12                                       ` Drew Adams
2020-05-16 23:18                                         ` Drew Adams
2020-05-16 23:47                                         ` Stefan Kangas
2020-05-17  1:14                                           ` Drew Adams
2020-05-17  3:13                                             ` Stefan Kangas
2020-05-17  6:49                                               ` Drew Adams
2020-05-17  7:02                                                 ` Jean-Christophe Helary
2020-05-17  7:11                                                   ` Drew Adams
2020-05-17  9:07                                                     ` Jean-Christophe Helary
2020-05-17 10:20                                                       ` Marcin Borkowski
2020-05-17 11:07                                                         ` Jean-Christophe Helary
2020-05-17 15:25                                                       ` Eli Zaretskii
2020-05-17 15:48                                                         ` Jean-Christophe Helary
2020-05-17 17:06                                                           ` Stefan Monnier
2020-05-17 17:31                                                             ` Arthur Miller
2020-05-17 18:57                                                               ` Drew Adams
2020-05-17 20:03                                                                 ` Arthur Miller
2020-05-18  8:32                                                                 ` martin rudalics
2020-05-18 11:39                                                                   ` Dmitry Gutov
2020-05-18 13:02                                                                     ` martin rudalics
2020-05-18 13:38                                                                       ` Dmitry Gutov
2020-05-18 16:31                                                                         ` Robert Pluim
2020-05-18 23:14                                                                           ` Dmitry Gutov
2020-05-19  8:41                                                                             ` martin rudalics
2020-05-20  1:01                                                                               ` Dmitry Gutov
2020-05-20  9:06                                                                                 ` martin rudalics
2020-05-21  0:15                                                                                   ` Dmitry Gutov
2020-05-21  9:07                                                                                     ` martin rudalics
2020-05-21 23:16                                                                                       ` Dmitry Gutov
2020-05-22  9:31                                                                                         ` martin rudalics
2020-05-25  2:37                                                                                           ` Dmitry Gutov
2020-05-26  8:06                                                                                             ` martin rudalics
2020-06-05  2:40                                                                                               ` pop-up-mini-mode, was " Dmitry Gutov
2020-05-19  8:40                                                                     ` martin rudalics
2020-05-20  0:40                                                                       ` Dmitry Gutov
2020-05-20  9:04                                                                         ` martin rudalics
2020-05-20 13:28                                                                           ` Dmitry Gutov
2020-05-20 14:45                                                                           ` Eli Zaretskii
2020-05-20 14:56                                                                             ` Dmitry Gutov
2020-05-20 16:12                                                                               ` Eli Zaretskii
2020-05-20 17:45                                                                                 ` martin rudalics
2020-05-20 18:09                                                                                   ` Eli Zaretskii
2020-05-20 18:16                                                                                     ` Eli Zaretskii
2020-05-20 18:24                                                                                     ` Dmitry Gutov
2020-05-20 18:33                                                                                       ` Eli Zaretskii
2020-05-20 18:56                                                                                         ` Eli Zaretskii
2020-05-20 19:22                                                                                           ` Dmitry Gutov
2020-05-20 19:53                                                                                             ` tomas
2020-05-20 21:22                                                                                               ` Dmitry Gutov
2020-05-21  7:43                                                                                                 ` tomas
2020-05-21  2:28                                                                                             ` Eli Zaretskii
2020-05-21 22:19                                                                                               ` Dmitry Gutov
2020-05-22  7:28                                                                                                 ` Eli Zaretskii
2020-05-22 12:16                                                                                                   ` Dmitry Gutov
2020-05-20 23:07                                                                                           ` martin rudalics
2020-05-21 13:11                                                                                             ` Eli Zaretskii
2020-05-21 17:55                                                                                               ` martin rudalics
2020-05-18 15:57                                                                   ` Drew Adams
2020-05-19  8:41                                                                     ` martin rudalics
2020-05-21 18:19                                                                   ` Suppressing beginning/end-of-buffer error messages (WAS: GNU Emacs raison d'etre) Noam Postavsky
2020-05-22  9:30                                                                     ` martin rudalics
2020-05-22 12:46                                                                       ` Noam Postavsky
     [not found]                                                                         ` <11bfe86b-131c-4f55-5125-c269a73e360d@gmx.at>
2020-05-23 11:10                                                                           ` Noam Postavsky
2020-05-17 18:36                                                             ` GNU Emacs raison d'etre Drew Adams
2020-05-17 21:04                                                               ` Stefan Monnier
2020-05-17 21:48                                                                 ` Drew Adams
2020-05-17 18:38                                                             ` Dmitry Gutov
2020-05-17 21:17                                                               ` Stefan Monnier
2020-05-17 21:37                                                                 ` Dmitry Gutov
2020-05-18  8:33                                                                   ` martin rudalics
2020-05-18 11:37                                                                     ` Dmitry Gutov
2020-05-17 21:57                                                                 ` Drew Adams
2020-05-17 18:28                                                           ` Drew Adams
2020-05-17 17:59                                                       ` Drew Adams
2020-05-17 18:07                                                       ` Dmitry Gutov
2020-05-17  7:54                                                   ` Sergey Organov
2020-05-17 11:37                                             ` Dmitry Gutov
2020-05-17 18:11                                               ` Drew Adams
2020-05-16 23:01                                     ` Arthur Miller
2020-05-17  2:55                       ` Richard Stallman
2020-05-28  4:12                 ` Karl Fogel
2020-05-28  5:51                   ` Eduardo Ochs
2020-05-28  6:13                   ` Drew Adams
2020-05-28 14:12                     ` excalamus--- via Emacs development discussions.
2020-05-28 14:42                       ` Jean-Christophe Helary
2020-05-28 16:34                         ` Drew Adams
2020-05-29 14:44                           ` Jean-Christophe Helary
2020-05-28 15:00                       ` Philip K.
2020-05-28 15:13                         ` João Távora
2020-05-28 16:04                         ` T.V Raman
     [not found]                         ` <p914ks0kpui.fsf@google.com-M8R14r9----2>
2020-05-28 16:12                           ` excalamus--- via Emacs development discussions.
2020-05-28 16:46                             ` T.V Raman
2020-05-28 17:34                               ` Karl Fogel
2020-05-28 18:11                               ` andres.ramirez
     [not found]                               ` <877dwwezfr.fsf@red-bean.com-M8RLd3p--3-2>
2020-05-28 18:28                                 ` excalamus--- via Emacs development discussions.
2020-05-29  1:12                                   ` Karl Fogel
2020-05-30  1:44                         ` Richard Stallman
2020-05-30  2:02                           ` Jean-Christophe Helary
2020-05-30  9:13                             ` Arthur Miller
2020-05-30 16:43                           ` Alfred M. Szmidt
2020-05-31  7:07                             ` Richard Stallman
2020-06-08 17:37                               ` REmacs was " T.V Raman
2020-06-01  7:29                             ` Meaning behind Control-G Lars Brinkhoff
2020-06-01  7:56                               ` Lars Brinkhoff
2020-06-01  9:06                                 ` Lars Brinkhoff
2020-06-01 13:44                               ` Stefan Monnier
2020-06-02  1:51                                 ` Paul Eggert
2020-06-02  5:58                                   ` Lars Brinkhoff
2020-06-02 13:50                                     ` Stefan Monnier
2020-06-02 15:38                                     ` Drew Adams
2020-06-02 11:46                                   ` John Yates
2020-07-10 12:13                           ` GNU Emacs raison d'etre Lars Brinkhoff
2020-07-10 14:28                             ` Drew Adams
2020-07-11  2:16                             ` Richard Stallman
2020-05-28 16:41                       ` FW: " Drew Adams
2020-05-28 17:37                       ` Stefan Monnier
2020-05-28 20:33                         ` Perry E. Metzger
2020-05-28 23:44                           ` T.V Raman
2020-05-29  3:04                   ` Richard Stallman
2020-05-13 19:46           ` T.V Raman
2020-05-13 21:00           ` Dmitry Gutov
2020-05-13 21:02           ` excalamus--- via Emacs development discussions.
2020-05-13 22:22           ` H. Dieter Wilhelm
2020-05-14  4:20             ` Karl Fogel
2020-05-14  0:04           ` John Wiegley
2020-05-14  5:08           ` Richard Stallman
2020-05-14 20:29             ` Karl Fogel
     [not found] <64c4b2e4-3c07-0ad4-bcdf-39e95cae8a57.ref@aol.com>
2020-08-09 17:11 ` Clive Tovero
2020-08-10  1:26   ` Alexandre Garreau
     [not found] <c0ffdaa1-90cc-2bb3-d2e0-93c7115df969.ref@aol.com>
2020-08-10  2:49 ` Clive Tovero

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

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

  git send-email \
    --in-reply-to=d1b52baf-6940-a34e-baf8-f06906c891db@yandex.ru \
    --to=dgutov@yandex.ru \
    --cc=andreas.roehler@online.de \
    --cc=emacs-devel@gnu.org \
    --cc=kfogel@red-bean.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 external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.