git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Eric Sunshine <sunshine@sunshineco.com>
To: Emily Shaffer <emilyshaffer@google.com>
Cc: Junio C Hamano <gitster@pobox.com>,
	Heba Waly via GitGitGadget <gitgitgadget@gmail.com>,
	Git List <git@vger.kernel.org>, Heba Waly <heba.waly@gmail.com>
Subject: Re: [PATCH v2 1/1] branch: advise the user to checkout a different branch before deleting
Date: Wed, 8 Jan 2020 05:22:10 -0500	[thread overview]
Message-ID: <CAPig+cRt1fzNzbustfq2seQMjZmd79cGW+-oxsdzFXw8D-q26A@mail.gmail.com> (raw)
In-Reply-To: <20200108014442.GC181522@google.com>

On Tue, Jan 7, 2020 at 8:44 PM Emily Shaffer <emilyshaffer@google.com> wrote:
> On Tue, Jan 07, 2020 at 08:34:04AM -0800, Junio C Hamano wrote:
> > Eric Sunshine <sunshine@sunshineco.com> writes:
> > > (It is rather verbose and ugly, though.)
> >
> > I tend to agree. It also feels to me that it is giving too much
> > hand-holding, but after all advise() may turning out to be about
> > giving that.
>
> Well, if advise() isn't going to hold their hand, who is? ;)
> What I mean is, I think that's indeed what advise() is about, and the
> reason it can be disabled in config.

Git is already drowning in configuration options. Every new option
increases the complexity level for the user and of Git overall,
requires additional code, additional tests, and additional
documentation, and must be maintained for the life of the project. So,
every configuration option carries a cost in terms of end-user
experience and developer resources.

If anything, we should be trying to keep the number of configuration
options constant (or, even better, reduce it), rather than forever
adding more. Thus, we should think very hard before adding any new
configuration option, trying instead to discover ways in which an
issue can be addressed without adding a configuration option (with its
attendant costs and complexity), and only add an option as a last
resort.

> To me, the harm of giving too much hand-holding seems less than the
> harm of giving not enough; to deal with the one requires skimming
> past things you already know [...]

Perhaps I'm too old-school and too steeped in The Unix Way, but there
is value in silence and conciseness, and that value outweighs
chattiness, especially when chattiness is effectively unnecessary
(which is the case in the vast majority of error/warning messages
emitted by Git).

Too much hand-holding quickly becomes noise which gets ignored, thus
eventually drowns out the really important information. People need to
understand a problem before taking action to solve it. Blindly
following some piece of advice without understanding a problem can
lead to further problems (especially in those cases when it's not
possible to devise advice which suitably covers all situations in
which a particular problem may arise).

A well-written, clear, _concise_, error message can often provide
enough information to allow the user to understand and resolve the
problem without additional hand-holding. It's true that there are some
complex situations (for instance, detached HEAD) for which additional
hints can be handy for newcomers or casual users, but that should be
the exception, not the norm. Rather than adding advice messages for
every possible problem, perhaps a better use of our time would be to
weed out poorly-worded and unhelpful error messages and improve them.

  reply	other threads:[~2020-01-08 10:22 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-02  2:49 [PATCH 0/1] [Outreachy] [RFC] branch: advise the user to checkout a different branch before deleting Heba Waly via GitGitGadget
2020-01-02  2:49 ` [PATCH 1/1] " Heba Waly via GitGitGadget
2020-01-02  8:18   ` Eric Sunshine
2020-01-06  0:42     ` Heba Waly
2020-01-07  4:10 ` [PATCH v2 0/1] [Outreachy] [RFC] " Heba Waly via GitGitGadget
2020-01-07  4:10   ` [PATCH v2 1/1] " Heba Waly via GitGitGadget
2020-01-07 11:16     ` Eric Sunshine
2020-01-07 16:34       ` Junio C Hamano
2020-01-08  1:44         ` Emily Shaffer
2020-01-08 10:22           ` Eric Sunshine [this message]
2020-01-08  1:14       ` Heba Waly
2020-01-08  9:27         ` Eric Sunshine
2020-01-08 18:06           ` Heba Waly
2020-01-08 19:01             ` Johannes Schindelin
2020-01-08 19:15               ` Junio C Hamano
2020-01-10 12:11                 ` Heba Waly
2020-01-08 19:05             ` Junio C Hamano
2020-01-10 12:09           ` Heba Waly

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: http://vger.kernel.org/majordomo-info.html

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

  git send-email \
    --in-reply-to=CAPig+cRt1fzNzbustfq2seQMjZmd79cGW+-oxsdzFXw8D-q26A@mail.gmail.com \
    --to=sunshine@sunshineco.com \
    --cc=emilyshaffer@google.com \
    --cc=git@vger.kernel.org \
    --cc=gitgitgadget@gmail.com \
    --cc=gitster@pobox.com \
    --cc=heba.waly@gmail.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://80x24.org/mirrors/git.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).