Linux-Advocacy Digest #153, Volume #29 Sun, 17 Sep 00 04:13:03 EDT
Contents:
Re: Because programmers hate users (Re: Why are Linux UIs so crappy?) (2:1)
Re: Id Software developer prefers OS X to Linux, NT (Alan Baker)
Re: How low can they go...? ("James Stutts")
Re: How low can they go...? ("James Stutts")
Re: How low can they go...?
Re: How low can they go...? (Mike Byrns)
----------------------------------------------------------------------------
From: 2:1 <[EMAIL PROTECTED]>
Subject: Re: Because programmers hate users (Re: Why are Linux UIs so crappy?)
Date: Sun, 17 Sep 2000 05:57:17 GMT
> > I think that you are paranoid about programmers. You should try
> > programming a bit yourself---mabey then you will see the other
> > positions point of view.
>
> I do program, I just don't think of myself as part of some
> elite called "programmers" (not least because I do a hell of
> a lot more design than programming). And I don't know how you
> can say that programmers don't hate users with a straight face
> when on this very same thread there are posters complaining
> about Real Lazy users, which apparently includes everyone who
> isn't willing to spend hundreds of hours finding and learning
> about features that should by all rights be right in front of
> them.
Most of the people working on Linux do it for themselves and for fun.
They are the primary users of the software and so the software works the
way the users want. I would hazard a guess that most NIX users are quite
technically advanced compared to most computer users* and are quite
happy to use the software in its current state. You seem to be of the
opinion that these people should stop writing code to work the way they
want it to and instead make it less good for themselves.
The other problem is that it is very difficult to make a universally
liked, foolproof program, since taastes vaary so much.
*NB this is not an insult to anyone, just look at some (quite large
numbers) of really incompetent peoply using computers.
> If you doubt that programmers loathe users and that they inject
> this loathing into their programs (unconsciously of course) then
> you should take a look through http://www.cooper.com/design.html
> The site only explains how programs act towards users like mean
> sons of bitches, it doesn't actually explain the reason why an
> application would be written to act like an asshole.
I like to write programs, primarily for myself, and although I'm
English, I don't go in for *that* much self-loathing :-) Seriously,
though, if the (esp. free software) programmmers loathed users so much,
they wouldn't give the users the programs.
> > > And writing an "openfile" command would not be sufficient for
> > > consistency. The shell would still treat "executable" and "non-
> > > executable" files in completely different ways for no justifiable
> > > reason whatsoever.
> >
> > Look at maths for a justifiable reason:
> >
> > x is a variable (like data)
> >
> > +, *, d/dx, grad, etc are operators which operate on variables, like
> > programs operate on data.
> >
> > Data and operations (data files and programs) are conceptually
> > different. Porgrams operate on data. Data can not do operations; it
is
> > opperated on.
>
> but a program is *data*; the correct analogue for an operator is a
> process. A process is the result of another process (the execution
> server) applied on data (the program). So what I'm actually doing
> is making a sharper distinction between operators and data.
A function is like a big operator. It also contains data, namely the
operators which make it up. The only difference between a program and
process is whether it is executing or not. That's not the point
though---my point is that an executable object (running or not) is
conceptually different from plain data because (although it, itself
contains daata) because it can operate on data. Plain data can not
operate on other data.
> > That is one justifiable reason. I'm not asking you to agree that it
is
> > the way you want computers to work, merely that there are
justifiable
> > reasons for it working that way. Personally, I'm from a mathematical
> > background (engineering) and I (as a user) prefer it to work that
way.
> I'm from a pure math background so I also like things to be
consistent.
> I'm also very used to dealing with abstract concepts of all kinds
(math,
> physics, philosophy, you name it) so I'm very good at discerning
incon-
> sistencies and also very critical of them. And I've spent years
finding
> out the principles behind good OS design.
The problem with good OS design is that there is a balance to be struck
between many different goals. Many of them are mutually exclusive.
> > You run in to problems with more complex processing of files. If you
> > have a file, say
> > index
> > and you order the shell to open it. How can the shell know whether
to
> > open it in a viewer/editor, run it through sort, archive it or use
the
> > list of files in it to create a CD image, compile it or execute it?
> >
> > If you're in the habit of processing data, some of the above choices
> > would be reasonable.
>
> Agreed. But many, many more choices would be completely unreasonable
> and even nonsensical. The shell could easily maintain a list (in a
> user-accessible manner) of associations (though "index" has no
> extension, so it wouldn't work) and then ask which one the user
> wants at run-time; much like bash currently does filename completion.
>
> You'd type
> $list\ of\ songs.playlist
> and press [tab]
> then it would fill in the line with
> $xmms list\ of\ songs.playlist
>
> and if there was more than one option then it would display them all,
> just like filename completion
I suppose it would work for files that have only a few programs to
operate on them eg graphics files:
xv
*toppm
gimp
xpaint
That wouldn't be too unwieldly. The problem comes with text files,
because there are loads of programs that operate on them, a list would
be quite useless (just press tab a fre times at the bash prompt to get
some idea:). But I agree, it could work for many types of file.
> > > In some OSes, the creation of a process
> > > from a program is done through a separate server process
> > > and the identity between opening and execution is obvious.
> >
> > Sorry, I don't follow.
>
> Many years ago, someone proposed for HURD (maybe it was VSTa)
> that a user could replace the standard execution server (the
> process that creates a new process based on a program) with a
> more complex server that understood different executable formats
> and maybe even the need to run a program under emulation.
All UNIX kernels ercognise at least 2 different formats: binaries and #!
ones. Linux knows of several. I don't suppose it would be too hard to
make it recognise .exe and run them under wine, if you know how to hack
the kernel, that is.
> > I have to say that I agree. In a GUI, I and most of the people I
know do
> > simple data manipulation: open the file in an editor, do some edits
> > ,print it then quit. With the kind of operations done in a GUI, it
> > usually makes sense to have a simple assosciation. that is, until
you
> > get DnD, but then you don't really need assosciation as much.
> > IME the shell is usually used for complex manipulations and having
no
> > distinction between data and operators would be a pain.
>
> Then it depends on your view of the GUI. I don't think that a GUI
should
> provide added functionality if it can help it. Check out 3Dsia at
> http://threedsia.sourceforge.net/about.html
> At one point they emphatically state that 3Dsia is not just a
filesystem
> viewer, that it adds a lot of functionality that the filesystem does
not
> have. This is correct, but all it proves is that the standard Unix
file-
> system is broken and that it lacks the functionality that it should
have.
3Dsia also offers things like multiuser worlds. That is not the job of
a filesystem. UNIX does provide multi-user interaction programs. It
also does lan/wan visualisation. Again, the local fs doesn't need to
provide that.
> If the system on top of which 3Dsia is to be built were elegant,
powerful
> and consistent, then 3Dsia's only role *would* be visualization and it
> would've been done in a few weeks by a single programmer instead of
still
> being incomplete after half a dozen people spent more than a year on
it.
Their stated goal is to provide a visualisation of a UNIX system using
UNIX libraries.
>
> IOW, I don't think that associations belong in the GUI.
Mabey not.
> > > That's because you've never heard of Persistence before.
> > >
> > > And not closing a program is *not* the same thing as having
> > > useful persistent process. Unix processes are designed to be
> > > one-off entities and Unix counts on this fact.
>
> > Why is this a bad thing? With most programs you can keep
configurations
> > in an rc file, so all instances open with the same configuration.
>
> Unix counting on processes being one-off means that it's not possible
> to shut down the computer and retrieve the processes you had (with all
> of their state) after you reboot.
Yes it is. The UltraSpracs running Solaris in my department can be
suspended. It saves the state, shuts down and powers off. When you wake
it up, it even seems to remember where the mouse was: all running
processes are restored in to the state they were left in. Personally I
like this feature and wish Linux had it.
> By all rights, I *should* be able to
> reboot my machine right now and get back all of the machine state I
> left it in (including an open text editor window, and all the text I
> have typed in so far). None of this "saving" something *somewhere* and
> then manually retrieving it; I already know where my email is, it's on
> my monitor right in front of me! Why should this be destroyed just
> because I want to switch OSes for a moment?
> > > > Well yes, there is. Even a web server typically starts a
seperate
> > process
> > > > for every user. There is no clear benefit to running everything
in a
> > single
> > > > process.
> > >
> > > There is in running everything in a single *task*. A single input
> > queue for
> > > one.
> > Why should a server have a single input queue? Surely it needs to
handle
> > multiple connections? Also, a collection of server processes could
be
> > considered as a single task.
>
> Okay, we're getting into irrelevant semantics. My original concern is
> that the program->process conversion happen as little as possible. You
> can create new processes just by copying parts of the old one and I
won't
> care, but if programs are constantly being converted into processes
> for no good reason and this is not transparent to the user (as indeed
> it isn't in Unix since internal state is not preserved across
activations)
> then something is very wrong.
I generally create new processes to run them in a state not affected by
any current processes. Why does it make sense for one vi to have the
same state as another vi, especially as all the configuration I need is
in the rc file?
> Now, as far as input queues go, it does make sense to have one per
user
> (say /process1/input/user1/, et cetera) but it doesn't make sense to
have
> one per process. Additionally, the input queues should be *meaningful*
> to users; eg, adding a hardlink to a file in the input queue of Emacs
> might create a new buffer with the contents of that file. And if you
> have a useable security scheme (which you don't in Unix) then a single
> Emacs process should run per machine.
You can run secure server processed under unix.
That way, you would have many unused processes running a lot of the
time. The state of them has to be stored somewhere where it doesn't
affect the origional, since you may want to restore that at some stage.
> > The problem with your design is that you are ignoring one group of
> > users, and providing for a different group. This is your main
complaint,
> > but with the groups reversed.
>
> That's right, I'm concerned with Users and Software Developers. What
> I'm not interested in is anyone who wants to maitain the status quo
> for some bizarre reason, or anyone who wants to maintain a difference
> between functionality available to programmers and that available to
> users (which includes most Programmers). And I draw a difference
> between a Programmer and a Software Developer.
What about those who like the status quo. Why not maintain it? If I like
the way a system works, why should I go out of my way to make it harder
for me, but easier for someone else? That doesn't make sense to me.
> Unix maintains a sharp divide between users and programmers (so does
> every other OS I know of but that's not the point) and one of the
> consequences of that divide is that the GPL is pretty meaningless
> to users. Well, I'm interested in winning this class war for the
> users and if the other side gets hurt in the process, I don't care.
> What's interesting to note is that programmers, as individuals,
> hurt themselves by waging this war against users and maintaining
> their, collective, superiority towards users. Programmers are sadled
> with an OS that's horrible to use and program for just so they can
> scare away users.
If the programmers get hurt, there will be no programs for users to use.
I also don't think that there is a class war, noone I know tries to
scare away users, and i, for one like the way the OS works. I find it
very powerful. I have never hurt myself by writing a program for me
that I find easy to use, that the next guy doesn't like. On the whole,
programmers have made programs easier to use, anyway (when was the last
time you used TECO?).
There is also another point that the more you want to do a a user, the
more you'll have to resort to programming. Then the distinction begins
to blur a little.
> You see, interfaces are actually languages. Not "like" languages
> but *are* languages. When you learn an interface, you're actually
> learning idioms in some language (what scrollbars do is an idiom
> in a graphical language) that lets you express thoughts.
Agreed.
> Well, one
> of the most important roles of language is to include some people
> and exclude others.
I don't agree with the exclude part. Languages are only exclusive if
people are not willing to learn. I can not expect to be able to
communicate with a Chinaman, because I am not willing to learn Chinese
(I don't have time amongst other things). I should not expect him to
learn English just so I can communicate. Likewise if the users of a
computer system aren't prepared to learn the language, then expecting
other people to change their language for the user is a little arrogant.
> And that's what programmers do on a regular
> basis.
Programmers talk the language that is natural to them. They should be
permitted to do that, just like you would let a chinaman talk Chinese.
> Now here's the important part: I don't give a shit about
> exclusion or inclusion, I just want the language to make sense,
If the language made no sense, then programmers wouldn't be able to use
it.
> to
> be powerful, to be elegant, et cetera.
> And "powerful" to me refers
> to what *users* can do with it, not what a clique of programmers
> can do with it.
To people who know the language, it is powerful and elegant. Yiddish is
a language which seems bvery good at experssing things about people.
Only a small clique of jews speak it, but that doesn't make it any less
good. Since the vast majority of us won't learn it, we'll have to live
without its benefits (except some words seem to be widely understood,
now, especially in parts of the US).
I don't understand why you have a pathological hatred of programmers.
The fact that you can use free software written by these people is only
of benefit to you.
-Ed
--
BBC Computer 32K | Edward Rosten
Acorn DFS | Engineer and Z4 advocate
Basic | High Priest: fuji.stcatz.ox.ac.uk/cult
>*MAIL ku.ca.xo.gne@rje98u (backwards, if you want to talk to me)
Sent via Deja.com http://www.deja.com/
Before you buy.
------------------------------
From: Alan Baker <[EMAIL PROTECTED]>
Crossposted-To: comp.sys.mac.advocacy,comp.os.ms-windows.nt.advocacy
Subject: Re: Id Software developer prefers OS X to Linux, NT
Date: Sat, 16 Sep 2000 23:31:18 -0700
In article <[EMAIL PROTECTED]>, [EMAIL PROTECTED]
wrote:
>"Joe R." wrote:
>>
>> In article <39c0d734$0$[EMAIL PROTECTED]>, "Nathan Crause"
>> <[EMAIL PROTECTED]> wrote:
>>
>> > Why? Are game developers not real programmers?
>> >
>> > "Joe R." <[EMAIL PROTECTED]> wrote in message
>> > news:[EMAIL PROTECTED]...
>> > > In article <[EMAIL PROTECTED]>,
>> > > Eric Bennett <[EMAIL PROTECTED]> wrote:
>> > >
>> > > > http://www.wired.com/news/technology/0,1282,38736,00.html
>> > > >
>> > > > =====
>> > > > Graeme Devine, a designer at Id Software, which makes Doom and
>> > > > Quake,
>> > > > said that overall, Mac OS X is a stronger operating system than
>> > > > Linux
>> > > > or
>> > > > Windows NT.
>> > > >
>> > > > "The tools for development are extremely good, extremely
>> > > > finished,"
>> > > > Devine said. "Linux and NT also have great tools and there are
>> > > > other
>> > > > advantages, but the combination of a great server and the
>> > > > development
>> > > > tools make Mac OS X better than the other platforms."
>> > > > =====
>> > >
>> > > But the opinion of game developers obviously doesn't count any more.
>> >
>> >
>>
>> I was being sarcastic.
>>
>> The reference was to the fact that the Wintrolls keep coming up with
>> silly arguments about what's important to a "real" computer and as soon
>> as the Mac is shown to be better, that particular issue doesn't matter
>> any more.
>
>ROFL - Max OS X has been in development for how many years, and only now
>is it considered by 'ONE' programmer to be better than NT for game
>design? And don't forget that Apple has yet to even _SHIP_ the real
>version, which will probably be late like everything else they do.
What you're missing in this is that a little while ago certain windroids
were coming in here and crowing over the fact that Carmack's '.plan'
file gave his rather low opinion of the current Mac OS.
What's sauce for the goose...
--
Alan Baker
Vancouver, British Columbia
"If you raise the ceiling four feet, move the fireplace from that wall to that
wall, you'll still only get the full stereophonic effect if you sit in the
bottom of that cupboard."
------------------------------
From: "James Stutts" <[EMAIL PROTECTED]>
Crossposted-To:
comp.lang.java.advocacy,comp.os.ms-windows.advocacy,comp.os.ms-windows.nt.advocacy
Subject: Re: How low can they go...?
Date: Sun, 17 Sep 2000 02:20:49 -0500
"T. Max Devlin" <[EMAIL PROTECTED]> wrote in message
news:[EMAIL PROTECTED]...
<snip>
> What the fuck are you talking about? It is less expensive, less
> *commercially feasible*, for me to use monopoly crapware than to
Less expensive? Really? You must be a recent computer user, than.
Ever priced IRIX?
JCS
------------------------------
From: "James Stutts" <[EMAIL PROTECTED]>
Crossposted-To:
comp.lang.java.advocacy,comp.os.ms-windows.advocacy,comp.os.ms-windows.nt.advocacy
Subject: Re: How low can they go...?
Date: Sun, 17 Sep 2000 02:24:30 -0500
"T. Max Devlin" <[EMAIL PROTECTED]> wrote in message
news:[EMAIL PROTECTED]...
> Said Mike Byrns in comp.os.linux.advocacy;
<snip>
> >Replacing default NC_PAINT behavior is performs the same
> >function as replacing the window manager in X.
>
> Except you can use a commonly available alternative window manager with
> X, and there is no such thing with monopoly crapware.
You can use any window manager you like with NT. I've seen at least
one Win32 port of a NextStep look-a-like. Explorer is a userland
application.
JCS
------------------------------
From: <[EMAIL PROTECTED]>
Crossposted-To:
comp.lang.java.advocacy,comp.os.ms-windows.advocacy,comp.os.ms-windows.nt.advocacy
Subject: Re: How low can they go...?
Date: Sun, 17 Sep 2000 00:21:53 -0700
Reply-To: <[EMAIL PROTECTED]>
T. Max Devlin <[EMAIL PROTECTED]> wrote in message
news:[EMAIL PROTECTED]...
> Said <[EMAIL PROTECTED]> in comp.os.linux.advocacy;
> >
> >Erik Funkenbusch <[EMAIL PROTECTED]> wrote in message
> >news:nXOv5.1370$[EMAIL PROTECTED]...
> >
> >> There is a comment by
> >> (IIRC) Abraham Lincoln. "It's better to be thought a fool, than to
open
> >> ones mouth and remove all doubt".
> >
> >It is better to remain silent and to be thought a fool, than to open ones
> >mouth and remove all doubt.
>
> Check out the new sig, which Erik prompted me to realize I had not
> started using in COLA, yet.
I was not commenting on you, sorry if it appeard that way. I was just
correcting Erik's quotation.
------------------------------
From: Mike Byrns <[EMAIL PROTECTED]>
Crossposted-To:
comp.lang.java.advocacy,comp.os.ms-windows.advocacy,comp.os.ms-windows.nt.advocacy
Subject: Re: How low can they go...?
Date: Sun, 17 Sep 2000 07:40:37 GMT
"T. Max Devlin" wrote:
> Said Erik Funkenbusch in comp.os.linux.advocacy;
> ><[EMAIL PROTECTED]> wrote in message
> >news:[EMAIL PROTECTED]...
> >> Now you are changing defintions again. You didn't mention
> >> application embedding before. Although even that is of
> >> dubious value.
> >
> >Dubious value? You're kidding. Tell that to AOL who uses the embedded IE
> >in their application.
>
> Tell that to AOL, you mean, who is contractually obligated to support
> IE, even though they bought Netscape more than a year ago?
It is true that AOL chose the Microsoft solution before they bought Netscape but
I'm not convinced that their contract has not been renewed. Gecko development
has taken much, much longer than AOL hoped it would. So much for Open Source
being able to stick to a corporate schedule :-) Bully for them! Get it right
boys! From what I've seen Gecko is wonderful. Although not quite ready for
prime time it is standards compliant (only bested by Mac IE), reasonably small
and rather quick. As for Netscape 6 -- It IS a pig on ice. Try K-Meleon
http://www.kmeleon.org/ to see how BAD Netscape 6 really is and how good Gecko
is. Well so much for the Gecko rah-rah.
Max, care to post the proof that AOL is still contractually obligated to use IE
even though Gecko won't work with AOL client yet? Wake up. What little
credibility you have left is on the line.
> >Tell that to Intuit that uses the embedded IE as the
> >basis for their entire interface.
>
> They use a browser for their interface; I don't believe its quite 'tied'
> to IE. Yet.
You don't believe. What other browser technology makes it's rendering services
freely available to applications? Note that IE even provides rendering services
on Macintosh. I've never used the Solaris version -- it might do the same there
too.
> >Tell that to Neoplanet, that have made an
> >entire commercial product based on IE's rendering engine ebedded into their
> >product (and before you say it, yes that includes rendering into a surface
> >in the app).
>
> "Surface". I love that shit. You make up new concepts,
Please explain where a rendering surface is a new concept. Almost every
rendering engine uses a canvas or surface paradigm. I don't love your shit :-)
> just to have
> new ways of forcing people to use monopolistic crap.
News Flash: Erik Funkenbusch forces people to use "monopolistic crap" by simple
USENET posting! What a phenomenon! ;-)
> Neoplanet provides
> skins for IE.
Nope. Neoplanet is it's own completely separate browser. Iexplore.exe does not
need to be present at all. In fact you could run Neoplanet on Judge Jackson's
"IE free machine" and it would still run just peachy. Try it. I can post
instructions for you if you want.
> They'd probably provide skins for any other browser, too,
> if they could.
Why when skins are what differentiates their browser that uses Windows internet
technologies from IE and Netscape?
> But Microsoft has (illegally) prevented them from having
> a wider market.
Document please? Again that sterling Devlin credibility is put to the test :-)
> >Dubious value indeed. There is literally billions of dollars
> >being made by companies using IE embedded in their applications.
>
> And more billions to be lost by buying in to monopoly crapware.
Where are those numbers Max?
> Face
> it; if IE didn't entirely SUCK as a web-browser,
> they'd hardly have a
> reason to try to *force* so many people into using it with these
> 'tie-in' mechanisms.
Au contrair. If IE did suck so "entirely" then it would not be able to be
chosen to include in these other independant products. Even if it's only
redeeming feature was it's beautiful modern component architecture it most
probably would not be in the position it is in today. I fail to see how
Microsoft forced Intiut and Neoplanet and all the others to implement their
technologies? Maybe because they realize that these services really are built
in to the OS and being that they are freely available there's little reason not
to use them especially in light of the fact that no competitor does the same.
Maybe you need to produce some documents that show how AOL, Intuit, Neoplanet
and the rest have all been forced to use Windows Internet technologies?
> >> If one app can't control the windows of another in Win32
> >> without some unecessarily low level hack, that sounds
> >> more like a Microsoft problem than a Netscape one.
> >
> >Hack? What are you talking about? IE is provided via COM. COM is not a
> >hack, nor is it "low level"
>
> It is both low level and a hack.
OK Max. This is a whole new can of worms. New topic of conversation. (D)COM
is a low level hack. Proof by T. Max Devlin. Pony up, boy.
> Although, to be honest, it isn't a
> hack, as hacking requires elegance and usefulness,
My definition of hack in this context comes from Webster and reads "4 a : to
write computer programs for enjoyment b : to gain access to a computer
illegally". I see nothing of elegance or usefulness defined. But I can tell
you that from a production Windows programmer's viewpoint (mine and the folks
I've worked with) it is both elegant, efficient and VERY useful.
------------------------------
** FOR YOUR REFERENCE **
The service address, to which questions about the list itself and requests
to be added to or deleted from it should be directed, is:
Internet: [EMAIL PROTECTED]
You can send mail to the entire list (and comp.os.linux.advocacy) via:
Internet: [EMAIL PROTECTED]
Linux may be obtained via one of these FTP sites:
ftp.funet.fi pub/Linux
tsx-11.mit.edu pub/linux
sunsite.unc.edu pub/Linux
End of Linux-Advocacy Digest
******************************