Newsgroups: comp.windows.news
Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!van-bc!ubc-cs!newsserver.sfu.ca!news
From: eric@tangerine (& Kolotyluk)
Subject: Re: NeWS "open" / "standard"?
Message-ID: <1991Jun25.224206.19578@newsserver.sfu.ca>
Sender: news@newsserver.sfu.ca (News System Owner)
Organization: Simon Fraser University, Burnaby, B.C., Canada
Date: Tue, 25 Jun 91 22:42:06 GMT
Lines: 148

>Straw man (IMO).   This argument ignores the added complexity
>of doing the event handling in the server (in terms of server size
>and performance) and the hassle of debugging a program that is 
>split across multiple machines and languages.   There are tradeoffs 
>either way -- doing everything in the server not such a clear win.

If the complexity of NeWS is too much to handle in the window server,
perhaps we should abandon X and go back to dumb ASCII terminals.  I
think technology is always going to get more complex in order to
provide more function.  As far as doing everything in the window server
goes, not everything should go into the window server, but at least
with NeWS you have a choice of what goes where.

Yes, there can be challenges writing and debugging spit applications,
but, like writing multithreaded applications, often the benefits in
functionality are worth the challenges.

>I still remember the arguments from (some) NeWS folks in the early 
>days of X that it was absolutely impossible to get good interactive 
>performance for things like rubber-banding and outline dragging 
>without handling events in the server.   On more than one occasion
>we'd go and demostrate perfectly acceptable tracking to these people
>only to hear them make the same claim in a different forum a week
>later.

While I would never go so far as to say that anything was absolutely
impossible, I think the issue of things like rubber-banding is not so
straigtforward.  Sure X can support rubber banding and other animation
effects, but at what cost in terms of other resources like network
bandwith and systems interrupt handling response time?  I'm primarily
a network person by background so I'm away of all sorts of network
issues that most people (especially the X developers) may have taken
for granted.  My biggest concerns about X have been related to how well
it can scale to larger and more diverse types of networks.  X is extremely
waistful of network bandwith by nature of its architecture.

>I've never run into this problem.   Are your clients runnning on
>a particularly slow host?   Xlib is low level -- it's supposed
>to be.   Try one of the many toolkits available for X (InterViews,
>Andrew, etc).

Is a Sun SPARCstation 1+ a slow client/server?  One program I have, which
performs a lot of stipple creation/changing seems to be able to overwhelm
the server side and produce glitches.  When delays are inserted into the
code, the server side seems to keep ok.  I'm running OpenWindow by the way.
At Interop last year, one of tutorials on X programming stressed several
of the systems issued to be aware of in overwhelming the server and not
responding quick enough to the server.  Is Xview considered a toolkit?
Again the issue is an architectural one, programming in an X environment
is like programming in an MS-DOS environment, sure you can hide the system
with higher layer interaces, but that result in a more complex solution
in the long run.

>I'll steal a line from your posting:  "If PostScript is so great, why is
>there now an OOPS extension."   PostScript is a great page description
>language.   As a general purpose programming language, I'll pass.

I think the reason there's an OOPS extension to PostScript (in NeWS)
is to make the PostScript programming environment an even better one.
While I wouldn't want to implement a database in PostScript, I wouldn't
want to write a window system in Cobol either.  The point is language
applicabilty.  One of the features I especially like about NeWS is being
able to try out new ideas interactively through psh or pageview.  I find
prototyping can go much faster in NeWS (via PostScript) than in X (via C).

>Postscript is great for some things (generally for things that overlap
>with printers).   For those things, you have Display Postscript.   I
>wouldn't want to write a flight simulator in postscript, though.

Right, I wouldn't want to write a fligh simulator in PostScript either, but
you could (I think Sun's NeWS lunar lander is an example of this).

>Because PostScript is good for some things, while X rendering
>is good for others.   I'm not sure what a NeWS extension to
>X would be.

Since Display PostScript doesn't support OOPS and server-side event handling,
I'd want those sorts of things in in a NeWS extension to X.  Actually, what
I really want is for OpenWindows to support Display PostScript, then I can
have a window server that supports all the important applications.

>This conspiracy theory nonsense has been around for a long,
>long time and it's pure garbage.   I worked for IBM (doing X -- in fact,
>I was the only person writing servers at IBM for a number of months) at 
>the time and IBM was dragged kicking and screaming into X.   X was written
>and promoted by engineers in universities and at a number of companies.

I agree.  I was trying to add some sarcasm to the conspiracy theory.
Thanks for the insight into IBM.

>X gained support because it had a relatively large user community, was
>demonstrably portable, and was adequate for most of the applications
>people wanted to write.   Also, people were getting tired of having
>20 different ways to do graphics and wanted to settle on something
>(anything!) that was good enough to get the job done.  X was a known
>quantity and was good enough.

The point I agree with most strongly is that X was good enough for most
people.  Most programmers just wanted to get on with programming.  Most
marketing types just wanted something to market.  The problem with "good
enough" arguments is that IBM PCs and MS-DOS are "good enough."

>The amusing and annoying thing about this consipiracy crap is that
>it always seemed to me (back then) that NeWS was an attempt to 
>derail X because Sun couldn't stand having a widespread standard 
>they hadn't originated.   It seemed to me that Sun was petulant
>about the existence of something they didn't control.

I can't say whether Sun were petulant or not, but just because someone
has an aggrevating personality doesn't mean they don't have some good
ideas.

>At the time it seemed (to me) like we had engineers from a surprisingly broad 
>collection of companies and universities cooperating to produce a window  
>system and
>then you had Sun off on the sidelines jumping up and down and screaming.

Good point.  Sun certainly weren't much a team player in the window
systems community.

>I've since gotten to know some of the people involved (from Sun) better,
>and tempered my opinions somewhat.

Since I started using X windows, I've tempered my views somewhat too.

>Get a few things straight, though.  X was *NOT* a reaction to NeWS.
>Project Athena was *NOT* commisioned to create X.   IBM in
>particular did *NOT* even like X a whole lot.

I wasn't trying to promote those ideas, but thanks for the clarification
for others who thought I might be.

>Maybe, maybe not.    Someone from Adobe should comment.   The
>comments I heard from (friends at) Adobe was that they consider 
>PostScript to be a page description language (i.e. fairly special puprpose)
>and that NeWS added a lot of warts to it to try to make it a general
>purpose programming language.   For what it's worth, I heard some
>grumbles about some of the additions NeXT made to postscript as well.
>I have no idea what Adobe's official position (if it even has one).

From what I've heard, Adobe never realized the importance of PostScript
in display applications either.

>I (and many people) disagree with the statement that NeWS is the
>"best" windowing system today.

That's what these discussions are for; for people to make their cases.
Thanks for sharing yours.
