"Stephen J. Turnbull" <turnbull(a)sk.tsukuba.ac.jp> writes:
>>>>> "sb" == SL Baur
<steve(a)xemacs.org> writes:
sb> The basic question as Martin has raised it to me in
sb> conversation over the phone, is why do all the defaults suck?
I'd say simply because XEmacs is *big*, we are numerous to hack on
it, and it's an open development process. This means in particular that:
- XEmacs is so big that nobody on the list can pretend [s]he knows
everything about XEmacs. There are more than 150.000 lines of C and more than
that in lisp.
- In that, we're all ignorants, but we're all experimented as well. All
technicians of some sort. People rarely throw general ideas or remarks. People
usually send patches to implement or modify the concerned feature, and this is
because the most important feedback we get on XEmacs usability is from
ourseleves, the people who develop it. Hence the "defaults" are intrinsicly
biased.
- Moreover, as Stephen says, for us it sucks to try the defaults because we
know more, so we want more.
But that's the wrong question, I think. Because all the defaults
are
preferred by somebody!
I don't think so. The fact is that all the *behaviors* are preferred
by somebody. Whether such or such behavior should be the default is the real
question. And the real problem begins when people are so used to the behavior
they like that they begin to confuse it with the default thus breaking simpler
things.
So the first question is "do we need a definition of
'suck'?" I think
we do;
Yes, but we need to answer another question: "do we need a definition
of 'default'?", and I think we do too.
the more consistent the XEmacs interface is, the more appealing
it will be (other things being equal).
Exactly. Consistency /is/ the point, and it has a-priori nothing to do
with complexity or obviousness. To me this leads not to one definition of
'suck', but two: something can suck as a matter _taste_, or as a matter of
_consistency_.
As a matter of taste, there's nothing much we can do. Some people like
dark backgrounds and some others prefer light. This is a matter of taste and
this is not arguable. There can be flame-wars between the
dark-background-camp-by-default and the light-background-camp-by-default, but
this will be sterile anyway. For this kind of debate, we should probably vote
or something.
As a matter of consistency, there's much that we can do. Like what's
happening for the `push-mark' debate, it's always harder to fix a-posteriori
an inconsistent behavior when it's the result of a graduate increase of
complexity in a feature. But unfortunately, this is how it will happen most of
the time because since we're all rather experimented users, it's even more
difficult to keep a genuine and high-level view on what we're doing.[1]
Now about the other question: "which definition for 'default'?"
- The first thing is that at a first glance, any default should be okay, as
long as it is consistent. And consistency this is part of our job, as
developers.
- The second thing is to ask "who the defaults are for?". The answer is easy:
for people that don't know (yet) how to modify them. I'll probably make people
shoot in my direction there: when Steve says that "xemacs -vanilla stinks", I
don't consider it a valid argument. At least, not apart from consistency
matters. Of course it stinks; we're so much used to an in-depth usage of it on
this list! How could it be any other way? Now take a random guy out there,
give him a vanilla xemacs, ask him to edit something and listen to what he
says. What *he* will find stinking will probably be stinking.
Before yelling at me, let me just precise this: xemacs for novices
doesn't have to be dramatically simple and powerless, on the contrary to what
Kyle thought I was saying. This is not a matter of /complexity/, but a matter
of /obviousness/. I mean we can have something very complex by
default. However, if the behavior the user is facing is not obvious, in other
words "why the fuck did xemacs do this?!" then, it's the wrong default.
Defaults doesn't have to be stupid, but for sure, they are not for us. Now if
we'd all like a complex behavior by default, but this makes other things
non-obvious, then, we should stick to a stupid default, and add a few
documented lines in sample.emacs. I think that's the way I see the answer to
this question of Stephen:
| If there are only two, then we can have a massive flamewar over which
| is going to be hard-coded as defaults and which is going to be
| enshrined as sample.emacs.
The second question is, "who is the generic 'Jane User'
who decides
what 'suck' means?" I dunno.
Jane User who decides the background color, I dunno, and it doesn't
really matter. Jane User who decides that something is inconsistent or
obscure, or even _not powerful enough_ in a vanilla xemacs, I'd say as many
non computer scientists as possible.
How about an xemacs-dotemacs write-only mailing list? :-)
You're joking, but actually I think you're getting closer to the
source of the problem. Add an xemacs-custom-default-value write-only mailing
list and you're done. :-)
Not many customizations of XEmacs itself, although some packages
(eg,
supercite) are extensively customized.
I have very few things either, and I think that's what makes me very
sensitive to the defaults' consistency.
Footnotes:
[1] This is the reason why I keep talking about beginners. Because I'm
convinced that we need them as consistency-checkers.
--
/ / _ _ Didier Verna
http://www.inf.enst.fr/~verna/
- / / - / / /_/ / E.N.S.T. INF C201.1 mailto:vernaļ¼ inf.enst.fr
/_/ / /_/ / /__ / 46 rue Barrault Tel. (33) 01 45 81 73 46
75634 Paris cedex 13 Fax. (33) 01 45 81 31 19