Larry McVoy writes:
On Sun, Jan 24, 2021 at 12:04:09PM -0500, Clem Cole
wrote:
I suspect NeWS was justified internally
differently and the marketing types
saw it as a revenue stream. Larry, can you enlighten us at all?
NeWS was too much, too soon. This was back in the days of Mhz rather than
Ghz and NeWS was slow and clunky whereas X11 was good enough.
I don't know what the deal was with locking it up. I don't even know if
they got any revenue out of it, the only people that I remember liking
it were sort of "zealots" for lack of a better word. They felt like it
was better answer and just had mumble, mumble when performance was
brought up.
But I'm a weird person to ask because I started my career as a contractor
at Lachman and the first thing I did on any project was bring up X10,
later X11, and use that. I'm still carrying around my startx stuff.
To me, having the same UI on every platform dramatically out weighed
any "advantage" $VENDORS window system had. And in reality, if you had
decent frame buffer drivers, X11 was usually faster than the VENDOR stuff.
So I have little insight into VENDOR UI, I rarely used it for longer than
it took me to build X11.
The only UI stuff I've ever seen that I liked better that X11 was:
Sunview (the X version) because of the clever UI, every interface was
widget(key, value, key, value) and all keys (if I remember correctly)
had defaults that were reasonable. Super pleasant.
Ousterhout's Tk (but not the tcl stuff, jesus that was horrible).
He approached GUIs from a much higher level and you can throw together
working tools in very few lines of code. I've still never seen anything
as well thought out though I haven't looked in the last ~5 years.
It wouldn't surprise me at all if his stuff is still the best.
Ugh, another flashback. Reload the brain from back-up tapes time.
Yes, NeWS was primarily Gosling but Rosenthal was also a contributor.
Remember that they did Andrew at CMU. Historical note on them versus the
X-Men is that when they did Andrew, one of the first things that they
addressed was that UNIX was asynchronous networking; they designed the
protocol to avoid round-trips. Even though their work pre-dated a lot of
the X work, X through V10 was stuck on the synchronous networking model
since X was really just the W code developed for the V operating system.
SunWindows/SunView was Sun's original window system that was kernel-based.
There were a bazillion ioctls to get things done. But, it was fast
and reliable. Ugly inside.
A quick note is that the X-Men sold their stuff as "network-transparent"
which I thought was really idiotic. Before X, lots of people did network
transparent graphics with Tektronix 4014 terminal emulators. The main
thing that X did for you was to have your whole UI run on a remote
machine making the performance even worse than what the synchronous
protocol provided.
To the best of my knowledge, NeWS was the first window system to provide
device-independent graphics. You could just do things without having
to mess around with counting pixels and figuring out what sort of color
system was behind things.
As an aside, I found something when doing my basement archeology that
pre-dated the X11/NeWS tee shirts; there was a color printer at Sun and I
got Dave Lavalle to help me make a Christmas card for Gosling - it read
"Wish you a merry X-Mess and a happy NeWS year". Could scan it in if
anyone cares.
To me, the biggest problem with NeWS was the "e" part; it was so extensible
that nobody could stop playing around and finish something. I recall
that they kept on redoing UI toolkits because they got into building an
object-oriented system using PostScript dictionaries and kept changing
things because they were learning as they went. The name Owen Densmore
is connected to this in my mind.
While there are many different views of what happened, mine is that the
X-Men colluded to form the "Hamilton Group" in an attempt to used monopoly
power to kill NeWS. One of the leaders of this was Apollo, and according
to folks that I knew there, they felt that their networking was better
than Sun's, but they lost because Sun "gave away" NFS. Folks were worried
that Sun would do something similar with NeWS, and at the time there was
little industry expertise, especially in the graphics department. I seem
to recall that Sun bought some company that had figured out font-hinting
along the line.
Moving on, because of the Hamilton Group, Sun was forced into supporting X.
They created X/NeWS on the assumption that X would just be a layer on
top of NeWS and use much of the same code. Robin Schaufler was project
lead. Problem was, the X graphics model of knowing exactly where each
pixel was placed was not compatible with the NeWS model of not caring.
Partly in reaction to this, the X-Men worked with Adobe on the Display
PostScript extension. My recollection was that the original PostScript
for Apple printers was pretty much written in assembler, and so it took
a lot of work and time to get Display PostScript up and running. It was
not a great fit for X as compared to NeWS as X with Display PostScript
provided a different drawing model as a wart that wasn't well integrated
with the rest of X. Display PostScript got a temporarily new lease on
life with Next.
XView was a project at Sun that converted SunView programs into X programs.
I remember doing a late night panic consulting project because it came
along around the same time as SPARC, and there was a lot of weird code
in there doing unaligned memory accesses that needed fixing.
In my opinion, the whole NeWS and X/NeWS thing failed because it was done
in a market-insensitive manner. Among other things, I was doing some
consulting for AED at the time; they were making X accelerator boards
that plugged into Suns. I convinced them that there wasn't going to be
much of a market. Instead, I noticed that many large companies were using
SunView applications (think FrameMaker et. al.) for serious work, and were
not just going to ditch it for X just so they could watch the maze program
(there were no real X applications at the time). AED funded me to do the
XTool (Safe X for Suns) project which made X run in a SunView window.
That allowed customers who depended on SunView to also watch maze
when they were bored. It had two modes; run an X server in a window,
or use the Sun UI and run each X application in its own SunView window.
Unfortunately, AED had a management change who forced us to ship before
we were ready which made it fail. Were I smarter I would have tried to
get Sun to buy it. I think that I have a box of XTool tee shirts around
if anybody wants one.
I don't know if the NeWS source was ever released. I have a QIC-150 tape
labeled NeWS which I believe has the source. Have no idea what version
or anything else, and I would have to haul my old SparcStation 20 out of
the basement to try reading it as I don't have SCSI on any modern machine.
John Gilmore might have a copy as I recall that he and Hugh Daniel were
doing some sort of NeWS thing, Grasshopper Group if I remember right.
Jon