On 9/16/19, Clem Cole <clemc(a)ccc.com> wrote:
On Mon, Sep 16, 2019 at 8:26 AM Lars Brinkhoff
<lars(a)nocrew.org> wrote:
What irks me is the blatant force-feeding of any system to the users, be it
ITS, UNIX or Windows into another. It's ok to offer an alternative
interface, but when the system has a mechanism, your tools need to be
*socially
compliant* with it, not try to make 'those users become like me.'
Frankly, that is a pretty arrogant behavior. Yes, I know the argument is
two fold. GNU is not UNIX and we wrote it (he who has the gold, gets to
rule).
Amen to that! As the old saying goes, "when in Rome, do as the Romans
do". On UNIX, tools are expected to send output to stdout. On
Windows, users expect text selection and ^C/^V copy-and-paste to work.
On VMS, you use the CLI interface to parse the command line. And so
on. The principle of least astonishment should always be foremost in
user interaction design.
BTW: If it makes you feel better, I've been
fighting this attitude at a
number of places, particularly Intel, for years. For instance, our dev
tools folks wrote their own Installer 'because it was easier for them and
they could use it everywhere'). That's a no-no. If you have Windows
product, you must use Microsoft's installer, if you have a Mac, you use
what Apple gives you, if you have VMS, you used the (wretched) setld, or in
this case, for Linux its rpm/yum et al.; etc. But they had their own
'installer group' and it was easier for >>them<< than for the
users.
I used to work in that organization. The installer situation is one
of the worst cases of not-invented-here syndrome that I've ever seen.
Or maybe it was just empire building by some ambitious manager. The
"it's easier for us and we can use it everywhere" argument is pure BS.
Any savings that they got from having the a common code base for the
installer was wiped out by all the extra development effort needed to
track the release-to-release changes that the various platforms made
to their software deployment setup. Their installer was always a step
or two behind the curve, late in supporting new platform features, and
full of subtle bugs and mis-implemented edge conditions. It wasn't
really "easier for them" in the long run after all. It was a
maintenance nightmare.
-Paul W.