From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Jim Porter Newsgroups: gmane.emacs.devel Subject: Re: Names are not descriptions; descriptions are not names Date: Thu, 11 May 2023 21:47:18 -0700 Message-ID: <9ea14907-0327-9e6d-6289-0529a82316e7@gmail.com> References: <3b4a24a3-2d12-16d3-d905-7794ed4269b1@alphapapa.net> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="12999"; mail-complaints-to="usenet@ciao.gmane.io" To: Adam Porter , emacs-devel Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Fri May 12 06:48:21 2023 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 1pxKhZ-0003C2-2P for ged-emacs-devel@m.gmane-mx.org; Fri, 12 May 2023 06:48:21 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pxKgj-0006HK-Ec; Fri, 12 May 2023 00:47:30 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pxKgg-0006Gk-5k for emacs-devel@gnu.org; Fri, 12 May 2023 00:47:26 -0400 Original-Received: from mail-pl1-x635.google.com ([2607:f8b0:4864:20::635]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pxKge-00040n-3E for emacs-devel@gnu.org; Fri, 12 May 2023 00:47:25 -0400 Original-Received: by mail-pl1-x635.google.com with SMTP id d9443c01a7336-1aad6f2be8eso88009925ad.3 for ; Thu, 11 May 2023 21:47:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1683866841; x=1686458841; h=content-transfer-encoding:in-reply-to:from:content-language :references:to:subject:mime-version:date:message-id:from:to:cc :subject:date:message-id:reply-to; bh=SsdCvDpwyqWpmyDtiCSoGj3P5VoOgbN9qnYNumx9Ujw=; b=qcIw30HKHHxFv8cu2dhHVjP2Z6bfandYaYvFCE/866/vXnvcKwMmJvAijEv+XS4pAD kONn7Gu5J5YIMKYJDUBXWZnt51EO81wKu1HyWmtz1+D+pEXnl+a/MNAOLHDprd+8Vs3g DTtIz99vGXtDAMl99whoonSin1zjkPydoKdYRIRgozd6gZh02/soZO4EdStL+iccOuNG gAsLGAws+suams4Xq+xvdYTqzxLKvr/04GN4MTBvhR1855kHit00An4z2hCtwUwqVk1Y DhGApVyEAOQrtR8CbqssiEvZ1xiupWis1H2WrsJgbPFIT56KpSzqKEPtwg+xnWqeohaq L8Hw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1683866841; x=1686458841; h=content-transfer-encoding:in-reply-to:from:content-language :references:to:subject:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=SsdCvDpwyqWpmyDtiCSoGj3P5VoOgbN9qnYNumx9Ujw=; b=MAFRJzAcwmZJfuZhll6vQ+XS5NlClRhzURQECtAu49l1HZ/Bjyl7Y7AqaMuDRrjloG ovFdIL3cgcAYrUlxdAmZvGxueEk4vHtGr9psFJGN8Q1qWm/tZtOau7lewTC0t3Hy5ukH DU7lGPJ5ZJkrE0FsCcMTpiOmxx0NS7EGBrf3p4FfCJjxvI5jmDj3gVtbLzjQds5Sj2sU Tp2MUQYH6bjNxQp+YvmcvjcVZky1Fe49/86MrCZG1uFfZZRCpRZiKN8Flna4MrcF1wyg t1/nsyqWcBRkgeFWoBqed6LmdLgJ5IH0ftZp04HAruzMJ6C4/xPEKkKIrxbrq4vyRoJB 5RFQ== X-Gm-Message-State: AC+VfDwCjh/SPD6EzMbsg8NEAKm+tx7i8hNCaEqlq9sNkfR94VyQe5ZQ V0y7lHTpwD0yxzcE9jdUtxemR7n9uIQ= X-Google-Smtp-Source: ACHHUZ7v6SBAN4UEsnI96cgg3BjR8+M8DpmybzeSV+CNvQG08cmCWxUrxcY86XlYXcGU5QnbCD9Xpw== X-Received: by 2002:a17:902:f94b:b0:1a6:9d1b:e18f with SMTP id kx11-20020a170902f94b00b001a69d1be18fmr21657471plb.45.1683866840905; Thu, 11 May 2023 21:47:20 -0700 (PDT) Original-Received: from [192.168.1.2] (cpe-76-168-148-233.socal.res.rr.com. [76.168.148.233]) by smtp.googlemail.com with ESMTPSA id iz5-20020a170902ef8500b001ac2c3e436asm6842613plb.186.2023.05.11.21.47.20 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 11 May 2023 21:47:20 -0700 (PDT) Content-Language: en-US In-Reply-To: <3b4a24a3-2d12-16d3-d905-7794ed4269b1@alphapapa.net> Received-SPF: pass client-ip=2607:f8b0:4864:20::635; envelope-from=jporterbugs@gmail.com; helo=mail-pl1-x635.google.com 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, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 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-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:306070 Archived-At: On 5/11/2023 9:01 PM, Adam Porter wrote: > And by burdening the name with a responsibility it cannot bear, the > name suffers, the package suffers, and ultimately, the user suffers. > The "descriptive" name is not memorable; the user likely forgets what > it's called a few weeks after installing and configuring it... I strongly agree. While some projects have bad names (as an illustrative example, CHEATING: "obsCure and awkHward usE of lettArs Trying to spell somethING"[1]), a name's primary purpose is to be a memorable way of referring back to something you already know about. That means it should be easy to see how the name relates in some way to its purpose, but it doesn't need to be immediately apparent what it does just by looking at the name. Probably my favorite project name in existence is "pacman", Arch's package manager. If I didn't know about it and you asked me to guess what it did, I'm sure I'd say, "It lets you play Pac-man," but once I know it's a package manager, the name makes perfect sense and I can easily remember it. When I'm looking for a package on ELPA (or built into Emacs) to do XYZ, I don't generally consult the name at all, and instead read/search the description or the manual. About the only time I look at the name is if I'm searching for a major mode of a programming language, which is almost always "lang-mode". That's not to say there are no issues whatsoever with naming: if a name is really obscure or particularly rude, those are good times to suggest a rename. For "devil" in particular, I think it's a pretty reasonable choice, since just by looking at the name I guessed that it was something in the same overall genre as evil. Maybe there's a better name out there, but I think it's still better than any suggested alternative. However, I think there's potentially an even bigger issue: package discoverability as a whole. I imagine we all hope that Emacs will continue to get many new users, and they likely won't be able to guess anything about a name like "devil". We should do our best to make sure packages like that are easy to discover if you use some common search terms. This might also include making it easier for novices to learn *how* to perform good searches. I'm not sure exactly what this would entail (it's hard to unlearn what you already know), but I am sure that it would be valuable. Emacs gives you an awful lot of tools to be able to learn on your own and dig deeper into customizing/extending it, but it can be hard to get started: it took me more than a decade to move past the stage of "copy-pasting Elisp code from other people's configs". - Jim Porter (no relation) [1] https://www.bmj.com/content/349/bmj.g7092