Why you don't want to allow disabling "branches are global and permanent, did you want a bookmark"?

paul_nathan at selinc.com paul_nathan at selinc.com
Wed Aug 8 14:51:21 CDT 2012


mercurial-devel-bounces at selenic.com wrote on 08/08/2012 04:35:34 AM:

> From: Mads Kiilerich <mads at kiilerich.com>
> To: v <voldermort at hotmail.com>, 
> Cc: mercurial-devel at selenic.com
> Date: 08/08/2012 04:35 AM
> Subject: Re: Why you don't want to allow disabling "branches are 
> global and permanent, did you want a bookmark"?
> Sent by: mercurial-devel-bounces at selenic.com
> 
> On 08/08/12 13:10, v wrote:
> > I humbly suggest that this is objectively bad UI design, not just 
> a matter of
> > personal preference. Asking "do you want to do something else 
instead?"
> > every time a branch is created implies a deprecated feature or one 
which
> > should rarely be used, not just warning the user about a common
> > misunderstanding.
> 
> The root cause of the "problem" is that git started using the name 
> "branch" for something that was temporary. Many new Mercurial users thus 

> have wrong expectations when they start using Mercurial. This message is 

> an attempt at mitigating one of the first and major issue these users 
> have with Mercurial.
> 
> Nobody denied that the message could be improved. This is the -devel 
> list - please try to contribute a convincing a patch.
> 
> We want to keep a message that will educate new users that come with 
> wrong expectations ... but it would be nice if the message acknowledged 
> the sane use cases for 'branch' and didn't hint so strongly that the 
> user was wrong.

Dear -devel-

It's very confusing for a certain segment of users. The usual line of 
thought 
seems to roll like this "Oh, a warning message! I did something wrong! 
PANIC!"

This is the same group of users who will occasionally blithely ignore 
messages:
"A error box! Click the OK and let's get back to work".

As someone who provides information & training to users, I am put on the 
spot 
when the Mercurial project makes a UI decision.   Since our company uses 
named
branches extensively - after careful thought - this particular message is 
troublesome 
from a support and training perspective.

Having to train people to ignore *some* warnings but not *other* warnings 
is a pain,
and further, adds error. "Q: You said to ignore this error. A: No, I said 
to ignore the 
other warning!" Not a dialogue I want to engage in.


I would FAR rather see this line entirely removed. If that is 
unswallowable, a message that
doesn't imply the user is doing something wrong would be better.  It is 
also useless
to an experienced hg developer who knows what they are doing - "Yes, I 
know I want a branch,
please shut up, hg"


Argument from authority:
Rule of Silence: "When a program has nothing surprising to say, it should 
say nothing."

I would argue that the creation of a hg branch is the unsurprising result 
when you issue

hg branch foo-bar


Like Adrian mentioned, *my* patch would be to strip the message. I've 
contemplated doing just
that for my dev box install.

regards,
Paul
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://selenic.com/pipermail/mercurial-devel/attachments/20120808/1b03395e/attachment.html>


More information about the Mercurial-devel mailing list